From 353e0ab2aca556fdd20ebf48da6f07d8950e56a5 Mon Sep 17 00:00:00 2001 From: "Documenter.jl" Date: Thu, 22 Jun 2023 18:59:00 +0000 Subject: [PATCH] build based on 43989a4 --- stable | 2 +- v0.2 | 1 + v0.2.0/api/index.html | 7 + v0.2.0/assets/documenter.js | 331 + v0.2.0/assets/search.js | 267 + v0.2.0/assets/themes/documenter-dark.css | 7702 ++++++++++++++++++++ v0.2.0/assets/themes/documenter-light.css | 7738 +++++++++++++++++++++ v0.2.0/assets/themeswap.js | 66 + v0.2.0/assets/warner.js | 49 + v0.2.0/examples/CPG_examples.ipynb | 5756 +++++++++++++++ v0.2.0/examples/CPG_examples/index.html | 2884 ++++++++ v0.2.0/examples/Cyber-Physical.ipynb | 437 ++ v0.2.0/examples/Cyber-Physical/index.html | 200 + v0.2.0/examples/Ecosystem.ipynb | 1808 +++++ v0.2.0/examples/Ecosystem/index.html | 950 +++ v0.2.0/examples/Lotka-Volterra.ipynb | 588 ++ v0.2.0/examples/Lotka-Volterra/index.html | 244 + v0.2.0/examples/Ross-Macdonald.ipynb | 1071 +++ v0.2.0/examples/Ross-Macdonald/index.html | 446 ++ v0.2.0/index.html | 2 + v0.2.0/search/index.html | 2 + v0.2.0/search_index.js | 3 + v0.2.0/siteinfo.js | 1 + versions.js | 3 +- 24 files changed, 30556 insertions(+), 2 deletions(-) create mode 120000 v0.2 create mode 100644 v0.2.0/api/index.html create mode 100644 v0.2.0/assets/documenter.js create mode 100644 v0.2.0/assets/search.js create mode 100644 v0.2.0/assets/themes/documenter-dark.css create mode 100644 v0.2.0/assets/themes/documenter-light.css create mode 100644 v0.2.0/assets/themeswap.js create mode 100644 v0.2.0/assets/warner.js create mode 100644 v0.2.0/examples/CPG_examples.ipynb create mode 100644 v0.2.0/examples/CPG_examples/index.html create mode 100644 v0.2.0/examples/Cyber-Physical.ipynb create mode 100644 v0.2.0/examples/Cyber-Physical/index.html create mode 100644 v0.2.0/examples/Ecosystem.ipynb create mode 100644 v0.2.0/examples/Ecosystem/index.html create mode 100644 v0.2.0/examples/Lotka-Volterra.ipynb create mode 100644 v0.2.0/examples/Lotka-Volterra/index.html create mode 100644 v0.2.0/examples/Ross-Macdonald.ipynb create mode 100644 v0.2.0/examples/Ross-Macdonald/index.html create mode 100644 v0.2.0/index.html create mode 100644 v0.2.0/search/index.html create mode 100644 v0.2.0/search_index.js create mode 100644 v0.2.0/siteinfo.js diff --git a/stable b/stable index 3f0fd6b..81fd7ba 120000 --- a/stable +++ b/stable @@ -1 +1 @@ -v0.1.8 \ No newline at end of file +v0.2.0 \ No newline at end of file diff --git a/v0.2 b/v0.2 new file mode 120000 index 0000000..81fd7ba --- /dev/null +++ b/v0.2 @@ -0,0 +1 @@ +v0.2.0 \ No newline at end of file diff --git a/v0.2.0/api/index.html b/v0.2.0/api/index.html new file mode 100644 index 0000000..9ef6910 --- /dev/null +++ b/v0.2.0/api/index.html @@ -0,0 +1,7 @@ + +Library Reference · AlgebraicDynamics.jl

Library Reference

Types of Dynamical Systems

Machines

AlgebraicDynamics.DWDDynam.AbstractMachineType
Machine{T}
+Machine{T,N}

A directed open dynamical system operating on information of type T. For type arguments {T,N}, the system operates on arrays of type T and ndims = N. A machine m has type signature (m.ninputs, m.noutputs).

source
AlgebraicDynamics.DWDDynam.ContinuousMachineType
ContinuousMachine{T}(ninputs, nstates, noutputs, f, r)

A directed open continuous system. The dynamics function f defines an ODE $\dot u(t) = f(u(t),x(t),p,t)$, where $u$ is the state and $x$ captures the exogenous variables.

The readout function r may depend on the state, parameters and time, so it must be of the form $r(u,p,t)$. If it is left out, then $r=u$.

source
AlgebraicDynamics.DWDDynam.DelayMachineType
DelayMachine{T}(ninputs, nstates, noutputs, f, r)

A delay open continuous system. The dynamics function f defines an ODE $\dot u(t) = f(u(t), x(t), h(p,t), p, t)$, where $u$ is the state, $x$ captures the exogenous variables, and $h$ is a history function.

The readout function r may depend on the state, history, parameters and time, so it has the signature $r(u,h,p,t)$. If it is left out, then $r=u$.

source
AlgebraicDynamics.DWDDynam.DiscreteMachineType
DiscreteMachine{T}(ninputs, nstates, noutputs, f, r)

A directed open discrete dynamical system. The dynamics function f defines a discrete update rule $u_{n+1} = f(u_n, x_n, p, t)$, where $u_n$ is the state and $x_n$ is the value of the exogenous variables at the $n$th time step.

The readout function r may depend on the state, parameters and time step, so it must be of the form $r(u_n,p,n)$. If it is left out, then $r_n=u_n$.

source

Resource Sharers

AlgebraicDynamics.UWDDynam.AbstractResourceSharerType
ResourceSharer{T}
+ResourceSharer{T,N}

An undirected open dynamical system operating on information of type T. For type arguments {T,N}, the system operates on arrays of type T and ndims = N. A resource sharer r has type signature r.nports.

source
AlgebraicDynamics.UWDDynam.ContinuousResourceSharerType
ContinuousResourceSharer{T}(nports, nstates, f, portmap)

An undirected open continuous system. The dynamics function f defines an ODE $\dot u(t) = f(u(t),p,t)$, where $u(t)$ has length nstates. nports is the number of exposed ports and portmap is a list of exposed states. For example, if portmap = [2,2,3] then there are three ports which expose the state variables 2, 2, and 3 respectively.

source
AlgebraicDynamics.UWDDynam.DelayResourceSharerType
DelayResourceSharer{T}(nports, nstates, f, portmap)

An undirected open continuous system. The dynamics function f defines a DDE $\dot u(t) = f(u(t),h(t),p,t)$, where $h$ is a function giving the history of the system's state $u$ before the interval on which the solution will be computed begins (usually for $t < 0$). f should have signature $f(u,h,p,t)$, where $h$ is a function.

source

Composition of Dynamical Systems

Operad Algebras

Catlab.WiringDiagrams.WiringDiagramAlgebras.oapplyFunction
oapply(d::WiringDiagram, ms::Vector{M}) where {M<:AbstractMachine}

Implements the operad algebras for directed composition of dynamical systems, given a composition pattern (implemented by a directed wiring diagram d) and primitive systems (implemented by a collection of machines ms). Returns the composite machine.

Each box of the composition pattern d must be filled by a machine with the appropriate type signature.

source
oapply(d::WiringDiagram, m::AbstractMachine)

A version of oapply where each box of d is filled with the same machine m.

source
oapply(d::WiringDiagram, generators::AbstractDict{S,M}) where {S,M<:AbstractMachine}

A version of oapply where generators is a dictionary mapping the name of each box to its corresponding machine.

source
 oapply(d::AbstractUWD, rs::Vector{R}) where {R<:AbstractResourceSharer}

Implements the operad algebras for undirected composition of dynamical systems, given a composition pattern (implemented by an undirected wiring diagram d) and primitive systems (implemented by a collection of resource sharers rs). Returns the composite resource sharer.

Each box of d must be filled by a resource sharer of the appropriate type signature.

source
oapply(d::AbstractUWD, r::AbstractResourceSharer)

A version of oapply where each box of d is filled with the same resource sharer r.

source
 oapply(d::AbstractUWD, generators::AbstractDict{S,R}) where {S,R<:AbstractResourceSharer}

A version of oapply where generators is a dictionary mapping the name of each box to its corresponding resource sharer.

source
oapply(d::OpenCPortGraph, ms::Vector{M}) where {M<:AbstractMachine}

Implements the operad algebras for directed composition of dynamical systems, given a composition pattern (implemented by an open circular port graph d) and primitive systems (implemented by a collection of machines ms). Returns the composite machine.

Each box of the composition pattern d must be filled by a machine with the appropriate type signature.

source
oapply(d::OpenCPortGraph, m::AbstractMachine)

A version of oapply where each box of d is filled with the same machine m.

source

Checks

AlgebraicDynamics.UWDDynam.fillsFunction
fills(r::AbstractResourceSharer, d::AbstractUWD, b::Int)

Checks if r is of the correct signature to fill box b of the undirected wiring diagram d.

source
fills(m::AbstractMachine, d::OpenCPortGraph, b::Int)

Checks if m is of the correct signature to fill box b of the open CPG d.

source

Time Evolution

Instantaneous Dynamics

AlgebraicDynamics.UWDDynam.eval_dynamicsFunction
eval_dynamics(m::AbstractMachine, u::AbstractVector, x:AbstractVector{F}, p, t) where {F<:Function}
+eval_dynamics(m::AbstractMachine{T}, u::AbstractVector, x:AbstractVector{T}, p, t) where T

Evaluates the dynamics of the machine m at state u, parameters p and time t. The exogenous variables are set by x, which may be a collection either of functions $x_i(t)$ or of constant values. In either case, the length of x must equal the number of inputs to m.

source
eval_dynamics(r::AbstractResourceSharer, u::AbstractVector, p, t)

Evaluates the dynamics of the resource sharer r at state u, parameters p and time t. Omitting p and t is allowed if the dynamics of r does not depend on them.

source

Time Discretization

AlgebraicDynamics.UWDDynam.euler_approxFunction
euler_approx(m::ContinuousMachine, h::Float)

Transforms a continuous machine m into a discrete machine via Euler's method with step size h. If the dynamics of m is given by $\dot{u}(t) = f(u(t),x(t),p,t)$, then the dynamics of the new discrete system is given by the update rule $u_{n+1} = u_n + h f(u_n, x_n, p, t)$.

source
euler_approx(m::ContinuousMachine)

Transforms a continuous machine m into a discrete machine via Euler's method. The step size parameter is appended to the end of the system's parameter list.

source
euler_approx(ms::Vector{M}, args...) where {M<:ContinuousMachine}
+euler_approx(ms::AbstractDict{S, M}, args...) where {S,M<:ContinuousMachine}

Map euler_approx over a collection of machines with identical args.

source
euler_approx(r::ContinuousResourceSharer, h::Float)

Transforms a continuous resource sharer r into a discrete resource sharer via Euler's method with step size h. If the dynamics of r is given by $\dot{u}(t) = f(u(t),p,t)$, then the dynamics of the new discrete system is given by the update rule $u_{n+1} = u_n + h f(u_n, p, t)$.

source
euler_approx(r::ContinuousResourceSharer)

Transforms a continuous resource sharer r into a discrete resource sharer via Euler's method. The step size parameter is appended to the end of the system's parameter list.

source
euler_approx(rs::Vector{R}, args...) where {T,R<:ContinuousResourceSharer{T}}
+euler_approx(rs::AbstractDict{S, R}, args...) where {S,T,R<:ContinuousResourceSharer{T}}

Map euler_approx over a collection of resource sharers with identical args.

source

Discrete Trajectory

Missing docstring.

Missing docstring for AlgebraicDynamics.UWDDynam.trajectory. Check Documenter's build log for details.

Integration with DifferentialEquations.jl

Missing docstring.

Missing docstring for AlgebraicDynamics.UWDDynam.ODEProblem. Check Documenter's build log for details.

Missing docstring.

Missing docstring for AlgebraicDynamics.UWDDynam.DDEProblem. Check Documenter's build log for details.

Missing docstring.

Missing docstring for AlgebraicDynamics.UWDDynam.DiscreteProblem. Check Documenter's build log for details.

diff --git a/v0.2.0/assets/documenter.js b/v0.2.0/assets/documenter.js new file mode 100644 index 0000000..6adfbbb --- /dev/null +++ b/v0.2.0/assets/documenter.js @@ -0,0 +1,331 @@ +// Generated by Documenter.jl +requirejs.config({ + paths: { + 'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/languages/julia.min', + 'headroom': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/headroom.min', + 'jqueryui': 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min', + 'katex-auto-render': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.24/contrib/auto-render.min', + 'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min', + 'headroom-jquery': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/jQuery.headroom.min', + 'katex': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.24/katex.min', + 'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/highlight.min', + 'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/languages/julia-repl.min', + }, + shim: { + "highlight-julia": { + "deps": [ + "highlight" + ] + }, + "katex-auto-render": { + "deps": [ + "katex" + ] + }, + "headroom-jquery": { + "deps": [ + "jquery", + "headroom" + ] + }, + "highlight-julia-repl": { + "deps": [ + "highlight" + ] + } +} +}); +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'katex', 'katex-auto-render'], function($, katex, renderMathInElement) { +$(document).ready(function() { + renderMathInElement( + document.body, + { + "delimiters": [ + { + "left": "$", + "right": "$", + "display": false + }, + { + "left": "$$", + "right": "$$", + "display": true + }, + { + "left": "\\[", + "right": "\\]", + "display": true + } + ] +} + + ); +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'highlight', 'highlight-julia', 'highlight-julia-repl'], function($) { +$(document).ready(function() { + hljs.highlightAll(); +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require([], function() { +function addCopyButtonCallbacks() { + for (const el of document.getElementsByTagName("pre")) { + const button = document.createElement("button"); + button.classList.add("copy-button", "fas", "fa-copy"); + el.appendChild(button); + + const success = function () { + button.classList.add("success", "fa-check"); + button.classList.remove("fa-copy"); + }; + + const failure = function () { + button.classList.add("error", "fa-times"); + button.classList.remove("fa-copy"); + }; + + button.addEventListener("click", function () { + copyToClipboard(el.innerText).then(success, failure); + + setTimeout(function () { + button.classList.add("fa-copy"); + button.classList.remove("success", "fa-check", "fa-times"); + }, 5000); + }); + } +} + +function copyToClipboard(text) { + // clipboard API is only available in secure contexts + if (window.navigator && window.navigator.clipboard) { + return window.navigator.clipboard.writeText(text); + } else { + return new Promise(function (resolve, reject) { + try { + const el = document.createElement("textarea"); + el.textContent = text; + el.style.position = "fixed"; + el.style.opacity = 0; + document.body.appendChild(el); + el.select(); + document.execCommand("copy"); + + resolve(); + } catch (err) { + reject(err); + } finally { + document.body.removeChild(el); + } + }); + } +} + +if (document.readyState === "loading") { + document.addEventListener("DOMContentLoaded", addCopyButtonCallbacks); +} else { + addCopyButtonCallbacks(); +} + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'headroom', 'headroom-jquery'], function($, Headroom) { + +// Manages the top navigation bar (hides it when the user starts scrolling down on the +// mobile). +window.Headroom = Headroom; // work around buggy module loading? +$(document).ready(function() { + $('#documenter .docs-navbar').headroom({ + "tolerance": {"up": 10, "down": 10}, + }); +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// Modal settings dialog +$(document).ready(function() { + var settings = $('#documenter-settings'); + $('#documenter-settings-button').click(function(){ + settings.toggleClass('is-active'); + }); + // Close the dialog if X is clicked + $('#documenter-settings button.delete').click(function(){ + settings.removeClass('is-active'); + }); + // Close dialog if ESC is pressed + $(document).keyup(function(e) { + if (e.keyCode == 27) settings.removeClass('is-active'); + }); +}); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// Manages the showing and hiding of the sidebar. +$(document).ready(function() { + var sidebar = $("#documenter > .docs-sidebar"); + var sidebar_button = $("#documenter-sidebar-button") + sidebar_button.click(function(ev) { + ev.preventDefault(); + sidebar.toggleClass('visible'); + if (sidebar.hasClass('visible')) { + // Makes sure that the current menu item is visible in the sidebar. + $("#documenter .docs-menu a.is-active").focus(); + } + }); + $("#documenter > .docs-main").bind('click', function(ev) { + if ($(ev.target).is(sidebar_button)) { + return; + } + if (sidebar.hasClass('visible')) { + sidebar.removeClass('visible'); + } + }); +}) + +// Resizes the package name / sitename in the sidebar if it is too wide. +// Inspired by: https://github.com/davatron5000/FitText.js +$(document).ready(function() { + e = $("#documenter .docs-autofit"); + function resize() { + var L = parseInt(e.css('max-width'), 10); + var L0 = e.width(); + if(L0 > L) { + var h0 = parseInt(e.css('font-size'), 10); + e.css('font-size', L * h0 / L0); + // TODO: make sure it survives resizes? + } + } + // call once and then register events + resize(); + $(window).resize(resize); + $(window).on('orientationchange', resize); +}); + +// Scroll the navigation bar to the currently selected menu item +$(document).ready(function() { + var sidebar = $("#documenter .docs-menu").get(0); + var active = $("#documenter .docs-menu .is-active").get(0); + if(typeof active !== 'undefined') { + sidebar.scrollTop = active.offsetTop - sidebar.offsetTop - 15; + } +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +function set_theme(theme) { + var active = null; + var disabled = []; + for (var i = 0; i < document.styleSheets.length; i++) { + var ss = document.styleSheets[i]; + var themename = ss.ownerNode.getAttribute("data-theme-name"); + if(themename === null) continue; // ignore non-theme stylesheets + // Find the active theme + if(themename === theme) active = ss; + else disabled.push(ss); + } + if(active !== null) { + active.disabled = false; + if(active.ownerNode.getAttribute("data-theme-primary") === null) { + document.getElementsByTagName('html')[0].className = "theme--" + theme; + } else { + document.getElementsByTagName('html')[0].className = ""; + } + disabled.forEach(function(ss){ + ss.disabled = true; + }); + } + + // Store the theme in localStorage + if(typeof(window.localStorage) !== "undefined") { + window.localStorage.setItem("documenter-theme", theme); + } else { + console.error("Browser does not support window.localStorage"); + } +} + +// Theme picker setup +$(document).ready(function() { + // onchange callback + $('#documenter-themepicker').change(function themepick_callback(ev){ + var themename = $('#documenter-themepicker option:selected').attr('value'); + set_theme(themename); + }); + + // Make sure that the themepicker displays the correct theme when the theme is retrieved + // from localStorage + if(typeof(window.localStorage) !== "undefined") { + var theme = window.localStorage.getItem("documenter-theme"); + if(theme !== null) { + $('#documenter-themepicker option').each(function(i,e) { + e.selected = (e.value === theme); + }) + } else { + $('#documenter-themepicker option').each(function(i,e) { + e.selected = $("html").hasClass(`theme--${e.value}`); + }) + } + } +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// update the version selector with info from the siteinfo.js and ../versions.js files +$(document).ready(function() { + // If the version selector is disabled with DOCUMENTER_VERSION_SELECTOR_DISABLED in the + // siteinfo.js file, we just return immediately and not display the version selector. + if (typeof DOCUMENTER_VERSION_SELECTOR_DISABLED === 'boolean' && DOCUMENTER_VERSION_SELECTOR_DISABLED) { + return; + } + + var version_selector = $("#documenter .docs-version-selector"); + var version_selector_select = $("#documenter .docs-version-selector select"); + + version_selector_select.change(function(x) { + target_href = version_selector_select.children("option:selected").get(0).value; + window.location.href = target_href; + }); + + // add the current version to the selector based on siteinfo.js, but only if the selector is empty + if (typeof DOCUMENTER_CURRENT_VERSION !== 'undefined' && $('#version-selector > option').length == 0) { + var option = $(""); + version_selector_select.append(option); + } + + if (typeof DOC_VERSIONS !== 'undefined') { + var existing_versions = version_selector_select.children("option"); + var existing_versions_texts = existing_versions.map(function(i,x){return x.text}); + DOC_VERSIONS.forEach(function(each) { + var version_url = documenterBaseURL + "/../" + each; + var existing_id = $.inArray(each, existing_versions_texts); + // if not already in the version selector, add it as a new option, + // otherwise update the old option with the URL and enable it + if (existing_id == -1) { + var option = $(""); + version_selector_select.append(option); + } else { + var option = existing_versions[existing_id]; + option.value = version_url; + option.disabled = false; + } + }); + } + + // only show the version selector if the selector has been populated + if (version_selector_select.children("option").length > 0) { + version_selector.toggleClass("visible"); + } +}) + +}) diff --git a/v0.2.0/assets/search.js b/v0.2.0/assets/search.js new file mode 100644 index 0000000..c133f74 --- /dev/null +++ b/v0.2.0/assets/search.js @@ -0,0 +1,267 @@ +// Generated by Documenter.jl +requirejs.config({ + paths: { + 'lunr': 'https://cdnjs.cloudflare.com/ajax/libs/lunr.js/2.3.9/lunr.min', + 'lodash': 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min', + 'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min', + } +}); +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'lunr', 'lodash'], function($, lunr, _) { + +$(document).ready(function() { + // parseUri 1.2.2 + // (c) Steven Levithan + // MIT License + function parseUri (str) { + var o = parseUri.options, + m = o.parser[o.strictMode ? "strict" : "loose"].exec(str), + uri = {}, + i = 14; + + while (i--) uri[o.key[i]] = m[i] || ""; + + uri[o.q.name] = {}; + uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) { + if ($1) uri[o.q.name][$1] = $2; + }); + + return uri; + }; + parseUri.options = { + strictMode: false, + key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"], + q: { + name: "queryKey", + parser: /(?:^|&)([^&=]*)=?([^&]*)/g + }, + parser: { + strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/, + loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/ + } + }; + + $("#search-form").submit(function(e) { + e.preventDefault() + }) + + // list below is the lunr 2.1.3 list minus the intersect with names(Base) + // (all, any, get, in, is, only, which) and (do, else, for, let, where, while, with) + // ideally we'd just filter the original list but it's not available as a variable + lunr.stopWordFilter = lunr.generateStopWordFilter([ + 'a', + 'able', + 'about', + 'across', + 'after', + 'almost', + 'also', + 'am', + 'among', + 'an', + 'and', + 'are', + 'as', + 'at', + 'be', + 'because', + 'been', + 'but', + 'by', + 'can', + 'cannot', + 'could', + 'dear', + 'did', + 'does', + 'either', + 'ever', + 'every', + 'from', + 'got', + 'had', + 'has', + 'have', + 'he', + 'her', + 'hers', + 'him', + 'his', + 'how', + 'however', + 'i', + 'if', + 'into', + 'it', + 'its', + 'just', + 'least', + 'like', + 'likely', + 'may', + 'me', + 'might', + 'most', + 'must', + 'my', + 'neither', + 'no', + 'nor', + 'not', + 'of', + 'off', + 'often', + 'on', + 'or', + 'other', + 'our', + 'own', + 'rather', + 'said', + 'say', + 'says', + 'she', + 'should', + 'since', + 'so', + 'some', + 'than', + 'that', + 'the', + 'their', + 'them', + 'then', + 'there', + 'these', + 'they', + 'this', + 'tis', + 'to', + 'too', + 'twas', + 'us', + 'wants', + 'was', + 'we', + 'were', + 'what', + 'when', + 'who', + 'whom', + 'why', + 'will', + 'would', + 'yet', + 'you', + 'your' + ]) + + // add . as a separator, because otherwise "title": "Documenter.Anchors.add!" + // would not find anything if searching for "add!", only for the entire qualification + lunr.tokenizer.separator = /[\s\-\.]+/ + + // custom trimmer that doesn't strip @ and !, which are used in julia macro and function names + lunr.trimmer = function (token) { + return token.update(function (s) { + return s.replace(/^[^a-zA-Z0-9@!]+/, '').replace(/[^a-zA-Z0-9@!]+$/, '') + }) + } + + lunr.Pipeline.registerFunction(lunr.stopWordFilter, 'juliaStopWordFilter') + lunr.Pipeline.registerFunction(lunr.trimmer, 'juliaTrimmer') + + var index = lunr(function () { + this.ref('location') + this.field('title',{boost: 100}) + this.field('text') + documenterSearchIndex['docs'].forEach(function(e) { + this.add(e) + }, this) + }) + var store = {} + + documenterSearchIndex['docs'].forEach(function(e) { + store[e.location] = {title: e.title, category: e.category, page: e.page} + }) + + $(function(){ + searchresults = $('#documenter-search-results'); + searchinfo = $('#documenter-search-info'); + searchbox = $('#documenter-search-query'); + searchform = $('.docs-search'); + sidebar = $('.docs-sidebar'); + function update_search(querystring) { + tokens = lunr.tokenizer(querystring) + results = index.query(function (q) { + tokens.forEach(function (t) { + q.term(t.toString(), { + fields: ["title"], + boost: 100, + usePipeline: true, + editDistance: 0, + wildcard: lunr.Query.wildcard.NONE + }) + q.term(t.toString(), { + fields: ["title"], + boost: 10, + usePipeline: true, + editDistance: 2, + wildcard: lunr.Query.wildcard.NONE + }) + q.term(t.toString(), { + fields: ["text"], + boost: 1, + usePipeline: true, + editDistance: 0, + wildcard: lunr.Query.wildcard.NONE + }) + }) + }) + searchinfo.text("Number of results: " + results.length) + searchresults.empty() + results.forEach(function(result) { + data = store[result.ref] + link = $(''+data.title+'') + link.attr('href', documenterBaseURL+'/'+result.ref) + if (data.category != "page"){ + cat = $('('+data.category+', '+data.page+')') + } else { + cat = $('('+data.category+')') + } + li = $('
  • ').append(link).append(" ").append(cat) + searchresults.append(li) + }) + } + + function update_search_box() { + querystring = searchbox.val() + update_search(querystring) + } + + searchbox.keyup(_.debounce(update_search_box, 250)) + searchbox.change(update_search_box) + + // Disable enter-key form submission for the searchbox on the search page + // and just re-run search rather than refresh the whole page. + searchform.keypress( + function(event){ + if (event.which == '13') { + if (sidebar.hasClass('visible')) { + sidebar.removeClass('visible'); + } + update_search_box(); + event.preventDefault(); + } + } + ); + + search_query_uri = parseUri(window.location).queryKey["q"] + if(search_query_uri !== undefined) { + search_query = decodeURIComponent(search_query_uri.replace(/\+/g, '%20')) + searchbox.val(search_query) + } + update_search_box(); + }) +}) + +}) diff --git a/v0.2.0/assets/themes/documenter-dark.css b/v0.2.0/assets/themes/documenter-dark.css new file mode 100644 index 0000000..0bf1af7 --- /dev/null +++ b/v0.2.0/assets/themes/documenter-dark.css @@ -0,0 +1,7702 @@ +@charset "UTF-8"; +/* Font Awesome 5 mixin. Can be included in any rule that should render Font Awesome icons. */ +@keyframes spinAround { + from { + transform: rotate(0deg); } + to { + transform: rotate(359deg); } } + +html.theme--documenter-dark .tabs, html.theme--documenter-dark .pagination-previous, +html.theme--documenter-dark .pagination-next, +html.theme--documenter-dark .pagination-link, +html.theme--documenter-dark .pagination-ellipsis, html.theme--documenter-dark .breadcrumb, html.theme--documenter-dark .file, html.theme--documenter-dark .button, .is-unselectable, html.theme--documenter-dark .modal-close, html.theme--documenter-dark .delete { + -webkit-touch-callout: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } + +html.theme--documenter-dark .navbar-link:not(.is-arrowless)::after, html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading)::after { + border: 3px solid transparent; + border-radius: 2px; + border-right: 0; + border-top: 0; + content: " "; + display: block; + height: 0.625em; + margin-top: -0.4375em; + pointer-events: none; + position: absolute; + top: 50%; + transform: rotate(-45deg); + transform-origin: center; + width: 0.625em; } + +html.theme--documenter-dark .admonition:not(:last-child), html.theme--documenter-dark .tabs:not(:last-child), html.theme--documenter-dark .message:not(:last-child), html.theme--documenter-dark .list:not(:last-child), html.theme--documenter-dark .level:not(:last-child), html.theme--documenter-dark .breadcrumb:not(:last-child), html.theme--documenter-dark .highlight:not(:last-child), html.theme--documenter-dark .block:not(:last-child), html.theme--documenter-dark .title:not(:last-child), +html.theme--documenter-dark .subtitle:not(:last-child), html.theme--documenter-dark .table-container:not(:last-child), html.theme--documenter-dark .table:not(:last-child), html.theme--documenter-dark .progress:not(:last-child), html.theme--documenter-dark .notification:not(:last-child), html.theme--documenter-dark .content:not(:last-child), html.theme--documenter-dark .box:not(:last-child) { + margin-bottom: 1.5rem; } + +html.theme--documenter-dark .modal-close, html.theme--documenter-dark .delete { + -moz-appearance: none; + -webkit-appearance: none; + background-color: rgba(10, 10, 10, 0.2); + border: none; + border-radius: 290486px; + cursor: pointer; + pointer-events: auto; + display: inline-block; + flex-grow: 0; + flex-shrink: 0; + font-size: 0; + height: 20px; + max-height: 20px; + max-width: 20px; + min-height: 20px; + min-width: 20px; + outline: none; + position: relative; + vertical-align: top; + width: 20px; } + html.theme--documenter-dark .modal-close::before, html.theme--documenter-dark .delete::before, html.theme--documenter-dark .modal-close::after, html.theme--documenter-dark .delete::after { + background-color: white; + content: ""; + display: block; + left: 50%; + position: absolute; + top: 50%; + transform: translateX(-50%) translateY(-50%) rotate(45deg); + transform-origin: center center; } + html.theme--documenter-dark .modal-close::before, html.theme--documenter-dark .delete::before { + height: 2px; + width: 50%; } + html.theme--documenter-dark .modal-close::after, html.theme--documenter-dark .delete::after { + height: 50%; + width: 2px; } + html.theme--documenter-dark .modal-close:hover, html.theme--documenter-dark .delete:hover, html.theme--documenter-dark .modal-close:focus, html.theme--documenter-dark .delete:focus { + background-color: rgba(10, 10, 10, 0.3); } + html.theme--documenter-dark .modal-close:active, html.theme--documenter-dark .delete:active { + background-color: rgba(10, 10, 10, 0.4); } + html.theme--documenter-dark .is-small.modal-close, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.modal-close, html.theme--documenter-dark .is-small.delete, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.delete { + height: 16px; + max-height: 16px; + max-width: 16px; + min-height: 16px; + min-width: 16px; + width: 16px; } + html.theme--documenter-dark .is-medium.modal-close, html.theme--documenter-dark .is-medium.delete { + height: 24px; + max-height: 24px; + max-width: 24px; + min-height: 24px; + min-width: 24px; + width: 24px; } + html.theme--documenter-dark .is-large.modal-close, html.theme--documenter-dark .is-large.delete { + height: 32px; + max-height: 32px; + max-width: 32px; + min-height: 32px; + min-width: 32px; + width: 32px; } + +html.theme--documenter-dark .control.is-loading::after, html.theme--documenter-dark .select.is-loading::after, html.theme--documenter-dark .loader, html.theme--documenter-dark .button.is-loading::after { + animation: spinAround 500ms infinite linear; + border: 2px solid #dbdee0; + border-radius: 290486px; + border-right-color: transparent; + border-top-color: transparent; + content: ""; + display: block; + height: 1em; + position: relative; + width: 1em; } + +html.theme--documenter-dark .hero-video, html.theme--documenter-dark .modal-background, html.theme--documenter-dark .modal, html.theme--documenter-dark .image.is-square img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-square img, +html.theme--documenter-dark .image.is-square .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-square .has-ratio, html.theme--documenter-dark .image.is-1by1 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by1 img, +html.theme--documenter-dark .image.is-1by1 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by1 .has-ratio, html.theme--documenter-dark .image.is-5by4 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-5by4 img, +html.theme--documenter-dark .image.is-5by4 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-5by4 .has-ratio, html.theme--documenter-dark .image.is-4by3 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-4by3 img, +html.theme--documenter-dark .image.is-4by3 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-4by3 .has-ratio, html.theme--documenter-dark .image.is-3by2 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by2 img, +html.theme--documenter-dark .image.is-3by2 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by2 .has-ratio, html.theme--documenter-dark .image.is-5by3 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-5by3 img, +html.theme--documenter-dark .image.is-5by3 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-5by3 .has-ratio, html.theme--documenter-dark .image.is-16by9 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-16by9 img, +html.theme--documenter-dark .image.is-16by9 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-16by9 .has-ratio, html.theme--documenter-dark .image.is-2by1 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-2by1 img, +html.theme--documenter-dark .image.is-2by1 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-2by1 .has-ratio, html.theme--documenter-dark .image.is-3by1 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by1 img, +html.theme--documenter-dark .image.is-3by1 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by1 .has-ratio, html.theme--documenter-dark .image.is-4by5 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-4by5 img, +html.theme--documenter-dark .image.is-4by5 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-4by5 .has-ratio, html.theme--documenter-dark .image.is-3by4 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by4 img, +html.theme--documenter-dark .image.is-3by4 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by4 .has-ratio, html.theme--documenter-dark .image.is-2by3 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-2by3 img, +html.theme--documenter-dark .image.is-2by3 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-2by3 .has-ratio, html.theme--documenter-dark .image.is-3by5 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by5 img, +html.theme--documenter-dark .image.is-3by5 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by5 .has-ratio, html.theme--documenter-dark .image.is-9by16 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-9by16 img, +html.theme--documenter-dark .image.is-9by16 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-9by16 .has-ratio, html.theme--documenter-dark .image.is-1by2 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by2 img, +html.theme--documenter-dark .image.is-1by2 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by2 .has-ratio, html.theme--documenter-dark .image.is-1by3 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by3 img, +html.theme--documenter-dark .image.is-1by3 .has-ratio, +html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by3 .has-ratio, .is-overlay { + bottom: 0; + left: 0; + position: absolute; + right: 0; + top: 0; } + +html.theme--documenter-dark .pagination-previous, +html.theme--documenter-dark .pagination-next, +html.theme--documenter-dark .pagination-link, +html.theme--documenter-dark .pagination-ellipsis, html.theme--documenter-dark .file-cta, +html.theme--documenter-dark .file-name, html.theme--documenter-dark .select select, html.theme--documenter-dark .textarea, html.theme--documenter-dark .input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input, html.theme--documenter-dark .button { + -moz-appearance: none; + -webkit-appearance: none; + align-items: center; + border: 1px solid transparent; + border-radius: 0.4em; + box-shadow: none; + display: inline-flex; + font-size: 15px; + height: 2.25em; + justify-content: flex-start; + line-height: 1.5; + padding-bottom: calc(0.375em - 1px); + padding-left: calc(0.625em - 1px); + padding-right: calc(0.625em - 1px); + padding-top: calc(0.375em - 1px); + position: relative; + vertical-align: top; } + html.theme--documenter-dark .pagination-previous:focus, + html.theme--documenter-dark .pagination-next:focus, + html.theme--documenter-dark .pagination-link:focus, + html.theme--documenter-dark .pagination-ellipsis:focus, html.theme--documenter-dark .file-cta:focus, + html.theme--documenter-dark .file-name:focus, html.theme--documenter-dark .select select:focus, html.theme--documenter-dark .textarea:focus, html.theme--documenter-dark .input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input:focus, html.theme--documenter-dark .button:focus, html.theme--documenter-dark .is-focused.pagination-previous, + html.theme--documenter-dark .is-focused.pagination-next, + html.theme--documenter-dark .is-focused.pagination-link, + html.theme--documenter-dark .is-focused.pagination-ellipsis, html.theme--documenter-dark .is-focused.file-cta, + html.theme--documenter-dark .is-focused.file-name, html.theme--documenter-dark .select select.is-focused, html.theme--documenter-dark .is-focused.textarea, html.theme--documenter-dark .is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .is-focused.button, html.theme--documenter-dark .pagination-previous:active, + html.theme--documenter-dark .pagination-next:active, + html.theme--documenter-dark .pagination-link:active, + html.theme--documenter-dark .pagination-ellipsis:active, html.theme--documenter-dark .file-cta:active, + html.theme--documenter-dark .file-name:active, html.theme--documenter-dark .select select:active, html.theme--documenter-dark .textarea:active, html.theme--documenter-dark .input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input:active, html.theme--documenter-dark .button:active, html.theme--documenter-dark .is-active.pagination-previous, + html.theme--documenter-dark .is-active.pagination-next, + html.theme--documenter-dark .is-active.pagination-link, + html.theme--documenter-dark .is-active.pagination-ellipsis, html.theme--documenter-dark .is-active.file-cta, + html.theme--documenter-dark .is-active.file-name, html.theme--documenter-dark .select select.is-active, html.theme--documenter-dark .is-active.textarea, html.theme--documenter-dark .is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active, html.theme--documenter-dark .is-active.button { + outline: none; } + html.theme--documenter-dark .pagination-previous[disabled], + html.theme--documenter-dark .pagination-next[disabled], + html.theme--documenter-dark .pagination-link[disabled], + html.theme--documenter-dark .pagination-ellipsis[disabled], html.theme--documenter-dark .file-cta[disabled], + html.theme--documenter-dark .file-name[disabled], html.theme--documenter-dark .select select[disabled], html.theme--documenter-dark .textarea[disabled], html.theme--documenter-dark .input[disabled], html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input[disabled], html.theme--documenter-dark .button[disabled], fieldset[disabled] html.theme--documenter-dark .pagination-previous, html.theme--documenter-dark fieldset[disabled] .pagination-previous, + fieldset[disabled] html.theme--documenter-dark .pagination-next, + html.theme--documenter-dark fieldset[disabled] .pagination-next, + fieldset[disabled] html.theme--documenter-dark .pagination-link, + html.theme--documenter-dark fieldset[disabled] .pagination-link, + fieldset[disabled] html.theme--documenter-dark .pagination-ellipsis, + html.theme--documenter-dark fieldset[disabled] .pagination-ellipsis, fieldset[disabled] html.theme--documenter-dark .file-cta, html.theme--documenter-dark fieldset[disabled] .file-cta, + fieldset[disabled] html.theme--documenter-dark .file-name, + html.theme--documenter-dark fieldset[disabled] .file-name, fieldset[disabled] html.theme--documenter-dark .select select, fieldset[disabled] html.theme--documenter-dark .textarea, fieldset[disabled] html.theme--documenter-dark .input, fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input, html.theme--documenter-dark fieldset[disabled] .select select, html.theme--documenter-dark .select fieldset[disabled] select, html.theme--documenter-dark fieldset[disabled] .textarea, html.theme--documenter-dark fieldset[disabled] .input, html.theme--documenter-dark fieldset[disabled] #documenter .docs-sidebar form.docs-search > input, html.theme--documenter-dark #documenter .docs-sidebar fieldset[disabled] form.docs-search > input, fieldset[disabled] html.theme--documenter-dark .button, html.theme--documenter-dark fieldset[disabled] .button { + cursor: not-allowed; } + +/*! minireset.css v0.0.4 | MIT License | github.com/jgthms/minireset.css */ +html, +body, +p, +ol, +ul, +li, +dl, +dt, +dd, +blockquote, +figure, +fieldset, +legend, +textarea, +pre, +iframe, +hr, +h1, +h2, +h3, +h4, +h5, +h6 { + margin: 0; + padding: 0; } + +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: 100%; + font-weight: normal; } + +ul { + list-style: none; } + +button, +input, +select, +textarea { + margin: 0; } + +html { + box-sizing: border-box; } + +*, *::before, *::after { + box-sizing: inherit; } + +img, +embed, +iframe, +object, +video { + height: auto; + max-width: 100%; } + +audio { + max-width: 100%; } + +iframe { + border: 0; } + +table { + border-collapse: collapse; + border-spacing: 0; } + +td, +th { + padding: 0; } + td:not([align]), + th:not([align]) { + text-align: left; } + +.is-clearfix::after { + clear: both; + content: " "; + display: table; } + +.is-pulled-left { + float: left !important; } + +.is-pulled-right { + float: right !important; } + +.is-clipped { + overflow: hidden !important; } + +.is-size-1 { + font-size: 3rem !important; } + +.is-size-2 { + font-size: 2.5rem !important; } + +.is-size-3 { + font-size: 2rem !important; } + +.is-size-4 { + font-size: 1.5rem !important; } + +.is-size-5 { + font-size: 1.25rem !important; } + +.is-size-6 { + font-size: 15px !important; } + +.is-size-7, html.theme--documenter-dark .docstring > section > a.docs-sourcelink { + font-size: 0.85em !important; } + +@media screen and (max-width: 768px) { + .is-size-1-mobile { + font-size: 3rem !important; } + .is-size-2-mobile { + font-size: 2.5rem !important; } + .is-size-3-mobile { + font-size: 2rem !important; } + .is-size-4-mobile { + font-size: 1.5rem !important; } + .is-size-5-mobile { + font-size: 1.25rem !important; } + .is-size-6-mobile { + font-size: 15px !important; } + .is-size-7-mobile { + font-size: 0.85em !important; } } + +@media screen and (min-width: 769px), print { + .is-size-1-tablet { + font-size: 3rem !important; } + .is-size-2-tablet { + font-size: 2.5rem !important; } + .is-size-3-tablet { + font-size: 2rem !important; } + .is-size-4-tablet { + font-size: 1.5rem !important; } + .is-size-5-tablet { + font-size: 1.25rem !important; } + .is-size-6-tablet { + font-size: 15px !important; } + .is-size-7-tablet { + font-size: 0.85em !important; } } + +@media screen and (max-width: 1055px) { + .is-size-1-touch { + font-size: 3rem !important; } + .is-size-2-touch { + font-size: 2.5rem !important; } + .is-size-3-touch { + font-size: 2rem !important; } + .is-size-4-touch { + font-size: 1.5rem !important; } + .is-size-5-touch { + font-size: 1.25rem !important; } + .is-size-6-touch { + font-size: 15px !important; } + .is-size-7-touch { + font-size: 0.85em !important; } } + +@media screen and (min-width: 1056px) { + .is-size-1-desktop { + font-size: 3rem !important; } + .is-size-2-desktop { + font-size: 2.5rem !important; } + .is-size-3-desktop { + font-size: 2rem !important; } + .is-size-4-desktop { + font-size: 1.5rem !important; } + .is-size-5-desktop { + font-size: 1.25rem !important; } + .is-size-6-desktop { + font-size: 15px !important; } + .is-size-7-desktop { + font-size: 0.85em !important; } } + +@media screen and (min-width: 1216px) { + .is-size-1-widescreen { + font-size: 3rem !important; } + .is-size-2-widescreen { + font-size: 2.5rem !important; } + .is-size-3-widescreen { + font-size: 2rem !important; } + .is-size-4-widescreen { + font-size: 1.5rem !important; } + .is-size-5-widescreen { + font-size: 1.25rem !important; } + .is-size-6-widescreen { + font-size: 15px !important; } + .is-size-7-widescreen { + font-size: 0.85em !important; } } + +@media screen and (min-width: 1408px) { + .is-size-1-fullhd { + font-size: 3rem !important; } + .is-size-2-fullhd { + font-size: 2.5rem !important; } + .is-size-3-fullhd { + font-size: 2rem !important; } + .is-size-4-fullhd { + font-size: 1.5rem !important; } + .is-size-5-fullhd { + font-size: 1.25rem !important; } + .is-size-6-fullhd { + font-size: 15px !important; } + .is-size-7-fullhd { + font-size: 0.85em !important; } } + +.has-text-centered { + text-align: center !important; } + +.has-text-justified { + text-align: justify !important; } + +.has-text-left { + text-align: left !important; } + +.has-text-right { + text-align: right !important; } + +@media screen and (max-width: 768px) { + .has-text-centered-mobile { + text-align: center !important; } } + +@media screen and (min-width: 769px), print { + .has-text-centered-tablet { + text-align: center !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .has-text-centered-tablet-only { + text-align: center !important; } } + +@media screen and (max-width: 1055px) { + .has-text-centered-touch { + text-align: center !important; } } + +@media screen and (min-width: 1056px) { + .has-text-centered-desktop { + text-align: center !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .has-text-centered-desktop-only { + text-align: center !important; } } + +@media screen and (min-width: 1216px) { + .has-text-centered-widescreen { + text-align: center !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-centered-widescreen-only { + text-align: center !important; } } + +@media screen and (min-width: 1408px) { + .has-text-centered-fullhd { + text-align: center !important; } } + +@media screen and (max-width: 768px) { + .has-text-justified-mobile { + text-align: justify !important; } } + +@media screen and (min-width: 769px), print { + .has-text-justified-tablet { + text-align: justify !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .has-text-justified-tablet-only { + text-align: justify !important; } } + +@media screen and (max-width: 1055px) { + .has-text-justified-touch { + text-align: justify !important; } } + +@media screen and (min-width: 1056px) { + .has-text-justified-desktop { + text-align: justify !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .has-text-justified-desktop-only { + text-align: justify !important; } } + +@media screen and (min-width: 1216px) { + .has-text-justified-widescreen { + text-align: justify !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-justified-widescreen-only { + text-align: justify !important; } } + +@media screen and (min-width: 1408px) { + .has-text-justified-fullhd { + text-align: justify !important; } } + +@media screen and (max-width: 768px) { + .has-text-left-mobile { + text-align: left !important; } } + +@media screen and (min-width: 769px), print { + .has-text-left-tablet { + text-align: left !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .has-text-left-tablet-only { + text-align: left !important; } } + +@media screen and (max-width: 1055px) { + .has-text-left-touch { + text-align: left !important; } } + +@media screen and (min-width: 1056px) { + .has-text-left-desktop { + text-align: left !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .has-text-left-desktop-only { + text-align: left !important; } } + +@media screen and (min-width: 1216px) { + .has-text-left-widescreen { + text-align: left !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-left-widescreen-only { + text-align: left !important; } } + +@media screen and (min-width: 1408px) { + .has-text-left-fullhd { + text-align: left !important; } } + +@media screen and (max-width: 768px) { + .has-text-right-mobile { + text-align: right !important; } } + +@media screen and (min-width: 769px), print { + .has-text-right-tablet { + text-align: right !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .has-text-right-tablet-only { + text-align: right !important; } } + +@media screen and (max-width: 1055px) { + .has-text-right-touch { + text-align: right !important; } } + +@media screen and (min-width: 1056px) { + .has-text-right-desktop { + text-align: right !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .has-text-right-desktop-only { + text-align: right !important; } } + +@media screen and (min-width: 1216px) { + .has-text-right-widescreen { + text-align: right !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-right-widescreen-only { + text-align: right !important; } } + +@media screen and (min-width: 1408px) { + .has-text-right-fullhd { + text-align: right !important; } } + +.is-capitalized { + text-transform: capitalize !important; } + +.is-lowercase { + text-transform: lowercase !important; } + +.is-uppercase { + text-transform: uppercase !important; } + +.is-italic { + font-style: italic !important; } + +.has-text-white { + color: white !important; } + +a.has-text-white:hover, a.has-text-white:focus { + color: #e6e6e6 !important; } + +.has-background-white { + background-color: white !important; } + +.has-text-black { + color: #0a0a0a !important; } + +a.has-text-black:hover, a.has-text-black:focus { + color: black !important; } + +.has-background-black { + background-color: #0a0a0a !important; } + +.has-text-light { + color: #ecf0f1 !important; } + +a.has-text-light:hover, a.has-text-light:focus { + color: #cfd9db !important; } + +.has-background-light { + background-color: #ecf0f1 !important; } + +.has-text-dark { + color: #282f2f !important; } + +a.has-text-dark:hover, a.has-text-dark:focus { + color: #111414 !important; } + +.has-background-dark { + background-color: #282f2f !important; } + +.has-text-primary { + color: #375a7f !important; } + +a.has-text-primary:hover, a.has-text-primary:focus { + color: #28415b !important; } + +.has-background-primary { + background-color: #375a7f !important; } + +.has-text-link { + color: #1abc9c !important; } + +a.has-text-link:hover, a.has-text-link:focus { + color: #148f77 !important; } + +.has-background-link { + background-color: #1abc9c !important; } + +.has-text-info { + color: #024c7d !important; } + +a.has-text-info:hover, a.has-text-info:focus { + color: #012d4b !important; } + +.has-background-info { + background-color: #024c7d !important; } + +.has-text-success { + color: #008438 !important; } + +a.has-text-success:hover, a.has-text-success:focus { + color: #005122 !important; } + +.has-background-success { + background-color: #008438 !important; } + +.has-text-warning { + color: #ad8100 !important; } + +a.has-text-warning:hover, a.has-text-warning:focus { + color: #7a5b00 !important; } + +.has-background-warning { + background-color: #ad8100 !important; } + +.has-text-danger { + color: #9e1b0d !important; } + +a.has-text-danger:hover, a.has-text-danger:focus { + color: #6f1309 !important; } + +.has-background-danger { + background-color: #9e1b0d !important; } + +.has-text-black-bis { + color: #121212 !important; } + +.has-background-black-bis { + background-color: #121212 !important; } + +.has-text-black-ter { + color: #242424 !important; } + +.has-background-black-ter { + background-color: #242424 !important; } + +.has-text-grey-darker { + color: #282f2f !important; } + +.has-background-grey-darker { + background-color: #282f2f !important; } + +.has-text-grey-dark { + color: #343c3d !important; } + +.has-background-grey-dark { + background-color: #343c3d !important; } + +.has-text-grey { + color: #5e6d6f !important; } + +.has-background-grey { + background-color: #5e6d6f !important; } + +.has-text-grey-light { + color: #8c9b9d !important; } + +.has-background-grey-light { + background-color: #8c9b9d !important; } + +.has-text-grey-lighter { + color: #dbdee0 !important; } + +.has-background-grey-lighter { + background-color: #dbdee0 !important; } + +.has-text-white-ter { + color: #ecf0f1 !important; } + +.has-background-white-ter { + background-color: #ecf0f1 !important; } + +.has-text-white-bis { + color: #fafafa !important; } + +.has-background-white-bis { + background-color: #fafafa !important; } + +.has-text-weight-light { + font-weight: 300 !important; } + +.has-text-weight-normal { + font-weight: 400 !important; } + +.has-text-weight-medium { + font-weight: 500 !important; } + +.has-text-weight-semibold { + font-weight: 600 !important; } + +.has-text-weight-bold { + font-weight: 700 !important; } + +.is-family-primary { + font-family: "Lato Medium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; } + +.is-family-secondary { + font-family: "Lato Medium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; } + +.is-family-sans-serif { + font-family: "Lato Medium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; } + +.is-family-monospace { + font-family: "JuliaMono", "SFMono-Regular", "Menlo", "Consolas", "Liberation Mono", "DejaVu Sans Mono", monospace !important; } + +.is-family-code { + font-family: "JuliaMono", "SFMono-Regular", "Menlo", "Consolas", "Liberation Mono", "DejaVu Sans Mono", monospace !important; } + +.is-block { + display: block !important; } + +@media screen and (max-width: 768px) { + .is-block-mobile { + display: block !important; } } + +@media screen and (min-width: 769px), print { + .is-block-tablet { + display: block !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-block-tablet-only { + display: block !important; } } + +@media screen and (max-width: 1055px) { + .is-block-touch { + display: block !important; } } + +@media screen and (min-width: 1056px) { + .is-block-desktop { + display: block !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-block-desktop-only { + display: block !important; } } + +@media screen and (min-width: 1216px) { + .is-block-widescreen { + display: block !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-block-widescreen-only { + display: block !important; } } + +@media screen and (min-width: 1408px) { + .is-block-fullhd { + display: block !important; } } + +.is-flex { + display: flex !important; } + +@media screen and (max-width: 768px) { + .is-flex-mobile { + display: flex !important; } } + +@media screen and (min-width: 769px), print { + .is-flex-tablet { + display: flex !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-flex-tablet-only { + display: flex !important; } } + +@media screen and (max-width: 1055px) { + .is-flex-touch { + display: flex !important; } } + +@media screen and (min-width: 1056px) { + .is-flex-desktop { + display: flex !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-flex-desktop-only { + display: flex !important; } } + +@media screen and (min-width: 1216px) { + .is-flex-widescreen { + display: flex !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-flex-widescreen-only { + display: flex !important; } } + +@media screen and (min-width: 1408px) { + .is-flex-fullhd { + display: flex !important; } } + +.is-inline { + display: inline !important; } + +@media screen and (max-width: 768px) { + .is-inline-mobile { + display: inline !important; } } + +@media screen and (min-width: 769px), print { + .is-inline-tablet { + display: inline !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-inline-tablet-only { + display: inline !important; } } + +@media screen and (max-width: 1055px) { + .is-inline-touch { + display: inline !important; } } + +@media screen and (min-width: 1056px) { + .is-inline-desktop { + display: inline !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-inline-desktop-only { + display: inline !important; } } + +@media screen and (min-width: 1216px) { + .is-inline-widescreen { + display: inline !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-inline-widescreen-only { + display: inline !important; } } + +@media screen and (min-width: 1408px) { + .is-inline-fullhd { + display: inline !important; } } + +.is-inline-block { + display: inline-block !important; } + +@media screen and (max-width: 768px) { + .is-inline-block-mobile { + display: inline-block !important; } } + +@media screen and (min-width: 769px), print { + .is-inline-block-tablet { + display: inline-block !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-inline-block-tablet-only { + display: inline-block !important; } } + +@media screen and (max-width: 1055px) { + .is-inline-block-touch { + display: inline-block !important; } } + +@media screen and (min-width: 1056px) { + .is-inline-block-desktop { + display: inline-block !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-inline-block-desktop-only { + display: inline-block !important; } } + +@media screen and (min-width: 1216px) { + .is-inline-block-widescreen { + display: inline-block !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-inline-block-widescreen-only { + display: inline-block !important; } } + +@media screen and (min-width: 1408px) { + .is-inline-block-fullhd { + display: inline-block !important; } } + +.is-inline-flex { + display: inline-flex !important; } + +@media screen and (max-width: 768px) { + .is-inline-flex-mobile { + display: inline-flex !important; } } + +@media screen and (min-width: 769px), print { + .is-inline-flex-tablet { + display: inline-flex !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-inline-flex-tablet-only { + display: inline-flex !important; } } + +@media screen and (max-width: 1055px) { + .is-inline-flex-touch { + display: inline-flex !important; } } + +@media screen and (min-width: 1056px) { + .is-inline-flex-desktop { + display: inline-flex !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-inline-flex-desktop-only { + display: inline-flex !important; } } + +@media screen and (min-width: 1216px) { + .is-inline-flex-widescreen { + display: inline-flex !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-inline-flex-widescreen-only { + display: inline-flex !important; } } + +@media screen and (min-width: 1408px) { + .is-inline-flex-fullhd { + display: inline-flex !important; } } + +.is-hidden { + display: none !important; } + +.is-sr-only { + border: none !important; + clip: rect(0, 0, 0, 0) !important; + height: 0.01em !important; + overflow: hidden !important; + padding: 0 !important; + position: absolute !important; + white-space: nowrap !important; + width: 0.01em !important; } + +@media screen and (max-width: 768px) { + .is-hidden-mobile { + display: none !important; } } + +@media screen and (min-width: 769px), print { + .is-hidden-tablet { + display: none !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-hidden-tablet-only { + display: none !important; } } + +@media screen and (max-width: 1055px) { + .is-hidden-touch { + display: none !important; } } + +@media screen and (min-width: 1056px) { + .is-hidden-desktop { + display: none !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-hidden-desktop-only { + display: none !important; } } + +@media screen and (min-width: 1216px) { + .is-hidden-widescreen { + display: none !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-hidden-widescreen-only { + display: none !important; } } + +@media screen and (min-width: 1408px) { + .is-hidden-fullhd { + display: none !important; } } + +.is-invisible { + visibility: hidden !important; } + +@media screen and (max-width: 768px) { + .is-invisible-mobile { + visibility: hidden !important; } } + +@media screen and (min-width: 769px), print { + .is-invisible-tablet { + visibility: hidden !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-invisible-tablet-only { + visibility: hidden !important; } } + +@media screen and (max-width: 1055px) { + .is-invisible-touch { + visibility: hidden !important; } } + +@media screen and (min-width: 1056px) { + .is-invisible-desktop { + visibility: hidden !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-invisible-desktop-only { + visibility: hidden !important; } } + +@media screen and (min-width: 1216px) { + .is-invisible-widescreen { + visibility: hidden !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-invisible-widescreen-only { + visibility: hidden !important; } } + +@media screen and (min-width: 1408px) { + .is-invisible-fullhd { + visibility: hidden !important; } } + +.is-marginless { + margin: 0 !important; } + +.is-paddingless { + padding: 0 !important; } + +.is-radiusless { + border-radius: 0 !important; } + +.is-shadowless { + box-shadow: none !important; } + +.is-relative { + position: relative !important; } + +html.theme--documenter-dark { + /* This file contain the overall layout. + * + * The main container is
    that is identified by id #documenter. + */ + /*! + Theme: a11y-dark + Author: @ericwbailey + Maintainer: @ericwbailey + + Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css +*/ + /* Comment */ + /* Red */ + /* Orange */ + /* Yellow */ + /* Green */ + /* Blue */ + /* Purple */ } + html.theme--documenter-dark html { + background-color: #1f2424; + font-size: 16px; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + min-width: 300px; + overflow-x: auto; + overflow-y: scroll; + text-rendering: optimizeLegibility; + text-size-adjust: 100%; } + html.theme--documenter-dark article, + html.theme--documenter-dark aside, + html.theme--documenter-dark figure, + html.theme--documenter-dark footer, + html.theme--documenter-dark header, + html.theme--documenter-dark hgroup, + html.theme--documenter-dark section { + display: block; } + html.theme--documenter-dark body, + html.theme--documenter-dark button, + html.theme--documenter-dark input, + html.theme--documenter-dark select, + html.theme--documenter-dark textarea { + font-family: "Lato Medium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "Helvetica", "Arial", sans-serif; } + html.theme--documenter-dark code, + html.theme--documenter-dark pre { + -moz-osx-font-smoothing: auto; + -webkit-font-smoothing: auto; + font-family: "JuliaMono", "SFMono-Regular", "Menlo", "Consolas", "Liberation Mono", "DejaVu Sans Mono", monospace; } + html.theme--documenter-dark body { + color: #fff; + font-size: 1em; + font-weight: 400; + line-height: 1.5; } + html.theme--documenter-dark a { + color: #1abc9c; + cursor: pointer; + text-decoration: none; } + html.theme--documenter-dark a strong { + color: currentColor; } + html.theme--documenter-dark a:hover { + color: #1dd2af; } + html.theme--documenter-dark code { + background-color: rgba(255, 255, 255, 0.05); + color: #ececec; + font-size: 0.875em; + font-weight: normal; + padding: 0.1em; } + html.theme--documenter-dark hr { + background-color: #282f2f; + border: none; + display: block; + height: 2px; + margin: 1.5rem 0; } + html.theme--documenter-dark img { + height: auto; + max-width: 100%; } + html.theme--documenter-dark input[type="checkbox"], + html.theme--documenter-dark input[type="radio"] { + vertical-align: baseline; } + html.theme--documenter-dark small { + font-size: 0.875em; } + html.theme--documenter-dark span { + font-style: inherit; + font-weight: inherit; } + html.theme--documenter-dark strong { + color: #f2f2f2; + font-weight: 700; } + html.theme--documenter-dark fieldset { + border: none; } + html.theme--documenter-dark pre { + -webkit-overflow-scrolling: touch; + background-color: #282f2f; + color: #fff; + font-size: 0.875em; + overflow-x: auto; + padding: 1.25rem 1.5rem; + white-space: pre; + word-wrap: normal; } + html.theme--documenter-dark pre code { + background-color: transparent; + color: currentColor; + font-size: 1em; + padding: 0; } + html.theme--documenter-dark table td, + html.theme--documenter-dark table th { + vertical-align: top; } + html.theme--documenter-dark table td:not([align]), + html.theme--documenter-dark table th:not([align]) { + text-align: left; } + html.theme--documenter-dark table th { + color: #f2f2f2; } + html.theme--documenter-dark .box { + background-color: #343c3d; + border-radius: 8px; + box-shadow: none; + color: #fff; + display: block; + padding: 1.25rem; } + html.theme--documenter-dark a.box:hover, html.theme--documenter-dark a.box:focus { + box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px #1abc9c; } + html.theme--documenter-dark a.box:active { + box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2), 0 0 0 1px #1abc9c; } + html.theme--documenter-dark .button { + background-color: #282f2f; + border-color: #4c5759; + border-width: 1px; + color: #375a7f; + cursor: pointer; + justify-content: center; + padding-bottom: calc(0.375em - 1px); + padding-left: 0.75em; + padding-right: 0.75em; + padding-top: calc(0.375em - 1px); + text-align: center; + white-space: nowrap; } + html.theme--documenter-dark .button strong { + color: inherit; } + html.theme--documenter-dark .button .icon, html.theme--documenter-dark .button .icon.is-small, html.theme--documenter-dark .button #documenter .docs-sidebar form.docs-search > input.icon, html.theme--documenter-dark #documenter .docs-sidebar .button form.docs-search > input.icon, html.theme--documenter-dark .button .icon.is-medium, html.theme--documenter-dark .button .icon.is-large { + height: 1.5em; + width: 1.5em; } + html.theme--documenter-dark .button .icon:first-child:not(:last-child) { + margin-left: calc(-0.375em - 1px); + margin-right: 0.1875em; } + html.theme--documenter-dark .button .icon:last-child:not(:first-child) { + margin-left: 0.1875em; + margin-right: calc(-0.375em - 1px); } + html.theme--documenter-dark .button .icon:first-child:last-child { + margin-left: calc(-0.375em - 1px); + margin-right: calc(-0.375em - 1px); } + html.theme--documenter-dark .button:hover, html.theme--documenter-dark .button.is-hovered { + border-color: #8c9b9d; + color: #f2f2f2; } + html.theme--documenter-dark .button:focus, html.theme--documenter-dark .button.is-focused { + border-color: #8c9b9d; + color: #17a689; } + html.theme--documenter-dark .button:focus:not(:active), html.theme--documenter-dark .button.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(26, 188, 156, 0.25); } + html.theme--documenter-dark .button:active, html.theme--documenter-dark .button.is-active { + border-color: #343c3d; + color: #f2f2f2; } + html.theme--documenter-dark .button.is-text { + background-color: transparent; + border-color: transparent; + color: #fff; + text-decoration: underline; } + html.theme--documenter-dark .button.is-text:hover, html.theme--documenter-dark .button.is-text.is-hovered, html.theme--documenter-dark .button.is-text:focus, html.theme--documenter-dark .button.is-text.is-focused { + background-color: #282f2f; + color: #f2f2f2; } + html.theme--documenter-dark .button.is-text:active, html.theme--documenter-dark .button.is-text.is-active { + background-color: #1d2122; + color: #f2f2f2; } + html.theme--documenter-dark .button.is-text[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-text { + background-color: transparent; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-white { + background-color: white; + border-color: transparent; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-white:hover, html.theme--documenter-dark .button.is-white.is-hovered { + background-color: #f9f9f9; + border-color: transparent; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-white:focus, html.theme--documenter-dark .button.is-white.is-focused { + border-color: transparent; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-white:focus:not(:active), html.theme--documenter-dark .button.is-white.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); } + html.theme--documenter-dark .button.is-white:active, html.theme--documenter-dark .button.is-white.is-active { + background-color: #f2f2f2; + border-color: transparent; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-white[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-white { + background-color: white; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-white.is-inverted { + background-color: #0a0a0a; + color: white; } + html.theme--documenter-dark .button.is-white.is-inverted:hover, html.theme--documenter-dark .button.is-white.is-inverted.is-hovered { + background-color: black; } + html.theme--documenter-dark .button.is-white.is-inverted[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-white.is-inverted { + background-color: #0a0a0a; + border-color: transparent; + box-shadow: none; + color: white; } + html.theme--documenter-dark .button.is-white.is-loading::after { + border-color: transparent transparent #0a0a0a #0a0a0a !important; } + html.theme--documenter-dark .button.is-white.is-outlined { + background-color: transparent; + border-color: white; + color: white; } + html.theme--documenter-dark .button.is-white.is-outlined:hover, html.theme--documenter-dark .button.is-white.is-outlined.is-hovered, html.theme--documenter-dark .button.is-white.is-outlined:focus, html.theme--documenter-dark .button.is-white.is-outlined.is-focused { + background-color: white; + border-color: white; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-white.is-outlined.is-loading::after { + border-color: transparent transparent white white !important; } + html.theme--documenter-dark .button.is-white.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-white.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-white.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-white.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #0a0a0a #0a0a0a !important; } + html.theme--documenter-dark .button.is-white.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-white.is-outlined { + background-color: transparent; + border-color: white; + box-shadow: none; + color: white; } + html.theme--documenter-dark .button.is-white.is-inverted.is-outlined { + background-color: transparent; + border-color: #0a0a0a; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-white.is-inverted.is-outlined:hover, html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .button.is-white.is-inverted.is-outlined:focus, html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-focused { + background-color: #0a0a0a; + color: white; } + html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent white white !important; } + html.theme--documenter-dark .button.is-white.is-inverted.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-white.is-inverted.is-outlined { + background-color: transparent; + border-color: #0a0a0a; + box-shadow: none; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-black { + background-color: #0a0a0a; + border-color: transparent; + color: white; } + html.theme--documenter-dark .button.is-black:hover, html.theme--documenter-dark .button.is-black.is-hovered { + background-color: #040404; + border-color: transparent; + color: white; } + html.theme--documenter-dark .button.is-black:focus, html.theme--documenter-dark .button.is-black.is-focused { + border-color: transparent; + color: white; } + html.theme--documenter-dark .button.is-black:focus:not(:active), html.theme--documenter-dark .button.is-black.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); } + html.theme--documenter-dark .button.is-black:active, html.theme--documenter-dark .button.is-black.is-active { + background-color: black; + border-color: transparent; + color: white; } + html.theme--documenter-dark .button.is-black[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-black { + background-color: #0a0a0a; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-black.is-inverted { + background-color: white; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-black.is-inverted:hover, html.theme--documenter-dark .button.is-black.is-inverted.is-hovered { + background-color: #f2f2f2; } + html.theme--documenter-dark .button.is-black.is-inverted[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-black.is-inverted { + background-color: white; + border-color: transparent; + box-shadow: none; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-black.is-loading::after { + border-color: transparent transparent white white !important; } + html.theme--documenter-dark .button.is-black.is-outlined { + background-color: transparent; + border-color: #0a0a0a; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-black.is-outlined:hover, html.theme--documenter-dark .button.is-black.is-outlined.is-hovered, html.theme--documenter-dark .button.is-black.is-outlined:focus, html.theme--documenter-dark .button.is-black.is-outlined.is-focused { + background-color: #0a0a0a; + border-color: #0a0a0a; + color: white; } + html.theme--documenter-dark .button.is-black.is-outlined.is-loading::after { + border-color: transparent transparent #0a0a0a #0a0a0a !important; } + html.theme--documenter-dark .button.is-black.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-black.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-black.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-black.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent white white !important; } + html.theme--documenter-dark .button.is-black.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-black.is-outlined { + background-color: transparent; + border-color: #0a0a0a; + box-shadow: none; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-black.is-inverted.is-outlined { + background-color: transparent; + border-color: white; + color: white; } + html.theme--documenter-dark .button.is-black.is-inverted.is-outlined:hover, html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .button.is-black.is-inverted.is-outlined:focus, html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-focused { + background-color: white; + color: #0a0a0a; } + html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #0a0a0a #0a0a0a !important; } + html.theme--documenter-dark .button.is-black.is-inverted.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-black.is-inverted.is-outlined { + background-color: transparent; + border-color: white; + box-shadow: none; + color: white; } + html.theme--documenter-dark .button.is-light { + background-color: #ecf0f1; + border-color: transparent; + color: #282f2f; } + html.theme--documenter-dark .button.is-light:hover, html.theme--documenter-dark .button.is-light.is-hovered { + background-color: #e5eaec; + border-color: transparent; + color: #282f2f; } + html.theme--documenter-dark .button.is-light:focus, html.theme--documenter-dark .button.is-light.is-focused { + border-color: transparent; + color: #282f2f; } + html.theme--documenter-dark .button.is-light:focus:not(:active), html.theme--documenter-dark .button.is-light.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(236, 240, 241, 0.25); } + html.theme--documenter-dark .button.is-light:active, html.theme--documenter-dark .button.is-light.is-active { + background-color: #dde4e6; + border-color: transparent; + color: #282f2f; } + html.theme--documenter-dark .button.is-light[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-light { + background-color: #ecf0f1; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-light.is-inverted { + background-color: #282f2f; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-light.is-inverted:hover, html.theme--documenter-dark .button.is-light.is-inverted.is-hovered { + background-color: #1d2122; } + html.theme--documenter-dark .button.is-light.is-inverted[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-light.is-inverted { + background-color: #282f2f; + border-color: transparent; + box-shadow: none; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-light.is-loading::after { + border-color: transparent transparent #282f2f #282f2f !important; } + html.theme--documenter-dark .button.is-light.is-outlined { + background-color: transparent; + border-color: #ecf0f1; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-light.is-outlined:hover, html.theme--documenter-dark .button.is-light.is-outlined.is-hovered, html.theme--documenter-dark .button.is-light.is-outlined:focus, html.theme--documenter-dark .button.is-light.is-outlined.is-focused { + background-color: #ecf0f1; + border-color: #ecf0f1; + color: #282f2f; } + html.theme--documenter-dark .button.is-light.is-outlined.is-loading::after { + border-color: transparent transparent #ecf0f1 #ecf0f1 !important; } + html.theme--documenter-dark .button.is-light.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-light.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-light.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-light.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #282f2f #282f2f !important; } + html.theme--documenter-dark .button.is-light.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-light.is-outlined { + background-color: transparent; + border-color: #ecf0f1; + box-shadow: none; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-light.is-inverted.is-outlined { + background-color: transparent; + border-color: #282f2f; + color: #282f2f; } + html.theme--documenter-dark .button.is-light.is-inverted.is-outlined:hover, html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .button.is-light.is-inverted.is-outlined:focus, html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-focused { + background-color: #282f2f; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #ecf0f1 #ecf0f1 !important; } + html.theme--documenter-dark .button.is-light.is-inverted.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-light.is-inverted.is-outlined { + background-color: transparent; + border-color: #282f2f; + box-shadow: none; + color: #282f2f; } + html.theme--documenter-dark .button.is-dark, html.theme--documenter-dark .content kbd.button { + background-color: #282f2f; + border-color: transparent; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-dark:hover, html.theme--documenter-dark .content kbd.button:hover, html.theme--documenter-dark .button.is-dark.is-hovered, html.theme--documenter-dark .content kbd.button.is-hovered { + background-color: #232829; + border-color: transparent; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-dark:focus, html.theme--documenter-dark .content kbd.button:focus, html.theme--documenter-dark .button.is-dark.is-focused, html.theme--documenter-dark .content kbd.button.is-focused { + border-color: transparent; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-dark:focus:not(:active), html.theme--documenter-dark .content kbd.button:focus:not(:active), html.theme--documenter-dark .button.is-dark.is-focused:not(:active), html.theme--documenter-dark .content kbd.button.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(40, 47, 47, 0.25); } + html.theme--documenter-dark .button.is-dark:active, html.theme--documenter-dark .content kbd.button:active, html.theme--documenter-dark .button.is-dark.is-active, html.theme--documenter-dark .content kbd.button.is-active { + background-color: #1d2122; + border-color: transparent; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-dark[disabled], html.theme--documenter-dark .content kbd.button[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-dark, fieldset[disabled] html.theme--documenter-dark .content kbd.button { + background-color: #282f2f; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-dark.is-inverted, html.theme--documenter-dark .content kbd.button.is-inverted { + background-color: #ecf0f1; + color: #282f2f; } + html.theme--documenter-dark .button.is-dark.is-inverted:hover, html.theme--documenter-dark .content kbd.button.is-inverted:hover, html.theme--documenter-dark .button.is-dark.is-inverted.is-hovered, html.theme--documenter-dark .content kbd.button.is-inverted.is-hovered { + background-color: #dde4e6; } + html.theme--documenter-dark .button.is-dark.is-inverted[disabled], html.theme--documenter-dark .content kbd.button.is-inverted[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-inverted, fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-inverted { + background-color: #ecf0f1; + border-color: transparent; + box-shadow: none; + color: #282f2f; } + html.theme--documenter-dark .button.is-dark.is-loading::after, html.theme--documenter-dark .content kbd.button.is-loading::after { + border-color: transparent transparent #ecf0f1 #ecf0f1 !important; } + html.theme--documenter-dark .button.is-dark.is-outlined, html.theme--documenter-dark .content kbd.button.is-outlined { + background-color: transparent; + border-color: #282f2f; + color: #282f2f; } + html.theme--documenter-dark .button.is-dark.is-outlined:hover, html.theme--documenter-dark .content kbd.button.is-outlined:hover, html.theme--documenter-dark .button.is-dark.is-outlined.is-hovered, html.theme--documenter-dark .content kbd.button.is-outlined.is-hovered, html.theme--documenter-dark .button.is-dark.is-outlined:focus, html.theme--documenter-dark .content kbd.button.is-outlined:focus, html.theme--documenter-dark .button.is-dark.is-outlined.is-focused, html.theme--documenter-dark .content kbd.button.is-outlined.is-focused { + background-color: #282f2f; + border-color: #282f2f; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-dark.is-outlined.is-loading::after, html.theme--documenter-dark .content kbd.button.is-outlined.is-loading::after { + border-color: transparent transparent #282f2f #282f2f !important; } + html.theme--documenter-dark .button.is-dark.is-outlined.is-loading:hover::after, html.theme--documenter-dark .content kbd.button.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-dark.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .content kbd.button.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-dark.is-outlined.is-loading:focus::after, html.theme--documenter-dark .content kbd.button.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-dark.is-outlined.is-loading.is-focused::after, html.theme--documenter-dark .content kbd.button.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #ecf0f1 #ecf0f1 !important; } + html.theme--documenter-dark .button.is-dark.is-outlined[disabled], html.theme--documenter-dark .content kbd.button.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-outlined, fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-outlined { + background-color: transparent; + border-color: #282f2f; + box-shadow: none; + color: #282f2f; } + html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined, html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined { + background-color: transparent; + border-color: #ecf0f1; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined:hover, html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined:hover, html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined:focus, html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined:focus, html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-focused, html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-focused { + background-color: #ecf0f1; + color: #282f2f; } + html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after, html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #282f2f #282f2f !important; } + html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined[disabled], html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined, fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined { + background-color: transparent; + border-color: #ecf0f1; + box-shadow: none; + color: #ecf0f1; } + html.theme--documenter-dark .button.is-primary, html.theme--documenter-dark .docstring > section > a.button.docs-sourcelink { + background-color: #375a7f; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-primary:hover, html.theme--documenter-dark .docstring > section > a.button.docs-sourcelink:hover, html.theme--documenter-dark .button.is-primary.is-hovered, html.theme--documenter-dark .docstring > section > a.button.is-hovered.docs-sourcelink { + background-color: #335476; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-primary:focus, html.theme--documenter-dark .docstring > section > a.button.docs-sourcelink:focus, html.theme--documenter-dark .button.is-primary.is-focused, html.theme--documenter-dark .docstring > section > a.button.is-focused.docs-sourcelink { + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-primary:focus:not(:active), html.theme--documenter-dark .docstring > section > a.button.docs-sourcelink:focus:not(:active), html.theme--documenter-dark .button.is-primary.is-focused:not(:active), html.theme--documenter-dark .docstring > section > a.button.is-focused.docs-sourcelink:not(:active) { + box-shadow: 0 0 0 0.125em rgba(55, 90, 127, 0.25); } + html.theme--documenter-dark .button.is-primary:active, html.theme--documenter-dark .docstring > section > a.button.docs-sourcelink:active, html.theme--documenter-dark .button.is-primary.is-active, html.theme--documenter-dark .docstring > section > a.button.is-active.docs-sourcelink { + background-color: #2f4d6d; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-primary[disabled], html.theme--documenter-dark .docstring > section > a.button.docs-sourcelink[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-primary, fieldset[disabled] html.theme--documenter-dark .docstring > section > a.button.docs-sourcelink { + background-color: #375a7f; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-primary.is-inverted, html.theme--documenter-dark .docstring > section > a.button.is-inverted.docs-sourcelink { + background-color: #fff; + color: #375a7f; } + html.theme--documenter-dark .button.is-primary.is-inverted:hover, html.theme--documenter-dark .docstring > section > a.button.is-inverted.docs-sourcelink:hover, html.theme--documenter-dark .button.is-primary.is-inverted.is-hovered, html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-hovered.docs-sourcelink { + background-color: #f2f2f2; } + html.theme--documenter-dark .button.is-primary.is-inverted[disabled], html.theme--documenter-dark .docstring > section > a.button.is-inverted.docs-sourcelink[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-inverted, fieldset[disabled] html.theme--documenter-dark .docstring > section > a.button.is-inverted.docs-sourcelink { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #375a7f; } + html.theme--documenter-dark .button.is-primary.is-loading::after, html.theme--documenter-dark .docstring > section > a.button.is-loading.docs-sourcelink::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-primary.is-outlined, html.theme--documenter-dark .docstring > section > a.button.is-outlined.docs-sourcelink { + background-color: transparent; + border-color: #375a7f; + color: #375a7f; } + html.theme--documenter-dark .button.is-primary.is-outlined:hover, html.theme--documenter-dark .docstring > section > a.button.is-outlined.docs-sourcelink:hover, html.theme--documenter-dark .button.is-primary.is-outlined.is-hovered, html.theme--documenter-dark .docstring > section > a.button.is-outlined.is-hovered.docs-sourcelink, html.theme--documenter-dark .button.is-primary.is-outlined:focus, html.theme--documenter-dark .docstring > section > a.button.is-outlined.docs-sourcelink:focus, html.theme--documenter-dark .button.is-primary.is-outlined.is-focused, html.theme--documenter-dark .docstring > section > a.button.is-outlined.is-focused.docs-sourcelink { + background-color: #375a7f; + border-color: #375a7f; + color: #fff; } + html.theme--documenter-dark .button.is-primary.is-outlined.is-loading::after, html.theme--documenter-dark .docstring > section > a.button.is-outlined.is-loading.docs-sourcelink::after { + border-color: transparent transparent #375a7f #375a7f !important; } + html.theme--documenter-dark .button.is-primary.is-outlined.is-loading:hover::after, html.theme--documenter-dark .docstring > section > a.button.is-outlined.is-loading.docs-sourcelink:hover::after, html.theme--documenter-dark .button.is-primary.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .docstring > section > a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after, html.theme--documenter-dark .button.is-primary.is-outlined.is-loading:focus::after, html.theme--documenter-dark .docstring > section > a.button.is-outlined.is-loading.docs-sourcelink:focus::after, html.theme--documenter-dark .button.is-primary.is-outlined.is-loading.is-focused::after, html.theme--documenter-dark .docstring > section > a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-primary.is-outlined[disabled], html.theme--documenter-dark .docstring > section > a.button.is-outlined.docs-sourcelink[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-outlined, fieldset[disabled] html.theme--documenter-dark .docstring > section > a.button.is-outlined.docs-sourcelink { + background-color: transparent; + border-color: #375a7f; + box-shadow: none; + color: #375a7f; } + html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined, html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.docs-sourcelink { + background-color: transparent; + border-color: #fff; + color: #fff; } + html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined:hover, html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.docs-sourcelink:hover, html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink, html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined:focus, html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.docs-sourcelink:focus, html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-focused, html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.is-focused.docs-sourcelink { + background-color: #fff; + color: #375a7f; } + html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after, html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after, html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after, html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after, html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after { + border-color: transparent transparent #375a7f #375a7f !important; } + html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined[disabled], html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.docs-sourcelink[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined, fieldset[disabled] html.theme--documenter-dark .docstring > section > a.button.is-inverted.is-outlined.docs-sourcelink { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + html.theme--documenter-dark .button.is-link { + background-color: #1abc9c; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-link:hover, html.theme--documenter-dark .button.is-link.is-hovered { + background-color: #18b193; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-link:focus, html.theme--documenter-dark .button.is-link.is-focused { + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-link:focus:not(:active), html.theme--documenter-dark .button.is-link.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(26, 188, 156, 0.25); } + html.theme--documenter-dark .button.is-link:active, html.theme--documenter-dark .button.is-link.is-active { + background-color: #17a689; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-link[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-link { + background-color: #1abc9c; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-link.is-inverted { + background-color: #fff; + color: #1abc9c; } + html.theme--documenter-dark .button.is-link.is-inverted:hover, html.theme--documenter-dark .button.is-link.is-inverted.is-hovered { + background-color: #f2f2f2; } + html.theme--documenter-dark .button.is-link.is-inverted[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-link.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #1abc9c; } + html.theme--documenter-dark .button.is-link.is-loading::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-link.is-outlined { + background-color: transparent; + border-color: #1abc9c; + color: #1abc9c; } + html.theme--documenter-dark .button.is-link.is-outlined:hover, html.theme--documenter-dark .button.is-link.is-outlined.is-hovered, html.theme--documenter-dark .button.is-link.is-outlined:focus, html.theme--documenter-dark .button.is-link.is-outlined.is-focused { + background-color: #1abc9c; + border-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark .button.is-link.is-outlined.is-loading::after { + border-color: transparent transparent #1abc9c #1abc9c !important; } + html.theme--documenter-dark .button.is-link.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-link.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-link.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-link.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-link.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-link.is-outlined { + background-color: transparent; + border-color: #1abc9c; + box-shadow: none; + color: #1abc9c; } + html.theme--documenter-dark .button.is-link.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; } + html.theme--documenter-dark .button.is-link.is-inverted.is-outlined:hover, html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .button.is-link.is-inverted.is-outlined:focus, html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: #1abc9c; } + html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #1abc9c #1abc9c !important; } + html.theme--documenter-dark .button.is-link.is-inverted.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-link.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + html.theme--documenter-dark .button.is-info { + background-color: #024c7d; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-info:hover, html.theme--documenter-dark .button.is-info.is-hovered { + background-color: #024470; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-info:focus, html.theme--documenter-dark .button.is-info.is-focused { + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-info:focus:not(:active), html.theme--documenter-dark .button.is-info.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(2, 76, 125, 0.25); } + html.theme--documenter-dark .button.is-info:active, html.theme--documenter-dark .button.is-info.is-active { + background-color: #023d64; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-info[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-info { + background-color: #024c7d; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-info.is-inverted { + background-color: #fff; + color: #024c7d; } + html.theme--documenter-dark .button.is-info.is-inverted:hover, html.theme--documenter-dark .button.is-info.is-inverted.is-hovered { + background-color: #f2f2f2; } + html.theme--documenter-dark .button.is-info.is-inverted[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-info.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #024c7d; } + html.theme--documenter-dark .button.is-info.is-loading::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-info.is-outlined { + background-color: transparent; + border-color: #024c7d; + color: #024c7d; } + html.theme--documenter-dark .button.is-info.is-outlined:hover, html.theme--documenter-dark .button.is-info.is-outlined.is-hovered, html.theme--documenter-dark .button.is-info.is-outlined:focus, html.theme--documenter-dark .button.is-info.is-outlined.is-focused { + background-color: #024c7d; + border-color: #024c7d; + color: #fff; } + html.theme--documenter-dark .button.is-info.is-outlined.is-loading::after { + border-color: transparent transparent #024c7d #024c7d !important; } + html.theme--documenter-dark .button.is-info.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-info.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-info.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-info.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-info.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-info.is-outlined { + background-color: transparent; + border-color: #024c7d; + box-shadow: none; + color: #024c7d; } + html.theme--documenter-dark .button.is-info.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; } + html.theme--documenter-dark .button.is-info.is-inverted.is-outlined:hover, html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .button.is-info.is-inverted.is-outlined:focus, html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: #024c7d; } + html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #024c7d #024c7d !important; } + html.theme--documenter-dark .button.is-info.is-inverted.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-info.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + html.theme--documenter-dark .button.is-success { + background-color: #008438; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-success:hover, html.theme--documenter-dark .button.is-success.is-hovered { + background-color: #007733; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-success:focus, html.theme--documenter-dark .button.is-success.is-focused { + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-success:focus:not(:active), html.theme--documenter-dark .button.is-success.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(0, 132, 56, 0.25); } + html.theme--documenter-dark .button.is-success:active, html.theme--documenter-dark .button.is-success.is-active { + background-color: #006b2d; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-success[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-success { + background-color: #008438; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-success.is-inverted { + background-color: #fff; + color: #008438; } + html.theme--documenter-dark .button.is-success.is-inverted:hover, html.theme--documenter-dark .button.is-success.is-inverted.is-hovered { + background-color: #f2f2f2; } + html.theme--documenter-dark .button.is-success.is-inverted[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-success.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #008438; } + html.theme--documenter-dark .button.is-success.is-loading::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-success.is-outlined { + background-color: transparent; + border-color: #008438; + color: #008438; } + html.theme--documenter-dark .button.is-success.is-outlined:hover, html.theme--documenter-dark .button.is-success.is-outlined.is-hovered, html.theme--documenter-dark .button.is-success.is-outlined:focus, html.theme--documenter-dark .button.is-success.is-outlined.is-focused { + background-color: #008438; + border-color: #008438; + color: #fff; } + html.theme--documenter-dark .button.is-success.is-outlined.is-loading::after { + border-color: transparent transparent #008438 #008438 !important; } + html.theme--documenter-dark .button.is-success.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-success.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-success.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-success.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-success.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-success.is-outlined { + background-color: transparent; + border-color: #008438; + box-shadow: none; + color: #008438; } + html.theme--documenter-dark .button.is-success.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; } + html.theme--documenter-dark .button.is-success.is-inverted.is-outlined:hover, html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .button.is-success.is-inverted.is-outlined:focus, html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: #008438; } + html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #008438 #008438 !important; } + html.theme--documenter-dark .button.is-success.is-inverted.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-success.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + html.theme--documenter-dark .button.is-warning { + background-color: #ad8100; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-warning:hover, html.theme--documenter-dark .button.is-warning.is-hovered { + background-color: #a07700; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-warning:focus, html.theme--documenter-dark .button.is-warning.is-focused { + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-warning:focus:not(:active), html.theme--documenter-dark .button.is-warning.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(173, 129, 0, 0.25); } + html.theme--documenter-dark .button.is-warning:active, html.theme--documenter-dark .button.is-warning.is-active { + background-color: #946e00; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-warning[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-warning { + background-color: #ad8100; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-warning.is-inverted { + background-color: #fff; + color: #ad8100; } + html.theme--documenter-dark .button.is-warning.is-inverted:hover, html.theme--documenter-dark .button.is-warning.is-inverted.is-hovered { + background-color: #f2f2f2; } + html.theme--documenter-dark .button.is-warning.is-inverted[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-warning.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #ad8100; } + html.theme--documenter-dark .button.is-warning.is-loading::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-warning.is-outlined { + background-color: transparent; + border-color: #ad8100; + color: #ad8100; } + html.theme--documenter-dark .button.is-warning.is-outlined:hover, html.theme--documenter-dark .button.is-warning.is-outlined.is-hovered, html.theme--documenter-dark .button.is-warning.is-outlined:focus, html.theme--documenter-dark .button.is-warning.is-outlined.is-focused { + background-color: #ad8100; + border-color: #ad8100; + color: #fff; } + html.theme--documenter-dark .button.is-warning.is-outlined.is-loading::after { + border-color: transparent transparent #ad8100 #ad8100 !important; } + html.theme--documenter-dark .button.is-warning.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-warning.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-warning.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-warning.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-warning.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-warning.is-outlined { + background-color: transparent; + border-color: #ad8100; + box-shadow: none; + color: #ad8100; } + html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; } + html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined:hover, html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined:focus, html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: #ad8100; } + html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #ad8100 #ad8100 !important; } + html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + html.theme--documenter-dark .button.is-danger { + background-color: #9e1b0d; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-danger:hover, html.theme--documenter-dark .button.is-danger.is-hovered { + background-color: #92190c; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-danger:focus, html.theme--documenter-dark .button.is-danger.is-focused { + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-danger:focus:not(:active), html.theme--documenter-dark .button.is-danger.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(158, 27, 13, 0.25); } + html.theme--documenter-dark .button.is-danger:active, html.theme--documenter-dark .button.is-danger.is-active { + background-color: #86170b; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .button.is-danger[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-danger { + background-color: #9e1b0d; + border-color: transparent; + box-shadow: none; } + html.theme--documenter-dark .button.is-danger.is-inverted { + background-color: #fff; + color: #9e1b0d; } + html.theme--documenter-dark .button.is-danger.is-inverted:hover, html.theme--documenter-dark .button.is-danger.is-inverted.is-hovered { + background-color: #f2f2f2; } + html.theme--documenter-dark .button.is-danger.is-inverted[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-danger.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #9e1b0d; } + html.theme--documenter-dark .button.is-danger.is-loading::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-danger.is-outlined { + background-color: transparent; + border-color: #9e1b0d; + color: #9e1b0d; } + html.theme--documenter-dark .button.is-danger.is-outlined:hover, html.theme--documenter-dark .button.is-danger.is-outlined.is-hovered, html.theme--documenter-dark .button.is-danger.is-outlined:focus, html.theme--documenter-dark .button.is-danger.is-outlined.is-focused { + background-color: #9e1b0d; + border-color: #9e1b0d; + color: #fff; } + html.theme--documenter-dark .button.is-danger.is-outlined.is-loading::after { + border-color: transparent transparent #9e1b0d #9e1b0d !important; } + html.theme--documenter-dark .button.is-danger.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-danger.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-danger.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-danger.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; } + html.theme--documenter-dark .button.is-danger.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-danger.is-outlined { + background-color: transparent; + border-color: #9e1b0d; + box-shadow: none; + color: #9e1b0d; } + html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; } + html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined:hover, html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-hovered, html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined:focus, html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: #9e1b0d; } + html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading:hover::after, html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after, html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading:focus::after, html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #9e1b0d #9e1b0d !important; } + html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined[disabled], fieldset[disabled] html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + html.theme--documenter-dark .button.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.button { + border-radius: 3px; + font-size: 0.85em; } + html.theme--documenter-dark .button.is-normal { + font-size: 15px; } + html.theme--documenter-dark .button.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .button.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .button[disabled], fieldset[disabled] html.theme--documenter-dark .button { + background-color: #8c9b9d; + border-color: #dbdee0; + box-shadow: none; + opacity: 0.5; } + html.theme--documenter-dark .button.is-fullwidth { + display: flex; + width: 100%; } + html.theme--documenter-dark .button.is-loading { + color: transparent !important; + pointer-events: none; } + html.theme--documenter-dark .button.is-loading::after { + position: absolute; + left: calc(50% - (1em / 2)); + top: calc(50% - (1em / 2)); + position: absolute !important; } + html.theme--documenter-dark .button.is-static { + background-color: #282f2f; + border-color: #5e6d6f; + color: #dbdee0; + box-shadow: none; + pointer-events: none; } + html.theme--documenter-dark .button.is-rounded, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.button { + border-radius: 290486px; + padding-left: 1em; + padding-right: 1em; } + html.theme--documenter-dark .buttons { + align-items: center; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; } + html.theme--documenter-dark .buttons .button { + margin-bottom: 0.5rem; } + html.theme--documenter-dark .buttons .button:not(:last-child):not(.is-fullwidth) { + margin-right: 0.5rem; } + html.theme--documenter-dark .buttons:last-child { + margin-bottom: -0.5rem; } + html.theme--documenter-dark .buttons:not(:last-child) { + margin-bottom: 1rem; } + html.theme--documenter-dark .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large) { + border-radius: 3px; + font-size: 0.85em; } + html.theme--documenter-dark .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large) { + font-size: 1.25rem; } + html.theme--documenter-dark .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium) { + font-size: 1.5rem; } + html.theme--documenter-dark .buttons.has-addons .button:not(:first-child) { + border-bottom-left-radius: 0; + border-top-left-radius: 0; } + html.theme--documenter-dark .buttons.has-addons .button:not(:last-child) { + border-bottom-right-radius: 0; + border-top-right-radius: 0; + margin-right: -1px; } + html.theme--documenter-dark .buttons.has-addons .button:last-child { + margin-right: 0; } + html.theme--documenter-dark .buttons.has-addons .button:hover, html.theme--documenter-dark .buttons.has-addons .button.is-hovered { + z-index: 2; } + html.theme--documenter-dark .buttons.has-addons .button:focus, html.theme--documenter-dark .buttons.has-addons .button.is-focused, html.theme--documenter-dark .buttons.has-addons .button:active, html.theme--documenter-dark .buttons.has-addons .button.is-active, html.theme--documenter-dark .buttons.has-addons .button.is-selected { + z-index: 3; } + html.theme--documenter-dark .buttons.has-addons .button:focus:hover, html.theme--documenter-dark .buttons.has-addons .button.is-focused:hover, html.theme--documenter-dark .buttons.has-addons .button:active:hover, html.theme--documenter-dark .buttons.has-addons .button.is-active:hover, html.theme--documenter-dark .buttons.has-addons .button.is-selected:hover { + z-index: 4; } + html.theme--documenter-dark .buttons.has-addons .button.is-expanded { + flex-grow: 1; + flex-shrink: 1; } + html.theme--documenter-dark .buttons.is-centered { + justify-content: center; } + html.theme--documenter-dark .buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth) { + margin-left: 0.25rem; + margin-right: 0.25rem; } + html.theme--documenter-dark .buttons.is-right { + justify-content: flex-end; } + html.theme--documenter-dark .buttons.is-right:not(.has-addons) .button:not(.is-fullwidth) { + margin-left: 0.25rem; + margin-right: 0.25rem; } + html.theme--documenter-dark .container { + flex-grow: 1; + margin: 0 auto; + position: relative; + width: auto; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .container { + max-width: 992px; } + html.theme--documenter-dark .container.is-fluid { + margin-left: 32px; + margin-right: 32px; + max-width: none; } } + @media screen and (max-width: 1215px) { + html.theme--documenter-dark .container.is-widescreen { + max-width: 1152px; } } + @media screen and (max-width: 1407px) { + html.theme--documenter-dark .container.is-fullhd { + max-width: 1344px; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .container { + max-width: 1152px; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .container { + max-width: 1344px; } } + html.theme--documenter-dark .content li + li { + margin-top: 0.25em; } + html.theme--documenter-dark .content p:not(:last-child), + html.theme--documenter-dark .content dl:not(:last-child), + html.theme--documenter-dark .content ol:not(:last-child), + html.theme--documenter-dark .content ul:not(:last-child), + html.theme--documenter-dark .content blockquote:not(:last-child), + html.theme--documenter-dark .content pre:not(:last-child), + html.theme--documenter-dark .content table:not(:last-child) { + margin-bottom: 1em; } + html.theme--documenter-dark .content h1, + html.theme--documenter-dark .content h2, + html.theme--documenter-dark .content h3, + html.theme--documenter-dark .content h4, + html.theme--documenter-dark .content h5, + html.theme--documenter-dark .content h6 { + color: #f2f2f2; + font-weight: 600; + line-height: 1.125; } + html.theme--documenter-dark .content h1 { + font-size: 2em; + margin-bottom: 0.5em; } + html.theme--documenter-dark .content h1:not(:first-child) { + margin-top: 1em; } + html.theme--documenter-dark .content h2 { + font-size: 1.75em; + margin-bottom: 0.5714em; } + html.theme--documenter-dark .content h2:not(:first-child) { + margin-top: 1.1428em; } + html.theme--documenter-dark .content h3 { + font-size: 1.5em; + margin-bottom: 0.6666em; } + html.theme--documenter-dark .content h3:not(:first-child) { + margin-top: 1.3333em; } + html.theme--documenter-dark .content h4 { + font-size: 1.25em; + margin-bottom: 0.8em; } + html.theme--documenter-dark .content h5 { + font-size: 1.125em; + margin-bottom: 0.8888em; } + html.theme--documenter-dark .content h6 { + font-size: 1em; + margin-bottom: 1em; } + html.theme--documenter-dark .content blockquote { + background-color: #282f2f; + border-left: 5px solid #5e6d6f; + padding: 1.25em 1.5em; } + html.theme--documenter-dark .content ol { + list-style-position: outside; + margin-left: 2em; + margin-top: 1em; } + html.theme--documenter-dark .content ol:not([type]) { + list-style-type: decimal; } + html.theme--documenter-dark .content ol.is-lower-alpha:not([type]) { + list-style-type: lower-alpha; } + html.theme--documenter-dark .content ol.is-lower-roman:not([type]) { + list-style-type: lower-roman; } + html.theme--documenter-dark .content ol.is-upper-alpha:not([type]) { + list-style-type: upper-alpha; } + html.theme--documenter-dark .content ol.is-upper-roman:not([type]) { + list-style-type: upper-roman; } + html.theme--documenter-dark .content ul { + list-style: disc outside; + margin-left: 2em; + margin-top: 1em; } + html.theme--documenter-dark .content ul ul { + list-style-type: circle; + margin-top: 0.5em; } + html.theme--documenter-dark .content ul ul ul { + list-style-type: square; } + html.theme--documenter-dark .content dd { + margin-left: 2em; } + html.theme--documenter-dark .content figure { + margin-left: 2em; + margin-right: 2em; + text-align: center; } + html.theme--documenter-dark .content figure:not(:first-child) { + margin-top: 2em; } + html.theme--documenter-dark .content figure:not(:last-child) { + margin-bottom: 2em; } + html.theme--documenter-dark .content figure img { + display: inline-block; } + html.theme--documenter-dark .content figure figcaption { + font-style: italic; } + html.theme--documenter-dark .content pre { + -webkit-overflow-scrolling: touch; + overflow-x: auto; + padding: 0; + white-space: pre; + word-wrap: normal; } + html.theme--documenter-dark .content sup, + html.theme--documenter-dark .content sub { + font-size: 75%; } + html.theme--documenter-dark .content table { + width: 100%; } + html.theme--documenter-dark .content table td, + html.theme--documenter-dark .content table th { + border: 1px solid #5e6d6f; + border-width: 0 0 1px; + padding: 0.5em 0.75em; + vertical-align: top; } + html.theme--documenter-dark .content table th { + color: #f2f2f2; } + html.theme--documenter-dark .content table th:not([align]) { + text-align: left; } + html.theme--documenter-dark .content table thead td, + html.theme--documenter-dark .content table thead th { + border-width: 0 0 2px; + color: #f2f2f2; } + html.theme--documenter-dark .content table tfoot td, + html.theme--documenter-dark .content table tfoot th { + border-width: 2px 0 0; + color: #f2f2f2; } + html.theme--documenter-dark .content table tbody tr:last-child td, + html.theme--documenter-dark .content table tbody tr:last-child th { + border-bottom-width: 0; } + html.theme--documenter-dark .content .tabs li + li { + margin-top: 0; } + html.theme--documenter-dark .content.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.content { + font-size: 0.85em; } + html.theme--documenter-dark .content.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .content.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .icon { + align-items: center; + display: inline-flex; + justify-content: center; + height: 1.5rem; + width: 1.5rem; } + html.theme--documenter-dark .icon.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.icon { + height: 1rem; + width: 1rem; } + html.theme--documenter-dark .icon.is-medium { + height: 2rem; + width: 2rem; } + html.theme--documenter-dark .icon.is-large { + height: 3rem; + width: 3rem; } + html.theme--documenter-dark .image, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img { + display: block; + position: relative; } + html.theme--documenter-dark .image img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img img { + display: block; + height: auto; + width: 100%; } + html.theme--documenter-dark .image img.is-rounded, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img img.is-rounded { + border-radius: 290486px; } + html.theme--documenter-dark .image.is-square img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-square img, + html.theme--documenter-dark .image.is-square .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-square .has-ratio, html.theme--documenter-dark .image.is-1by1 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by1 img, + html.theme--documenter-dark .image.is-1by1 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by1 .has-ratio, html.theme--documenter-dark .image.is-5by4 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-5by4 img, + html.theme--documenter-dark .image.is-5by4 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-5by4 .has-ratio, html.theme--documenter-dark .image.is-4by3 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-4by3 img, + html.theme--documenter-dark .image.is-4by3 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-4by3 .has-ratio, html.theme--documenter-dark .image.is-3by2 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by2 img, + html.theme--documenter-dark .image.is-3by2 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by2 .has-ratio, html.theme--documenter-dark .image.is-5by3 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-5by3 img, + html.theme--documenter-dark .image.is-5by3 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-5by3 .has-ratio, html.theme--documenter-dark .image.is-16by9 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-16by9 img, + html.theme--documenter-dark .image.is-16by9 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-16by9 .has-ratio, html.theme--documenter-dark .image.is-2by1 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-2by1 img, + html.theme--documenter-dark .image.is-2by1 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-2by1 .has-ratio, html.theme--documenter-dark .image.is-3by1 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by1 img, + html.theme--documenter-dark .image.is-3by1 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by1 .has-ratio, html.theme--documenter-dark .image.is-4by5 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-4by5 img, + html.theme--documenter-dark .image.is-4by5 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-4by5 .has-ratio, html.theme--documenter-dark .image.is-3by4 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by4 img, + html.theme--documenter-dark .image.is-3by4 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by4 .has-ratio, html.theme--documenter-dark .image.is-2by3 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-2by3 img, + html.theme--documenter-dark .image.is-2by3 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-2by3 .has-ratio, html.theme--documenter-dark .image.is-3by5 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by5 img, + html.theme--documenter-dark .image.is-3by5 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by5 .has-ratio, html.theme--documenter-dark .image.is-9by16 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-9by16 img, + html.theme--documenter-dark .image.is-9by16 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-9by16 .has-ratio, html.theme--documenter-dark .image.is-1by2 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by2 img, + html.theme--documenter-dark .image.is-1by2 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by2 .has-ratio, html.theme--documenter-dark .image.is-1by3 img, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by3 img, + html.theme--documenter-dark .image.is-1by3 .has-ratio, + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by3 .has-ratio { + height: 100%; + width: 100%; } + html.theme--documenter-dark .image.is-square, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-square, html.theme--documenter-dark .image.is-1by1, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by1 { + padding-top: 100%; } + html.theme--documenter-dark .image.is-5by4, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-5by4 { + padding-top: 80%; } + html.theme--documenter-dark .image.is-4by3, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-4by3 { + padding-top: 75%; } + html.theme--documenter-dark .image.is-3by2, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by2 { + padding-top: 66.6666%; } + html.theme--documenter-dark .image.is-5by3, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-5by3 { + padding-top: 60%; } + html.theme--documenter-dark .image.is-16by9, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-16by9 { + padding-top: 56.25%; } + html.theme--documenter-dark .image.is-2by1, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-2by1 { + padding-top: 50%; } + html.theme--documenter-dark .image.is-3by1, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by1 { + padding-top: 33.3333%; } + html.theme--documenter-dark .image.is-4by5, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-4by5 { + padding-top: 125%; } + html.theme--documenter-dark .image.is-3by4, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by4 { + padding-top: 133.3333%; } + html.theme--documenter-dark .image.is-2by3, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-2by3 { + padding-top: 150%; } + html.theme--documenter-dark .image.is-3by5, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-3by5 { + padding-top: 166.6666%; } + html.theme--documenter-dark .image.is-9by16, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-9by16 { + padding-top: 177.7777%; } + html.theme--documenter-dark .image.is-1by2, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by2 { + padding-top: 200%; } + html.theme--documenter-dark .image.is-1by3, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-1by3 { + padding-top: 300%; } + html.theme--documenter-dark .image.is-16x16, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-16x16 { + height: 16px; + width: 16px; } + html.theme--documenter-dark .image.is-24x24, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-24x24 { + height: 24px; + width: 24px; } + html.theme--documenter-dark .image.is-32x32, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-32x32 { + height: 32px; + width: 32px; } + html.theme--documenter-dark .image.is-48x48, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-48x48 { + height: 48px; + width: 48px; } + html.theme--documenter-dark .image.is-64x64, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-64x64 { + height: 64px; + width: 64px; } + html.theme--documenter-dark .image.is-96x96, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-96x96 { + height: 96px; + width: 96px; } + html.theme--documenter-dark .image.is-128x128, html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img.is-128x128 { + height: 128px; + width: 128px; } + html.theme--documenter-dark .notification { + background-color: #282f2f; + border-radius: 0.4em; + padding: 1.25rem 2.5rem 1.25rem 1.5rem; + position: relative; } + html.theme--documenter-dark .notification a:not(.button):not(.dropdown-item) { + color: currentColor; + text-decoration: underline; } + html.theme--documenter-dark .notification strong { + color: currentColor; } + html.theme--documenter-dark .notification code, + html.theme--documenter-dark .notification pre { + background: white; } + html.theme--documenter-dark .notification pre code { + background: transparent; } + html.theme--documenter-dark .notification > .delete { + position: absolute; + right: 0.5rem; + top: 0.5rem; } + html.theme--documenter-dark .notification .title, + html.theme--documenter-dark .notification .subtitle, + html.theme--documenter-dark .notification .content { + color: currentColor; } + html.theme--documenter-dark .notification.is-white { + background-color: white; + color: #0a0a0a; } + html.theme--documenter-dark .notification.is-black { + background-color: #0a0a0a; + color: white; } + html.theme--documenter-dark .notification.is-light { + background-color: #ecf0f1; + color: #282f2f; } + html.theme--documenter-dark .notification.is-dark, html.theme--documenter-dark .content kbd.notification { + background-color: #282f2f; + color: #ecf0f1; } + html.theme--documenter-dark .notification.is-primary, html.theme--documenter-dark .docstring > section > a.notification.docs-sourcelink { + background-color: #375a7f; + color: #fff; } + html.theme--documenter-dark .notification.is-link { + background-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark .notification.is-info { + background-color: #024c7d; + color: #fff; } + html.theme--documenter-dark .notification.is-success { + background-color: #008438; + color: #fff; } + html.theme--documenter-dark .notification.is-warning { + background-color: #ad8100; + color: #fff; } + html.theme--documenter-dark .notification.is-danger { + background-color: #9e1b0d; + color: #fff; } + html.theme--documenter-dark .progress { + -moz-appearance: none; + -webkit-appearance: none; + border: none; + border-radius: 290486px; + display: block; + height: 15px; + overflow: hidden; + padding: 0; + width: 100%; } + html.theme--documenter-dark .progress::-webkit-progress-bar { + background-color: #5e6d6f; } + html.theme--documenter-dark .progress::-webkit-progress-value { + background-color: #dbdee0; } + html.theme--documenter-dark .progress::-moz-progress-bar { + background-color: #dbdee0; } + html.theme--documenter-dark .progress::-ms-fill { + background-color: #dbdee0; + border: none; } + html.theme--documenter-dark .progress.is-white::-webkit-progress-value { + background-color: white; } + html.theme--documenter-dark .progress.is-white::-moz-progress-bar { + background-color: white; } + html.theme--documenter-dark .progress.is-white::-ms-fill { + background-color: white; } + html.theme--documenter-dark .progress.is-white:indeterminate { + background-image: linear-gradient(to right, white 30%, #5e6d6f 30%); } + html.theme--documenter-dark .progress.is-black::-webkit-progress-value { + background-color: #0a0a0a; } + html.theme--documenter-dark .progress.is-black::-moz-progress-bar { + background-color: #0a0a0a; } + html.theme--documenter-dark .progress.is-black::-ms-fill { + background-color: #0a0a0a; } + html.theme--documenter-dark .progress.is-black:indeterminate { + background-image: linear-gradient(to right, #0a0a0a 30%, #5e6d6f 30%); } + html.theme--documenter-dark .progress.is-light::-webkit-progress-value { + background-color: #ecf0f1; } + html.theme--documenter-dark .progress.is-light::-moz-progress-bar { + background-color: #ecf0f1; } + html.theme--documenter-dark .progress.is-light::-ms-fill { + background-color: #ecf0f1; } + html.theme--documenter-dark .progress.is-light:indeterminate { + background-image: linear-gradient(to right, #ecf0f1 30%, #5e6d6f 30%); } + html.theme--documenter-dark .progress.is-dark::-webkit-progress-value, html.theme--documenter-dark .content kbd.progress::-webkit-progress-value { + background-color: #282f2f; } + html.theme--documenter-dark .progress.is-dark::-moz-progress-bar, html.theme--documenter-dark .content kbd.progress::-moz-progress-bar { + background-color: #282f2f; } + html.theme--documenter-dark .progress.is-dark::-ms-fill, html.theme--documenter-dark .content kbd.progress::-ms-fill { + background-color: #282f2f; } + html.theme--documenter-dark .progress.is-dark:indeterminate, html.theme--documenter-dark .content kbd.progress:indeterminate { + background-image: linear-gradient(to right, #282f2f 30%, #5e6d6f 30%); } + html.theme--documenter-dark .progress.is-primary::-webkit-progress-value, html.theme--documenter-dark .docstring > section > a.progress.docs-sourcelink::-webkit-progress-value { + background-color: #375a7f; } + html.theme--documenter-dark .progress.is-primary::-moz-progress-bar, html.theme--documenter-dark .docstring > section > a.progress.docs-sourcelink::-moz-progress-bar { + background-color: #375a7f; } + html.theme--documenter-dark .progress.is-primary::-ms-fill, html.theme--documenter-dark .docstring > section > a.progress.docs-sourcelink::-ms-fill { + background-color: #375a7f; } + html.theme--documenter-dark .progress.is-primary:indeterminate, html.theme--documenter-dark .docstring > section > a.progress.docs-sourcelink:indeterminate { + background-image: linear-gradient(to right, #375a7f 30%, #5e6d6f 30%); } + html.theme--documenter-dark .progress.is-link::-webkit-progress-value { + background-color: #1abc9c; } + html.theme--documenter-dark .progress.is-link::-moz-progress-bar { + background-color: #1abc9c; } + html.theme--documenter-dark .progress.is-link::-ms-fill { + background-color: #1abc9c; } + html.theme--documenter-dark .progress.is-link:indeterminate { + background-image: linear-gradient(to right, #1abc9c 30%, #5e6d6f 30%); } + html.theme--documenter-dark .progress.is-info::-webkit-progress-value { + background-color: #024c7d; } + html.theme--documenter-dark .progress.is-info::-moz-progress-bar { + background-color: #024c7d; } + html.theme--documenter-dark .progress.is-info::-ms-fill { + background-color: #024c7d; } + html.theme--documenter-dark .progress.is-info:indeterminate { + background-image: linear-gradient(to right, #024c7d 30%, #5e6d6f 30%); } + html.theme--documenter-dark .progress.is-success::-webkit-progress-value { + background-color: #008438; } + html.theme--documenter-dark .progress.is-success::-moz-progress-bar { + background-color: #008438; } + html.theme--documenter-dark .progress.is-success::-ms-fill { + background-color: #008438; } + html.theme--documenter-dark .progress.is-success:indeterminate { + background-image: linear-gradient(to right, #008438 30%, #5e6d6f 30%); } + html.theme--documenter-dark .progress.is-warning::-webkit-progress-value { + background-color: #ad8100; } + html.theme--documenter-dark .progress.is-warning::-moz-progress-bar { + background-color: #ad8100; } + html.theme--documenter-dark .progress.is-warning::-ms-fill { + background-color: #ad8100; } + html.theme--documenter-dark .progress.is-warning:indeterminate { + background-image: linear-gradient(to right, #ad8100 30%, #5e6d6f 30%); } + html.theme--documenter-dark .progress.is-danger::-webkit-progress-value { + background-color: #9e1b0d; } + html.theme--documenter-dark .progress.is-danger::-moz-progress-bar { + background-color: #9e1b0d; } + html.theme--documenter-dark .progress.is-danger::-ms-fill { + background-color: #9e1b0d; } + html.theme--documenter-dark .progress.is-danger:indeterminate { + background-image: linear-gradient(to right, #9e1b0d 30%, #5e6d6f 30%); } + html.theme--documenter-dark .progress:indeterminate { + animation-duration: 1.5s; + animation-iteration-count: infinite; + animation-name: moveIndeterminate; + animation-timing-function: linear; + background-color: #5e6d6f; + background-image: linear-gradient(to right, #fff 30%, #5e6d6f 30%); + background-position: top left; + background-repeat: no-repeat; + background-size: 150% 150%; } + html.theme--documenter-dark .progress:indeterminate::-webkit-progress-bar { + background-color: transparent; } + html.theme--documenter-dark .progress:indeterminate::-moz-progress-bar { + background-color: transparent; } + html.theme--documenter-dark .progress.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.progress { + height: 0.85em; } + html.theme--documenter-dark .progress.is-medium { + height: 1.25rem; } + html.theme--documenter-dark .progress.is-large { + height: 1.5rem; } + +@keyframes moveIndeterminate { + from { + background-position: 200% 0; } + to { + background-position: -200% 0; } } + html.theme--documenter-dark .table { + background-color: #343c3d; + color: #fff; } + html.theme--documenter-dark .table td, + html.theme--documenter-dark .table th { + border: 1px solid #5e6d6f; + border-width: 0 0 1px; + padding: 0.5em 0.75em; + vertical-align: top; } + html.theme--documenter-dark .table td.is-white, + html.theme--documenter-dark .table th.is-white { + background-color: white; + border-color: white; + color: #0a0a0a; } + html.theme--documenter-dark .table td.is-black, + html.theme--documenter-dark .table th.is-black { + background-color: #0a0a0a; + border-color: #0a0a0a; + color: white; } + html.theme--documenter-dark .table td.is-light, + html.theme--documenter-dark .table th.is-light { + background-color: #ecf0f1; + border-color: #ecf0f1; + color: #282f2f; } + html.theme--documenter-dark .table td.is-dark, + html.theme--documenter-dark .table th.is-dark { + background-color: #282f2f; + border-color: #282f2f; + color: #ecf0f1; } + html.theme--documenter-dark .table td.is-primary, + html.theme--documenter-dark .table th.is-primary { + background-color: #375a7f; + border-color: #375a7f; + color: #fff; } + html.theme--documenter-dark .table td.is-link, + html.theme--documenter-dark .table th.is-link { + background-color: #1abc9c; + border-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark .table td.is-info, + html.theme--documenter-dark .table th.is-info { + background-color: #024c7d; + border-color: #024c7d; + color: #fff; } + html.theme--documenter-dark .table td.is-success, + html.theme--documenter-dark .table th.is-success { + background-color: #008438; + border-color: #008438; + color: #fff; } + html.theme--documenter-dark .table td.is-warning, + html.theme--documenter-dark .table th.is-warning { + background-color: #ad8100; + border-color: #ad8100; + color: #fff; } + html.theme--documenter-dark .table td.is-danger, + html.theme--documenter-dark .table th.is-danger { + background-color: #9e1b0d; + border-color: #9e1b0d; + color: #fff; } + html.theme--documenter-dark .table td.is-narrow, + html.theme--documenter-dark .table th.is-narrow { + white-space: nowrap; + width: 1%; } + html.theme--documenter-dark .table td.is-selected, + html.theme--documenter-dark .table th.is-selected { + background-color: #375a7f; + color: #fff; } + html.theme--documenter-dark .table td.is-selected a, + html.theme--documenter-dark .table td.is-selected strong, + html.theme--documenter-dark .table th.is-selected a, + html.theme--documenter-dark .table th.is-selected strong { + color: currentColor; } + html.theme--documenter-dark .table th { + color: #f2f2f2; } + html.theme--documenter-dark .table th:not([align]) { + text-align: left; } + html.theme--documenter-dark .table tr.is-selected { + background-color: #375a7f; + color: #fff; } + html.theme--documenter-dark .table tr.is-selected a, + html.theme--documenter-dark .table tr.is-selected strong { + color: currentColor; } + html.theme--documenter-dark .table tr.is-selected td, + html.theme--documenter-dark .table tr.is-selected th { + border-color: #fff; + color: currentColor; } + html.theme--documenter-dark .table thead { + background-color: transparent; } + html.theme--documenter-dark .table thead td, + html.theme--documenter-dark .table thead th { + border-width: 0 0 2px; + color: #f2f2f2; } + html.theme--documenter-dark .table tfoot { + background-color: transparent; } + html.theme--documenter-dark .table tfoot td, + html.theme--documenter-dark .table tfoot th { + border-width: 2px 0 0; + color: #f2f2f2; } + html.theme--documenter-dark .table tbody { + background-color: transparent; } + html.theme--documenter-dark .table tbody tr:last-child td, + html.theme--documenter-dark .table tbody tr:last-child th { + border-bottom-width: 0; } + html.theme--documenter-dark .table.is-bordered td, + html.theme--documenter-dark .table.is-bordered th { + border-width: 1px; } + html.theme--documenter-dark .table.is-bordered tr:last-child td, + html.theme--documenter-dark .table.is-bordered tr:last-child th { + border-bottom-width: 1px; } + html.theme--documenter-dark .table.is-fullwidth { + width: 100%; } + html.theme--documenter-dark .table.is-hoverable tbody tr:not(.is-selected):hover { + background-color: #282f2f; } + html.theme--documenter-dark .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover { + background-color: #282f2f; } + html.theme--documenter-dark .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even) { + background-color: #2d3435; } + html.theme--documenter-dark .table.is-narrow td, + html.theme--documenter-dark .table.is-narrow th { + padding: 0.25em 0.5em; } + html.theme--documenter-dark .table.is-striped tbody tr:not(.is-selected):nth-child(even) { + background-color: #282f2f; } + html.theme--documenter-dark .table-container { + -webkit-overflow-scrolling: touch; + overflow: auto; + overflow-y: hidden; + max-width: 100%; } + html.theme--documenter-dark .tags { + align-items: center; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; } + html.theme--documenter-dark .tags .tag, html.theme--documenter-dark .tags .content kbd, html.theme--documenter-dark .content .tags kbd, html.theme--documenter-dark .tags .docstring > section > a.docs-sourcelink { + margin-bottom: 0.5rem; } + html.theme--documenter-dark .tags .tag:not(:last-child), html.theme--documenter-dark .tags .content kbd:not(:last-child), html.theme--documenter-dark .content .tags kbd:not(:last-child), html.theme--documenter-dark .tags .docstring > section > a.docs-sourcelink:not(:last-child) { + margin-right: 0.5rem; } + html.theme--documenter-dark .tags:last-child { + margin-bottom: -0.5rem; } + html.theme--documenter-dark .tags:not(:last-child) { + margin-bottom: 1rem; } + html.theme--documenter-dark .tags.are-medium .tag:not(.is-normal):not(.is-large), html.theme--documenter-dark .tags.are-medium .content kbd:not(.is-normal):not(.is-large), html.theme--documenter-dark .content .tags.are-medium kbd:not(.is-normal):not(.is-large), html.theme--documenter-dark .tags.are-medium .docstring > section > a.docs-sourcelink:not(.is-normal):not(.is-large) { + font-size: 15px; } + html.theme--documenter-dark .tags.are-large .tag:not(.is-normal):not(.is-medium), html.theme--documenter-dark .tags.are-large .content kbd:not(.is-normal):not(.is-medium), html.theme--documenter-dark .content .tags.are-large kbd:not(.is-normal):not(.is-medium), html.theme--documenter-dark .tags.are-large .docstring > section > a.docs-sourcelink:not(.is-normal):not(.is-medium) { + font-size: 1.25rem; } + html.theme--documenter-dark .tags.is-centered { + justify-content: center; } + html.theme--documenter-dark .tags.is-centered .tag, html.theme--documenter-dark .tags.is-centered .content kbd, html.theme--documenter-dark .content .tags.is-centered kbd, html.theme--documenter-dark .tags.is-centered .docstring > section > a.docs-sourcelink { + margin-right: 0.25rem; + margin-left: 0.25rem; } + html.theme--documenter-dark .tags.is-right { + justify-content: flex-end; } + html.theme--documenter-dark .tags.is-right .tag:not(:first-child), html.theme--documenter-dark .tags.is-right .content kbd:not(:first-child), html.theme--documenter-dark .content .tags.is-right kbd:not(:first-child), html.theme--documenter-dark .tags.is-right .docstring > section > a.docs-sourcelink:not(:first-child) { + margin-left: 0.5rem; } + html.theme--documenter-dark .tags.is-right .tag:not(:last-child), html.theme--documenter-dark .tags.is-right .content kbd:not(:last-child), html.theme--documenter-dark .content .tags.is-right kbd:not(:last-child), html.theme--documenter-dark .tags.is-right .docstring > section > a.docs-sourcelink:not(:last-child) { + margin-right: 0; } + html.theme--documenter-dark .tags.has-addons .tag, html.theme--documenter-dark .tags.has-addons .content kbd, html.theme--documenter-dark .content .tags.has-addons kbd, html.theme--documenter-dark .tags.has-addons .docstring > section > a.docs-sourcelink { + margin-right: 0; } + html.theme--documenter-dark .tags.has-addons .tag:not(:first-child), html.theme--documenter-dark .tags.has-addons .content kbd:not(:first-child), html.theme--documenter-dark .content .tags.has-addons kbd:not(:first-child), html.theme--documenter-dark .tags.has-addons .docstring > section > a.docs-sourcelink:not(:first-child) { + margin-left: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; } + html.theme--documenter-dark .tags.has-addons .tag:not(:last-child), html.theme--documenter-dark .tags.has-addons .content kbd:not(:last-child), html.theme--documenter-dark .content .tags.has-addons kbd:not(:last-child), html.theme--documenter-dark .tags.has-addons .docstring > section > a.docs-sourcelink:not(:last-child) { + border-bottom-right-radius: 0; + border-top-right-radius: 0; } + html.theme--documenter-dark .tag:not(body), html.theme--documenter-dark .content kbd:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink:not(body) { + align-items: center; + background-color: #282f2f; + border-radius: 0.4em; + color: #fff; + display: inline-flex; + font-size: 0.85em; + height: 2em; + justify-content: center; + line-height: 1.5; + padding-left: 0.75em; + padding-right: 0.75em; + white-space: nowrap; } + html.theme--documenter-dark .tag:not(body) .delete, html.theme--documenter-dark .content kbd:not(body) .delete, html.theme--documenter-dark .docstring > section > a.docs-sourcelink:not(body) .delete { + margin-left: 0.25rem; + margin-right: -0.375rem; } + html.theme--documenter-dark .tag.is-white:not(body), html.theme--documenter-dark .content kbd.is-white:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-white:not(body) { + background-color: white; + color: #0a0a0a; } + html.theme--documenter-dark .tag.is-black:not(body), html.theme--documenter-dark .content kbd.is-black:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-black:not(body) { + background-color: #0a0a0a; + color: white; } + html.theme--documenter-dark .tag.is-light:not(body), html.theme--documenter-dark .content kbd.is-light:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-light:not(body) { + background-color: #ecf0f1; + color: #282f2f; } + html.theme--documenter-dark .tag.is-dark:not(body), html.theme--documenter-dark .content kbd:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-dark:not(body), html.theme--documenter-dark .content .docstring > section > kbd:not(body) { + background-color: #282f2f; + color: #ecf0f1; } + html.theme--documenter-dark .tag.is-primary:not(body), html.theme--documenter-dark .content kbd.is-primary:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink:not(body) { + background-color: #375a7f; + color: #fff; } + html.theme--documenter-dark .tag.is-link:not(body), html.theme--documenter-dark .content kbd.is-link:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-link:not(body) { + background-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark .tag.is-info:not(body), html.theme--documenter-dark .content kbd.is-info:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-info:not(body) { + background-color: #024c7d; + color: #fff; } + html.theme--documenter-dark .tag.is-success:not(body), html.theme--documenter-dark .content kbd.is-success:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-success:not(body) { + background-color: #008438; + color: #fff; } + html.theme--documenter-dark .tag.is-warning:not(body), html.theme--documenter-dark .content kbd.is-warning:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-warning:not(body) { + background-color: #ad8100; + color: #fff; } + html.theme--documenter-dark .tag.is-danger:not(body), html.theme--documenter-dark .content kbd.is-danger:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-danger:not(body) { + background-color: #9e1b0d; + color: #fff; } + html.theme--documenter-dark .tag.is-normal:not(body), html.theme--documenter-dark .content kbd.is-normal:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-normal:not(body) { + font-size: 0.85em; } + html.theme--documenter-dark .tag.is-medium:not(body), html.theme--documenter-dark .content kbd.is-medium:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-medium:not(body) { + font-size: 15px; } + html.theme--documenter-dark .tag.is-large:not(body), html.theme--documenter-dark .content kbd.is-large:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-large:not(body) { + font-size: 1.25rem; } + html.theme--documenter-dark .tag:not(body) .icon:first-child:not(:last-child), html.theme--documenter-dark .content kbd:not(body) .icon:first-child:not(:last-child), html.theme--documenter-dark .docstring > section > a.docs-sourcelink:not(body) .icon:first-child:not(:last-child) { + margin-left: -0.375em; + margin-right: 0.1875em; } + html.theme--documenter-dark .tag:not(body) .icon:last-child:not(:first-child), html.theme--documenter-dark .content kbd:not(body) .icon:last-child:not(:first-child), html.theme--documenter-dark .docstring > section > a.docs-sourcelink:not(body) .icon:last-child:not(:first-child) { + margin-left: 0.1875em; + margin-right: -0.375em; } + html.theme--documenter-dark .tag:not(body) .icon:first-child:last-child, html.theme--documenter-dark .content kbd:not(body) .icon:first-child:last-child, html.theme--documenter-dark .docstring > section > a.docs-sourcelink:not(body) .icon:first-child:last-child { + margin-left: -0.375em; + margin-right: -0.375em; } + html.theme--documenter-dark .tag.is-delete:not(body), html.theme--documenter-dark .content kbd.is-delete:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-delete:not(body) { + margin-left: 1px; + padding: 0; + position: relative; + width: 2em; } + html.theme--documenter-dark .tag.is-delete:not(body)::before, html.theme--documenter-dark .content kbd.is-delete:not(body)::before, html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-delete:not(body)::before, html.theme--documenter-dark .tag.is-delete:not(body)::after, html.theme--documenter-dark .content kbd.is-delete:not(body)::after, html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-delete:not(body)::after { + background-color: currentColor; + content: ""; + display: block; + left: 50%; + position: absolute; + top: 50%; + transform: translateX(-50%) translateY(-50%) rotate(45deg); + transform-origin: center center; } + html.theme--documenter-dark .tag.is-delete:not(body)::before, html.theme--documenter-dark .content kbd.is-delete:not(body)::before, html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-delete:not(body)::before { + height: 1px; + width: 50%; } + html.theme--documenter-dark .tag.is-delete:not(body)::after, html.theme--documenter-dark .content kbd.is-delete:not(body)::after, html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-delete:not(body)::after { + height: 50%; + width: 1px; } + html.theme--documenter-dark .tag.is-delete:not(body):hover, html.theme--documenter-dark .content kbd.is-delete:not(body):hover, html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-delete:not(body):hover, html.theme--documenter-dark .tag.is-delete:not(body):focus, html.theme--documenter-dark .content kbd.is-delete:not(body):focus, html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-delete:not(body):focus { + background-color: #1d2122; } + html.theme--documenter-dark .tag.is-delete:not(body):active, html.theme--documenter-dark .content kbd.is-delete:not(body):active, html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-delete:not(body):active { + background-color: #111414; } + html.theme--documenter-dark .tag.is-rounded:not(body), html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input:not(body), html.theme--documenter-dark .content kbd.is-rounded:not(body), html.theme--documenter-dark #documenter .docs-sidebar .content form.docs-search > input:not(body), html.theme--documenter-dark .docstring > section > a.docs-sourcelink.is-rounded:not(body) { + border-radius: 290486px; } + html.theme--documenter-dark a.tag:hover, html.theme--documenter-dark .docstring > section > a.docs-sourcelink:hover { + text-decoration: underline; } + html.theme--documenter-dark .title, + html.theme--documenter-dark .subtitle { + word-break: break-word; } + html.theme--documenter-dark .title em, + html.theme--documenter-dark .title span, + html.theme--documenter-dark .subtitle em, + html.theme--documenter-dark .subtitle span { + font-weight: inherit; } + html.theme--documenter-dark .title sub, + html.theme--documenter-dark .subtitle sub { + font-size: 0.75em; } + html.theme--documenter-dark .title sup, + html.theme--documenter-dark .subtitle sup { + font-size: 0.75em; } + html.theme--documenter-dark .title .tag, html.theme--documenter-dark .title .content kbd, html.theme--documenter-dark .content .title kbd, html.theme--documenter-dark .title .docstring > section > a.docs-sourcelink, + html.theme--documenter-dark .subtitle .tag, + html.theme--documenter-dark .subtitle .content kbd, + html.theme--documenter-dark .content .subtitle kbd, + html.theme--documenter-dark .subtitle .docstring > section > a.docs-sourcelink { + vertical-align: middle; } + html.theme--documenter-dark .title { + color: #fff; + font-size: 2rem; + font-weight: 500; + line-height: 1.125; } + html.theme--documenter-dark .title strong { + color: inherit; + font-weight: inherit; } + html.theme--documenter-dark .title + .highlight { + margin-top: -0.75rem; } + html.theme--documenter-dark .title:not(.is-spaced) + .subtitle { + margin-top: -1.25rem; } + html.theme--documenter-dark .title.is-1 { + font-size: 3rem; } + html.theme--documenter-dark .title.is-2 { + font-size: 2.5rem; } + html.theme--documenter-dark .title.is-3 { + font-size: 2rem; } + html.theme--documenter-dark .title.is-4 { + font-size: 1.5rem; } + html.theme--documenter-dark .title.is-5 { + font-size: 1.25rem; } + html.theme--documenter-dark .title.is-6 { + font-size: 15px; } + html.theme--documenter-dark .title.is-7 { + font-size: 0.85em; } + html.theme--documenter-dark .subtitle { + color: #8c9b9d; + font-size: 1.25rem; + font-weight: 400; + line-height: 1.25; } + html.theme--documenter-dark .subtitle strong { + color: #8c9b9d; + font-weight: 600; } + html.theme--documenter-dark .subtitle:not(.is-spaced) + .title { + margin-top: -1.25rem; } + html.theme--documenter-dark .subtitle.is-1 { + font-size: 3rem; } + html.theme--documenter-dark .subtitle.is-2 { + font-size: 2.5rem; } + html.theme--documenter-dark .subtitle.is-3 { + font-size: 2rem; } + html.theme--documenter-dark .subtitle.is-4 { + font-size: 1.5rem; } + html.theme--documenter-dark .subtitle.is-5 { + font-size: 1.25rem; } + html.theme--documenter-dark .subtitle.is-6 { + font-size: 15px; } + html.theme--documenter-dark .subtitle.is-7 { + font-size: 0.85em; } + html.theme--documenter-dark .heading { + display: block; + font-size: 11px; + letter-spacing: 1px; + margin-bottom: 5px; + text-transform: uppercase; } + html.theme--documenter-dark .highlight { + font-weight: 400; + max-width: 100%; + overflow: hidden; + padding: 0; } + html.theme--documenter-dark .highlight pre { + overflow: auto; + max-width: 100%; } + html.theme--documenter-dark .number { + align-items: center; + background-color: #282f2f; + border-radius: 290486px; + display: inline-flex; + font-size: 1.25rem; + height: 2em; + justify-content: center; + margin-right: 1.5rem; + min-width: 2.5em; + padding: 0.25rem 0.5rem; + text-align: center; + vertical-align: top; } + html.theme--documenter-dark .select select, html.theme--documenter-dark .textarea, html.theme--documenter-dark .input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input { + background-color: #1f2424; + border-color: #5e6d6f; + border-radius: 0.4em; + color: #dbdee0; } + html.theme--documenter-dark .select select::-moz-placeholder, html.theme--documenter-dark .textarea::-moz-placeholder, html.theme--documenter-dark .input::-moz-placeholder, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input::-moz-placeholder { + color: rgba(219, 222, 224, 0.3); } + html.theme--documenter-dark .select select::-webkit-input-placeholder, html.theme--documenter-dark .textarea::-webkit-input-placeholder, html.theme--documenter-dark .input::-webkit-input-placeholder, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input::-webkit-input-placeholder { + color: rgba(219, 222, 224, 0.3); } + html.theme--documenter-dark .select select:-moz-placeholder, html.theme--documenter-dark .textarea:-moz-placeholder, html.theme--documenter-dark .input:-moz-placeholder, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input:-moz-placeholder { + color: rgba(219, 222, 224, 0.3); } + html.theme--documenter-dark .select select:-ms-input-placeholder, html.theme--documenter-dark .textarea:-ms-input-placeholder, html.theme--documenter-dark .input:-ms-input-placeholder, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input:-ms-input-placeholder { + color: rgba(219, 222, 224, 0.3); } + html.theme--documenter-dark .select select:hover, html.theme--documenter-dark .textarea:hover, html.theme--documenter-dark .input:hover, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input:hover, html.theme--documenter-dark .select select.is-hovered, html.theme--documenter-dark .is-hovered.textarea, html.theme--documenter-dark .is-hovered.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-hovered { + border-color: #8c9b9d; } + html.theme--documenter-dark .select select:focus, html.theme--documenter-dark .textarea:focus, html.theme--documenter-dark .input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input:focus, html.theme--documenter-dark .select select.is-focused, html.theme--documenter-dark .is-focused.textarea, html.theme--documenter-dark .is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .select select:active, html.theme--documenter-dark .textarea:active, html.theme--documenter-dark .input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input:active, html.theme--documenter-dark .select select.is-active, html.theme--documenter-dark .is-active.textarea, html.theme--documenter-dark .is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active { + border-color: #1abc9c; + box-shadow: 0 0 0 0.125em rgba(26, 188, 156, 0.25); } + html.theme--documenter-dark .select select[disabled], html.theme--documenter-dark .textarea[disabled], html.theme--documenter-dark .input[disabled], html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input[disabled], fieldset[disabled] html.theme--documenter-dark .select select, fieldset[disabled] html.theme--documenter-dark .textarea, fieldset[disabled] html.theme--documenter-dark .input, fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input { + background-color: #8c9b9d; + border-color: #282f2f; + box-shadow: none; + color: white; } + html.theme--documenter-dark .select select[disabled]::-moz-placeholder, html.theme--documenter-dark .textarea[disabled]::-moz-placeholder, html.theme--documenter-dark .input[disabled]::-moz-placeholder, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input[disabled]::-moz-placeholder, fieldset[disabled] html.theme--documenter-dark .select select::-moz-placeholder, fieldset[disabled] html.theme--documenter-dark .textarea::-moz-placeholder, fieldset[disabled] html.theme--documenter-dark .input::-moz-placeholder, fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input::-moz-placeholder { + color: rgba(255, 255, 255, 0.3); } + html.theme--documenter-dark .select select[disabled]::-webkit-input-placeholder, html.theme--documenter-dark .textarea[disabled]::-webkit-input-placeholder, html.theme--documenter-dark .input[disabled]::-webkit-input-placeholder, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input[disabled]::-webkit-input-placeholder, fieldset[disabled] html.theme--documenter-dark .select select::-webkit-input-placeholder, fieldset[disabled] html.theme--documenter-dark .textarea::-webkit-input-placeholder, fieldset[disabled] html.theme--documenter-dark .input::-webkit-input-placeholder, fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input::-webkit-input-placeholder { + color: rgba(255, 255, 255, 0.3); } + html.theme--documenter-dark .select select[disabled]:-moz-placeholder, html.theme--documenter-dark .textarea[disabled]:-moz-placeholder, html.theme--documenter-dark .input[disabled]:-moz-placeholder, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input[disabled]:-moz-placeholder, fieldset[disabled] html.theme--documenter-dark .select select:-moz-placeholder, fieldset[disabled] html.theme--documenter-dark .textarea:-moz-placeholder, fieldset[disabled] html.theme--documenter-dark .input:-moz-placeholder, fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input:-moz-placeholder { + color: rgba(255, 255, 255, 0.3); } + html.theme--documenter-dark .select select[disabled]:-ms-input-placeholder, html.theme--documenter-dark .textarea[disabled]:-ms-input-placeholder, html.theme--documenter-dark .input[disabled]:-ms-input-placeholder, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input[disabled]:-ms-input-placeholder, fieldset[disabled] html.theme--documenter-dark .select select:-ms-input-placeholder, fieldset[disabled] html.theme--documenter-dark .textarea:-ms-input-placeholder, fieldset[disabled] html.theme--documenter-dark .input:-ms-input-placeholder, fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input:-ms-input-placeholder { + color: rgba(255, 255, 255, 0.3); } + html.theme--documenter-dark .textarea, html.theme--documenter-dark .input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input { + box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1); + max-width: 100%; + width: 100%; } + html.theme--documenter-dark .textarea[readonly], html.theme--documenter-dark .input[readonly], html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input[readonly] { + box-shadow: none; } + html.theme--documenter-dark .is-white.textarea, html.theme--documenter-dark .is-white.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-white { + border-color: white; } + html.theme--documenter-dark .is-white.textarea:focus, html.theme--documenter-dark .is-white.input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-white:focus, html.theme--documenter-dark .is-white.is-focused.textarea, html.theme--documenter-dark .is-white.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .is-white.textarea:active, html.theme--documenter-dark .is-white.input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-white:active, html.theme--documenter-dark .is-white.is-active.textarea, html.theme--documenter-dark .is-white.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); } + html.theme--documenter-dark .is-black.textarea, html.theme--documenter-dark .is-black.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-black { + border-color: #0a0a0a; } + html.theme--documenter-dark .is-black.textarea:focus, html.theme--documenter-dark .is-black.input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-black:focus, html.theme--documenter-dark .is-black.is-focused.textarea, html.theme--documenter-dark .is-black.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .is-black.textarea:active, html.theme--documenter-dark .is-black.input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-black:active, html.theme--documenter-dark .is-black.is-active.textarea, html.theme--documenter-dark .is-black.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); } + html.theme--documenter-dark .is-light.textarea, html.theme--documenter-dark .is-light.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-light { + border-color: #ecf0f1; } + html.theme--documenter-dark .is-light.textarea:focus, html.theme--documenter-dark .is-light.input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-light:focus, html.theme--documenter-dark .is-light.is-focused.textarea, html.theme--documenter-dark .is-light.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .is-light.textarea:active, html.theme--documenter-dark .is-light.input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-light:active, html.theme--documenter-dark .is-light.is-active.textarea, html.theme--documenter-dark .is-light.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(236, 240, 241, 0.25); } + html.theme--documenter-dark .is-dark.textarea, html.theme--documenter-dark .content kbd.textarea, html.theme--documenter-dark .is-dark.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-dark, html.theme--documenter-dark .content kbd.input { + border-color: #282f2f; } + html.theme--documenter-dark .is-dark.textarea:focus, html.theme--documenter-dark .content kbd.textarea:focus, html.theme--documenter-dark .is-dark.input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-dark:focus, html.theme--documenter-dark .content kbd.input:focus, html.theme--documenter-dark .is-dark.is-focused.textarea, html.theme--documenter-dark .content kbd.is-focused.textarea, html.theme--documenter-dark .is-dark.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .content kbd.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar .content form.docs-search > input.is-focused, html.theme--documenter-dark .is-dark.textarea:active, html.theme--documenter-dark .content kbd.textarea:active, html.theme--documenter-dark .is-dark.input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-dark:active, html.theme--documenter-dark .content kbd.input:active, html.theme--documenter-dark .is-dark.is-active.textarea, html.theme--documenter-dark .content kbd.is-active.textarea, html.theme--documenter-dark .is-dark.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active, html.theme--documenter-dark .content kbd.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar .content form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(40, 47, 47, 0.25); } + html.theme--documenter-dark .is-primary.textarea, html.theme--documenter-dark .docstring > section > a.textarea.docs-sourcelink, html.theme--documenter-dark .is-primary.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-primary, html.theme--documenter-dark .docstring > section > a.input.docs-sourcelink { + border-color: #375a7f; } + html.theme--documenter-dark .is-primary.textarea:focus, html.theme--documenter-dark .docstring > section > a.textarea.docs-sourcelink:focus, html.theme--documenter-dark .is-primary.input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-primary:focus, html.theme--documenter-dark .docstring > section > a.input.docs-sourcelink:focus, html.theme--documenter-dark .is-primary.is-focused.textarea, html.theme--documenter-dark .docstring > section > a.is-focused.textarea.docs-sourcelink, html.theme--documenter-dark .is-primary.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .docstring > section > a.is-focused.input.docs-sourcelink, html.theme--documenter-dark .is-primary.textarea:active, html.theme--documenter-dark .docstring > section > a.textarea.docs-sourcelink:active, html.theme--documenter-dark .is-primary.input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-primary:active, html.theme--documenter-dark .docstring > section > a.input.docs-sourcelink:active, html.theme--documenter-dark .is-primary.is-active.textarea, html.theme--documenter-dark .docstring > section > a.is-active.textarea.docs-sourcelink, html.theme--documenter-dark .is-primary.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active, html.theme--documenter-dark .docstring > section > a.is-active.input.docs-sourcelink { + box-shadow: 0 0 0 0.125em rgba(55, 90, 127, 0.25); } + html.theme--documenter-dark .is-link.textarea, html.theme--documenter-dark .is-link.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-link { + border-color: #1abc9c; } + html.theme--documenter-dark .is-link.textarea:focus, html.theme--documenter-dark .is-link.input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-link:focus, html.theme--documenter-dark .is-link.is-focused.textarea, html.theme--documenter-dark .is-link.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .is-link.textarea:active, html.theme--documenter-dark .is-link.input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-link:active, html.theme--documenter-dark .is-link.is-active.textarea, html.theme--documenter-dark .is-link.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(26, 188, 156, 0.25); } + html.theme--documenter-dark .is-info.textarea, html.theme--documenter-dark .is-info.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-info { + border-color: #024c7d; } + html.theme--documenter-dark .is-info.textarea:focus, html.theme--documenter-dark .is-info.input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-info:focus, html.theme--documenter-dark .is-info.is-focused.textarea, html.theme--documenter-dark .is-info.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .is-info.textarea:active, html.theme--documenter-dark .is-info.input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-info:active, html.theme--documenter-dark .is-info.is-active.textarea, html.theme--documenter-dark .is-info.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(2, 76, 125, 0.25); } + html.theme--documenter-dark .is-success.textarea, html.theme--documenter-dark .is-success.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-success { + border-color: #008438; } + html.theme--documenter-dark .is-success.textarea:focus, html.theme--documenter-dark .is-success.input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-success:focus, html.theme--documenter-dark .is-success.is-focused.textarea, html.theme--documenter-dark .is-success.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .is-success.textarea:active, html.theme--documenter-dark .is-success.input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-success:active, html.theme--documenter-dark .is-success.is-active.textarea, html.theme--documenter-dark .is-success.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(0, 132, 56, 0.25); } + html.theme--documenter-dark .is-warning.textarea, html.theme--documenter-dark .is-warning.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-warning { + border-color: #ad8100; } + html.theme--documenter-dark .is-warning.textarea:focus, html.theme--documenter-dark .is-warning.input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-warning:focus, html.theme--documenter-dark .is-warning.is-focused.textarea, html.theme--documenter-dark .is-warning.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .is-warning.textarea:active, html.theme--documenter-dark .is-warning.input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-warning:active, html.theme--documenter-dark .is-warning.is-active.textarea, html.theme--documenter-dark .is-warning.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(173, 129, 0, 0.25); } + html.theme--documenter-dark .is-danger.textarea, html.theme--documenter-dark .is-danger.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-danger { + border-color: #9e1b0d; } + html.theme--documenter-dark .is-danger.textarea:focus, html.theme--documenter-dark .is-danger.input:focus, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-danger:focus, html.theme--documenter-dark .is-danger.is-focused.textarea, html.theme--documenter-dark .is-danger.is-focused.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-focused, html.theme--documenter-dark .is-danger.textarea:active, html.theme--documenter-dark .is-danger.input:active, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-danger:active, html.theme--documenter-dark .is-danger.is-active.textarea, html.theme--documenter-dark .is-danger.is-active.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(158, 27, 13, 0.25); } + html.theme--documenter-dark .is-small.textarea, html.theme--documenter-dark .is-small.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input { + border-radius: 3px; + font-size: 0.85em; } + html.theme--documenter-dark .is-medium.textarea, html.theme--documenter-dark .is-medium.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .is-large.textarea, html.theme--documenter-dark .is-large.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .is-fullwidth.textarea, html.theme--documenter-dark .is-fullwidth.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-fullwidth { + display: block; + width: 100%; } + html.theme--documenter-dark .is-inline.textarea, html.theme--documenter-dark .is-inline.input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-inline { + display: inline; + width: auto; } + html.theme--documenter-dark .input.is-rounded, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input { + border-radius: 290486px; + padding-left: 1em; + padding-right: 1em; } + html.theme--documenter-dark .input.is-static, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-static { + background-color: transparent; + border-color: transparent; + box-shadow: none; + padding-left: 0; + padding-right: 0; } + html.theme--documenter-dark .textarea { + display: block; + max-width: 100%; + min-width: 100%; + padding: 0.625em; + resize: vertical; } + html.theme--documenter-dark .textarea:not([rows]) { + max-height: 600px; + min-height: 120px; } + html.theme--documenter-dark .textarea[rows] { + height: initial; } + html.theme--documenter-dark .textarea.has-fixed-size { + resize: none; } + html.theme--documenter-dark .radio, html.theme--documenter-dark .checkbox { + cursor: pointer; + display: inline-block; + line-height: 1.25; + position: relative; } + html.theme--documenter-dark .radio input, html.theme--documenter-dark .checkbox input { + cursor: pointer; } + html.theme--documenter-dark .radio:hover, html.theme--documenter-dark .checkbox:hover { + color: #8c9b9d; } + html.theme--documenter-dark .radio[disabled], html.theme--documenter-dark .checkbox[disabled], fieldset[disabled] html.theme--documenter-dark .radio, fieldset[disabled] html.theme--documenter-dark .checkbox { + color: white; + cursor: not-allowed; } + html.theme--documenter-dark .radio + .radio { + margin-left: 0.5em; } + html.theme--documenter-dark .select { + display: inline-block; + max-width: 100%; + position: relative; + vertical-align: top; } + html.theme--documenter-dark .select:not(.is-multiple) { + height: 2.25em; } + html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading)::after { + border-color: #1abc9c; + right: 1.125em; + z-index: 4; } + html.theme--documenter-dark .select.is-rounded select, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.select select { + border-radius: 290486px; + padding-left: 1em; } + html.theme--documenter-dark .select select { + cursor: pointer; + display: block; + font-size: 1em; + max-width: 100%; + outline: none; } + html.theme--documenter-dark .select select::-ms-expand { + display: none; } + html.theme--documenter-dark .select select[disabled]:hover, fieldset[disabled] html.theme--documenter-dark .select select:hover { + border-color: #282f2f; } + html.theme--documenter-dark .select select:not([multiple]) { + padding-right: 2.5em; } + html.theme--documenter-dark .select select[multiple] { + height: auto; + padding: 0; } + html.theme--documenter-dark .select select[multiple] option { + padding: 0.5em 1em; } + html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading):hover::after { + border-color: #8c9b9d; } + html.theme--documenter-dark .select.is-white:not(:hover)::after { + border-color: white; } + html.theme--documenter-dark .select.is-white select { + border-color: white; } + html.theme--documenter-dark .select.is-white select:hover, html.theme--documenter-dark .select.is-white select.is-hovered { + border-color: #f2f2f2; } + html.theme--documenter-dark .select.is-white select:focus, html.theme--documenter-dark .select.is-white select.is-focused, html.theme--documenter-dark .select.is-white select:active, html.theme--documenter-dark .select.is-white select.is-active { + box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); } + html.theme--documenter-dark .select.is-black:not(:hover)::after { + border-color: #0a0a0a; } + html.theme--documenter-dark .select.is-black select { + border-color: #0a0a0a; } + html.theme--documenter-dark .select.is-black select:hover, html.theme--documenter-dark .select.is-black select.is-hovered { + border-color: black; } + html.theme--documenter-dark .select.is-black select:focus, html.theme--documenter-dark .select.is-black select.is-focused, html.theme--documenter-dark .select.is-black select:active, html.theme--documenter-dark .select.is-black select.is-active { + box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); } + html.theme--documenter-dark .select.is-light:not(:hover)::after { + border-color: #ecf0f1; } + html.theme--documenter-dark .select.is-light select { + border-color: #ecf0f1; } + html.theme--documenter-dark .select.is-light select:hover, html.theme--documenter-dark .select.is-light select.is-hovered { + border-color: #dde4e6; } + html.theme--documenter-dark .select.is-light select:focus, html.theme--documenter-dark .select.is-light select.is-focused, html.theme--documenter-dark .select.is-light select:active, html.theme--documenter-dark .select.is-light select.is-active { + box-shadow: 0 0 0 0.125em rgba(236, 240, 241, 0.25); } + html.theme--documenter-dark .select.is-dark:not(:hover)::after, html.theme--documenter-dark .content kbd.select:not(:hover)::after { + border-color: #282f2f; } + html.theme--documenter-dark .select.is-dark select, html.theme--documenter-dark .content kbd.select select { + border-color: #282f2f; } + html.theme--documenter-dark .select.is-dark select:hover, html.theme--documenter-dark .content kbd.select select:hover, html.theme--documenter-dark .select.is-dark select.is-hovered, html.theme--documenter-dark .content kbd.select select.is-hovered { + border-color: #1d2122; } + html.theme--documenter-dark .select.is-dark select:focus, html.theme--documenter-dark .content kbd.select select:focus, html.theme--documenter-dark .select.is-dark select.is-focused, html.theme--documenter-dark .content kbd.select select.is-focused, html.theme--documenter-dark .select.is-dark select:active, html.theme--documenter-dark .content kbd.select select:active, html.theme--documenter-dark .select.is-dark select.is-active, html.theme--documenter-dark .content kbd.select select.is-active { + box-shadow: 0 0 0 0.125em rgba(40, 47, 47, 0.25); } + html.theme--documenter-dark .select.is-primary:not(:hover)::after, html.theme--documenter-dark .docstring > section > a.select.docs-sourcelink:not(:hover)::after { + border-color: #375a7f; } + html.theme--documenter-dark .select.is-primary select, html.theme--documenter-dark .docstring > section > a.select.docs-sourcelink select { + border-color: #375a7f; } + html.theme--documenter-dark .select.is-primary select:hover, html.theme--documenter-dark .docstring > section > a.select.docs-sourcelink select:hover, html.theme--documenter-dark .select.is-primary select.is-hovered, html.theme--documenter-dark .docstring > section > a.select.docs-sourcelink select.is-hovered { + border-color: #2f4d6d; } + html.theme--documenter-dark .select.is-primary select:focus, html.theme--documenter-dark .docstring > section > a.select.docs-sourcelink select:focus, html.theme--documenter-dark .select.is-primary select.is-focused, html.theme--documenter-dark .docstring > section > a.select.docs-sourcelink select.is-focused, html.theme--documenter-dark .select.is-primary select:active, html.theme--documenter-dark .docstring > section > a.select.docs-sourcelink select:active, html.theme--documenter-dark .select.is-primary select.is-active, html.theme--documenter-dark .docstring > section > a.select.docs-sourcelink select.is-active { + box-shadow: 0 0 0 0.125em rgba(55, 90, 127, 0.25); } + html.theme--documenter-dark .select.is-link:not(:hover)::after { + border-color: #1abc9c; } + html.theme--documenter-dark .select.is-link select { + border-color: #1abc9c; } + html.theme--documenter-dark .select.is-link select:hover, html.theme--documenter-dark .select.is-link select.is-hovered { + border-color: #17a689; } + html.theme--documenter-dark .select.is-link select:focus, html.theme--documenter-dark .select.is-link select.is-focused, html.theme--documenter-dark .select.is-link select:active, html.theme--documenter-dark .select.is-link select.is-active { + box-shadow: 0 0 0 0.125em rgba(26, 188, 156, 0.25); } + html.theme--documenter-dark .select.is-info:not(:hover)::after { + border-color: #024c7d; } + html.theme--documenter-dark .select.is-info select { + border-color: #024c7d; } + html.theme--documenter-dark .select.is-info select:hover, html.theme--documenter-dark .select.is-info select.is-hovered { + border-color: #023d64; } + html.theme--documenter-dark .select.is-info select:focus, html.theme--documenter-dark .select.is-info select.is-focused, html.theme--documenter-dark .select.is-info select:active, html.theme--documenter-dark .select.is-info select.is-active { + box-shadow: 0 0 0 0.125em rgba(2, 76, 125, 0.25); } + html.theme--documenter-dark .select.is-success:not(:hover)::after { + border-color: #008438; } + html.theme--documenter-dark .select.is-success select { + border-color: #008438; } + html.theme--documenter-dark .select.is-success select:hover, html.theme--documenter-dark .select.is-success select.is-hovered { + border-color: #006b2d; } + html.theme--documenter-dark .select.is-success select:focus, html.theme--documenter-dark .select.is-success select.is-focused, html.theme--documenter-dark .select.is-success select:active, html.theme--documenter-dark .select.is-success select.is-active { + box-shadow: 0 0 0 0.125em rgba(0, 132, 56, 0.25); } + html.theme--documenter-dark .select.is-warning:not(:hover)::after { + border-color: #ad8100; } + html.theme--documenter-dark .select.is-warning select { + border-color: #ad8100; } + html.theme--documenter-dark .select.is-warning select:hover, html.theme--documenter-dark .select.is-warning select.is-hovered { + border-color: #946e00; } + html.theme--documenter-dark .select.is-warning select:focus, html.theme--documenter-dark .select.is-warning select.is-focused, html.theme--documenter-dark .select.is-warning select:active, html.theme--documenter-dark .select.is-warning select.is-active { + box-shadow: 0 0 0 0.125em rgba(173, 129, 0, 0.25); } + html.theme--documenter-dark .select.is-danger:not(:hover)::after { + border-color: #9e1b0d; } + html.theme--documenter-dark .select.is-danger select { + border-color: #9e1b0d; } + html.theme--documenter-dark .select.is-danger select:hover, html.theme--documenter-dark .select.is-danger select.is-hovered { + border-color: #86170b; } + html.theme--documenter-dark .select.is-danger select:focus, html.theme--documenter-dark .select.is-danger select.is-focused, html.theme--documenter-dark .select.is-danger select:active, html.theme--documenter-dark .select.is-danger select.is-active { + box-shadow: 0 0 0 0.125em rgba(158, 27, 13, 0.25); } + html.theme--documenter-dark .select.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.select { + border-radius: 3px; + font-size: 0.85em; } + html.theme--documenter-dark .select.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .select.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .select.is-disabled::after { + border-color: white; } + html.theme--documenter-dark .select.is-fullwidth { + width: 100%; } + html.theme--documenter-dark .select.is-fullwidth select { + width: 100%; } + html.theme--documenter-dark .select.is-loading::after { + margin-top: 0; + position: absolute; + right: 0.625em; + top: 0.625em; + transform: none; } + html.theme--documenter-dark .select.is-loading.is-small:after, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-loading:after { + font-size: 0.85em; } + html.theme--documenter-dark .select.is-loading.is-medium:after { + font-size: 1.25rem; } + html.theme--documenter-dark .select.is-loading.is-large:after { + font-size: 1.5rem; } + html.theme--documenter-dark .file { + align-items: stretch; + display: flex; + justify-content: flex-start; + position: relative; } + html.theme--documenter-dark .file.is-white .file-cta { + background-color: white; + border-color: transparent; + color: #0a0a0a; } + html.theme--documenter-dark .file.is-white:hover .file-cta, html.theme--documenter-dark .file.is-white.is-hovered .file-cta { + background-color: #f9f9f9; + border-color: transparent; + color: #0a0a0a; } + html.theme--documenter-dark .file.is-white:focus .file-cta, html.theme--documenter-dark .file.is-white.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(255, 255, 255, 0.25); + color: #0a0a0a; } + html.theme--documenter-dark .file.is-white:active .file-cta, html.theme--documenter-dark .file.is-white.is-active .file-cta { + background-color: #f2f2f2; + border-color: transparent; + color: #0a0a0a; } + html.theme--documenter-dark .file.is-black .file-cta { + background-color: #0a0a0a; + border-color: transparent; + color: white; } + html.theme--documenter-dark .file.is-black:hover .file-cta, html.theme--documenter-dark .file.is-black.is-hovered .file-cta { + background-color: #040404; + border-color: transparent; + color: white; } + html.theme--documenter-dark .file.is-black:focus .file-cta, html.theme--documenter-dark .file.is-black.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(10, 10, 10, 0.25); + color: white; } + html.theme--documenter-dark .file.is-black:active .file-cta, html.theme--documenter-dark .file.is-black.is-active .file-cta { + background-color: black; + border-color: transparent; + color: white; } + html.theme--documenter-dark .file.is-light .file-cta { + background-color: #ecf0f1; + border-color: transparent; + color: #282f2f; } + html.theme--documenter-dark .file.is-light:hover .file-cta, html.theme--documenter-dark .file.is-light.is-hovered .file-cta { + background-color: #e5eaec; + border-color: transparent; + color: #282f2f; } + html.theme--documenter-dark .file.is-light:focus .file-cta, html.theme--documenter-dark .file.is-light.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(236, 240, 241, 0.25); + color: #282f2f; } + html.theme--documenter-dark .file.is-light:active .file-cta, html.theme--documenter-dark .file.is-light.is-active .file-cta { + background-color: #dde4e6; + border-color: transparent; + color: #282f2f; } + html.theme--documenter-dark .file.is-dark .file-cta, html.theme--documenter-dark .content kbd.file .file-cta { + background-color: #282f2f; + border-color: transparent; + color: #ecf0f1; } + html.theme--documenter-dark .file.is-dark:hover .file-cta, html.theme--documenter-dark .content kbd.file:hover .file-cta, html.theme--documenter-dark .file.is-dark.is-hovered .file-cta, html.theme--documenter-dark .content kbd.file.is-hovered .file-cta { + background-color: #232829; + border-color: transparent; + color: #ecf0f1; } + html.theme--documenter-dark .file.is-dark:focus .file-cta, html.theme--documenter-dark .content kbd.file:focus .file-cta, html.theme--documenter-dark .file.is-dark.is-focused .file-cta, html.theme--documenter-dark .content kbd.file.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(40, 47, 47, 0.25); + color: #ecf0f1; } + html.theme--documenter-dark .file.is-dark:active .file-cta, html.theme--documenter-dark .content kbd.file:active .file-cta, html.theme--documenter-dark .file.is-dark.is-active .file-cta, html.theme--documenter-dark .content kbd.file.is-active .file-cta { + background-color: #1d2122; + border-color: transparent; + color: #ecf0f1; } + html.theme--documenter-dark .file.is-primary .file-cta, html.theme--documenter-dark .docstring > section > a.file.docs-sourcelink .file-cta { + background-color: #375a7f; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-primary:hover .file-cta, html.theme--documenter-dark .docstring > section > a.file.docs-sourcelink:hover .file-cta, html.theme--documenter-dark .file.is-primary.is-hovered .file-cta, html.theme--documenter-dark .docstring > section > a.file.is-hovered.docs-sourcelink .file-cta { + background-color: #335476; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-primary:focus .file-cta, html.theme--documenter-dark .docstring > section > a.file.docs-sourcelink:focus .file-cta, html.theme--documenter-dark .file.is-primary.is-focused .file-cta, html.theme--documenter-dark .docstring > section > a.file.is-focused.docs-sourcelink .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(55, 90, 127, 0.25); + color: #fff; } + html.theme--documenter-dark .file.is-primary:active .file-cta, html.theme--documenter-dark .docstring > section > a.file.docs-sourcelink:active .file-cta, html.theme--documenter-dark .file.is-primary.is-active .file-cta, html.theme--documenter-dark .docstring > section > a.file.is-active.docs-sourcelink .file-cta { + background-color: #2f4d6d; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-link .file-cta { + background-color: #1abc9c; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-link:hover .file-cta, html.theme--documenter-dark .file.is-link.is-hovered .file-cta { + background-color: #18b193; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-link:focus .file-cta, html.theme--documenter-dark .file.is-link.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(26, 188, 156, 0.25); + color: #fff; } + html.theme--documenter-dark .file.is-link:active .file-cta, html.theme--documenter-dark .file.is-link.is-active .file-cta { + background-color: #17a689; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-info .file-cta { + background-color: #024c7d; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-info:hover .file-cta, html.theme--documenter-dark .file.is-info.is-hovered .file-cta { + background-color: #024470; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-info:focus .file-cta, html.theme--documenter-dark .file.is-info.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(2, 76, 125, 0.25); + color: #fff; } + html.theme--documenter-dark .file.is-info:active .file-cta, html.theme--documenter-dark .file.is-info.is-active .file-cta { + background-color: #023d64; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-success .file-cta { + background-color: #008438; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-success:hover .file-cta, html.theme--documenter-dark .file.is-success.is-hovered .file-cta { + background-color: #007733; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-success:focus .file-cta, html.theme--documenter-dark .file.is-success.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(0, 132, 56, 0.25); + color: #fff; } + html.theme--documenter-dark .file.is-success:active .file-cta, html.theme--documenter-dark .file.is-success.is-active .file-cta { + background-color: #006b2d; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-warning .file-cta { + background-color: #ad8100; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-warning:hover .file-cta, html.theme--documenter-dark .file.is-warning.is-hovered .file-cta { + background-color: #a07700; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-warning:focus .file-cta, html.theme--documenter-dark .file.is-warning.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(173, 129, 0, 0.25); + color: #fff; } + html.theme--documenter-dark .file.is-warning:active .file-cta, html.theme--documenter-dark .file.is-warning.is-active .file-cta { + background-color: #946e00; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-danger .file-cta { + background-color: #9e1b0d; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-danger:hover .file-cta, html.theme--documenter-dark .file.is-danger.is-hovered .file-cta { + background-color: #92190c; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-danger:focus .file-cta, html.theme--documenter-dark .file.is-danger.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(158, 27, 13, 0.25); + color: #fff; } + html.theme--documenter-dark .file.is-danger:active .file-cta, html.theme--documenter-dark .file.is-danger.is-active .file-cta { + background-color: #86170b; + border-color: transparent; + color: #fff; } + html.theme--documenter-dark .file.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.file { + font-size: 0.85em; } + html.theme--documenter-dark .file.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .file.is-medium .file-icon .fa { + font-size: 21px; } + html.theme--documenter-dark .file.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .file.is-large .file-icon .fa { + font-size: 28px; } + html.theme--documenter-dark .file.has-name .file-cta { + border-bottom-right-radius: 0; + border-top-right-radius: 0; } + html.theme--documenter-dark .file.has-name .file-name { + border-bottom-left-radius: 0; + border-top-left-radius: 0; } + html.theme--documenter-dark .file.has-name.is-empty .file-cta { + border-radius: 0.4em; } + html.theme--documenter-dark .file.has-name.is-empty .file-name { + display: none; } + html.theme--documenter-dark .file.is-boxed .file-label { + flex-direction: column; } + html.theme--documenter-dark .file.is-boxed .file-cta { + flex-direction: column; + height: auto; + padding: 1em 3em; } + html.theme--documenter-dark .file.is-boxed .file-name { + border-width: 0 1px 1px; } + html.theme--documenter-dark .file.is-boxed .file-icon { + height: 1.5em; + width: 1.5em; } + html.theme--documenter-dark .file.is-boxed .file-icon .fa { + font-size: 21px; } + html.theme--documenter-dark .file.is-boxed.is-small .file-icon .fa, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-boxed .file-icon .fa { + font-size: 14px; } + html.theme--documenter-dark .file.is-boxed.is-medium .file-icon .fa { + font-size: 28px; } + html.theme--documenter-dark .file.is-boxed.is-large .file-icon .fa { + font-size: 35px; } + html.theme--documenter-dark .file.is-boxed.has-name .file-cta { + border-radius: 0.4em 0.4em 0 0; } + html.theme--documenter-dark .file.is-boxed.has-name .file-name { + border-radius: 0 0 0.4em 0.4em; + border-width: 0 1px 1px; } + html.theme--documenter-dark .file.is-centered { + justify-content: center; } + html.theme--documenter-dark .file.is-fullwidth .file-label { + width: 100%; } + html.theme--documenter-dark .file.is-fullwidth .file-name { + flex-grow: 1; + max-width: none; } + html.theme--documenter-dark .file.is-right { + justify-content: flex-end; } + html.theme--documenter-dark .file.is-right .file-cta { + border-radius: 0 0.4em 0.4em 0; } + html.theme--documenter-dark .file.is-right .file-name { + border-radius: 0.4em 0 0 0.4em; + border-width: 1px 0 1px 1px; + order: -1; } + html.theme--documenter-dark .file-label { + align-items: stretch; + display: flex; + cursor: pointer; + justify-content: flex-start; + overflow: hidden; + position: relative; } + html.theme--documenter-dark .file-label:hover .file-cta { + background-color: #e5eaec; + color: #282f2f; } + html.theme--documenter-dark .file-label:hover .file-name { + border-color: #596668; } + html.theme--documenter-dark .file-label:active .file-cta { + background-color: #dde4e6; + color: #282f2f; } + html.theme--documenter-dark .file-label:active .file-name { + border-color: #535f61; } + html.theme--documenter-dark .file-input { + height: 100%; + left: 0; + opacity: 0; + outline: none; + position: absolute; + top: 0; + width: 100%; } + html.theme--documenter-dark .file-cta, + html.theme--documenter-dark .file-name { + border-color: #5e6d6f; + border-radius: 0.4em; + font-size: 1em; + padding-left: 1em; + padding-right: 1em; + white-space: nowrap; } + html.theme--documenter-dark .file-cta { + background-color: #ecf0f1; + color: #343c3d; } + html.theme--documenter-dark .file-name { + border-color: #5e6d6f; + border-style: solid; + border-width: 1px 1px 1px 0; + display: block; + max-width: 16em; + overflow: hidden; + text-align: left; + text-overflow: ellipsis; } + html.theme--documenter-dark .file-icon { + align-items: center; + display: flex; + height: 1em; + justify-content: center; + margin-right: 0.5em; + width: 1em; } + html.theme--documenter-dark .file-icon .fa { + font-size: 14px; } + html.theme--documenter-dark .label { + color: #282f2f; + display: block; + font-size: 15px; + font-weight: 700; } + html.theme--documenter-dark .label:not(:last-child) { + margin-bottom: 0.5em; } + html.theme--documenter-dark .label.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.label { + font-size: 0.85em; } + html.theme--documenter-dark .label.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .label.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .help { + display: block; + font-size: 0.85em; + margin-top: 0.25rem; } + html.theme--documenter-dark .help.is-white { + color: white; } + html.theme--documenter-dark .help.is-black { + color: #0a0a0a; } + html.theme--documenter-dark .help.is-light { + color: #ecf0f1; } + html.theme--documenter-dark .help.is-dark, html.theme--documenter-dark .content kbd.help { + color: #282f2f; } + html.theme--documenter-dark .help.is-primary, html.theme--documenter-dark .docstring > section > a.help.docs-sourcelink { + color: #375a7f; } + html.theme--documenter-dark .help.is-link { + color: #1abc9c; } + html.theme--documenter-dark .help.is-info { + color: #024c7d; } + html.theme--documenter-dark .help.is-success { + color: #008438; } + html.theme--documenter-dark .help.is-warning { + color: #ad8100; } + html.theme--documenter-dark .help.is-danger { + color: #9e1b0d; } + html.theme--documenter-dark .field:not(:last-child) { + margin-bottom: 0.75rem; } + html.theme--documenter-dark .field.has-addons { + display: flex; + justify-content: flex-start; } + html.theme--documenter-dark .field.has-addons .control:not(:last-child) { + margin-right: -1px; } + html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) .button, + html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) .input, + html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) #documenter .docs-sidebar form.docs-search > input, + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control:not(:first-child):not(:last-child) form.docs-search > input, + html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) .select select { + border-radius: 0; } + html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) .button, + html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) .input, + html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) #documenter .docs-sidebar form.docs-search > input, + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control:first-child:not(:only-child) form.docs-search > input, + html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) .select select { + border-bottom-right-radius: 0; + border-top-right-radius: 0; } + html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) .button, + html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) .input, + html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) #documenter .docs-sidebar form.docs-search > input, + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control:last-child:not(:only-child) form.docs-search > input, + html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) .select select { + border-bottom-left-radius: 0; + border-top-left-radius: 0; } + html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):hover, html.theme--documenter-dark .field.has-addons .control .button.is-hovered:not([disabled]), + html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):hover, + html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search > input:not([disabled]):hover, + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search > input:not([disabled]):hover, + html.theme--documenter-dark .field.has-addons .control .input.is-hovered:not([disabled]), + html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search > input.is-hovered:not([disabled]), + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search > input.is-hovered:not([disabled]), + html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):hover, + html.theme--documenter-dark .field.has-addons .control .select select.is-hovered:not([disabled]) { + z-index: 2; } + html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):focus, html.theme--documenter-dark .field.has-addons .control .button.is-focused:not([disabled]), html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):active, html.theme--documenter-dark .field.has-addons .control .button.is-active:not([disabled]), + html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):focus, + html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search > input:not([disabled]):focus, + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search > input:not([disabled]):focus, + html.theme--documenter-dark .field.has-addons .control .input.is-focused:not([disabled]), + html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search > input.is-focused:not([disabled]), + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search > input.is-focused:not([disabled]), + html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):active, + html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search > input:not([disabled]):active, + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search > input:not([disabled]):active, + html.theme--documenter-dark .field.has-addons .control .input.is-active:not([disabled]), + html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search > input.is-active:not([disabled]), + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search > input.is-active:not([disabled]), + html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):focus, + html.theme--documenter-dark .field.has-addons .control .select select.is-focused:not([disabled]), + html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):active, + html.theme--documenter-dark .field.has-addons .control .select select.is-active:not([disabled]) { + z-index: 3; } + html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):focus:hover, html.theme--documenter-dark .field.has-addons .control .button.is-focused:not([disabled]):hover, html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):active:hover, html.theme--documenter-dark .field.has-addons .control .button.is-active:not([disabled]):hover, + html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):focus:hover, + html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search > input:not([disabled]):focus:hover, + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search > input:not([disabled]):focus:hover, + html.theme--documenter-dark .field.has-addons .control .input.is-focused:not([disabled]):hover, + html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search > input.is-focused:not([disabled]):hover, + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search > input.is-focused:not([disabled]):hover, + html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):active:hover, + html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search > input:not([disabled]):active:hover, + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search > input:not([disabled]):active:hover, + html.theme--documenter-dark .field.has-addons .control .input.is-active:not([disabled]):hover, + html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search > input.is-active:not([disabled]):hover, + html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search > input.is-active:not([disabled]):hover, + html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):focus:hover, + html.theme--documenter-dark .field.has-addons .control .select select.is-focused:not([disabled]):hover, + html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):active:hover, + html.theme--documenter-dark .field.has-addons .control .select select.is-active:not([disabled]):hover { + z-index: 4; } + html.theme--documenter-dark .field.has-addons .control.is-expanded { + flex-grow: 1; + flex-shrink: 1; } + html.theme--documenter-dark .field.has-addons.has-addons-centered { + justify-content: center; } + html.theme--documenter-dark .field.has-addons.has-addons-right { + justify-content: flex-end; } + html.theme--documenter-dark .field.has-addons.has-addons-fullwidth .control { + flex-grow: 1; + flex-shrink: 0; } + html.theme--documenter-dark .field.is-grouped { + display: flex; + justify-content: flex-start; } + html.theme--documenter-dark .field.is-grouped > .control { + flex-shrink: 0; } + html.theme--documenter-dark .field.is-grouped > .control:not(:last-child) { + margin-bottom: 0; + margin-right: 0.75rem; } + html.theme--documenter-dark .field.is-grouped > .control.is-expanded { + flex-grow: 1; + flex-shrink: 1; } + html.theme--documenter-dark .field.is-grouped.is-grouped-centered { + justify-content: center; } + html.theme--documenter-dark .field.is-grouped.is-grouped-right { + justify-content: flex-end; } + html.theme--documenter-dark .field.is-grouped.is-grouped-multiline { + flex-wrap: wrap; } + html.theme--documenter-dark .field.is-grouped.is-grouped-multiline > .control:last-child, html.theme--documenter-dark .field.is-grouped.is-grouped-multiline > .control:not(:last-child) { + margin-bottom: 0.75rem; } + html.theme--documenter-dark .field.is-grouped.is-grouped-multiline:last-child { + margin-bottom: -0.75rem; } + html.theme--documenter-dark .field.is-grouped.is-grouped-multiline:not(:last-child) { + margin-bottom: 0; } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .field.is-horizontal { + display: flex; } } + html.theme--documenter-dark .field-label .label { + font-size: inherit; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .field-label { + margin-bottom: 0.5rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .field-label { + flex-basis: 0; + flex-grow: 1; + flex-shrink: 0; + margin-right: 1.5rem; + text-align: right; } + html.theme--documenter-dark .field-label.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.field-label { + font-size: 0.85em; + padding-top: 0.375em; } + html.theme--documenter-dark .field-label.is-normal { + padding-top: 0.375em; } + html.theme--documenter-dark .field-label.is-medium { + font-size: 1.25rem; + padding-top: 0.375em; } + html.theme--documenter-dark .field-label.is-large { + font-size: 1.5rem; + padding-top: 0.375em; } } + html.theme--documenter-dark .field-body .field .field { + margin-bottom: 0; } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .field-body { + display: flex; + flex-basis: 0; + flex-grow: 5; + flex-shrink: 1; } + html.theme--documenter-dark .field-body .field { + margin-bottom: 0; } + html.theme--documenter-dark .field-body > .field { + flex-shrink: 1; } + html.theme--documenter-dark .field-body > .field:not(.is-narrow) { + flex-grow: 1; } + html.theme--documenter-dark .field-body > .field:not(:last-child) { + margin-right: 0.75rem; } } + html.theme--documenter-dark .control { + box-sizing: border-box; + clear: both; + font-size: 15px; + position: relative; + text-align: left; } + html.theme--documenter-dark .control.has-icons-left .input:focus ~ .icon, html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search > input:focus ~ .icon, html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search > input:focus ~ .icon, + html.theme--documenter-dark .control.has-icons-left .select:focus ~ .icon, html.theme--documenter-dark .control.has-icons-right .input:focus ~ .icon, html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search > input:focus ~ .icon, html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search > input:focus ~ .icon, + html.theme--documenter-dark .control.has-icons-right .select:focus ~ .icon { + color: #5e6d6f; } + html.theme--documenter-dark .control.has-icons-left .input.is-small ~ .icon, html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search > input ~ .icon, html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search > input ~ .icon, + html.theme--documenter-dark .control.has-icons-left .select.is-small ~ .icon, html.theme--documenter-dark .control.has-icons-right .input.is-small ~ .icon, html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search > input ~ .icon, html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search > input ~ .icon, + html.theme--documenter-dark .control.has-icons-right .select.is-small ~ .icon { + font-size: 0.85em; } + html.theme--documenter-dark .control.has-icons-left .input.is-medium ~ .icon, html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search > input.is-medium ~ .icon, html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search > input.is-medium ~ .icon, + html.theme--documenter-dark .control.has-icons-left .select.is-medium ~ .icon, html.theme--documenter-dark .control.has-icons-right .input.is-medium ~ .icon, html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search > input.is-medium ~ .icon, html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search > input.is-medium ~ .icon, + html.theme--documenter-dark .control.has-icons-right .select.is-medium ~ .icon { + font-size: 1.25rem; } + html.theme--documenter-dark .control.has-icons-left .input.is-large ~ .icon, html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search > input.is-large ~ .icon, html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search > input.is-large ~ .icon, + html.theme--documenter-dark .control.has-icons-left .select.is-large ~ .icon, html.theme--documenter-dark .control.has-icons-right .input.is-large ~ .icon, html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search > input.is-large ~ .icon, html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search > input.is-large ~ .icon, + html.theme--documenter-dark .control.has-icons-right .select.is-large ~ .icon { + font-size: 1.5rem; } + html.theme--documenter-dark .control.has-icons-left .icon, html.theme--documenter-dark .control.has-icons-right .icon { + color: #dbdee0; + height: 2.25em; + pointer-events: none; + position: absolute; + top: 0; + width: 2.25em; + z-index: 4; } + html.theme--documenter-dark .control.has-icons-left .input, html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search > input, html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search > input, + html.theme--documenter-dark .control.has-icons-left .select select { + padding-left: 2.25em; } + html.theme--documenter-dark .control.has-icons-left .icon.is-left { + left: 0; } + html.theme--documenter-dark .control.has-icons-right .input, html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search > input, html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search > input, + html.theme--documenter-dark .control.has-icons-right .select select { + padding-right: 2.25em; } + html.theme--documenter-dark .control.has-icons-right .icon.is-right { + right: 0; } + html.theme--documenter-dark .control.is-loading::after { + position: absolute !important; + right: 0.625em; + top: 0.625em; + z-index: 4; } + html.theme--documenter-dark .control.is-loading.is-small:after, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.is-loading:after { + font-size: 0.85em; } + html.theme--documenter-dark .control.is-loading.is-medium:after { + font-size: 1.25rem; } + html.theme--documenter-dark .control.is-loading.is-large:after { + font-size: 1.5rem; } + html.theme--documenter-dark .breadcrumb { + font-size: 15px; + white-space: nowrap; } + html.theme--documenter-dark .breadcrumb a { + align-items: center; + color: #1abc9c; + display: flex; + justify-content: center; + padding: 0 0.75em; } + html.theme--documenter-dark .breadcrumb a:hover { + color: #1dd2af; } + html.theme--documenter-dark .breadcrumb li { + align-items: center; + display: flex; } + html.theme--documenter-dark .breadcrumb li:first-child a { + padding-left: 0; } + html.theme--documenter-dark .breadcrumb li.is-active a { + color: #f2f2f2; + cursor: default; + pointer-events: none; } + html.theme--documenter-dark .breadcrumb li + li::before { + color: #8c9b9d; + content: "\0002f"; } + html.theme--documenter-dark .breadcrumb ul, + html.theme--documenter-dark .breadcrumb ol { + align-items: flex-start; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; } + html.theme--documenter-dark .breadcrumb .icon:first-child { + margin-right: 0.5em; } + html.theme--documenter-dark .breadcrumb .icon:last-child { + margin-left: 0.5em; } + html.theme--documenter-dark .breadcrumb.is-centered ol, + html.theme--documenter-dark .breadcrumb.is-centered ul { + justify-content: center; } + html.theme--documenter-dark .breadcrumb.is-right ol, + html.theme--documenter-dark .breadcrumb.is-right ul { + justify-content: flex-end; } + html.theme--documenter-dark .breadcrumb.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.breadcrumb { + font-size: 0.85em; } + html.theme--documenter-dark .breadcrumb.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .breadcrumb.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .breadcrumb.has-arrow-separator li + li::before { + content: "\02192"; } + html.theme--documenter-dark .breadcrumb.has-bullet-separator li + li::before { + content: "\02022"; } + html.theme--documenter-dark .breadcrumb.has-dot-separator li + li::before { + content: "\000b7"; } + html.theme--documenter-dark .breadcrumb.has-succeeds-separator li + li::before { + content: "\0227B"; } + html.theme--documenter-dark .card { + background-color: white; + box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); + color: #fff; + max-width: 100%; + position: relative; } + html.theme--documenter-dark .card-header { + background-color: transparent; + align-items: stretch; + box-shadow: 0 1px 2px rgba(10, 10, 10, 0.1); + display: flex; } + html.theme--documenter-dark .card-header-title { + align-items: center; + color: #f2f2f2; + display: flex; + flex-grow: 1; + font-weight: 700; + padding: 0.75rem; } + html.theme--documenter-dark .card-header-title.is-centered { + justify-content: center; } + html.theme--documenter-dark .card-header-icon { + align-items: center; + cursor: pointer; + display: flex; + justify-content: center; + padding: 0.75rem; } + html.theme--documenter-dark .card-image { + display: block; + position: relative; } + html.theme--documenter-dark .card-content { + background-color: transparent; + padding: 1.5rem; } + html.theme--documenter-dark .card-footer { + background-color: transparent; + border-top: 1px solid #5e6d6f; + align-items: stretch; + display: flex; } + html.theme--documenter-dark .card-footer-item { + align-items: center; + display: flex; + flex-basis: 0; + flex-grow: 1; + flex-shrink: 0; + justify-content: center; + padding: 0.75rem; } + html.theme--documenter-dark .card-footer-item:not(:last-child) { + border-right: 1px solid #5e6d6f; } + html.theme--documenter-dark .card .media:not(:last-child) { + margin-bottom: 1.5rem; } + html.theme--documenter-dark .dropdown { + display: inline-flex; + position: relative; + vertical-align: top; } + html.theme--documenter-dark .dropdown.is-active .dropdown-menu, html.theme--documenter-dark .dropdown.is-hoverable:hover .dropdown-menu { + display: block; } + html.theme--documenter-dark .dropdown.is-right .dropdown-menu { + left: auto; + right: 0; } + html.theme--documenter-dark .dropdown.is-up .dropdown-menu { + bottom: 100%; + padding-bottom: 4px; + padding-top: initial; + top: auto; } + html.theme--documenter-dark .dropdown-menu { + display: none; + left: 0; + min-width: 12rem; + padding-top: 4px; + position: absolute; + top: 100%; + z-index: 20; } + html.theme--documenter-dark .dropdown-content { + background-color: #282f2f; + border-radius: 0.4em; + box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); + padding-bottom: 0.5rem; + padding-top: 0.5rem; } + html.theme--documenter-dark .dropdown-item { + color: #fff; + display: block; + font-size: 0.875rem; + line-height: 1.5; + padding: 0.375rem 1rem; + position: relative; } + html.theme--documenter-dark a.dropdown-item, + html.theme--documenter-dark button.dropdown-item { + padding-right: 3rem; + text-align: left; + white-space: nowrap; + width: 100%; } + html.theme--documenter-dark a.dropdown-item:hover, + html.theme--documenter-dark button.dropdown-item:hover { + background-color: #282f2f; + color: #0a0a0a; } + html.theme--documenter-dark a.dropdown-item.is-active, + html.theme--documenter-dark button.dropdown-item.is-active { + background-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark .dropdown-divider { + background-color: #5e6d6f; + border: none; + display: block; + height: 1px; + margin: 0.5rem 0; } + html.theme--documenter-dark .level { + align-items: center; + justify-content: space-between; } + html.theme--documenter-dark .level code { + border-radius: 0.4em; } + html.theme--documenter-dark .level img { + display: inline-block; + vertical-align: top; } + html.theme--documenter-dark .level.is-mobile { + display: flex; } + html.theme--documenter-dark .level.is-mobile .level-left, + html.theme--documenter-dark .level.is-mobile .level-right { + display: flex; } + html.theme--documenter-dark .level.is-mobile .level-left + .level-right { + margin-top: 0; } + html.theme--documenter-dark .level.is-mobile .level-item:not(:last-child) { + margin-bottom: 0; + margin-right: 0.75rem; } + html.theme--documenter-dark .level.is-mobile .level-item:not(.is-narrow) { + flex-grow: 1; } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .level { + display: flex; } + html.theme--documenter-dark .level > .level-item:not(.is-narrow) { + flex-grow: 1; } } + html.theme--documenter-dark .level-item { + align-items: center; + display: flex; + flex-basis: auto; + flex-grow: 0; + flex-shrink: 0; + justify-content: center; } + html.theme--documenter-dark .level-item .title, + html.theme--documenter-dark .level-item .subtitle { + margin-bottom: 0; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .level-item:not(:last-child) { + margin-bottom: 0.75rem; } } + html.theme--documenter-dark .level-left, + html.theme--documenter-dark .level-right { + flex-basis: auto; + flex-grow: 0; + flex-shrink: 0; } + html.theme--documenter-dark .level-left .level-item.is-flexible, + html.theme--documenter-dark .level-right .level-item.is-flexible { + flex-grow: 1; } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .level-left .level-item:not(:last-child), + html.theme--documenter-dark .level-right .level-item:not(:last-child) { + margin-right: 0.75rem; } } + html.theme--documenter-dark .level-left { + align-items: center; + justify-content: flex-start; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .level-left + .level-right { + margin-top: 1.5rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .level-left { + display: flex; } } + html.theme--documenter-dark .level-right { + align-items: center; + justify-content: flex-end; } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .level-right { + display: flex; } } + html.theme--documenter-dark .list { + background-color: white; + border-radius: 0.4em; + box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .list-item { + display: block; + padding: 0.5em 1em; } + html.theme--documenter-dark .list-item:not(a) { + color: #fff; } + html.theme--documenter-dark .list-item:first-child { + border-top-left-radius: 0.4em; + border-top-right-radius: 0.4em; } + html.theme--documenter-dark .list-item:last-child { + border-bottom-left-radius: 0.4em; + border-bottom-right-radius: 0.4em; } + html.theme--documenter-dark .list-item:not(:last-child) { + border-bottom: 1px solid #5e6d6f; } + html.theme--documenter-dark .list-item.is-active { + background-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark a.list-item { + background-color: #282f2f; + cursor: pointer; } + html.theme--documenter-dark .media { + align-items: flex-start; + display: flex; + text-align: left; } + html.theme--documenter-dark .media .content:not(:last-child) { + margin-bottom: 0.75rem; } + html.theme--documenter-dark .media .media { + border-top: 1px solid rgba(94, 109, 111, 0.5); + display: flex; + padding-top: 0.75rem; } + html.theme--documenter-dark .media .media .content:not(:last-child), + html.theme--documenter-dark .media .media .control:not(:last-child) { + margin-bottom: 0.5rem; } + html.theme--documenter-dark .media .media .media { + padding-top: 0.5rem; } + html.theme--documenter-dark .media .media .media + .media { + margin-top: 0.5rem; } + html.theme--documenter-dark .media + .media { + border-top: 1px solid rgba(94, 109, 111, 0.5); + margin-top: 1rem; + padding-top: 1rem; } + html.theme--documenter-dark .media.is-large + .media { + margin-top: 1.5rem; + padding-top: 1.5rem; } + html.theme--documenter-dark .media-left, + html.theme--documenter-dark .media-right { + flex-basis: auto; + flex-grow: 0; + flex-shrink: 0; } + html.theme--documenter-dark .media-left { + margin-right: 1rem; } + html.theme--documenter-dark .media-right { + margin-left: 1rem; } + html.theme--documenter-dark .media-content { + flex-basis: auto; + flex-grow: 1; + flex-shrink: 1; + text-align: left; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .media-content { + overflow-x: auto; } } + html.theme--documenter-dark .menu { + font-size: 15px; } + html.theme--documenter-dark .menu.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.menu { + font-size: 0.85em; } + html.theme--documenter-dark .menu.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .menu.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .menu-list { + line-height: 1.25; } + html.theme--documenter-dark .menu-list a { + border-radius: 3px; + color: #fff; + display: block; + padding: 0.5em 0.75em; } + html.theme--documenter-dark .menu-list a:hover { + background-color: #282f2f; + color: #f2f2f2; } + html.theme--documenter-dark .menu-list a.is-active { + background-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark .menu-list li ul { + border-left: 1px solid #5e6d6f; + margin: 0.75em; + padding-left: 0.75em; } + html.theme--documenter-dark .menu-label { + color: white; + font-size: 0.75em; + letter-spacing: 0.1em; + text-transform: uppercase; } + html.theme--documenter-dark .menu-label:not(:first-child) { + margin-top: 1em; } + html.theme--documenter-dark .menu-label:not(:last-child) { + margin-bottom: 1em; } + html.theme--documenter-dark .message { + background-color: #282f2f; + border-radius: 0.4em; + font-size: 15px; } + html.theme--documenter-dark .message strong { + color: currentColor; } + html.theme--documenter-dark .message a:not(.button):not(.tag):not(.dropdown-item) { + color: currentColor; + text-decoration: underline; } + html.theme--documenter-dark .message.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.message { + font-size: 0.85em; } + html.theme--documenter-dark .message.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .message.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .message.is-white { + background-color: white; } + html.theme--documenter-dark .message.is-white .message-header { + background-color: white; + color: #0a0a0a; } + html.theme--documenter-dark .message.is-white .message-body { + border-color: white; + color: #4d4d4d; } + html.theme--documenter-dark .message.is-black { + background-color: #fafafa; } + html.theme--documenter-dark .message.is-black .message-header { + background-color: #0a0a0a; + color: white; } + html.theme--documenter-dark .message.is-black .message-body { + border-color: #0a0a0a; + color: #090909; } + html.theme--documenter-dark .message.is-light { + background-color: #f9fafb; } + html.theme--documenter-dark .message.is-light .message-header { + background-color: #ecf0f1; + color: #282f2f; } + html.theme--documenter-dark .message.is-light .message-body { + border-color: #ecf0f1; + color: #505050; } + html.theme--documenter-dark .message.is-dark, html.theme--documenter-dark .content kbd.message { + background-color: #f9fafa; } + html.theme--documenter-dark .message.is-dark .message-header, html.theme--documenter-dark .content kbd.message .message-header { + background-color: #282f2f; + color: #ecf0f1; } + html.theme--documenter-dark .message.is-dark .message-body, html.theme--documenter-dark .content kbd.message .message-body { + border-color: #282f2f; + color: #212526; } + html.theme--documenter-dark .message.is-primary, html.theme--documenter-dark .docstring > section > a.message.docs-sourcelink { + background-color: #f8fafc; } + html.theme--documenter-dark .message.is-primary .message-header, html.theme--documenter-dark .docstring > section > a.message.docs-sourcelink .message-header { + background-color: #375a7f; + color: #fff; } + html.theme--documenter-dark .message.is-primary .message-body, html.theme--documenter-dark .docstring > section > a.message.docs-sourcelink .message-body { + border-color: #375a7f; + color: #2b4159; } + html.theme--documenter-dark .message.is-link { + background-color: #f6fefc; } + html.theme--documenter-dark .message.is-link .message-header { + background-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark .message.is-link .message-body { + border-color: #1abc9c; + color: #0b2f28; } + html.theme--documenter-dark .message.is-info { + background-color: #f5fbff; } + html.theme--documenter-dark .message.is-info .message-header { + background-color: #024c7d; + color: #fff; } + html.theme--documenter-dark .message.is-info .message-body { + border-color: #024c7d; + color: #033659; } + html.theme--documenter-dark .message.is-success { + background-color: #f5fff9; } + html.theme--documenter-dark .message.is-success .message-header { + background-color: #008438; + color: #fff; } + html.theme--documenter-dark .message.is-success .message-body { + border-color: #008438; + color: #023518; } + html.theme--documenter-dark .message.is-warning { + background-color: #fffcf5; } + html.theme--documenter-dark .message.is-warning .message-header { + background-color: #ad8100; + color: #fff; } + html.theme--documenter-dark .message.is-warning .message-body { + border-color: #ad8100; + color: #3d2e03; } + html.theme--documenter-dark .message.is-danger { + background-color: #fef6f6; } + html.theme--documenter-dark .message.is-danger .message-header { + background-color: #9e1b0d; + color: #fff; } + html.theme--documenter-dark .message.is-danger .message-body { + border-color: #9e1b0d; + color: #7a170c; } + html.theme--documenter-dark .message-header { + align-items: center; + background-color: #fff; + border-radius: 0.4em 0.4em 0 0; + color: rgba(0, 0, 0, 0.7); + display: flex; + font-weight: 700; + justify-content: space-between; + line-height: 1.25; + padding: 0.75em 1em; + position: relative; } + html.theme--documenter-dark .message-header .delete { + flex-grow: 0; + flex-shrink: 0; + margin-left: 0.75em; } + html.theme--documenter-dark .message-header + .message-body { + border-width: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; } + html.theme--documenter-dark .message-body { + border-color: #5e6d6f; + border-radius: 0.4em; + border-style: solid; + border-width: 0 0 0 4px; + color: #fff; + padding: 1.25em 1.5em; } + html.theme--documenter-dark .message-body code, + html.theme--documenter-dark .message-body pre { + background-color: white; } + html.theme--documenter-dark .message-body pre code { + background-color: transparent; } + html.theme--documenter-dark .modal { + align-items: center; + display: none; + flex-direction: column; + justify-content: center; + overflow: hidden; + position: fixed; + z-index: 40; } + html.theme--documenter-dark .modal.is-active { + display: flex; } + html.theme--documenter-dark .modal-background { + background-color: rgba(10, 10, 10, 0.86); } + html.theme--documenter-dark .modal-content, + html.theme--documenter-dark .modal-card { + margin: 0 20px; + max-height: calc(100vh - 160px); + overflow: auto; + position: relative; + width: 100%; } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .modal-content, + html.theme--documenter-dark .modal-card { + margin: 0 auto; + max-height: calc(100vh - 40px); + width: 640px; } } + html.theme--documenter-dark .modal-close { + background: none; + height: 40px; + position: fixed; + right: 20px; + top: 20px; + width: 40px; } + html.theme--documenter-dark .modal-card { + display: flex; + flex-direction: column; + max-height: calc(100vh - 40px); + overflow: hidden; + -ms-overflow-y: visible; } + html.theme--documenter-dark .modal-card-head, + html.theme--documenter-dark .modal-card-foot { + align-items: center; + background-color: #282f2f; + display: flex; + flex-shrink: 0; + justify-content: flex-start; + padding: 20px; + position: relative; } + html.theme--documenter-dark .modal-card-head { + border-bottom: 1px solid #5e6d6f; + border-top-left-radius: 8px; + border-top-right-radius: 8px; } + html.theme--documenter-dark .modal-card-title { + color: #f2f2f2; + flex-grow: 1; + flex-shrink: 0; + font-size: 1.5rem; + line-height: 1; } + html.theme--documenter-dark .modal-card-foot { + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; + border-top: 1px solid #5e6d6f; } + html.theme--documenter-dark .modal-card-foot .button:not(:last-child) { + margin-right: 0.5em; } + html.theme--documenter-dark .modal-card-body { + -webkit-overflow-scrolling: touch; + background-color: white; + flex-grow: 1; + flex-shrink: 1; + overflow: auto; + padding: 20px; } + html.theme--documenter-dark .navbar { + background-color: #375a7f; + min-height: 4rem; + position: relative; + z-index: 30; } + html.theme--documenter-dark .navbar.is-white { + background-color: white; + color: #0a0a0a; } + html.theme--documenter-dark .navbar.is-white .navbar-brand > .navbar-item, + html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link { + color: #0a0a0a; } + html.theme--documenter-dark .navbar.is-white .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-white .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-white .navbar-brand > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link.is-active { + background-color: #f2f2f2; + color: #0a0a0a; } + html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link::after { + border-color: #0a0a0a; } + html.theme--documenter-dark .navbar.is-white .navbar-burger { + color: #0a0a0a; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar.is-white .navbar-start > .navbar-item, + html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link, + html.theme--documenter-dark .navbar.is-white .navbar-end > .navbar-item, + html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link { + color: #0a0a0a; } + html.theme--documenter-dark .navbar.is-white .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-white .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-white .navbar-start > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link:focus, + html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link:hover, + html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .navbar.is-white .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .navbar.is-white .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .navbar.is-white .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link:focus, + html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link:hover, + html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link.is-active { + background-color: #f2f2f2; + color: #0a0a0a; } + html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link::after, + html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link::after { + border-color: #0a0a0a; } + html.theme--documenter-dark .navbar.is-white .navbar-item.has-dropdown:focus .navbar-link, + html.theme--documenter-dark .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #f2f2f2; + color: #0a0a0a; } + html.theme--documenter-dark .navbar.is-white .navbar-dropdown a.navbar-item.is-active { + background-color: white; + color: #0a0a0a; } } + html.theme--documenter-dark .navbar.is-black { + background-color: #0a0a0a; + color: white; } + html.theme--documenter-dark .navbar.is-black .navbar-brand > .navbar-item, + html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link { + color: white; } + html.theme--documenter-dark .navbar.is-black .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-black .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-black .navbar-brand > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link.is-active { + background-color: black; + color: white; } + html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link::after { + border-color: white; } + html.theme--documenter-dark .navbar.is-black .navbar-burger { + color: white; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar.is-black .navbar-start > .navbar-item, + html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link, + html.theme--documenter-dark .navbar.is-black .navbar-end > .navbar-item, + html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link { + color: white; } + html.theme--documenter-dark .navbar.is-black .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-black .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-black .navbar-start > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link:focus, + html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link:hover, + html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .navbar.is-black .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .navbar.is-black .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .navbar.is-black .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link:focus, + html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link:hover, + html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link.is-active { + background-color: black; + color: white; } + html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link::after, + html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link::after { + border-color: white; } + html.theme--documenter-dark .navbar.is-black .navbar-item.has-dropdown:focus .navbar-link, + html.theme--documenter-dark .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link { + background-color: black; + color: white; } + html.theme--documenter-dark .navbar.is-black .navbar-dropdown a.navbar-item.is-active { + background-color: #0a0a0a; + color: white; } } + html.theme--documenter-dark .navbar.is-light { + background-color: #ecf0f1; + color: #282f2f; } + html.theme--documenter-dark .navbar.is-light .navbar-brand > .navbar-item, + html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link { + color: #282f2f; } + html.theme--documenter-dark .navbar.is-light .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-light .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-light .navbar-brand > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link.is-active { + background-color: #dde4e6; + color: #282f2f; } + html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link::after { + border-color: #282f2f; } + html.theme--documenter-dark .navbar.is-light .navbar-burger { + color: #282f2f; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar.is-light .navbar-start > .navbar-item, + html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link, + html.theme--documenter-dark .navbar.is-light .navbar-end > .navbar-item, + html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link { + color: #282f2f; } + html.theme--documenter-dark .navbar.is-light .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-light .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-light .navbar-start > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link:focus, + html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link:hover, + html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .navbar.is-light .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .navbar.is-light .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .navbar.is-light .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link:focus, + html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link:hover, + html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link.is-active { + background-color: #dde4e6; + color: #282f2f; } + html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link::after, + html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link::after { + border-color: #282f2f; } + html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link, + html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #dde4e6; + color: #282f2f; } + html.theme--documenter-dark .navbar.is-light .navbar-dropdown a.navbar-item.is-active { + background-color: #ecf0f1; + color: #282f2f; } } + html.theme--documenter-dark .navbar.is-dark, html.theme--documenter-dark .content kbd.navbar { + background-color: #282f2f; + color: #ecf0f1; } + html.theme--documenter-dark .navbar.is-dark .navbar-brand > .navbar-item, html.theme--documenter-dark .content kbd.navbar .navbar-brand > .navbar-item, + html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link, + html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link { + color: #ecf0f1; } + html.theme--documenter-dark .navbar.is-dark .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .content kbd.navbar .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-dark .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .content kbd.navbar .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-dark .navbar-brand > a.navbar-item.is-active, html.theme--documenter-dark .content kbd.navbar .navbar-brand > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link.is-active, + html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link.is-active { + background-color: #1d2122; + color: #ecf0f1; } + html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link::after, html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link::after { + border-color: #ecf0f1; } + html.theme--documenter-dark .navbar.is-dark .navbar-burger, html.theme--documenter-dark .content kbd.navbar .navbar-burger { + color: #ecf0f1; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar.is-dark .navbar-start > .navbar-item, html.theme--documenter-dark .content kbd.navbar .navbar-start > .navbar-item, + html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link, + html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link, + html.theme--documenter-dark .navbar.is-dark .navbar-end > .navbar-item, + html.theme--documenter-dark .content kbd.navbar .navbar-end > .navbar-item, + html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link, + html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link { + color: #ecf0f1; } + html.theme--documenter-dark .navbar.is-dark .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .content kbd.navbar .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-dark .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .content kbd.navbar .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-dark .navbar-start > a.navbar-item.is-active, html.theme--documenter-dark .content kbd.navbar .navbar-start > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link:focus, + html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link:focus, + html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link:hover, + html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link:hover, + html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .navbar.is-dark .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .content kbd.navbar .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .navbar.is-dark .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .content kbd.navbar .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .navbar.is-dark .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .content kbd.navbar .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link:focus, + html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link:focus, + html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link:hover, + html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link:hover, + html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link.is-active, + html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link.is-active { + background-color: #1d2122; + color: #ecf0f1; } + html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link::after, html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link::after, + html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link::after, + html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link::after { + border-color: #ecf0f1; } + html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link, html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link, + html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link, + html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #1d2122; + color: #ecf0f1; } + html.theme--documenter-dark .navbar.is-dark .navbar-dropdown a.navbar-item.is-active, html.theme--documenter-dark .content kbd.navbar .navbar-dropdown a.navbar-item.is-active { + background-color: #282f2f; + color: #ecf0f1; } } + html.theme--documenter-dark .navbar.is-primary, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink { + background-color: #375a7f; + color: #fff; } + html.theme--documenter-dark .navbar.is-primary .navbar-brand > .navbar-item, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-brand > .navbar-item, + html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-brand .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-primary .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-primary .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-primary .navbar-brand > a.navbar-item.is-active, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-brand > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link.is-active, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active { + background-color: #2f4d6d; + color: #fff; } + html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link::after, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-brand .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-primary .navbar-burger, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar.is-primary .navbar-start > .navbar-item, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-start > .navbar-item, + html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-start .navbar-link, + html.theme--documenter-dark .navbar.is-primary .navbar-end > .navbar-item, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-end > .navbar-item, + html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-end .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-primary .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-primary .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-primary .navbar-start > a.navbar-item.is-active, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-start > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link:focus, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-start .navbar-link:focus, + html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link:hover, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-start .navbar-link:hover, + html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .navbar.is-primary .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .navbar.is-primary .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .navbar.is-primary .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link:focus, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-end .navbar-link:focus, + html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link:hover, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-end .navbar-link:hover, + html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link.is-active, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active { + background-color: #2f4d6d; + color: #fff; } + html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link::after, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-start .navbar-link::after, + html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link::after, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-end .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link, + html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link, + html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #2f4d6d; + color: #fff; } + html.theme--documenter-dark .navbar.is-primary .navbar-dropdown a.navbar-item.is-active, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active { + background-color: #375a7f; + color: #fff; } } + html.theme--documenter-dark .navbar.is-link { + background-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark .navbar.is-link .navbar-brand > .navbar-item, + html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-link .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-link .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-link .navbar-brand > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link.is-active { + background-color: #17a689; + color: #fff; } + html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-link .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar.is-link .navbar-start > .navbar-item, + html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link, + html.theme--documenter-dark .navbar.is-link .navbar-end > .navbar-item, + html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-link .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-link .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-link .navbar-start > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link:focus, + html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link:hover, + html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .navbar.is-link .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .navbar.is-link .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .navbar.is-link .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link:focus, + html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link:hover, + html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link.is-active { + background-color: #17a689; + color: #fff; } + html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link::after, + html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link, + html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #17a689; + color: #fff; } + html.theme--documenter-dark .navbar.is-link .navbar-dropdown a.navbar-item.is-active { + background-color: #1abc9c; + color: #fff; } } + html.theme--documenter-dark .navbar.is-info { + background-color: #024c7d; + color: #fff; } + html.theme--documenter-dark .navbar.is-info .navbar-brand > .navbar-item, + html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-info .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-info .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-info .navbar-brand > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link.is-active { + background-color: #023d64; + color: #fff; } + html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-info .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar.is-info .navbar-start > .navbar-item, + html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link, + html.theme--documenter-dark .navbar.is-info .navbar-end > .navbar-item, + html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-info .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-info .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-info .navbar-start > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link:focus, + html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link:hover, + html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .navbar.is-info .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .navbar.is-info .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .navbar.is-info .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link:focus, + html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link:hover, + html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link.is-active { + background-color: #023d64; + color: #fff; } + html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link::after, + html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-info .navbar-item.has-dropdown:focus .navbar-link, + html.theme--documenter-dark .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #023d64; + color: #fff; } + html.theme--documenter-dark .navbar.is-info .navbar-dropdown a.navbar-item.is-active { + background-color: #024c7d; + color: #fff; } } + html.theme--documenter-dark .navbar.is-success { + background-color: #008438; + color: #fff; } + html.theme--documenter-dark .navbar.is-success .navbar-brand > .navbar-item, + html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-success .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-success .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-success .navbar-brand > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link.is-active { + background-color: #006b2d; + color: #fff; } + html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-success .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar.is-success .navbar-start > .navbar-item, + html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link, + html.theme--documenter-dark .navbar.is-success .navbar-end > .navbar-item, + html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-success .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-success .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-success .navbar-start > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link:focus, + html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link:hover, + html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .navbar.is-success .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .navbar.is-success .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .navbar.is-success .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link:focus, + html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link:hover, + html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link.is-active { + background-color: #006b2d; + color: #fff; } + html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link::after, + html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-success .navbar-item.has-dropdown:focus .navbar-link, + html.theme--documenter-dark .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #006b2d; + color: #fff; } + html.theme--documenter-dark .navbar.is-success .navbar-dropdown a.navbar-item.is-active { + background-color: #008438; + color: #fff; } } + html.theme--documenter-dark .navbar.is-warning { + background-color: #ad8100; + color: #fff; } + html.theme--documenter-dark .navbar.is-warning .navbar-brand > .navbar-item, + html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-warning .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-warning .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-warning .navbar-brand > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link.is-active { + background-color: #946e00; + color: #fff; } + html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-warning .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar.is-warning .navbar-start > .navbar-item, + html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link, + html.theme--documenter-dark .navbar.is-warning .navbar-end > .navbar-item, + html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-warning .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-warning .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-warning .navbar-start > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link:focus, + html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link:hover, + html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .navbar.is-warning .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .navbar.is-warning .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .navbar.is-warning .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link:focus, + html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link:hover, + html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link.is-active { + background-color: #946e00; + color: #fff; } + html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link::after, + html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link, + html.theme--documenter-dark .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #946e00; + color: #fff; } + html.theme--documenter-dark .navbar.is-warning .navbar-dropdown a.navbar-item.is-active { + background-color: #ad8100; + color: #fff; } } + html.theme--documenter-dark .navbar.is-danger { + background-color: #9e1b0d; + color: #fff; } + html.theme--documenter-dark .navbar.is-danger .navbar-brand > .navbar-item, + html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-danger .navbar-brand > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-danger .navbar-brand > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-danger .navbar-brand > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link:focus, + html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link:hover, + html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link.is-active { + background-color: #86170b; + color: #fff; } + html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-danger .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar.is-danger .navbar-start > .navbar-item, + html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link, + html.theme--documenter-dark .navbar.is-danger .navbar-end > .navbar-item, + html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link { + color: #fff; } + html.theme--documenter-dark .navbar.is-danger .navbar-start > a.navbar-item:focus, html.theme--documenter-dark .navbar.is-danger .navbar-start > a.navbar-item:hover, html.theme--documenter-dark .navbar.is-danger .navbar-start > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link:focus, + html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link:hover, + html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link.is-active, + html.theme--documenter-dark .navbar.is-danger .navbar-end > a.navbar-item:focus, + html.theme--documenter-dark .navbar.is-danger .navbar-end > a.navbar-item:hover, + html.theme--documenter-dark .navbar.is-danger .navbar-end > a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link:focus, + html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link:hover, + html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link.is-active { + background-color: #86170b; + color: #fff; } + html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link::after, + html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link::after { + border-color: #fff; } + html.theme--documenter-dark .navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link, + html.theme--documenter-dark .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link, + html.theme--documenter-dark .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #86170b; + color: #fff; } + html.theme--documenter-dark .navbar.is-danger .navbar-dropdown a.navbar-item.is-active { + background-color: #9e1b0d; + color: #fff; } } + html.theme--documenter-dark .navbar > .container { + align-items: stretch; + display: flex; + min-height: 4rem; + width: 100%; } + html.theme--documenter-dark .navbar.has-shadow { + box-shadow: 0 2px 0 0 #282f2f; } + html.theme--documenter-dark .navbar.is-fixed-bottom, html.theme--documenter-dark .navbar.is-fixed-top { + left: 0; + position: fixed; + right: 0; + z-index: 30; } + html.theme--documenter-dark .navbar.is-fixed-bottom { + bottom: 0; } + html.theme--documenter-dark .navbar.is-fixed-bottom.has-shadow { + box-shadow: 0 -2px 0 0 #282f2f; } + html.theme--documenter-dark .navbar.is-fixed-top { + top: 0; } + html.theme--documenter-dark html.has-navbar-fixed-top, + html.theme--documenter-dark body.has-navbar-fixed-top { + padding-top: 4rem; } + html.theme--documenter-dark html.has-navbar-fixed-bottom, + html.theme--documenter-dark body.has-navbar-fixed-bottom { + padding-bottom: 4rem; } + html.theme--documenter-dark .navbar-brand, + html.theme--documenter-dark .navbar-tabs { + align-items: stretch; + display: flex; + flex-shrink: 0; + min-height: 4rem; } + html.theme--documenter-dark .navbar-brand a.navbar-item:focus, html.theme--documenter-dark .navbar-brand a.navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark .navbar-tabs { + -webkit-overflow-scrolling: touch; + max-width: 100vw; + overflow-x: auto; + overflow-y: hidden; } + html.theme--documenter-dark .navbar-burger { + color: #fff; + cursor: pointer; + display: block; + height: 4rem; + position: relative; + width: 4rem; + margin-left: auto; } + html.theme--documenter-dark .navbar-burger span { + background-color: currentColor; + display: block; + height: 1px; + left: calc(50% - 8px); + position: absolute; + transform-origin: center; + transition-duration: 86ms; + transition-property: background-color, opacity, transform; + transition-timing-function: ease-out; + width: 16px; } + html.theme--documenter-dark .navbar-burger span:nth-child(1) { + top: calc(50% - 6px); } + html.theme--documenter-dark .navbar-burger span:nth-child(2) { + top: calc(50% - 1px); } + html.theme--documenter-dark .navbar-burger span:nth-child(3) { + top: calc(50% + 4px); } + html.theme--documenter-dark .navbar-burger:hover { + background-color: rgba(0, 0, 0, 0.05); } + html.theme--documenter-dark .navbar-burger.is-active span:nth-child(1) { + transform: translateY(5px) rotate(45deg); } + html.theme--documenter-dark .navbar-burger.is-active span:nth-child(2) { + opacity: 0; } + html.theme--documenter-dark .navbar-burger.is-active span:nth-child(3) { + transform: translateY(-5px) rotate(-45deg); } + html.theme--documenter-dark .navbar-menu { + display: none; } + html.theme--documenter-dark .navbar-item, + html.theme--documenter-dark .navbar-link { + color: #fff; + display: block; + line-height: 1.5; + padding: 0.5rem 0.75rem; + position: relative; } + html.theme--documenter-dark .navbar-item .icon:only-child, + html.theme--documenter-dark .navbar-link .icon:only-child { + margin-left: -0.25rem; + margin-right: -0.25rem; } + html.theme--documenter-dark a.navbar-item, + html.theme--documenter-dark .navbar-link { + cursor: pointer; } + html.theme--documenter-dark a.navbar-item:focus, html.theme--documenter-dark a.navbar-item:focus-within, html.theme--documenter-dark a.navbar-item:hover, html.theme--documenter-dark a.navbar-item.is-active, + html.theme--documenter-dark .navbar-link:focus, + html.theme--documenter-dark .navbar-link:focus-within, + html.theme--documenter-dark .navbar-link:hover, + html.theme--documenter-dark .navbar-link.is-active { + background-color: transparent; + color: #1abc9c; } + html.theme--documenter-dark .navbar-item { + display: block; + flex-grow: 0; + flex-shrink: 0; } + html.theme--documenter-dark .navbar-item img { + max-height: 1.75rem; } + html.theme--documenter-dark .navbar-item.has-dropdown { + padding: 0; } + html.theme--documenter-dark .navbar-item.is-expanded { + flex-grow: 1; + flex-shrink: 1; } + html.theme--documenter-dark .navbar-item.is-tab { + border-bottom: 1px solid transparent; + min-height: 4rem; + padding-bottom: calc(0.5rem - 1px); } + html.theme--documenter-dark .navbar-item.is-tab:focus, html.theme--documenter-dark .navbar-item.is-tab:hover { + background-color: transparent; + border-bottom-color: #1abc9c; } + html.theme--documenter-dark .navbar-item.is-tab.is-active { + background-color: transparent; + border-bottom-color: #1abc9c; + border-bottom-style: solid; + border-bottom-width: 3px; + color: #1abc9c; + padding-bottom: calc(0.5rem - 3px); } + html.theme--documenter-dark .navbar-content { + flex-grow: 1; + flex-shrink: 1; } + html.theme--documenter-dark .navbar-link:not(.is-arrowless) { + padding-right: 2.5em; } + html.theme--documenter-dark .navbar-link:not(.is-arrowless)::after { + border-color: #fff; + margin-top: -0.375em; + right: 1.125em; } + html.theme--documenter-dark .navbar-dropdown { + font-size: 0.875rem; + padding-bottom: 0.5rem; + padding-top: 0.5rem; } + html.theme--documenter-dark .navbar-dropdown .navbar-item { + padding-left: 1.5rem; + padding-right: 1.5rem; } + html.theme--documenter-dark .navbar-divider { + background-color: rgba(0, 0, 0, 0.2); + border: none; + display: none; + height: 2px; + margin: 0.5rem 0; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .navbar > .container { + display: block; } + html.theme--documenter-dark .navbar-brand .navbar-item, + html.theme--documenter-dark .navbar-tabs .navbar-item { + align-items: center; + display: flex; } + html.theme--documenter-dark .navbar-link::after { + display: none; } + html.theme--documenter-dark .navbar-menu { + background-color: #375a7f; + box-shadow: 0 8px 16px rgba(10, 10, 10, 0.1); + padding: 0.5rem 0; } + html.theme--documenter-dark .navbar-menu.is-active { + display: block; } + html.theme--documenter-dark .navbar.is-fixed-bottom-touch, html.theme--documenter-dark .navbar.is-fixed-top-touch { + left: 0; + position: fixed; + right: 0; + z-index: 30; } + html.theme--documenter-dark .navbar.is-fixed-bottom-touch { + bottom: 0; } + html.theme--documenter-dark .navbar.is-fixed-bottom-touch.has-shadow { + box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .navbar.is-fixed-top-touch { + top: 0; } + html.theme--documenter-dark .navbar.is-fixed-top .navbar-menu, html.theme--documenter-dark .navbar.is-fixed-top-touch .navbar-menu { + -webkit-overflow-scrolling: touch; + max-height: calc(100vh - 4rem); + overflow: auto; } + html.theme--documenter-dark html.has-navbar-fixed-top-touch, + html.theme--documenter-dark body.has-navbar-fixed-top-touch { + padding-top: 4rem; } + html.theme--documenter-dark html.has-navbar-fixed-bottom-touch, + html.theme--documenter-dark body.has-navbar-fixed-bottom-touch { + padding-bottom: 4rem; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .navbar, + html.theme--documenter-dark .navbar-menu, + html.theme--documenter-dark .navbar-start, + html.theme--documenter-dark .navbar-end { + align-items: stretch; + display: flex; } + html.theme--documenter-dark .navbar { + min-height: 4rem; } + html.theme--documenter-dark .navbar.is-spaced { + padding: 1rem 2rem; } + html.theme--documenter-dark .navbar.is-spaced .navbar-start, + html.theme--documenter-dark .navbar.is-spaced .navbar-end { + align-items: center; } + html.theme--documenter-dark .navbar.is-spaced a.navbar-item, + html.theme--documenter-dark .navbar.is-spaced .navbar-link { + border-radius: 0.4em; } + html.theme--documenter-dark .navbar.is-transparent a.navbar-item:focus, html.theme--documenter-dark .navbar.is-transparent a.navbar-item:hover, html.theme--documenter-dark .navbar.is-transparent a.navbar-item.is-active, + html.theme--documenter-dark .navbar.is-transparent .navbar-link:focus, + html.theme--documenter-dark .navbar.is-transparent .navbar-link:hover, + html.theme--documenter-dark .navbar.is-transparent .navbar-link.is-active { + background-color: transparent !important; } + html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link, html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link, html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link, html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link { + background-color: transparent !important; } + html.theme--documenter-dark .navbar.is-transparent .navbar-dropdown a.navbar-item:focus, html.theme--documenter-dark .navbar.is-transparent .navbar-dropdown a.navbar-item:hover { + background-color: transparent; + color: #dbdee0; } + html.theme--documenter-dark .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active { + background-color: transparent; + color: #1abc9c; } + html.theme--documenter-dark .navbar-burger { + display: none; } + html.theme--documenter-dark .navbar-item, + html.theme--documenter-dark .navbar-link { + align-items: center; + display: flex; } + html.theme--documenter-dark .navbar-item { + display: flex; } + html.theme--documenter-dark .navbar-item.has-dropdown { + align-items: stretch; } + html.theme--documenter-dark .navbar-item.has-dropdown-up .navbar-link::after { + transform: rotate(135deg) translate(0.25em, -0.25em); } + html.theme--documenter-dark .navbar-item.has-dropdown-up .navbar-dropdown { + border-bottom: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 8px 8px 0 0; + border-top: none; + bottom: 100%; + box-shadow: 0 -8px 8px rgba(10, 10, 10, 0.1); + top: auto; } + html.theme--documenter-dark .navbar-item.is-active .navbar-dropdown, html.theme--documenter-dark .navbar-item.is-hoverable:focus .navbar-dropdown, html.theme--documenter-dark .navbar-item.is-hoverable:focus-within .navbar-dropdown, html.theme--documenter-dark .navbar-item.is-hoverable:hover .navbar-dropdown { + display: block; } + .navbar.is-spaced html.theme--documenter-dark .navbar-item.is-active .navbar-dropdown, html.theme--documenter-dark .navbar-item.is-active .navbar-dropdown.is-boxed, .navbar.is-spaced html.theme--documenter-dark .navbar-item.is-hoverable:focus .navbar-dropdown, html.theme--documenter-dark .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed, .navbar.is-spaced html.theme--documenter-dark .navbar-item.is-hoverable:focus-within .navbar-dropdown, html.theme--documenter-dark .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed, .navbar.is-spaced html.theme--documenter-dark .navbar-item.is-hoverable:hover .navbar-dropdown, html.theme--documenter-dark .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed { + opacity: 1; + pointer-events: auto; + transform: translateY(0); } + html.theme--documenter-dark .navbar-menu { + flex-grow: 1; + flex-shrink: 0; } + html.theme--documenter-dark .navbar-start { + justify-content: flex-start; + margin-right: auto; } + html.theme--documenter-dark .navbar-end { + justify-content: flex-end; + margin-left: auto; } + html.theme--documenter-dark .navbar-dropdown { + background-color: #375a7f; + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; + border-top: 1px solid rgba(0, 0, 0, 0.2); + box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1); + display: none; + font-size: 0.875rem; + left: 0; + min-width: 100%; + position: absolute; + top: 100%; + z-index: 20; } + html.theme--documenter-dark .navbar-dropdown .navbar-item { + padding: 0.375rem 1rem; + white-space: nowrap; } + html.theme--documenter-dark .navbar-dropdown a.navbar-item { + padding-right: 3rem; } + html.theme--documenter-dark .navbar-dropdown a.navbar-item:focus, html.theme--documenter-dark .navbar-dropdown a.navbar-item:hover { + background-color: transparent; + color: #dbdee0; } + html.theme--documenter-dark .navbar-dropdown a.navbar-item.is-active { + background-color: transparent; + color: #1abc9c; } + .navbar.is-spaced html.theme--documenter-dark .navbar-dropdown, html.theme--documenter-dark .navbar-dropdown.is-boxed { + border-radius: 8px; + border-top: none; + box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); + display: block; + opacity: 0; + pointer-events: none; + top: calc(100% + (-4px)); + transform: translateY(-5px); + transition-duration: 86ms; + transition-property: opacity, transform; } + html.theme--documenter-dark .navbar-dropdown.is-right { + left: auto; + right: 0; } + html.theme--documenter-dark .navbar-divider { + display: block; } + html.theme--documenter-dark .navbar > .container .navbar-brand, + html.theme--documenter-dark .container > .navbar .navbar-brand { + margin-left: -.75rem; } + html.theme--documenter-dark .navbar > .container .navbar-menu, + html.theme--documenter-dark .container > .navbar .navbar-menu { + margin-right: -.75rem; } + html.theme--documenter-dark .navbar.is-fixed-bottom-desktop, html.theme--documenter-dark .navbar.is-fixed-top-desktop { + left: 0; + position: fixed; + right: 0; + z-index: 30; } + html.theme--documenter-dark .navbar.is-fixed-bottom-desktop { + bottom: 0; } + html.theme--documenter-dark .navbar.is-fixed-bottom-desktop.has-shadow { + box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .navbar.is-fixed-top-desktop { + top: 0; } + html.theme--documenter-dark html.has-navbar-fixed-top-desktop, + html.theme--documenter-dark body.has-navbar-fixed-top-desktop { + padding-top: 4rem; } + html.theme--documenter-dark html.has-navbar-fixed-bottom-desktop, + html.theme--documenter-dark body.has-navbar-fixed-bottom-desktop { + padding-bottom: 4rem; } + html.theme--documenter-dark html.has-spaced-navbar-fixed-top, + html.theme--documenter-dark body.has-spaced-navbar-fixed-top { + padding-top: 6rem; } + html.theme--documenter-dark html.has-spaced-navbar-fixed-bottom, + html.theme--documenter-dark body.has-spaced-navbar-fixed-bottom { + padding-bottom: 6rem; } + html.theme--documenter-dark a.navbar-item.is-active, + html.theme--documenter-dark .navbar-link.is-active { + color: #1abc9c; } + html.theme--documenter-dark a.navbar-item.is-active:not(:focus):not(:hover), + html.theme--documenter-dark .navbar-link.is-active:not(:focus):not(:hover) { + background-color: transparent; } + html.theme--documenter-dark .navbar-item.has-dropdown:focus .navbar-link, html.theme--documenter-dark .navbar-item.has-dropdown:hover .navbar-link, html.theme--documenter-dark .navbar-item.has-dropdown.is-active .navbar-link { + background-color: transparent; } } + html.theme--documenter-dark .hero.is-fullheight-with-navbar { + min-height: calc(100vh - 4rem); } + html.theme--documenter-dark .pagination { + font-size: 15px; + margin: -0.25rem; } + html.theme--documenter-dark .pagination.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.pagination { + font-size: 0.85em; } + html.theme--documenter-dark .pagination.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .pagination.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .pagination.is-rounded .pagination-previous, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.pagination .pagination-previous, + html.theme--documenter-dark .pagination.is-rounded .pagination-next, + html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.pagination .pagination-next { + padding-left: 1em; + padding-right: 1em; + border-radius: 290486px; } + html.theme--documenter-dark .pagination.is-rounded .pagination-link, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.pagination .pagination-link { + border-radius: 290486px; } + html.theme--documenter-dark .pagination, + html.theme--documenter-dark .pagination-list { + align-items: center; + display: flex; + justify-content: center; + text-align: center; } + html.theme--documenter-dark .pagination-previous, + html.theme--documenter-dark .pagination-next, + html.theme--documenter-dark .pagination-link, + html.theme--documenter-dark .pagination-ellipsis { + font-size: 1em; + justify-content: center; + margin: 0.25rem; + padding-left: 0.5em; + padding-right: 0.5em; + text-align: center; } + html.theme--documenter-dark .pagination-previous, + html.theme--documenter-dark .pagination-next, + html.theme--documenter-dark .pagination-link { + border-color: #5e6d6f; + color: #1abc9c; + min-width: 2.25em; } + html.theme--documenter-dark .pagination-previous:hover, + html.theme--documenter-dark .pagination-next:hover, + html.theme--documenter-dark .pagination-link:hover { + border-color: #8c9b9d; + color: #1dd2af; } + html.theme--documenter-dark .pagination-previous:focus, + html.theme--documenter-dark .pagination-next:focus, + html.theme--documenter-dark .pagination-link:focus { + border-color: #8c9b9d; } + html.theme--documenter-dark .pagination-previous:active, + html.theme--documenter-dark .pagination-next:active, + html.theme--documenter-dark .pagination-link:active { + box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2); } + html.theme--documenter-dark .pagination-previous[disabled], + html.theme--documenter-dark .pagination-next[disabled], + html.theme--documenter-dark .pagination-link[disabled] { + background-color: #dbdee0; + border-color: #dbdee0; + box-shadow: none; + color: #5e6d6f; + opacity: 0.5; } + html.theme--documenter-dark .pagination-previous, + html.theme--documenter-dark .pagination-next { + padding-left: 0.75em; + padding-right: 0.75em; + white-space: nowrap; } + html.theme--documenter-dark .pagination-link.is-current { + background-color: #1abc9c; + border-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark .pagination-ellipsis { + color: #8c9b9d; + pointer-events: none; } + html.theme--documenter-dark .pagination-list { + flex-wrap: wrap; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .pagination { + flex-wrap: wrap; } + html.theme--documenter-dark .pagination-previous, + html.theme--documenter-dark .pagination-next { + flex-grow: 1; + flex-shrink: 1; } + html.theme--documenter-dark .pagination-list li { + flex-grow: 1; + flex-shrink: 1; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .pagination-list { + flex-grow: 1; + flex-shrink: 1; + justify-content: flex-start; + order: 1; } + html.theme--documenter-dark .pagination-previous { + order: 2; } + html.theme--documenter-dark .pagination-next { + order: 3; } + html.theme--documenter-dark .pagination { + justify-content: space-between; } + html.theme--documenter-dark .pagination.is-centered .pagination-previous { + order: 1; } + html.theme--documenter-dark .pagination.is-centered .pagination-list { + justify-content: center; + order: 2; } + html.theme--documenter-dark .pagination.is-centered .pagination-next { + order: 3; } + html.theme--documenter-dark .pagination.is-right .pagination-previous { + order: 1; } + html.theme--documenter-dark .pagination.is-right .pagination-next { + order: 2; } + html.theme--documenter-dark .pagination.is-right .pagination-list { + justify-content: flex-end; + order: 3; } } + html.theme--documenter-dark .panel { + font-size: 15px; } + html.theme--documenter-dark .panel:not(:last-child) { + margin-bottom: 1.5rem; } + html.theme--documenter-dark .panel-heading, + html.theme--documenter-dark .panel-tabs, + html.theme--documenter-dark .panel-block { + border-bottom: 1px solid #5e6d6f; + border-left: 1px solid #5e6d6f; + border-right: 1px solid #5e6d6f; } + html.theme--documenter-dark .panel-heading:first-child, + html.theme--documenter-dark .panel-tabs:first-child, + html.theme--documenter-dark .panel-block:first-child { + border-top: 1px solid #5e6d6f; } + html.theme--documenter-dark .panel-heading { + background-color: #282f2f; + border-radius: 0.4em 0.4em 0 0; + color: #f2f2f2; + font-size: 1.25em; + font-weight: 300; + line-height: 1.25; + padding: 0.5em 0.75em; } + html.theme--documenter-dark .panel-tabs { + align-items: flex-end; + display: flex; + font-size: 0.875em; + justify-content: center; } + html.theme--documenter-dark .panel-tabs a { + border-bottom: 1px solid #5e6d6f; + margin-bottom: -1px; + padding: 0.5em; } + html.theme--documenter-dark .panel-tabs a.is-active { + border-bottom-color: #343c3d; + color: #17a689; } + html.theme--documenter-dark .panel-list a { + color: #fff; } + html.theme--documenter-dark .panel-list a:hover { + color: #1abc9c; } + html.theme--documenter-dark .panel-block { + align-items: center; + color: #f2f2f2; + display: flex; + justify-content: flex-start; + padding: 0.5em 0.75em; } + html.theme--documenter-dark .panel-block input[type="checkbox"] { + margin-right: 0.75em; } + html.theme--documenter-dark .panel-block > .control { + flex-grow: 1; + flex-shrink: 1; + width: 100%; } + html.theme--documenter-dark .panel-block.is-wrapped { + flex-wrap: wrap; } + html.theme--documenter-dark .panel-block.is-active { + border-left-color: #1abc9c; + color: #17a689; } + html.theme--documenter-dark .panel-block.is-active .panel-icon { + color: #1abc9c; } + html.theme--documenter-dark a.panel-block, + html.theme--documenter-dark label.panel-block { + cursor: pointer; } + html.theme--documenter-dark a.panel-block:hover, + html.theme--documenter-dark label.panel-block:hover { + background-color: #282f2f; } + html.theme--documenter-dark .panel-icon { + display: inline-block; + font-size: 14px; + height: 1em; + line-height: 1em; + text-align: center; + vertical-align: top; + width: 1em; + color: white; + margin-right: 0.75em; } + html.theme--documenter-dark .panel-icon .fa { + font-size: inherit; + line-height: inherit; } + html.theme--documenter-dark .tabs { + -webkit-overflow-scrolling: touch; + align-items: stretch; + display: flex; + font-size: 15px; + justify-content: space-between; + overflow: hidden; + overflow-x: auto; + white-space: nowrap; } + html.theme--documenter-dark .tabs a { + align-items: center; + border-bottom-color: #5e6d6f; + border-bottom-style: solid; + border-bottom-width: 1px; + color: #fff; + display: flex; + justify-content: center; + margin-bottom: -1px; + padding: 0.5em 1em; + vertical-align: top; } + html.theme--documenter-dark .tabs a:hover { + border-bottom-color: #f2f2f2; + color: #f2f2f2; } + html.theme--documenter-dark .tabs li { + display: block; } + html.theme--documenter-dark .tabs li.is-active a { + border-bottom-color: #1abc9c; + color: #1abc9c; } + html.theme--documenter-dark .tabs ul { + align-items: center; + border-bottom-color: #5e6d6f; + border-bottom-style: solid; + border-bottom-width: 1px; + display: flex; + flex-grow: 1; + flex-shrink: 0; + justify-content: flex-start; } + html.theme--documenter-dark .tabs ul.is-left { + padding-right: 0.75em; } + html.theme--documenter-dark .tabs ul.is-center { + flex: none; + justify-content: center; + padding-left: 0.75em; + padding-right: 0.75em; } + html.theme--documenter-dark .tabs ul.is-right { + justify-content: flex-end; + padding-left: 0.75em; } + html.theme--documenter-dark .tabs .icon:first-child { + margin-right: 0.5em; } + html.theme--documenter-dark .tabs .icon:last-child { + margin-left: 0.5em; } + html.theme--documenter-dark .tabs.is-centered ul { + justify-content: center; } + html.theme--documenter-dark .tabs.is-right ul { + justify-content: flex-end; } + html.theme--documenter-dark .tabs.is-boxed a { + border: 1px solid transparent; + border-radius: 0.4em 0.4em 0 0; } + html.theme--documenter-dark .tabs.is-boxed a:hover { + background-color: #282f2f; + border-bottom-color: #5e6d6f; } + html.theme--documenter-dark .tabs.is-boxed li.is-active a { + background-color: white; + border-color: #5e6d6f; + border-bottom-color: transparent !important; } + html.theme--documenter-dark .tabs.is-fullwidth li { + flex-grow: 1; + flex-shrink: 0; } + html.theme--documenter-dark .tabs.is-toggle a { + border-color: #5e6d6f; + border-style: solid; + border-width: 1px; + margin-bottom: 0; + position: relative; } + html.theme--documenter-dark .tabs.is-toggle a:hover { + background-color: #282f2f; + border-color: #8c9b9d; + z-index: 2; } + html.theme--documenter-dark .tabs.is-toggle li + li { + margin-left: -1px; } + html.theme--documenter-dark .tabs.is-toggle li:first-child a { + border-radius: 0.4em 0 0 0.4em; } + html.theme--documenter-dark .tabs.is-toggle li:last-child a { + border-radius: 0 0.4em 0.4em 0; } + html.theme--documenter-dark .tabs.is-toggle li.is-active a { + background-color: #1abc9c; + border-color: #1abc9c; + color: #fff; + z-index: 1; } + html.theme--documenter-dark .tabs.is-toggle ul { + border-bottom: none; } + html.theme--documenter-dark .tabs.is-toggle.is-toggle-rounded li:first-child a { + border-bottom-left-radius: 290486px; + border-top-left-radius: 290486px; + padding-left: 1.25em; } + html.theme--documenter-dark .tabs.is-toggle.is-toggle-rounded li:last-child a { + border-bottom-right-radius: 290486px; + border-top-right-radius: 290486px; + padding-right: 1.25em; } + html.theme--documenter-dark .tabs.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.tabs { + font-size: 0.85em; } + html.theme--documenter-dark .tabs.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .tabs.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .column { + display: block; + flex-basis: 0; + flex-grow: 1; + flex-shrink: 1; + padding: 0.75rem; } + .columns.is-mobile > html.theme--documenter-dark .column.is-narrow { + flex: none; } + .columns.is-mobile > html.theme--documenter-dark .column.is-full { + flex: none; + width: 100%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-three-quarters { + flex: none; + width: 75%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-two-thirds { + flex: none; + width: 66.6666%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-half { + flex: none; + width: 50%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-one-third { + flex: none; + width: 33.3333%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-one-quarter { + flex: none; + width: 25%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-one-fifth { + flex: none; + width: 20%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-two-fifths { + flex: none; + width: 40%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-three-fifths { + flex: none; + width: 60%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-four-fifths { + flex: none; + width: 80%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-three-quarters { + margin-left: 75%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-two-thirds { + margin-left: 66.6666%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-half { + margin-left: 50%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-one-third { + margin-left: 33.3333%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-one-quarter { + margin-left: 25%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-one-fifth { + margin-left: 20%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-two-fifths { + margin-left: 40%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-three-fifths { + margin-left: 60%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-four-fifths { + margin-left: 80%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-0 { + flex: none; + width: 0%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-0 { + margin-left: 0%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-1 { + flex: none; + width: 8.3333333333%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-1 { + margin-left: 8.3333333333%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-2 { + flex: none; + width: 16.6666666667%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-2 { + margin-left: 16.6666666667%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-3 { + flex: none; + width: 25%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-3 { + margin-left: 25%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-4 { + flex: none; + width: 33.3333333333%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-4 { + margin-left: 33.3333333333%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-5 { + flex: none; + width: 41.6666666667%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-5 { + margin-left: 41.6666666667%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-6 { + flex: none; + width: 50%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-6 { + margin-left: 50%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-7 { + flex: none; + width: 58.3333333333%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-7 { + margin-left: 58.3333333333%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-8 { + flex: none; + width: 66.6666666667%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-8 { + margin-left: 66.6666666667%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-9 { + flex: none; + width: 75%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-9 { + margin-left: 75%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-10 { + flex: none; + width: 83.3333333333%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-10 { + margin-left: 83.3333333333%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-11 { + flex: none; + width: 91.6666666667%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-11 { + margin-left: 91.6666666667%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-12 { + flex: none; + width: 100%; } + .columns.is-mobile > html.theme--documenter-dark .column.is-offset-12 { + margin-left: 100%; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .column.is-narrow-mobile { + flex: none; } + html.theme--documenter-dark .column.is-full-mobile { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-three-quarters-mobile { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-two-thirds-mobile { + flex: none; + width: 66.6666%; } + html.theme--documenter-dark .column.is-half-mobile { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-one-third-mobile { + flex: none; + width: 33.3333%; } + html.theme--documenter-dark .column.is-one-quarter-mobile { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-one-fifth-mobile { + flex: none; + width: 20%; } + html.theme--documenter-dark .column.is-two-fifths-mobile { + flex: none; + width: 40%; } + html.theme--documenter-dark .column.is-three-fifths-mobile { + flex: none; + width: 60%; } + html.theme--documenter-dark .column.is-four-fifths-mobile { + flex: none; + width: 80%; } + html.theme--documenter-dark .column.is-offset-three-quarters-mobile { + margin-left: 75%; } + html.theme--documenter-dark .column.is-offset-two-thirds-mobile { + margin-left: 66.6666%; } + html.theme--documenter-dark .column.is-offset-half-mobile { + margin-left: 50%; } + html.theme--documenter-dark .column.is-offset-one-third-mobile { + margin-left: 33.3333%; } + html.theme--documenter-dark .column.is-offset-one-quarter-mobile { + margin-left: 25%; } + html.theme--documenter-dark .column.is-offset-one-fifth-mobile { + margin-left: 20%; } + html.theme--documenter-dark .column.is-offset-two-fifths-mobile { + margin-left: 40%; } + html.theme--documenter-dark .column.is-offset-three-fifths-mobile { + margin-left: 60%; } + html.theme--documenter-dark .column.is-offset-four-fifths-mobile { + margin-left: 80%; } + html.theme--documenter-dark .column.is-0-mobile { + flex: none; + width: 0%; } + html.theme--documenter-dark .column.is-offset-0-mobile { + margin-left: 0%; } + html.theme--documenter-dark .column.is-1-mobile { + flex: none; + width: 8.3333333333%; } + html.theme--documenter-dark .column.is-offset-1-mobile { + margin-left: 8.3333333333%; } + html.theme--documenter-dark .column.is-2-mobile { + flex: none; + width: 16.6666666667%; } + html.theme--documenter-dark .column.is-offset-2-mobile { + margin-left: 16.6666666667%; } + html.theme--documenter-dark .column.is-3-mobile { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-offset-3-mobile { + margin-left: 25%; } + html.theme--documenter-dark .column.is-4-mobile { + flex: none; + width: 33.3333333333%; } + html.theme--documenter-dark .column.is-offset-4-mobile { + margin-left: 33.3333333333%; } + html.theme--documenter-dark .column.is-5-mobile { + flex: none; + width: 41.6666666667%; } + html.theme--documenter-dark .column.is-offset-5-mobile { + margin-left: 41.6666666667%; } + html.theme--documenter-dark .column.is-6-mobile { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-offset-6-mobile { + margin-left: 50%; } + html.theme--documenter-dark .column.is-7-mobile { + flex: none; + width: 58.3333333333%; } + html.theme--documenter-dark .column.is-offset-7-mobile { + margin-left: 58.3333333333%; } + html.theme--documenter-dark .column.is-8-mobile { + flex: none; + width: 66.6666666667%; } + html.theme--documenter-dark .column.is-offset-8-mobile { + margin-left: 66.6666666667%; } + html.theme--documenter-dark .column.is-9-mobile { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-offset-9-mobile { + margin-left: 75%; } + html.theme--documenter-dark .column.is-10-mobile { + flex: none; + width: 83.3333333333%; } + html.theme--documenter-dark .column.is-offset-10-mobile { + margin-left: 83.3333333333%; } + html.theme--documenter-dark .column.is-11-mobile { + flex: none; + width: 91.6666666667%; } + html.theme--documenter-dark .column.is-offset-11-mobile { + margin-left: 91.6666666667%; } + html.theme--documenter-dark .column.is-12-mobile { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-offset-12-mobile { + margin-left: 100%; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .column.is-narrow, html.theme--documenter-dark .column.is-narrow-tablet { + flex: none; } + html.theme--documenter-dark .column.is-full, html.theme--documenter-dark .column.is-full-tablet { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-three-quarters, html.theme--documenter-dark .column.is-three-quarters-tablet { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-two-thirds, html.theme--documenter-dark .column.is-two-thirds-tablet { + flex: none; + width: 66.6666%; } + html.theme--documenter-dark .column.is-half, html.theme--documenter-dark .column.is-half-tablet { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-one-third, html.theme--documenter-dark .column.is-one-third-tablet { + flex: none; + width: 33.3333%; } + html.theme--documenter-dark .column.is-one-quarter, html.theme--documenter-dark .column.is-one-quarter-tablet { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-one-fifth, html.theme--documenter-dark .column.is-one-fifth-tablet { + flex: none; + width: 20%; } + html.theme--documenter-dark .column.is-two-fifths, html.theme--documenter-dark .column.is-two-fifths-tablet { + flex: none; + width: 40%; } + html.theme--documenter-dark .column.is-three-fifths, html.theme--documenter-dark .column.is-three-fifths-tablet { + flex: none; + width: 60%; } + html.theme--documenter-dark .column.is-four-fifths, html.theme--documenter-dark .column.is-four-fifths-tablet { + flex: none; + width: 80%; } + html.theme--documenter-dark .column.is-offset-three-quarters, html.theme--documenter-dark .column.is-offset-three-quarters-tablet { + margin-left: 75%; } + html.theme--documenter-dark .column.is-offset-two-thirds, html.theme--documenter-dark .column.is-offset-two-thirds-tablet { + margin-left: 66.6666%; } + html.theme--documenter-dark .column.is-offset-half, html.theme--documenter-dark .column.is-offset-half-tablet { + margin-left: 50%; } + html.theme--documenter-dark .column.is-offset-one-third, html.theme--documenter-dark .column.is-offset-one-third-tablet { + margin-left: 33.3333%; } + html.theme--documenter-dark .column.is-offset-one-quarter, html.theme--documenter-dark .column.is-offset-one-quarter-tablet { + margin-left: 25%; } + html.theme--documenter-dark .column.is-offset-one-fifth, html.theme--documenter-dark .column.is-offset-one-fifth-tablet { + margin-left: 20%; } + html.theme--documenter-dark .column.is-offset-two-fifths, html.theme--documenter-dark .column.is-offset-two-fifths-tablet { + margin-left: 40%; } + html.theme--documenter-dark .column.is-offset-three-fifths, html.theme--documenter-dark .column.is-offset-three-fifths-tablet { + margin-left: 60%; } + html.theme--documenter-dark .column.is-offset-four-fifths, html.theme--documenter-dark .column.is-offset-four-fifths-tablet { + margin-left: 80%; } + html.theme--documenter-dark .column.is-0, html.theme--documenter-dark .column.is-0-tablet { + flex: none; + width: 0%; } + html.theme--documenter-dark .column.is-offset-0, html.theme--documenter-dark .column.is-offset-0-tablet { + margin-left: 0%; } + html.theme--documenter-dark .column.is-1, html.theme--documenter-dark .column.is-1-tablet { + flex: none; + width: 8.3333333333%; } + html.theme--documenter-dark .column.is-offset-1, html.theme--documenter-dark .column.is-offset-1-tablet { + margin-left: 8.3333333333%; } + html.theme--documenter-dark .column.is-2, html.theme--documenter-dark .column.is-2-tablet { + flex: none; + width: 16.6666666667%; } + html.theme--documenter-dark .column.is-offset-2, html.theme--documenter-dark .column.is-offset-2-tablet { + margin-left: 16.6666666667%; } + html.theme--documenter-dark .column.is-3, html.theme--documenter-dark .column.is-3-tablet { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-offset-3, html.theme--documenter-dark .column.is-offset-3-tablet { + margin-left: 25%; } + html.theme--documenter-dark .column.is-4, html.theme--documenter-dark .column.is-4-tablet { + flex: none; + width: 33.3333333333%; } + html.theme--documenter-dark .column.is-offset-4, html.theme--documenter-dark .column.is-offset-4-tablet { + margin-left: 33.3333333333%; } + html.theme--documenter-dark .column.is-5, html.theme--documenter-dark .column.is-5-tablet { + flex: none; + width: 41.6666666667%; } + html.theme--documenter-dark .column.is-offset-5, html.theme--documenter-dark .column.is-offset-5-tablet { + margin-left: 41.6666666667%; } + html.theme--documenter-dark .column.is-6, html.theme--documenter-dark .column.is-6-tablet { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-offset-6, html.theme--documenter-dark .column.is-offset-6-tablet { + margin-left: 50%; } + html.theme--documenter-dark .column.is-7, html.theme--documenter-dark .column.is-7-tablet { + flex: none; + width: 58.3333333333%; } + html.theme--documenter-dark .column.is-offset-7, html.theme--documenter-dark .column.is-offset-7-tablet { + margin-left: 58.3333333333%; } + html.theme--documenter-dark .column.is-8, html.theme--documenter-dark .column.is-8-tablet { + flex: none; + width: 66.6666666667%; } + html.theme--documenter-dark .column.is-offset-8, html.theme--documenter-dark .column.is-offset-8-tablet { + margin-left: 66.6666666667%; } + html.theme--documenter-dark .column.is-9, html.theme--documenter-dark .column.is-9-tablet { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-offset-9, html.theme--documenter-dark .column.is-offset-9-tablet { + margin-left: 75%; } + html.theme--documenter-dark .column.is-10, html.theme--documenter-dark .column.is-10-tablet { + flex: none; + width: 83.3333333333%; } + html.theme--documenter-dark .column.is-offset-10, html.theme--documenter-dark .column.is-offset-10-tablet { + margin-left: 83.3333333333%; } + html.theme--documenter-dark .column.is-11, html.theme--documenter-dark .column.is-11-tablet { + flex: none; + width: 91.6666666667%; } + html.theme--documenter-dark .column.is-offset-11, html.theme--documenter-dark .column.is-offset-11-tablet { + margin-left: 91.6666666667%; } + html.theme--documenter-dark .column.is-12, html.theme--documenter-dark .column.is-12-tablet { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-offset-12, html.theme--documenter-dark .column.is-offset-12-tablet { + margin-left: 100%; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .column.is-narrow-touch { + flex: none; } + html.theme--documenter-dark .column.is-full-touch { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-three-quarters-touch { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-two-thirds-touch { + flex: none; + width: 66.6666%; } + html.theme--documenter-dark .column.is-half-touch { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-one-third-touch { + flex: none; + width: 33.3333%; } + html.theme--documenter-dark .column.is-one-quarter-touch { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-one-fifth-touch { + flex: none; + width: 20%; } + html.theme--documenter-dark .column.is-two-fifths-touch { + flex: none; + width: 40%; } + html.theme--documenter-dark .column.is-three-fifths-touch { + flex: none; + width: 60%; } + html.theme--documenter-dark .column.is-four-fifths-touch { + flex: none; + width: 80%; } + html.theme--documenter-dark .column.is-offset-three-quarters-touch { + margin-left: 75%; } + html.theme--documenter-dark .column.is-offset-two-thirds-touch { + margin-left: 66.6666%; } + html.theme--documenter-dark .column.is-offset-half-touch { + margin-left: 50%; } + html.theme--documenter-dark .column.is-offset-one-third-touch { + margin-left: 33.3333%; } + html.theme--documenter-dark .column.is-offset-one-quarter-touch { + margin-left: 25%; } + html.theme--documenter-dark .column.is-offset-one-fifth-touch { + margin-left: 20%; } + html.theme--documenter-dark .column.is-offset-two-fifths-touch { + margin-left: 40%; } + html.theme--documenter-dark .column.is-offset-three-fifths-touch { + margin-left: 60%; } + html.theme--documenter-dark .column.is-offset-four-fifths-touch { + margin-left: 80%; } + html.theme--documenter-dark .column.is-0-touch { + flex: none; + width: 0%; } + html.theme--documenter-dark .column.is-offset-0-touch { + margin-left: 0%; } + html.theme--documenter-dark .column.is-1-touch { + flex: none; + width: 8.3333333333%; } + html.theme--documenter-dark .column.is-offset-1-touch { + margin-left: 8.3333333333%; } + html.theme--documenter-dark .column.is-2-touch { + flex: none; + width: 16.6666666667%; } + html.theme--documenter-dark .column.is-offset-2-touch { + margin-left: 16.6666666667%; } + html.theme--documenter-dark .column.is-3-touch { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-offset-3-touch { + margin-left: 25%; } + html.theme--documenter-dark .column.is-4-touch { + flex: none; + width: 33.3333333333%; } + html.theme--documenter-dark .column.is-offset-4-touch { + margin-left: 33.3333333333%; } + html.theme--documenter-dark .column.is-5-touch { + flex: none; + width: 41.6666666667%; } + html.theme--documenter-dark .column.is-offset-5-touch { + margin-left: 41.6666666667%; } + html.theme--documenter-dark .column.is-6-touch { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-offset-6-touch { + margin-left: 50%; } + html.theme--documenter-dark .column.is-7-touch { + flex: none; + width: 58.3333333333%; } + html.theme--documenter-dark .column.is-offset-7-touch { + margin-left: 58.3333333333%; } + html.theme--documenter-dark .column.is-8-touch { + flex: none; + width: 66.6666666667%; } + html.theme--documenter-dark .column.is-offset-8-touch { + margin-left: 66.6666666667%; } + html.theme--documenter-dark .column.is-9-touch { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-offset-9-touch { + margin-left: 75%; } + html.theme--documenter-dark .column.is-10-touch { + flex: none; + width: 83.3333333333%; } + html.theme--documenter-dark .column.is-offset-10-touch { + margin-left: 83.3333333333%; } + html.theme--documenter-dark .column.is-11-touch { + flex: none; + width: 91.6666666667%; } + html.theme--documenter-dark .column.is-offset-11-touch { + margin-left: 91.6666666667%; } + html.theme--documenter-dark .column.is-12-touch { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-offset-12-touch { + margin-left: 100%; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .column.is-narrow-desktop { + flex: none; } + html.theme--documenter-dark .column.is-full-desktop { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-three-quarters-desktop { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-two-thirds-desktop { + flex: none; + width: 66.6666%; } + html.theme--documenter-dark .column.is-half-desktop { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-one-third-desktop { + flex: none; + width: 33.3333%; } + html.theme--documenter-dark .column.is-one-quarter-desktop { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-one-fifth-desktop { + flex: none; + width: 20%; } + html.theme--documenter-dark .column.is-two-fifths-desktop { + flex: none; + width: 40%; } + html.theme--documenter-dark .column.is-three-fifths-desktop { + flex: none; + width: 60%; } + html.theme--documenter-dark .column.is-four-fifths-desktop { + flex: none; + width: 80%; } + html.theme--documenter-dark .column.is-offset-three-quarters-desktop { + margin-left: 75%; } + html.theme--documenter-dark .column.is-offset-two-thirds-desktop { + margin-left: 66.6666%; } + html.theme--documenter-dark .column.is-offset-half-desktop { + margin-left: 50%; } + html.theme--documenter-dark .column.is-offset-one-third-desktop { + margin-left: 33.3333%; } + html.theme--documenter-dark .column.is-offset-one-quarter-desktop { + margin-left: 25%; } + html.theme--documenter-dark .column.is-offset-one-fifth-desktop { + margin-left: 20%; } + html.theme--documenter-dark .column.is-offset-two-fifths-desktop { + margin-left: 40%; } + html.theme--documenter-dark .column.is-offset-three-fifths-desktop { + margin-left: 60%; } + html.theme--documenter-dark .column.is-offset-four-fifths-desktop { + margin-left: 80%; } + html.theme--documenter-dark .column.is-0-desktop { + flex: none; + width: 0%; } + html.theme--documenter-dark .column.is-offset-0-desktop { + margin-left: 0%; } + html.theme--documenter-dark .column.is-1-desktop { + flex: none; + width: 8.3333333333%; } + html.theme--documenter-dark .column.is-offset-1-desktop { + margin-left: 8.3333333333%; } + html.theme--documenter-dark .column.is-2-desktop { + flex: none; + width: 16.6666666667%; } + html.theme--documenter-dark .column.is-offset-2-desktop { + margin-left: 16.6666666667%; } + html.theme--documenter-dark .column.is-3-desktop { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-offset-3-desktop { + margin-left: 25%; } + html.theme--documenter-dark .column.is-4-desktop { + flex: none; + width: 33.3333333333%; } + html.theme--documenter-dark .column.is-offset-4-desktop { + margin-left: 33.3333333333%; } + html.theme--documenter-dark .column.is-5-desktop { + flex: none; + width: 41.6666666667%; } + html.theme--documenter-dark .column.is-offset-5-desktop { + margin-left: 41.6666666667%; } + html.theme--documenter-dark .column.is-6-desktop { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-offset-6-desktop { + margin-left: 50%; } + html.theme--documenter-dark .column.is-7-desktop { + flex: none; + width: 58.3333333333%; } + html.theme--documenter-dark .column.is-offset-7-desktop { + margin-left: 58.3333333333%; } + html.theme--documenter-dark .column.is-8-desktop { + flex: none; + width: 66.6666666667%; } + html.theme--documenter-dark .column.is-offset-8-desktop { + margin-left: 66.6666666667%; } + html.theme--documenter-dark .column.is-9-desktop { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-offset-9-desktop { + margin-left: 75%; } + html.theme--documenter-dark .column.is-10-desktop { + flex: none; + width: 83.3333333333%; } + html.theme--documenter-dark .column.is-offset-10-desktop { + margin-left: 83.3333333333%; } + html.theme--documenter-dark .column.is-11-desktop { + flex: none; + width: 91.6666666667%; } + html.theme--documenter-dark .column.is-offset-11-desktop { + margin-left: 91.6666666667%; } + html.theme--documenter-dark .column.is-12-desktop { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-offset-12-desktop { + margin-left: 100%; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .column.is-narrow-widescreen { + flex: none; } + html.theme--documenter-dark .column.is-full-widescreen { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-three-quarters-widescreen { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-two-thirds-widescreen { + flex: none; + width: 66.6666%; } + html.theme--documenter-dark .column.is-half-widescreen { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-one-third-widescreen { + flex: none; + width: 33.3333%; } + html.theme--documenter-dark .column.is-one-quarter-widescreen { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-one-fifth-widescreen { + flex: none; + width: 20%; } + html.theme--documenter-dark .column.is-two-fifths-widescreen { + flex: none; + width: 40%; } + html.theme--documenter-dark .column.is-three-fifths-widescreen { + flex: none; + width: 60%; } + html.theme--documenter-dark .column.is-four-fifths-widescreen { + flex: none; + width: 80%; } + html.theme--documenter-dark .column.is-offset-three-quarters-widescreen { + margin-left: 75%; } + html.theme--documenter-dark .column.is-offset-two-thirds-widescreen { + margin-left: 66.6666%; } + html.theme--documenter-dark .column.is-offset-half-widescreen { + margin-left: 50%; } + html.theme--documenter-dark .column.is-offset-one-third-widescreen { + margin-left: 33.3333%; } + html.theme--documenter-dark .column.is-offset-one-quarter-widescreen { + margin-left: 25%; } + html.theme--documenter-dark .column.is-offset-one-fifth-widescreen { + margin-left: 20%; } + html.theme--documenter-dark .column.is-offset-two-fifths-widescreen { + margin-left: 40%; } + html.theme--documenter-dark .column.is-offset-three-fifths-widescreen { + margin-left: 60%; } + html.theme--documenter-dark .column.is-offset-four-fifths-widescreen { + margin-left: 80%; } + html.theme--documenter-dark .column.is-0-widescreen { + flex: none; + width: 0%; } + html.theme--documenter-dark .column.is-offset-0-widescreen { + margin-left: 0%; } + html.theme--documenter-dark .column.is-1-widescreen { + flex: none; + width: 8.3333333333%; } + html.theme--documenter-dark .column.is-offset-1-widescreen { + margin-left: 8.3333333333%; } + html.theme--documenter-dark .column.is-2-widescreen { + flex: none; + width: 16.6666666667%; } + html.theme--documenter-dark .column.is-offset-2-widescreen { + margin-left: 16.6666666667%; } + html.theme--documenter-dark .column.is-3-widescreen { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-offset-3-widescreen { + margin-left: 25%; } + html.theme--documenter-dark .column.is-4-widescreen { + flex: none; + width: 33.3333333333%; } + html.theme--documenter-dark .column.is-offset-4-widescreen { + margin-left: 33.3333333333%; } + html.theme--documenter-dark .column.is-5-widescreen { + flex: none; + width: 41.6666666667%; } + html.theme--documenter-dark .column.is-offset-5-widescreen { + margin-left: 41.6666666667%; } + html.theme--documenter-dark .column.is-6-widescreen { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-offset-6-widescreen { + margin-left: 50%; } + html.theme--documenter-dark .column.is-7-widescreen { + flex: none; + width: 58.3333333333%; } + html.theme--documenter-dark .column.is-offset-7-widescreen { + margin-left: 58.3333333333%; } + html.theme--documenter-dark .column.is-8-widescreen { + flex: none; + width: 66.6666666667%; } + html.theme--documenter-dark .column.is-offset-8-widescreen { + margin-left: 66.6666666667%; } + html.theme--documenter-dark .column.is-9-widescreen { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-offset-9-widescreen { + margin-left: 75%; } + html.theme--documenter-dark .column.is-10-widescreen { + flex: none; + width: 83.3333333333%; } + html.theme--documenter-dark .column.is-offset-10-widescreen { + margin-left: 83.3333333333%; } + html.theme--documenter-dark .column.is-11-widescreen { + flex: none; + width: 91.6666666667%; } + html.theme--documenter-dark .column.is-offset-11-widescreen { + margin-left: 91.6666666667%; } + html.theme--documenter-dark .column.is-12-widescreen { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-offset-12-widescreen { + margin-left: 100%; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .column.is-narrow-fullhd { + flex: none; } + html.theme--documenter-dark .column.is-full-fullhd { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-three-quarters-fullhd { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-two-thirds-fullhd { + flex: none; + width: 66.6666%; } + html.theme--documenter-dark .column.is-half-fullhd { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-one-third-fullhd { + flex: none; + width: 33.3333%; } + html.theme--documenter-dark .column.is-one-quarter-fullhd { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-one-fifth-fullhd { + flex: none; + width: 20%; } + html.theme--documenter-dark .column.is-two-fifths-fullhd { + flex: none; + width: 40%; } + html.theme--documenter-dark .column.is-three-fifths-fullhd { + flex: none; + width: 60%; } + html.theme--documenter-dark .column.is-four-fifths-fullhd { + flex: none; + width: 80%; } + html.theme--documenter-dark .column.is-offset-three-quarters-fullhd { + margin-left: 75%; } + html.theme--documenter-dark .column.is-offset-two-thirds-fullhd { + margin-left: 66.6666%; } + html.theme--documenter-dark .column.is-offset-half-fullhd { + margin-left: 50%; } + html.theme--documenter-dark .column.is-offset-one-third-fullhd { + margin-left: 33.3333%; } + html.theme--documenter-dark .column.is-offset-one-quarter-fullhd { + margin-left: 25%; } + html.theme--documenter-dark .column.is-offset-one-fifth-fullhd { + margin-left: 20%; } + html.theme--documenter-dark .column.is-offset-two-fifths-fullhd { + margin-left: 40%; } + html.theme--documenter-dark .column.is-offset-three-fifths-fullhd { + margin-left: 60%; } + html.theme--documenter-dark .column.is-offset-four-fifths-fullhd { + margin-left: 80%; } + html.theme--documenter-dark .column.is-0-fullhd { + flex: none; + width: 0%; } + html.theme--documenter-dark .column.is-offset-0-fullhd { + margin-left: 0%; } + html.theme--documenter-dark .column.is-1-fullhd { + flex: none; + width: 8.3333333333%; } + html.theme--documenter-dark .column.is-offset-1-fullhd { + margin-left: 8.3333333333%; } + html.theme--documenter-dark .column.is-2-fullhd { + flex: none; + width: 16.6666666667%; } + html.theme--documenter-dark .column.is-offset-2-fullhd { + margin-left: 16.6666666667%; } + html.theme--documenter-dark .column.is-3-fullhd { + flex: none; + width: 25%; } + html.theme--documenter-dark .column.is-offset-3-fullhd { + margin-left: 25%; } + html.theme--documenter-dark .column.is-4-fullhd { + flex: none; + width: 33.3333333333%; } + html.theme--documenter-dark .column.is-offset-4-fullhd { + margin-left: 33.3333333333%; } + html.theme--documenter-dark .column.is-5-fullhd { + flex: none; + width: 41.6666666667%; } + html.theme--documenter-dark .column.is-offset-5-fullhd { + margin-left: 41.6666666667%; } + html.theme--documenter-dark .column.is-6-fullhd { + flex: none; + width: 50%; } + html.theme--documenter-dark .column.is-offset-6-fullhd { + margin-left: 50%; } + html.theme--documenter-dark .column.is-7-fullhd { + flex: none; + width: 58.3333333333%; } + html.theme--documenter-dark .column.is-offset-7-fullhd { + margin-left: 58.3333333333%; } + html.theme--documenter-dark .column.is-8-fullhd { + flex: none; + width: 66.6666666667%; } + html.theme--documenter-dark .column.is-offset-8-fullhd { + margin-left: 66.6666666667%; } + html.theme--documenter-dark .column.is-9-fullhd { + flex: none; + width: 75%; } + html.theme--documenter-dark .column.is-offset-9-fullhd { + margin-left: 75%; } + html.theme--documenter-dark .column.is-10-fullhd { + flex: none; + width: 83.3333333333%; } + html.theme--documenter-dark .column.is-offset-10-fullhd { + margin-left: 83.3333333333%; } + html.theme--documenter-dark .column.is-11-fullhd { + flex: none; + width: 91.6666666667%; } + html.theme--documenter-dark .column.is-offset-11-fullhd { + margin-left: 91.6666666667%; } + html.theme--documenter-dark .column.is-12-fullhd { + flex: none; + width: 100%; } + html.theme--documenter-dark .column.is-offset-12-fullhd { + margin-left: 100%; } } + html.theme--documenter-dark .columns { + margin-left: -0.75rem; + margin-right: -0.75rem; + margin-top: -0.75rem; } + html.theme--documenter-dark .columns:last-child { + margin-bottom: -0.75rem; } + html.theme--documenter-dark .columns:not(:last-child) { + margin-bottom: calc(1.5rem - 0.75rem); } + html.theme--documenter-dark .columns.is-centered { + justify-content: center; } + html.theme--documenter-dark .columns.is-gapless { + margin-left: 0; + margin-right: 0; + margin-top: 0; } + html.theme--documenter-dark .columns.is-gapless > .column { + margin: 0; + padding: 0 !important; } + html.theme--documenter-dark .columns.is-gapless:not(:last-child) { + margin-bottom: 1.5rem; } + html.theme--documenter-dark .columns.is-gapless:last-child { + margin-bottom: 0; } + html.theme--documenter-dark .columns.is-mobile { + display: flex; } + html.theme--documenter-dark .columns.is-multiline { + flex-wrap: wrap; } + html.theme--documenter-dark .columns.is-vcentered { + align-items: center; } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .columns:not(.is-desktop) { + display: flex; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .columns.is-desktop { + display: flex; } } + html.theme--documenter-dark .columns.is-variable { + --columnGap: 0.75rem; + margin-left: calc(-1 * var(--columnGap)); + margin-right: calc(-1 * var(--columnGap)); } + html.theme--documenter-dark .columns.is-variable .column { + padding-left: var(--columnGap); + padding-right: var(--columnGap); } + html.theme--documenter-dark .columns.is-variable.is-0 { + --columnGap: 0rem; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .columns.is-variable.is-0-mobile { + --columnGap: 0rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .columns.is-variable.is-0-tablet { + --columnGap: 0rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-0-tablet-only { + --columnGap: 0rem; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-0-touch { + --columnGap: 0rem; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .columns.is-variable.is-0-desktop { + --columnGap: 0rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + html.theme--documenter-dark .columns.is-variable.is-0-desktop-only { + --columnGap: 0rem; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .columns.is-variable.is-0-widescreen { + --columnGap: 0rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + html.theme--documenter-dark .columns.is-variable.is-0-widescreen-only { + --columnGap: 0rem; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .columns.is-variable.is-0-fullhd { + --columnGap: 0rem; } } + html.theme--documenter-dark .columns.is-variable.is-1 { + --columnGap: 0.25rem; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .columns.is-variable.is-1-mobile { + --columnGap: 0.25rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .columns.is-variable.is-1-tablet { + --columnGap: 0.25rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-1-tablet-only { + --columnGap: 0.25rem; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-1-touch { + --columnGap: 0.25rem; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .columns.is-variable.is-1-desktop { + --columnGap: 0.25rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + html.theme--documenter-dark .columns.is-variable.is-1-desktop-only { + --columnGap: 0.25rem; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .columns.is-variable.is-1-widescreen { + --columnGap: 0.25rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + html.theme--documenter-dark .columns.is-variable.is-1-widescreen-only { + --columnGap: 0.25rem; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .columns.is-variable.is-1-fullhd { + --columnGap: 0.25rem; } } + html.theme--documenter-dark .columns.is-variable.is-2 { + --columnGap: 0.5rem; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .columns.is-variable.is-2-mobile { + --columnGap: 0.5rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .columns.is-variable.is-2-tablet { + --columnGap: 0.5rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-2-tablet-only { + --columnGap: 0.5rem; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-2-touch { + --columnGap: 0.5rem; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .columns.is-variable.is-2-desktop { + --columnGap: 0.5rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + html.theme--documenter-dark .columns.is-variable.is-2-desktop-only { + --columnGap: 0.5rem; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .columns.is-variable.is-2-widescreen { + --columnGap: 0.5rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + html.theme--documenter-dark .columns.is-variable.is-2-widescreen-only { + --columnGap: 0.5rem; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .columns.is-variable.is-2-fullhd { + --columnGap: 0.5rem; } } + html.theme--documenter-dark .columns.is-variable.is-3 { + --columnGap: 0.75rem; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .columns.is-variable.is-3-mobile { + --columnGap: 0.75rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .columns.is-variable.is-3-tablet { + --columnGap: 0.75rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-3-tablet-only { + --columnGap: 0.75rem; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-3-touch { + --columnGap: 0.75rem; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .columns.is-variable.is-3-desktop { + --columnGap: 0.75rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + html.theme--documenter-dark .columns.is-variable.is-3-desktop-only { + --columnGap: 0.75rem; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .columns.is-variable.is-3-widescreen { + --columnGap: 0.75rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + html.theme--documenter-dark .columns.is-variable.is-3-widescreen-only { + --columnGap: 0.75rem; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .columns.is-variable.is-3-fullhd { + --columnGap: 0.75rem; } } + html.theme--documenter-dark .columns.is-variable.is-4 { + --columnGap: 1rem; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .columns.is-variable.is-4-mobile { + --columnGap: 1rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .columns.is-variable.is-4-tablet { + --columnGap: 1rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-4-tablet-only { + --columnGap: 1rem; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-4-touch { + --columnGap: 1rem; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .columns.is-variable.is-4-desktop { + --columnGap: 1rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + html.theme--documenter-dark .columns.is-variable.is-4-desktop-only { + --columnGap: 1rem; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .columns.is-variable.is-4-widescreen { + --columnGap: 1rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + html.theme--documenter-dark .columns.is-variable.is-4-widescreen-only { + --columnGap: 1rem; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .columns.is-variable.is-4-fullhd { + --columnGap: 1rem; } } + html.theme--documenter-dark .columns.is-variable.is-5 { + --columnGap: 1.25rem; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .columns.is-variable.is-5-mobile { + --columnGap: 1.25rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .columns.is-variable.is-5-tablet { + --columnGap: 1.25rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-5-tablet-only { + --columnGap: 1.25rem; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-5-touch { + --columnGap: 1.25rem; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .columns.is-variable.is-5-desktop { + --columnGap: 1.25rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + html.theme--documenter-dark .columns.is-variable.is-5-desktop-only { + --columnGap: 1.25rem; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .columns.is-variable.is-5-widescreen { + --columnGap: 1.25rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + html.theme--documenter-dark .columns.is-variable.is-5-widescreen-only { + --columnGap: 1.25rem; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .columns.is-variable.is-5-fullhd { + --columnGap: 1.25rem; } } + html.theme--documenter-dark .columns.is-variable.is-6 { + --columnGap: 1.5rem; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .columns.is-variable.is-6-mobile { + --columnGap: 1.5rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .columns.is-variable.is-6-tablet { + --columnGap: 1.5rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-6-tablet-only { + --columnGap: 1.5rem; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-6-touch { + --columnGap: 1.5rem; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .columns.is-variable.is-6-desktop { + --columnGap: 1.5rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + html.theme--documenter-dark .columns.is-variable.is-6-desktop-only { + --columnGap: 1.5rem; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .columns.is-variable.is-6-widescreen { + --columnGap: 1.5rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + html.theme--documenter-dark .columns.is-variable.is-6-widescreen-only { + --columnGap: 1.5rem; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .columns.is-variable.is-6-fullhd { + --columnGap: 1.5rem; } } + html.theme--documenter-dark .columns.is-variable.is-7 { + --columnGap: 1.75rem; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .columns.is-variable.is-7-mobile { + --columnGap: 1.75rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .columns.is-variable.is-7-tablet { + --columnGap: 1.75rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-7-tablet-only { + --columnGap: 1.75rem; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-7-touch { + --columnGap: 1.75rem; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .columns.is-variable.is-7-desktop { + --columnGap: 1.75rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + html.theme--documenter-dark .columns.is-variable.is-7-desktop-only { + --columnGap: 1.75rem; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .columns.is-variable.is-7-widescreen { + --columnGap: 1.75rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + html.theme--documenter-dark .columns.is-variable.is-7-widescreen-only { + --columnGap: 1.75rem; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .columns.is-variable.is-7-fullhd { + --columnGap: 1.75rem; } } + html.theme--documenter-dark .columns.is-variable.is-8 { + --columnGap: 2rem; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .columns.is-variable.is-8-mobile { + --columnGap: 2rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .columns.is-variable.is-8-tablet { + --columnGap: 2rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-8-tablet-only { + --columnGap: 2rem; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .columns.is-variable.is-8-touch { + --columnGap: 2rem; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .columns.is-variable.is-8-desktop { + --columnGap: 2rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + html.theme--documenter-dark .columns.is-variable.is-8-desktop-only { + --columnGap: 2rem; } } + @media screen and (min-width: 1216px) { + html.theme--documenter-dark .columns.is-variable.is-8-widescreen { + --columnGap: 2rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + html.theme--documenter-dark .columns.is-variable.is-8-widescreen-only { + --columnGap: 2rem; } } + @media screen and (min-width: 1408px) { + html.theme--documenter-dark .columns.is-variable.is-8-fullhd { + --columnGap: 2rem; } } + html.theme--documenter-dark .tile { + align-items: stretch; + display: block; + flex-basis: 0; + flex-grow: 1; + flex-shrink: 1; + min-height: min-content; } + html.theme--documenter-dark .tile.is-ancestor { + margin-left: -0.75rem; + margin-right: -0.75rem; + margin-top: -0.75rem; } + html.theme--documenter-dark .tile.is-ancestor:last-child { + margin-bottom: -0.75rem; } + html.theme--documenter-dark .tile.is-ancestor:not(:last-child) { + margin-bottom: 0.75rem; } + html.theme--documenter-dark .tile.is-child { + margin: 0 !important; } + html.theme--documenter-dark .tile.is-parent { + padding: 0.75rem; } + html.theme--documenter-dark .tile.is-vertical { + flex-direction: column; } + html.theme--documenter-dark .tile.is-vertical > .tile.is-child:not(:last-child) { + margin-bottom: 1.5rem !important; } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .tile:not(.is-child) { + display: flex; } + html.theme--documenter-dark .tile.is-1 { + flex: none; + width: 8.3333333333%; } + html.theme--documenter-dark .tile.is-2 { + flex: none; + width: 16.6666666667%; } + html.theme--documenter-dark .tile.is-3 { + flex: none; + width: 25%; } + html.theme--documenter-dark .tile.is-4 { + flex: none; + width: 33.3333333333%; } + html.theme--documenter-dark .tile.is-5 { + flex: none; + width: 41.6666666667%; } + html.theme--documenter-dark .tile.is-6 { + flex: none; + width: 50%; } + html.theme--documenter-dark .tile.is-7 { + flex: none; + width: 58.3333333333%; } + html.theme--documenter-dark .tile.is-8 { + flex: none; + width: 66.6666666667%; } + html.theme--documenter-dark .tile.is-9 { + flex: none; + width: 75%; } + html.theme--documenter-dark .tile.is-10 { + flex: none; + width: 83.3333333333%; } + html.theme--documenter-dark .tile.is-11 { + flex: none; + width: 91.6666666667%; } + html.theme--documenter-dark .tile.is-12 { + flex: none; + width: 100%; } } + html.theme--documenter-dark .hero { + align-items: stretch; + display: flex; + flex-direction: column; + justify-content: space-between; } + html.theme--documenter-dark .hero .navbar { + background: none; } + html.theme--documenter-dark .hero .tabs ul { + border-bottom: none; } + html.theme--documenter-dark .hero.is-white { + background-color: white; + color: #0a0a0a; } + html.theme--documenter-dark .hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + html.theme--documenter-dark .hero.is-white strong { + color: inherit; } + html.theme--documenter-dark .hero.is-white .title { + color: #0a0a0a; } + html.theme--documenter-dark .hero.is-white .subtitle { + color: rgba(10, 10, 10, 0.9); } + html.theme--documenter-dark .hero.is-white .subtitle a:not(.button), + html.theme--documenter-dark .hero.is-white .subtitle strong { + color: #0a0a0a; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .hero.is-white .navbar-menu { + background-color: white; } } + html.theme--documenter-dark .hero.is-white .navbar-item, + html.theme--documenter-dark .hero.is-white .navbar-link { + color: rgba(10, 10, 10, 0.7); } + html.theme--documenter-dark .hero.is-white a.navbar-item:hover, html.theme--documenter-dark .hero.is-white a.navbar-item.is-active, + html.theme--documenter-dark .hero.is-white .navbar-link:hover, + html.theme--documenter-dark .hero.is-white .navbar-link.is-active { + background-color: #f2f2f2; + color: #0a0a0a; } + html.theme--documenter-dark .hero.is-white .tabs a { + color: #0a0a0a; + opacity: 0.9; } + html.theme--documenter-dark .hero.is-white .tabs a:hover { + opacity: 1; } + html.theme--documenter-dark .hero.is-white .tabs li.is-active a { + opacity: 1; } + html.theme--documenter-dark .hero.is-white .tabs.is-boxed a, html.theme--documenter-dark .hero.is-white .tabs.is-toggle a { + color: #0a0a0a; } + html.theme--documenter-dark .hero.is-white .tabs.is-boxed a:hover, html.theme--documenter-dark .hero.is-white .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .hero.is-white .tabs.is-boxed li.is-active a, html.theme--documenter-dark .hero.is-white .tabs.is-boxed li.is-active a:hover, html.theme--documenter-dark .hero.is-white .tabs.is-toggle li.is-active a, html.theme--documenter-dark .hero.is-white .tabs.is-toggle li.is-active a:hover { + background-color: #0a0a0a; + border-color: #0a0a0a; + color: white; } + html.theme--documenter-dark .hero.is-white.is-bold { + background-image: linear-gradient(141deg, #e8e3e4 0%, white 71%, white 100%); } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero.is-white.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #e8e3e4 0%, white 71%, white 100%); } } + html.theme--documenter-dark .hero.is-black { + background-color: #0a0a0a; + color: white; } + html.theme--documenter-dark .hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + html.theme--documenter-dark .hero.is-black strong { + color: inherit; } + html.theme--documenter-dark .hero.is-black .title { + color: white; } + html.theme--documenter-dark .hero.is-black .subtitle { + color: rgba(255, 255, 255, 0.9); } + html.theme--documenter-dark .hero.is-black .subtitle a:not(.button), + html.theme--documenter-dark .hero.is-black .subtitle strong { + color: white; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .hero.is-black .navbar-menu { + background-color: #0a0a0a; } } + html.theme--documenter-dark .hero.is-black .navbar-item, + html.theme--documenter-dark .hero.is-black .navbar-link { + color: rgba(255, 255, 255, 0.7); } + html.theme--documenter-dark .hero.is-black a.navbar-item:hover, html.theme--documenter-dark .hero.is-black a.navbar-item.is-active, + html.theme--documenter-dark .hero.is-black .navbar-link:hover, + html.theme--documenter-dark .hero.is-black .navbar-link.is-active { + background-color: black; + color: white; } + html.theme--documenter-dark .hero.is-black .tabs a { + color: white; + opacity: 0.9; } + html.theme--documenter-dark .hero.is-black .tabs a:hover { + opacity: 1; } + html.theme--documenter-dark .hero.is-black .tabs li.is-active a { + opacity: 1; } + html.theme--documenter-dark .hero.is-black .tabs.is-boxed a, html.theme--documenter-dark .hero.is-black .tabs.is-toggle a { + color: white; } + html.theme--documenter-dark .hero.is-black .tabs.is-boxed a:hover, html.theme--documenter-dark .hero.is-black .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .hero.is-black .tabs.is-boxed li.is-active a, html.theme--documenter-dark .hero.is-black .tabs.is-boxed li.is-active a:hover, html.theme--documenter-dark .hero.is-black .tabs.is-toggle li.is-active a, html.theme--documenter-dark .hero.is-black .tabs.is-toggle li.is-active a:hover { + background-color: white; + border-color: white; + color: #0a0a0a; } + html.theme--documenter-dark .hero.is-black.is-bold { + background-image: linear-gradient(141deg, black 0%, #0a0a0a 71%, #181616 100%); } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero.is-black.is-bold .navbar-menu { + background-image: linear-gradient(141deg, black 0%, #0a0a0a 71%, #181616 100%); } } + html.theme--documenter-dark .hero.is-light { + background-color: #ecf0f1; + color: #282f2f; } + html.theme--documenter-dark .hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + html.theme--documenter-dark .hero.is-light strong { + color: inherit; } + html.theme--documenter-dark .hero.is-light .title { + color: #282f2f; } + html.theme--documenter-dark .hero.is-light .subtitle { + color: rgba(40, 47, 47, 0.9); } + html.theme--documenter-dark .hero.is-light .subtitle a:not(.button), + html.theme--documenter-dark .hero.is-light .subtitle strong { + color: #282f2f; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .hero.is-light .navbar-menu { + background-color: #ecf0f1; } } + html.theme--documenter-dark .hero.is-light .navbar-item, + html.theme--documenter-dark .hero.is-light .navbar-link { + color: rgba(40, 47, 47, 0.7); } + html.theme--documenter-dark .hero.is-light a.navbar-item:hover, html.theme--documenter-dark .hero.is-light a.navbar-item.is-active, + html.theme--documenter-dark .hero.is-light .navbar-link:hover, + html.theme--documenter-dark .hero.is-light .navbar-link.is-active { + background-color: #dde4e6; + color: #282f2f; } + html.theme--documenter-dark .hero.is-light .tabs a { + color: #282f2f; + opacity: 0.9; } + html.theme--documenter-dark .hero.is-light .tabs a:hover { + opacity: 1; } + html.theme--documenter-dark .hero.is-light .tabs li.is-active a { + opacity: 1; } + html.theme--documenter-dark .hero.is-light .tabs.is-boxed a, html.theme--documenter-dark .hero.is-light .tabs.is-toggle a { + color: #282f2f; } + html.theme--documenter-dark .hero.is-light .tabs.is-boxed a:hover, html.theme--documenter-dark .hero.is-light .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .hero.is-light .tabs.is-boxed li.is-active a, html.theme--documenter-dark .hero.is-light .tabs.is-boxed li.is-active a:hover, html.theme--documenter-dark .hero.is-light .tabs.is-toggle li.is-active a, html.theme--documenter-dark .hero.is-light .tabs.is-toggle li.is-active a:hover { + background-color: #282f2f; + border-color: #282f2f; + color: #ecf0f1; } + html.theme--documenter-dark .hero.is-light.is-bold { + background-image: linear-gradient(141deg, #cadfe0 0%, #ecf0f1 71%, #fafbfc 100%); } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero.is-light.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #cadfe0 0%, #ecf0f1 71%, #fafbfc 100%); } } + html.theme--documenter-dark .hero.is-dark, html.theme--documenter-dark .content kbd.hero { + background-color: #282f2f; + color: #ecf0f1; } + html.theme--documenter-dark .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), html.theme--documenter-dark .content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + html.theme--documenter-dark .hero.is-dark strong, + html.theme--documenter-dark .content kbd.hero strong { + color: inherit; } + html.theme--documenter-dark .hero.is-dark .title, html.theme--documenter-dark .content kbd.hero .title { + color: #ecf0f1; } + html.theme--documenter-dark .hero.is-dark .subtitle, html.theme--documenter-dark .content kbd.hero .subtitle { + color: rgba(236, 240, 241, 0.9); } + html.theme--documenter-dark .hero.is-dark .subtitle a:not(.button), html.theme--documenter-dark .content kbd.hero .subtitle a:not(.button), + html.theme--documenter-dark .hero.is-dark .subtitle strong, + html.theme--documenter-dark .content kbd.hero .subtitle strong { + color: #ecf0f1; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .hero.is-dark .navbar-menu, html.theme--documenter-dark .content kbd.hero .navbar-menu { + background-color: #282f2f; } } + html.theme--documenter-dark .hero.is-dark .navbar-item, html.theme--documenter-dark .content kbd.hero .navbar-item, + html.theme--documenter-dark .hero.is-dark .navbar-link, + html.theme--documenter-dark .content kbd.hero .navbar-link { + color: rgba(236, 240, 241, 0.7); } + html.theme--documenter-dark .hero.is-dark a.navbar-item:hover, html.theme--documenter-dark .content kbd.hero a.navbar-item:hover, html.theme--documenter-dark .hero.is-dark a.navbar-item.is-active, html.theme--documenter-dark .content kbd.hero a.navbar-item.is-active, + html.theme--documenter-dark .hero.is-dark .navbar-link:hover, + html.theme--documenter-dark .content kbd.hero .navbar-link:hover, + html.theme--documenter-dark .hero.is-dark .navbar-link.is-active, + html.theme--documenter-dark .content kbd.hero .navbar-link.is-active { + background-color: #1d2122; + color: #ecf0f1; } + html.theme--documenter-dark .hero.is-dark .tabs a, html.theme--documenter-dark .content kbd.hero .tabs a { + color: #ecf0f1; + opacity: 0.9; } + html.theme--documenter-dark .hero.is-dark .tabs a:hover, html.theme--documenter-dark .content kbd.hero .tabs a:hover { + opacity: 1; } + html.theme--documenter-dark .hero.is-dark .tabs li.is-active a, html.theme--documenter-dark .content kbd.hero .tabs li.is-active a { + opacity: 1; } + html.theme--documenter-dark .hero.is-dark .tabs.is-boxed a, html.theme--documenter-dark .content kbd.hero .tabs.is-boxed a, html.theme--documenter-dark .hero.is-dark .tabs.is-toggle a, html.theme--documenter-dark .content kbd.hero .tabs.is-toggle a { + color: #ecf0f1; } + html.theme--documenter-dark .hero.is-dark .tabs.is-boxed a:hover, html.theme--documenter-dark .content kbd.hero .tabs.is-boxed a:hover, html.theme--documenter-dark .hero.is-dark .tabs.is-toggle a:hover, html.theme--documenter-dark .content kbd.hero .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .hero.is-dark .tabs.is-boxed li.is-active a, html.theme--documenter-dark .content kbd.hero .tabs.is-boxed li.is-active a, html.theme--documenter-dark .hero.is-dark .tabs.is-boxed li.is-active a:hover, html.theme--documenter-dark .hero.is-dark .tabs.is-toggle li.is-active a, html.theme--documenter-dark .content kbd.hero .tabs.is-toggle li.is-active a, html.theme--documenter-dark .hero.is-dark .tabs.is-toggle li.is-active a:hover { + background-color: #ecf0f1; + border-color: #ecf0f1; + color: #282f2f; } + html.theme--documenter-dark .hero.is-dark.is-bold, html.theme--documenter-dark .content kbd.hero.is-bold { + background-image: linear-gradient(141deg, #0f1615 0%, #282f2f 71%, #313c40 100%); } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero.is-dark.is-bold .navbar-menu, html.theme--documenter-dark .content kbd.hero.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #0f1615 0%, #282f2f 71%, #313c40 100%); } } + html.theme--documenter-dark .hero.is-primary, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink { + background-color: #375a7f; + color: #fff; } + html.theme--documenter-dark .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + html.theme--documenter-dark .hero.is-primary strong, + html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink strong { + color: inherit; } + html.theme--documenter-dark .hero.is-primary .title, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .title { + color: #fff; } + html.theme--documenter-dark .hero.is-primary .subtitle, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .subtitle { + color: rgba(255, 255, 255, 0.9); } + html.theme--documenter-dark .hero.is-primary .subtitle a:not(.button), html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .subtitle a:not(.button), + html.theme--documenter-dark .hero.is-primary .subtitle strong, + html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .hero.is-primary .navbar-menu, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .navbar-menu { + background-color: #375a7f; } } + html.theme--documenter-dark .hero.is-primary .navbar-item, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .navbar-item, + html.theme--documenter-dark .hero.is-primary .navbar-link, + html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .navbar-link { + color: rgba(255, 255, 255, 0.7); } + html.theme--documenter-dark .hero.is-primary a.navbar-item:hover, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink a.navbar-item:hover, html.theme--documenter-dark .hero.is-primary a.navbar-item.is-active, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink a.navbar-item.is-active, + html.theme--documenter-dark .hero.is-primary .navbar-link:hover, + html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .navbar-link:hover, + html.theme--documenter-dark .hero.is-primary .navbar-link.is-active, + html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .navbar-link.is-active { + background-color: #2f4d6d; + color: #fff; } + html.theme--documenter-dark .hero.is-primary .tabs a, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .tabs a { + color: #fff; + opacity: 0.9; } + html.theme--documenter-dark .hero.is-primary .tabs a:hover, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .tabs a:hover { + opacity: 1; } + html.theme--documenter-dark .hero.is-primary .tabs li.is-active a, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .tabs li.is-active a { + opacity: 1; } + html.theme--documenter-dark .hero.is-primary .tabs.is-boxed a, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .tabs.is-boxed a, html.theme--documenter-dark .hero.is-primary .tabs.is-toggle a, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .tabs.is-toggle a { + color: #fff; } + html.theme--documenter-dark .hero.is-primary .tabs.is-boxed a:hover, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .tabs.is-boxed a:hover, html.theme--documenter-dark .hero.is-primary .tabs.is-toggle a:hover, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .hero.is-primary .tabs.is-boxed li.is-active a, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .tabs.is-boxed li.is-active a, html.theme--documenter-dark .hero.is-primary .tabs.is-boxed li.is-active a:hover, html.theme--documenter-dark .hero.is-primary .tabs.is-toggle li.is-active a, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .tabs.is-toggle li.is-active a, html.theme--documenter-dark .hero.is-primary .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #375a7f; } + html.theme--documenter-dark .hero.is-primary.is-bold, html.theme--documenter-dark .docstring > section > a.hero.is-bold.docs-sourcelink { + background-image: linear-gradient(141deg, #214b62 0%, #375a7f 71%, #3a5796 100%); } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero.is-primary.is-bold .navbar-menu, html.theme--documenter-dark .docstring > section > a.hero.is-bold.docs-sourcelink .navbar-menu { + background-image: linear-gradient(141deg, #214b62 0%, #375a7f 71%, #3a5796 100%); } } + html.theme--documenter-dark .hero.is-link { + background-color: #1abc9c; + color: #fff; } + html.theme--documenter-dark .hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + html.theme--documenter-dark .hero.is-link strong { + color: inherit; } + html.theme--documenter-dark .hero.is-link .title { + color: #fff; } + html.theme--documenter-dark .hero.is-link .subtitle { + color: rgba(255, 255, 255, 0.9); } + html.theme--documenter-dark .hero.is-link .subtitle a:not(.button), + html.theme--documenter-dark .hero.is-link .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .hero.is-link .navbar-menu { + background-color: #1abc9c; } } + html.theme--documenter-dark .hero.is-link .navbar-item, + html.theme--documenter-dark .hero.is-link .navbar-link { + color: rgba(255, 255, 255, 0.7); } + html.theme--documenter-dark .hero.is-link a.navbar-item:hover, html.theme--documenter-dark .hero.is-link a.navbar-item.is-active, + html.theme--documenter-dark .hero.is-link .navbar-link:hover, + html.theme--documenter-dark .hero.is-link .navbar-link.is-active { + background-color: #17a689; + color: #fff; } + html.theme--documenter-dark .hero.is-link .tabs a { + color: #fff; + opacity: 0.9; } + html.theme--documenter-dark .hero.is-link .tabs a:hover { + opacity: 1; } + html.theme--documenter-dark .hero.is-link .tabs li.is-active a { + opacity: 1; } + html.theme--documenter-dark .hero.is-link .tabs.is-boxed a, html.theme--documenter-dark .hero.is-link .tabs.is-toggle a { + color: #fff; } + html.theme--documenter-dark .hero.is-link .tabs.is-boxed a:hover, html.theme--documenter-dark .hero.is-link .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .hero.is-link .tabs.is-boxed li.is-active a, html.theme--documenter-dark .hero.is-link .tabs.is-boxed li.is-active a:hover, html.theme--documenter-dark .hero.is-link .tabs.is-toggle li.is-active a, html.theme--documenter-dark .hero.is-link .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #1abc9c; } + html.theme--documenter-dark .hero.is-link.is-bold { + background-image: linear-gradient(141deg, #0c9764 0%, #1abc9c 71%, #17d8d2 100%); } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero.is-link.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #0c9764 0%, #1abc9c 71%, #17d8d2 100%); } } + html.theme--documenter-dark .hero.is-info { + background-color: #024c7d; + color: #fff; } + html.theme--documenter-dark .hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + html.theme--documenter-dark .hero.is-info strong { + color: inherit; } + html.theme--documenter-dark .hero.is-info .title { + color: #fff; } + html.theme--documenter-dark .hero.is-info .subtitle { + color: rgba(255, 255, 255, 0.9); } + html.theme--documenter-dark .hero.is-info .subtitle a:not(.button), + html.theme--documenter-dark .hero.is-info .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .hero.is-info .navbar-menu { + background-color: #024c7d; } } + html.theme--documenter-dark .hero.is-info .navbar-item, + html.theme--documenter-dark .hero.is-info .navbar-link { + color: rgba(255, 255, 255, 0.7); } + html.theme--documenter-dark .hero.is-info a.navbar-item:hover, html.theme--documenter-dark .hero.is-info a.navbar-item.is-active, + html.theme--documenter-dark .hero.is-info .navbar-link:hover, + html.theme--documenter-dark .hero.is-info .navbar-link.is-active { + background-color: #023d64; + color: #fff; } + html.theme--documenter-dark .hero.is-info .tabs a { + color: #fff; + opacity: 0.9; } + html.theme--documenter-dark .hero.is-info .tabs a:hover { + opacity: 1; } + html.theme--documenter-dark .hero.is-info .tabs li.is-active a { + opacity: 1; } + html.theme--documenter-dark .hero.is-info .tabs.is-boxed a, html.theme--documenter-dark .hero.is-info .tabs.is-toggle a { + color: #fff; } + html.theme--documenter-dark .hero.is-info .tabs.is-boxed a:hover, html.theme--documenter-dark .hero.is-info .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .hero.is-info .tabs.is-boxed li.is-active a, html.theme--documenter-dark .hero.is-info .tabs.is-boxed li.is-active a:hover, html.theme--documenter-dark .hero.is-info .tabs.is-toggle li.is-active a, html.theme--documenter-dark .hero.is-info .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #024c7d; } + html.theme--documenter-dark .hero.is-info.is-bold { + background-image: linear-gradient(141deg, #003a4c 0%, #024c7d 71%, #004299 100%); } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero.is-info.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #003a4c 0%, #024c7d 71%, #004299 100%); } } + html.theme--documenter-dark .hero.is-success { + background-color: #008438; + color: #fff; } + html.theme--documenter-dark .hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + html.theme--documenter-dark .hero.is-success strong { + color: inherit; } + html.theme--documenter-dark .hero.is-success .title { + color: #fff; } + html.theme--documenter-dark .hero.is-success .subtitle { + color: rgba(255, 255, 255, 0.9); } + html.theme--documenter-dark .hero.is-success .subtitle a:not(.button), + html.theme--documenter-dark .hero.is-success .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .hero.is-success .navbar-menu { + background-color: #008438; } } + html.theme--documenter-dark .hero.is-success .navbar-item, + html.theme--documenter-dark .hero.is-success .navbar-link { + color: rgba(255, 255, 255, 0.7); } + html.theme--documenter-dark .hero.is-success a.navbar-item:hover, html.theme--documenter-dark .hero.is-success a.navbar-item.is-active, + html.theme--documenter-dark .hero.is-success .navbar-link:hover, + html.theme--documenter-dark .hero.is-success .navbar-link.is-active { + background-color: #006b2d; + color: #fff; } + html.theme--documenter-dark .hero.is-success .tabs a { + color: #fff; + opacity: 0.9; } + html.theme--documenter-dark .hero.is-success .tabs a:hover { + opacity: 1; } + html.theme--documenter-dark .hero.is-success .tabs li.is-active a { + opacity: 1; } + html.theme--documenter-dark .hero.is-success .tabs.is-boxed a, html.theme--documenter-dark .hero.is-success .tabs.is-toggle a { + color: #fff; } + html.theme--documenter-dark .hero.is-success .tabs.is-boxed a:hover, html.theme--documenter-dark .hero.is-success .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .hero.is-success .tabs.is-boxed li.is-active a, html.theme--documenter-dark .hero.is-success .tabs.is-boxed li.is-active a:hover, html.theme--documenter-dark .hero.is-success .tabs.is-toggle li.is-active a, html.theme--documenter-dark .hero.is-success .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #008438; } + html.theme--documenter-dark .hero.is-success.is-bold { + background-image: linear-gradient(141deg, #005115 0%, #008438 71%, #009e5d 100%); } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero.is-success.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #005115 0%, #008438 71%, #009e5d 100%); } } + html.theme--documenter-dark .hero.is-warning { + background-color: #ad8100; + color: #fff; } + html.theme--documenter-dark .hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + html.theme--documenter-dark .hero.is-warning strong { + color: inherit; } + html.theme--documenter-dark .hero.is-warning .title { + color: #fff; } + html.theme--documenter-dark .hero.is-warning .subtitle { + color: rgba(255, 255, 255, 0.9); } + html.theme--documenter-dark .hero.is-warning .subtitle a:not(.button), + html.theme--documenter-dark .hero.is-warning .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .hero.is-warning .navbar-menu { + background-color: #ad8100; } } + html.theme--documenter-dark .hero.is-warning .navbar-item, + html.theme--documenter-dark .hero.is-warning .navbar-link { + color: rgba(255, 255, 255, 0.7); } + html.theme--documenter-dark .hero.is-warning a.navbar-item:hover, html.theme--documenter-dark .hero.is-warning a.navbar-item.is-active, + html.theme--documenter-dark .hero.is-warning .navbar-link:hover, + html.theme--documenter-dark .hero.is-warning .navbar-link.is-active { + background-color: #946e00; + color: #fff; } + html.theme--documenter-dark .hero.is-warning .tabs a { + color: #fff; + opacity: 0.9; } + html.theme--documenter-dark .hero.is-warning .tabs a:hover { + opacity: 1; } + html.theme--documenter-dark .hero.is-warning .tabs li.is-active a { + opacity: 1; } + html.theme--documenter-dark .hero.is-warning .tabs.is-boxed a, html.theme--documenter-dark .hero.is-warning .tabs.is-toggle a { + color: #fff; } + html.theme--documenter-dark .hero.is-warning .tabs.is-boxed a:hover, html.theme--documenter-dark .hero.is-warning .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .hero.is-warning .tabs.is-boxed li.is-active a, html.theme--documenter-dark .hero.is-warning .tabs.is-boxed li.is-active a:hover, html.theme--documenter-dark .hero.is-warning .tabs.is-toggle li.is-active a, html.theme--documenter-dark .hero.is-warning .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #ad8100; } + html.theme--documenter-dark .hero.is-warning.is-bold { + background-image: linear-gradient(141deg, #7a4700 0%, #ad8100 71%, #c7b500 100%); } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero.is-warning.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #7a4700 0%, #ad8100 71%, #c7b500 100%); } } + html.theme--documenter-dark .hero.is-danger { + background-color: #9e1b0d; + color: #fff; } + html.theme--documenter-dark .hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + html.theme--documenter-dark .hero.is-danger strong { + color: inherit; } + html.theme--documenter-dark .hero.is-danger .title { + color: #fff; } + html.theme--documenter-dark .hero.is-danger .subtitle { + color: rgba(255, 255, 255, 0.9); } + html.theme--documenter-dark .hero.is-danger .subtitle a:not(.button), + html.theme--documenter-dark .hero.is-danger .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .hero.is-danger .navbar-menu { + background-color: #9e1b0d; } } + html.theme--documenter-dark .hero.is-danger .navbar-item, + html.theme--documenter-dark .hero.is-danger .navbar-link { + color: rgba(255, 255, 255, 0.7); } + html.theme--documenter-dark .hero.is-danger a.navbar-item:hover, html.theme--documenter-dark .hero.is-danger a.navbar-item.is-active, + html.theme--documenter-dark .hero.is-danger .navbar-link:hover, + html.theme--documenter-dark .hero.is-danger .navbar-link.is-active { + background-color: #86170b; + color: #fff; } + html.theme--documenter-dark .hero.is-danger .tabs a { + color: #fff; + opacity: 0.9; } + html.theme--documenter-dark .hero.is-danger .tabs a:hover { + opacity: 1; } + html.theme--documenter-dark .hero.is-danger .tabs li.is-active a { + opacity: 1; } + html.theme--documenter-dark .hero.is-danger .tabs.is-boxed a, html.theme--documenter-dark .hero.is-danger .tabs.is-toggle a { + color: #fff; } + html.theme--documenter-dark .hero.is-danger .tabs.is-boxed a:hover, html.theme--documenter-dark .hero.is-danger .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + html.theme--documenter-dark .hero.is-danger .tabs.is-boxed li.is-active a, html.theme--documenter-dark .hero.is-danger .tabs.is-boxed li.is-active a:hover, html.theme--documenter-dark .hero.is-danger .tabs.is-toggle li.is-active a, html.theme--documenter-dark .hero.is-danger .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #9e1b0d; } + html.theme--documenter-dark .hero.is-danger.is-bold { + background-image: linear-gradient(141deg, #75030b 0%, #9e1b0d 71%, #ba380a 100%); } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero.is-danger.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #75030b 0%, #9e1b0d 71%, #ba380a 100%); } } + html.theme--documenter-dark .hero.is-small .hero-body, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.hero .hero-body { + padding-bottom: 1.5rem; + padding-top: 1.5rem; } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .hero.is-medium .hero-body { + padding-bottom: 9rem; + padding-top: 9rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .hero.is-large .hero-body { + padding-bottom: 18rem; + padding-top: 18rem; } } + html.theme--documenter-dark .hero.is-halfheight .hero-body, html.theme--documenter-dark .hero.is-fullheight .hero-body, html.theme--documenter-dark .hero.is-fullheight-with-navbar .hero-body { + align-items: center; + display: flex; } + html.theme--documenter-dark .hero.is-halfheight .hero-body > .container, html.theme--documenter-dark .hero.is-fullheight .hero-body > .container, html.theme--documenter-dark .hero.is-fullheight-with-navbar .hero-body > .container { + flex-grow: 1; + flex-shrink: 1; } + html.theme--documenter-dark .hero.is-halfheight { + min-height: 50vh; } + html.theme--documenter-dark .hero.is-fullheight { + min-height: 100vh; } + html.theme--documenter-dark .hero-video { + overflow: hidden; } + html.theme--documenter-dark .hero-video video { + left: 50%; + min-height: 100%; + min-width: 100%; + position: absolute; + top: 50%; + transform: translate3d(-50%, -50%, 0); } + html.theme--documenter-dark .hero-video.is-transparent { + opacity: 0.3; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero-video { + display: none; } } + html.theme--documenter-dark .hero-buttons { + margin-top: 1.5rem; } + @media screen and (max-width: 768px) { + html.theme--documenter-dark .hero-buttons .button { + display: flex; } + html.theme--documenter-dark .hero-buttons .button:not(:last-child) { + margin-bottom: 0.75rem; } } + @media screen and (min-width: 769px), print { + html.theme--documenter-dark .hero-buttons { + display: flex; + justify-content: center; } + html.theme--documenter-dark .hero-buttons .button:not(:last-child) { + margin-right: 1.5rem; } } + html.theme--documenter-dark .hero-head, + html.theme--documenter-dark .hero-foot { + flex-grow: 0; + flex-shrink: 0; } + html.theme--documenter-dark .hero-body { + flex-grow: 1; + flex-shrink: 0; + padding: 3rem 1.5rem; } + html.theme--documenter-dark .section { + padding: 3rem 1.5rem; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark .section.is-medium { + padding: 9rem 1.5rem; } + html.theme--documenter-dark .section.is-large { + padding: 18rem 1.5rem; } } + html.theme--documenter-dark .footer { + background-color: #282f2f; + padding: 3rem 1.5rem 6rem; } + html.theme--documenter-dark hr { + height: 1px; } + html.theme--documenter-dark h6 { + text-transform: uppercase; + letter-spacing: 0.5px; } + html.theme--documenter-dark .hero { + background-color: #343c3d; } + html.theme--documenter-dark a { + transition: all 200ms ease; } + html.theme--documenter-dark .button { + transition: all 200ms ease; + border-width: 1px; + color: white; } + html.theme--documenter-dark .button.is-active, html.theme--documenter-dark .button.is-focused, html.theme--documenter-dark .button:active, html.theme--documenter-dark .button:focus { + box-shadow: 0 0 0 2px rgba(140, 155, 157, 0.5); } + html.theme--documenter-dark .button.is-white.is-hovered, html.theme--documenter-dark .button.is-white:hover { + background-color: white; } + html.theme--documenter-dark .button.is-white.is-active, html.theme--documenter-dark .button.is-white.is-focused, html.theme--documenter-dark .button.is-white:active, html.theme--documenter-dark .button.is-white:focus { + border-color: white; + box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.5); } + html.theme--documenter-dark .button.is-black.is-hovered, html.theme--documenter-dark .button.is-black:hover { + background-color: #1d1d1d; } + html.theme--documenter-dark .button.is-black.is-active, html.theme--documenter-dark .button.is-black.is-focused, html.theme--documenter-dark .button.is-black:active, html.theme--documenter-dark .button.is-black:focus { + border-color: #0a0a0a; + box-shadow: 0 0 0 2px rgba(10, 10, 10, 0.5); } + html.theme--documenter-dark .button.is-light.is-hovered, html.theme--documenter-dark .button.is-light:hover { + background-color: white; } + html.theme--documenter-dark .button.is-light.is-active, html.theme--documenter-dark .button.is-light.is-focused, html.theme--documenter-dark .button.is-light:active, html.theme--documenter-dark .button.is-light:focus { + border-color: #ecf0f1; + box-shadow: 0 0 0 2px rgba(236, 240, 241, 0.5); } + html.theme--documenter-dark .button.is-dark.is-hovered, html.theme--documenter-dark .content kbd.button.is-hovered, html.theme--documenter-dark .button.is-dark:hover, html.theme--documenter-dark .content kbd.button:hover { + background-color: #3a4344; } + html.theme--documenter-dark .button.is-dark.is-active, html.theme--documenter-dark .content kbd.button.is-active, html.theme--documenter-dark .button.is-dark.is-focused, html.theme--documenter-dark .content kbd.button.is-focused, html.theme--documenter-dark .button.is-dark:active, html.theme--documenter-dark .content kbd.button:active, html.theme--documenter-dark .button.is-dark:focus, html.theme--documenter-dark .content kbd.button:focus { + border-color: #282f2f; + box-shadow: 0 0 0 2px rgba(40, 47, 47, 0.5); } + html.theme--documenter-dark .button.is-primary.is-hovered, html.theme--documenter-dark .docstring > section > a.button.is-hovered.docs-sourcelink, html.theme--documenter-dark .button.is-primary:hover, html.theme--documenter-dark .docstring > section > a.button.docs-sourcelink:hover { + background-color: #436d9a; } + html.theme--documenter-dark .button.is-primary.is-active, html.theme--documenter-dark .docstring > section > a.button.is-active.docs-sourcelink, html.theme--documenter-dark .button.is-primary.is-focused, html.theme--documenter-dark .docstring > section > a.button.is-focused.docs-sourcelink, html.theme--documenter-dark .button.is-primary:active, html.theme--documenter-dark .docstring > section > a.button.docs-sourcelink:active, html.theme--documenter-dark .button.is-primary:focus, html.theme--documenter-dark .docstring > section > a.button.docs-sourcelink:focus { + border-color: #375a7f; + box-shadow: 0 0 0 2px rgba(55, 90, 127, 0.5); } + html.theme--documenter-dark .button.is-link.is-hovered, html.theme--documenter-dark .button.is-link:hover { + background-color: #1fdeb8; } + html.theme--documenter-dark .button.is-link.is-active, html.theme--documenter-dark .button.is-link.is-focused, html.theme--documenter-dark .button.is-link:active, html.theme--documenter-dark .button.is-link:focus { + border-color: #1abc9c; + box-shadow: 0 0 0 2px rgba(26, 188, 156, 0.5); } + html.theme--documenter-dark .button.is-info.is-hovered, html.theme--documenter-dark .button.is-info:hover { + background-color: #0363a3; } + html.theme--documenter-dark .button.is-info.is-active, html.theme--documenter-dark .button.is-info.is-focused, html.theme--documenter-dark .button.is-info:active, html.theme--documenter-dark .button.is-info:focus { + border-color: #024c7d; + box-shadow: 0 0 0 2px rgba(2, 76, 125, 0.5); } + html.theme--documenter-dark .button.is-success.is-hovered, html.theme--documenter-dark .button.is-success:hover { + background-color: #00aa48; } + html.theme--documenter-dark .button.is-success.is-active, html.theme--documenter-dark .button.is-success.is-focused, html.theme--documenter-dark .button.is-success:active, html.theme--documenter-dark .button.is-success:focus { + border-color: #008438; + box-shadow: 0 0 0 2px rgba(0, 132, 56, 0.5); } + html.theme--documenter-dark .button.is-warning.is-hovered, html.theme--documenter-dark .button.is-warning:hover { + background-color: #d39e00; } + html.theme--documenter-dark .button.is-warning.is-active, html.theme--documenter-dark .button.is-warning.is-focused, html.theme--documenter-dark .button.is-warning:active, html.theme--documenter-dark .button.is-warning:focus { + border-color: #ad8100; + box-shadow: 0 0 0 2px rgba(173, 129, 0, 0.5); } + html.theme--documenter-dark .button.is-danger.is-hovered, html.theme--documenter-dark .button.is-danger:hover { + background-color: #c12110; } + html.theme--documenter-dark .button.is-danger.is-active, html.theme--documenter-dark .button.is-danger.is-focused, html.theme--documenter-dark .button.is-danger:active, html.theme--documenter-dark .button.is-danger:focus { + border-color: #9e1b0d; + box-shadow: 0 0 0 2px rgba(158, 27, 13, 0.5); } + html.theme--documenter-dark .label { + color: #dbdee0; } + html.theme--documenter-dark .button, + html.theme--documenter-dark .control.has-icons-left .icon, + html.theme--documenter-dark .control.has-icons-right .icon, + html.theme--documenter-dark .input, + html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input, + html.theme--documenter-dark .pagination-ellipsis, + html.theme--documenter-dark .pagination-link, + html.theme--documenter-dark .pagination-next, + html.theme--documenter-dark .pagination-previous, + html.theme--documenter-dark .select, + html.theme--documenter-dark .select select, + html.theme--documenter-dark .textarea { + height: 2.5em; } + html.theme--documenter-dark .input, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input, + html.theme--documenter-dark .textarea { + transition: all 200ms ease; + box-shadow: none; + border-width: 1px; + padding-left: 1em; + padding-right: 1em; } + html.theme--documenter-dark .select:after, + html.theme--documenter-dark .select select { + border-width: 1px; } + html.theme--documenter-dark .control.has-addons .button, + html.theme--documenter-dark .control.has-addons .input, + html.theme--documenter-dark .control.has-addons #documenter .docs-sidebar form.docs-search > input, + html.theme--documenter-dark #documenter .docs-sidebar .control.has-addons form.docs-search > input, + html.theme--documenter-dark .control.has-addons .select { + margin-right: -1px; } + html.theme--documenter-dark .notification { + background-color: #343c3d; } + html.theme--documenter-dark .card { + box-shadow: none; + border: 1px solid #343c3d; + background-color: #282f2f; + border-radius: 0.4em; } + html.theme--documenter-dark .card .card-image img { + border-radius: 0.4em 0.4em 0 0; } + html.theme--documenter-dark .card .card-header { + box-shadow: none; + background-color: rgba(18, 18, 18, 0.2); + border-radius: 0.4em 0.4em 0 0; } + html.theme--documenter-dark .card .card-footer { + background-color: rgba(18, 18, 18, 0.2); } + html.theme--documenter-dark .card .card-footer, + html.theme--documenter-dark .card .card-footer-item { + border-width: 1px; + border-color: #343c3d; } + html.theme--documenter-dark .notification.is-white a:not(.button) { + color: #0a0a0a; + text-decoration: underline; } + html.theme--documenter-dark .notification.is-black a:not(.button) { + color: white; + text-decoration: underline; } + html.theme--documenter-dark .notification.is-light a:not(.button) { + color: #282f2f; + text-decoration: underline; } + html.theme--documenter-dark .notification.is-dark a:not(.button), html.theme--documenter-dark .content kbd.notification a:not(.button) { + color: #ecf0f1; + text-decoration: underline; } + html.theme--documenter-dark .notification.is-primary a:not(.button), html.theme--documenter-dark .docstring > section > a.notification.docs-sourcelink a:not(.button) { + color: #fff; + text-decoration: underline; } + html.theme--documenter-dark .notification.is-link a:not(.button) { + color: #fff; + text-decoration: underline; } + html.theme--documenter-dark .notification.is-info a:not(.button) { + color: #fff; + text-decoration: underline; } + html.theme--documenter-dark .notification.is-success a:not(.button) { + color: #fff; + text-decoration: underline; } + html.theme--documenter-dark .notification.is-warning a:not(.button) { + color: #fff; + text-decoration: underline; } + html.theme--documenter-dark .notification.is-danger a:not(.button) { + color: #fff; + text-decoration: underline; } + html.theme--documenter-dark .tag, html.theme--documenter-dark .content kbd, html.theme--documenter-dark .docstring > section > a.docs-sourcelink { + border-radius: 0.4em; } + html.theme--documenter-dark .menu-list a { + transition: all 300ms ease; } + html.theme--documenter-dark .modal-card-body { + background-color: #282f2f; } + html.theme--documenter-dark .modal-card-foot, + html.theme--documenter-dark .modal-card-head { + border-color: #343c3d; } + html.theme--documenter-dark .message-header { + font-weight: 700; + background-color: #343c3d; + color: white; } + html.theme--documenter-dark .message-body { + border-width: 1px; + border-color: #343c3d; } + html.theme--documenter-dark .navbar { + border-radius: 0.4em; } + html.theme--documenter-dark .navbar.is-transparent { + background: none; } + html.theme--documenter-dark .navbar.is-primary .navbar-dropdown a.navbar-item.is-active, html.theme--documenter-dark .docstring > section > a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active { + background-color: #1abc9c; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark .navbar .navbar-menu { + background-color: #375a7f; + border-radius: 0 0 0.4em 0.4em; } } + html.theme--documenter-dark .hero .navbar, + html.theme--documenter-dark body > .navbar { + border-radius: 0; } + html.theme--documenter-dark .pagination-link, + html.theme--documenter-dark .pagination-next, + html.theme--documenter-dark .pagination-previous { + border-width: 1px; } + html.theme--documenter-dark .panel-block, + html.theme--documenter-dark .panel-heading, + html.theme--documenter-dark .panel-tabs { + border-width: 1px; } + html.theme--documenter-dark .panel-block:first-child, + html.theme--documenter-dark .panel-heading:first-child, + html.theme--documenter-dark .panel-tabs:first-child { + border-top-width: 1px; } + html.theme--documenter-dark .panel-heading { + font-weight: 700; } + html.theme--documenter-dark .panel-tabs a { + border-width: 1px; + margin-bottom: -1px; } + html.theme--documenter-dark .panel-tabs a.is-active { + border-bottom-color: #17a689; } + html.theme--documenter-dark .panel-block:hover { + color: #1dd2af; } + html.theme--documenter-dark .panel-block:hover .panel-icon { + color: #1dd2af; } + html.theme--documenter-dark .panel-block.is-active .panel-icon { + color: #17a689; } + html.theme--documenter-dark .tabs a { + border-bottom-width: 1px; + margin-bottom: -1px; } + html.theme--documenter-dark .tabs ul { + border-bottom-width: 1px; } + html.theme--documenter-dark .tabs.is-boxed a { + border-width: 1px; } + html.theme--documenter-dark .tabs.is-boxed li.is-active a { + background-color: #1f2424; } + html.theme--documenter-dark .tabs.is-toggle li a { + border-width: 1px; + margin-bottom: 0; } + html.theme--documenter-dark .tabs.is-toggle li + li { + margin-left: -1px; } + html.theme--documenter-dark .hero.is-white .navbar .navbar-dropdown .navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark .hero.is-black .navbar .navbar-dropdown .navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark .hero.is-light .navbar .navbar-dropdown .navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark .hero.is-dark .navbar .navbar-dropdown .navbar-item:hover, html.theme--documenter-dark .content kbd.hero .navbar .navbar-dropdown .navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark .hero.is-primary .navbar .navbar-dropdown .navbar-item:hover, html.theme--documenter-dark .docstring > section > a.hero.docs-sourcelink .navbar .navbar-dropdown .navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark .hero.is-link .navbar .navbar-dropdown .navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark .hero.is-info .navbar .navbar-dropdown .navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark .hero.is-success .navbar .navbar-dropdown .navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark .hero.is-warning .navbar .navbar-dropdown .navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark .hero.is-danger .navbar .navbar-dropdown .navbar-item:hover { + background-color: transparent; } + html.theme--documenter-dark h1 .docs-heading-anchor, html.theme--documenter-dark h1 .docs-heading-anchor:hover, html.theme--documenter-dark h1 .docs-heading-anchor:visited, html.theme--documenter-dark h2 .docs-heading-anchor, html.theme--documenter-dark h2 .docs-heading-anchor:hover, html.theme--documenter-dark h2 .docs-heading-anchor:visited, html.theme--documenter-dark h3 .docs-heading-anchor, html.theme--documenter-dark h3 .docs-heading-anchor:hover, html.theme--documenter-dark h3 .docs-heading-anchor:visited, html.theme--documenter-dark h4 .docs-heading-anchor, html.theme--documenter-dark h4 .docs-heading-anchor:hover, html.theme--documenter-dark h4 .docs-heading-anchor:visited, html.theme--documenter-dark h5 .docs-heading-anchor, html.theme--documenter-dark h5 .docs-heading-anchor:hover, html.theme--documenter-dark h5 .docs-heading-anchor:visited, html.theme--documenter-dark h6 .docs-heading-anchor, html.theme--documenter-dark h6 .docs-heading-anchor:hover, html.theme--documenter-dark h6 .docs-heading-anchor:visited { + color: #f2f2f2; } + html.theme--documenter-dark h1 .docs-heading-anchor-permalink, html.theme--documenter-dark h2 .docs-heading-anchor-permalink, html.theme--documenter-dark h3 .docs-heading-anchor-permalink, html.theme--documenter-dark h4 .docs-heading-anchor-permalink, html.theme--documenter-dark h5 .docs-heading-anchor-permalink, html.theme--documenter-dark h6 .docs-heading-anchor-permalink { + visibility: hidden; + vertical-align: middle; + margin-left: 0.5em; + font-size: 0.7rem; } + html.theme--documenter-dark h1 .docs-heading-anchor-permalink::before, html.theme--documenter-dark h2 .docs-heading-anchor-permalink::before, html.theme--documenter-dark h3 .docs-heading-anchor-permalink::before, html.theme--documenter-dark h4 .docs-heading-anchor-permalink::before, html.theme--documenter-dark h5 .docs-heading-anchor-permalink::before, html.theme--documenter-dark h6 .docs-heading-anchor-permalink::before { + font-family: "Font Awesome 5 Free"; + font-weight: 900; + content: "\f0c1"; } + html.theme--documenter-dark h1:hover .docs-heading-anchor-permalink, html.theme--documenter-dark h2:hover .docs-heading-anchor-permalink, html.theme--documenter-dark h3:hover .docs-heading-anchor-permalink, html.theme--documenter-dark h4:hover .docs-heading-anchor-permalink, html.theme--documenter-dark h5:hover .docs-heading-anchor-permalink, html.theme--documenter-dark h6:hover .docs-heading-anchor-permalink { + visibility: visible; } + html.theme--documenter-dark .docs-light-only { + display: none !important; } + html.theme--documenter-dark pre { + position: relative; + overflow: hidden; } + html.theme--documenter-dark pre code, html.theme--documenter-dark pre code.hljs { + padding: 0 0.75rem !important; + overflow: auto; + display: block; } + html.theme--documenter-dark pre code:first-of-type, html.theme--documenter-dark pre code.hljs:first-of-type { + padding-top: 0.5rem !important; } + html.theme--documenter-dark pre code:last-of-type, html.theme--documenter-dark pre code.hljs:last-of-type { + padding-bottom: 0.5rem !important; } + html.theme--documenter-dark pre .copy-button { + opacity: 0.2; + transition: opacity 0.2s; + position: absolute; + right: 0em; + top: 0em; + padding: 0.5em; + width: 2.5em; + height: 2.5em; + background: transparent; + border: none; + font-family: "Font Awesome 5 Free"; + color: #fff; + cursor: pointer; + text-align: center; } + html.theme--documenter-dark pre .copy-button:focus, html.theme--documenter-dark pre .copy-button:hover { + opacity: 1; + background: rgba(255, 255, 255, 0.1); + color: #1abc9c; } + html.theme--documenter-dark pre .copy-button.success { + color: #259a12; + opacity: 1; } + html.theme--documenter-dark pre .copy-button.error { + color: #cb3c33; + opacity: 1; } + html.theme--documenter-dark pre:hover .copy-button { + opacity: 1; } + html.theme--documenter-dark .admonition { + background-color: #282f2f; + border-style: solid; + border-width: 1px; + border-color: #5e6d6f; + border-radius: 0.4em; + font-size: 15px; } + html.theme--documenter-dark .admonition strong { + color: currentColor; } + html.theme--documenter-dark .admonition.is-small, html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input.admonition { + font-size: 0.85em; } + html.theme--documenter-dark .admonition.is-medium { + font-size: 1.25rem; } + html.theme--documenter-dark .admonition.is-large { + font-size: 1.5rem; } + html.theme--documenter-dark .admonition.is-default { + background-color: #282f2f; + border-color: #5e6d6f; } + html.theme--documenter-dark .admonition.is-default > .admonition-header { + background-color: #5e6d6f; } + html.theme--documenter-dark .admonition.is-info { + background-color: #282f2f; + border-color: #024c7d; } + html.theme--documenter-dark .admonition.is-info > .admonition-header { + background-color: #024c7d; } + html.theme--documenter-dark .admonition.is-success { + background-color: #282f2f; + border-color: #008438; } + html.theme--documenter-dark .admonition.is-success > .admonition-header { + background-color: #008438; } + html.theme--documenter-dark .admonition.is-warning { + background-color: #282f2f; + border-color: #ad8100; } + html.theme--documenter-dark .admonition.is-warning > .admonition-header { + background-color: #ad8100; } + html.theme--documenter-dark .admonition.is-danger { + background-color: #282f2f; + border-color: #9e1b0d; } + html.theme--documenter-dark .admonition.is-danger > .admonition-header { + background-color: #9e1b0d; } + html.theme--documenter-dark .admonition.is-compat { + background-color: #282f2f; + border-color: #137886; } + html.theme--documenter-dark .admonition.is-compat > .admonition-header { + background-color: #137886; } + html.theme--documenter-dark .admonition-header { + background-color: #5e6d6f; + align-items: center; + font-weight: 700; + justify-content: space-between; + line-height: 1.25; + padding: 0.5rem 0.75rem; + position: relative; } + html.theme--documenter-dark .admonition-header:before { + font-family: "Font Awesome 5 Free"; + font-weight: 900; + margin-right: 0.75rem; + content: "\f06a"; } + html.theme--documenter-dark .admonition-body { + color: #fff; + padding: 0.5rem 0.75rem; } + html.theme--documenter-dark .admonition-body pre { + background-color: #282f2f; } + html.theme--documenter-dark .admonition-body code { + background-color: rgba(255, 255, 255, 0.05); } + html.theme--documenter-dark .docstring { + margin-bottom: 1em; + background-color: transparent; + border: 1px solid #5e6d6f; + box-shadow: none; + max-width: 100%; } + html.theme--documenter-dark .docstring > header { + display: flex; + flex-grow: 1; + align-items: stretch; + padding: 0.5rem 0.75rem; + background-color: #282f2f; + box-shadow: 0 1px 2px rgba(10, 10, 10, 0.1); + box-shadow: none; + border-bottom: 1px solid #5e6d6f; } + html.theme--documenter-dark .docstring > header code { + background-color: transparent; } + html.theme--documenter-dark .docstring > header .docstring-binding { + margin-right: 0.3em; } + html.theme--documenter-dark .docstring > header .docstring-category { + margin-left: 0.3em; } + html.theme--documenter-dark .docstring > section { + position: relative; + padding: 0.75rem 0.75rem; + border-bottom: 1px solid #5e6d6f; } + html.theme--documenter-dark .docstring > section:last-child { + border-bottom: none; } + html.theme--documenter-dark .docstring > section > a.docs-sourcelink { + transition: opacity 0.3s; + opacity: 0; + position: absolute; + right: 0.375rem; + bottom: 0.375rem; } + html.theme--documenter-dark .docstring > section > a.docs-sourcelink:focus { + opacity: 1 !important; } + html.theme--documenter-dark .docstring:hover > section > a.docs-sourcelink { + opacity: 0.2; } + html.theme--documenter-dark .docstring:focus-within > section > a.docs-sourcelink { + opacity: 0.2; } + html.theme--documenter-dark .docstring > section:hover a.docs-sourcelink { + opacity: 1; } + html.theme--documenter-dark .documenter-example-output { + background-color: #1f2424; } + html.theme--documenter-dark .outdated-warning-overlay { + position: fixed; + top: 0; + left: 0; + right: 0; + box-shadow: 0 0 10px rgba(0, 0, 0, 0.3); + z-index: 999; + background-color: #282f2f; + border-bottom: 3px solid #9e1b0d; + padding: 10px 35px; + text-align: center; + font-size: 15px; } + html.theme--documenter-dark .outdated-warning-overlay .outdated-warning-closer { + position: absolute; + top: calc(50% - 10px); + right: 18px; + cursor: pointer; + width: 12px; } + html.theme--documenter-dark .outdated-warning-overlay a { + color: #1abc9c; } + html.theme--documenter-dark .outdated-warning-overlay a:hover { + color: #1dd2af; } + html.theme--documenter-dark .content pre { + border: 1px solid #5e6d6f; } + html.theme--documenter-dark .content code { + font-weight: inherit; } + html.theme--documenter-dark .content a code { + color: #1abc9c; } + html.theme--documenter-dark .content h1 code, html.theme--documenter-dark .content h2 code, html.theme--documenter-dark .content h3 code, html.theme--documenter-dark .content h4 code, html.theme--documenter-dark .content h5 code, html.theme--documenter-dark .content h6 code { + color: #f2f2f2; } + html.theme--documenter-dark .content table { + display: block; + width: initial; + max-width: 100%; + overflow-x: auto; } + html.theme--documenter-dark .content blockquote > ul:first-child, html.theme--documenter-dark .content blockquote > ol:first-child, html.theme--documenter-dark .content .admonition-body > ul:first-child, html.theme--documenter-dark .content .admonition-body > ol:first-child { + margin-top: 0; } + html.theme--documenter-dark pre, html.theme--documenter-dark code { + font-variant-ligatures: no-contextual; } + html.theme--documenter-dark .breadcrumb a.is-disabled { + cursor: default; + pointer-events: none; } + html.theme--documenter-dark .breadcrumb a.is-disabled, html.theme--documenter-dark .breadcrumb a.is-disabled:hover { + color: #f2f2f2; } + html.theme--documenter-dark .hljs { + background: initial !important; } + html.theme--documenter-dark .katex .katex-mathml { + top: 0; + right: 0; } + html.theme--documenter-dark .katex-display, html.theme--documenter-dark mjx-container, html.theme--documenter-dark .MathJax_Display { + margin: 0.5em 0 !important; } + html.theme--documenter-dark html { + -moz-osx-font-smoothing: auto; + -webkit-font-smoothing: auto; } + html.theme--documenter-dark li.no-marker { + list-style: none; } + html.theme--documenter-dark #documenter .docs-main > article { + overflow-wrap: break-word; } + html.theme--documenter-dark #documenter .docs-main > article .math-container { + overflow-x: auto; + overflow-y: hidden; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark #documenter .docs-main { + max-width: 52rem; + margin-left: 20rem; + padding-right: 1rem; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark #documenter .docs-main { + width: 100%; } + html.theme--documenter-dark #documenter .docs-main > article { + max-width: 52rem; + margin-left: auto; + margin-right: auto; + margin-bottom: 1rem; + padding: 0 1rem; } + html.theme--documenter-dark #documenter .docs-main > header, html.theme--documenter-dark #documenter .docs-main > nav { + max-width: 100%; + width: 100%; + margin: 0; } } + html.theme--documenter-dark #documenter .docs-main header.docs-navbar { + background-color: #1f2424; + border-bottom: 1px solid #5e6d6f; + z-index: 2; + min-height: 4rem; + margin-bottom: 1rem; + display: flex; } + html.theme--documenter-dark #documenter .docs-main header.docs-navbar .breadcrumb { + flex-grow: 1; } + html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right { + display: flex; + white-space: nowrap; } + html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-icon, html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-label, html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button { + display: inline-block; } + html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-label { + padding: 0; + margin-left: 0.3em; } + html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-settings-button { + margin: auto 0 auto 1rem; } + html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button { + font-size: 1.5rem; + margin: auto 0 auto 1rem; } + html.theme--documenter-dark #documenter .docs-main header.docs-navbar > * { + margin: auto 0; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark #documenter .docs-main header.docs-navbar { + position: sticky; + top: 0; + padding: 0 1rem; + /* For Headroom.js */ + transition-property: top, box-shadow; + -webkit-transition-property: top, box-shadow; + /* Safari */ + transition-duration: 0.3s; + -webkit-transition-duration: 0.3s; + /* Safari */ } + html.theme--documenter-dark #documenter .docs-main header.docs-navbar.headroom--not-top { + box-shadow: 0.2rem 0rem 0.4rem #171717; + transition-duration: 0.7s; + -webkit-transition-duration: 0.7s; + /* Safari */ } + html.theme--documenter-dark #documenter .docs-main header.docs-navbar.headroom--unpinned.headroom--not-top.headroom--not-bottom { + top: -4.5rem; + transition-duration: 0.7s; + -webkit-transition-duration: 0.7s; + /* Safari */ } } + html.theme--documenter-dark #documenter .docs-main section.footnotes { + border-top: 1px solid #5e6d6f; } + html.theme--documenter-dark #documenter .docs-main section.footnotes li .tag:first-child, html.theme--documenter-dark #documenter .docs-main section.footnotes li .docstring > section > a.docs-sourcelink:first-child, html.theme--documenter-dark #documenter .docs-main section.footnotes li .content kbd:first-child, html.theme--documenter-dark .content #documenter .docs-main section.footnotes li kbd:first-child { + margin-right: 1em; + margin-bottom: 0.4em; } + html.theme--documenter-dark #documenter .docs-main .docs-footer { + display: flex; + flex-wrap: wrap; + margin-left: 0; + margin-right: 0; + border-top: 1px solid #5e6d6f; + padding-top: 1rem; + padding-bottom: 1rem; } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark #documenter .docs-main .docs-footer { + padding-left: 1rem; + padding-right: 1rem; } } + html.theme--documenter-dark #documenter .docs-main .docs-footer .docs-footer-nextpage, html.theme--documenter-dark #documenter .docs-main .docs-footer .docs-footer-prevpage { + flex-grow: 1; } + html.theme--documenter-dark #documenter .docs-main .docs-footer .docs-footer-nextpage { + text-align: right; } + html.theme--documenter-dark #documenter .docs-main .docs-footer .flexbox-break { + flex-basis: 100%; + height: 0; } + html.theme--documenter-dark #documenter .docs-main .docs-footer .footer-message { + font-size: 0.8em; + margin: 0.5em auto 0 auto; + text-align: center; } + html.theme--documenter-dark #documenter .docs-sidebar { + display: flex; + flex-direction: column; + color: #fff; + background-color: #282f2f; + border-right: 1px solid #5e6d6f; + padding: 0; + flex: 0 0 18rem; + z-index: 5; + font-size: 15px; + position: fixed; + left: -18rem; + width: 18rem; + height: 100%; + transition: left 0.3s; + /* Setting up a nicer theme style for the scrollbar */ } + html.theme--documenter-dark #documenter .docs-sidebar.visible { + left: 0; + box-shadow: 0.4rem 0rem 0.8rem #171717; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark #documenter .docs-sidebar.visible { + box-shadow: none; } } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark #documenter .docs-sidebar { + left: 0; + top: 0; } } + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo { + margin-top: 1rem; + padding: 0 1rem; } + html.theme--documenter-dark #documenter .docs-sidebar .docs-logo > img { + max-height: 6rem; + margin: auto; } + html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name { + flex-shrink: 0; + font-size: 1.5rem; + font-weight: 700; + text-align: center; + white-space: nowrap; + overflow: hidden; + padding: 0.5rem 0; } + html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name .docs-autofit { + max-width: 16.2rem; } + html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name a, html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name a:hover { + color: #fff; } + html.theme--documenter-dark #documenter .docs-sidebar .docs-version-selector { + border-top: 1px solid #5e6d6f; + display: none; + padding: 0.5rem; } + html.theme--documenter-dark #documenter .docs-sidebar .docs-version-selector.visible { + display: flex; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu { + flex-grow: 1; + user-select: none; + border-top: 1px solid #5e6d6f; + padding-bottom: 1.5rem; + /* Managing collapsible submenus */ } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu > li > .tocitem { + font-weight: bold; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu > li li { + font-size: 14.25px; + margin-left: 1em; + border-left: 1px solid #5e6d6f; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input.collapse-toggle { + display: none; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.collapsed { + display: none; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input:checked ~ ul.collapsed { + display: block; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem { + display: flex; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label { + flex-grow: 2; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron { + display: inline-block; + font-style: normal; + font-variant: normal; + text-rendering: auto; + line-height: 1; + font-size: 11.25px; + margin-left: 1rem; + margin-top: auto; + margin-bottom: auto; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before { + font-family: "Font Awesome 5 Free"; + font-weight: 900; + content: "\f054"; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input:checked ~ label.tocitem .docs-chevron::before { + content: "\f078"; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem { + display: block; + padding: 0.5rem 0.5rem; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem, html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem:hover { + color: #fff; + background: #282f2f; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu a.tocitem:hover, html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem:hover { + color: #fff; + background-color: #32393a; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active { + border-top: 1px solid #5e6d6f; + border-bottom: 1px solid #5e6d6f; + background-color: #1f2424; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem, html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover { + background-color: #1f2424; + color: #fff; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover { + background-color: #32393a; + color: #fff; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu > li.is-active:first-child { + border-top: none; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal { + margin: 0 0.5rem 0.5rem; + border-top: 1px solid #5e6d6f; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal li { + font-size: 12.75px; + border-left: none; + margin-left: 0; + margin-top: 0.5rem; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem { + width: 100%; + padding: 0; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before { + content: "⚬"; + margin-right: 0.4em; } + html.theme--documenter-dark #documenter .docs-sidebar form.docs-search { + margin: auto; + margin-top: 0.5rem; + margin-bottom: 0.5rem; } + html.theme--documenter-dark #documenter .docs-sidebar form.docs-search > input { + width: 14.4rem; } + @media screen and (min-width: 1056px) { + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu { + overflow-y: auto; + -webkit-overflow-scroll: touch; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar { + width: .3rem; + background: none; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb { + border-radius: 5px 0px 0px 5px; + background: #3b4445; } + html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover { + background: #4e5a5c; } } + @media screen and (max-width: 1055px) { + html.theme--documenter-dark #documenter .docs-sidebar { + overflow-y: auto; + -webkit-overflow-scroll: touch; } + html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar { + width: .3rem; + background: none; } + html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar-thumb { + border-radius: 5px 0px 0px 5px; + background: #3b4445; } + html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar-thumb:hover { + background: #4e5a5c; } } + html.theme--documenter-dark #documenter .docs-main #documenter-search-info { + margin-bottom: 1rem; } + html.theme--documenter-dark #documenter .docs-main #documenter-search-results { + list-style-type: circle; + list-style-position: outside; } + html.theme--documenter-dark #documenter .docs-main #documenter-search-results li { + margin-left: 2rem; } + html.theme--documenter-dark #documenter .docs-main #documenter-search-results .docs-highlight { + background-color: yellow; } + html.theme--documenter-dark { + background-color: #1f2424; + font-size: 16px; + min-width: 300px; + overflow-x: auto; + overflow-y: scroll; + text-rendering: optimizeLegibility; + text-size-adjust: 100%; } + html.theme--documenter-dark .ansi span.sgr1 { + font-weight: bolder; } + html.theme--documenter-dark .ansi span.sgr2 { + font-weight: lighter; } + html.theme--documenter-dark .ansi span.sgr3 { + font-style: italic; } + html.theme--documenter-dark .ansi span.sgr4 { + text-decoration: underline; } + html.theme--documenter-dark .ansi span.sgr7 { + color: #1f2424; + background-color: #fff; } + html.theme--documenter-dark .ansi span.sgr8 { + color: transparent; } + html.theme--documenter-dark .ansi span.sgr8 span { + color: transparent; } + html.theme--documenter-dark .ansi span.sgr9 { + text-decoration: line-through; } + html.theme--documenter-dark .ansi span.sgr30 { + color: #242424; } + html.theme--documenter-dark .ansi span.sgr31 { + color: #f6705f; } + html.theme--documenter-dark .ansi span.sgr32 { + color: #4fb43a; } + html.theme--documenter-dark .ansi span.sgr33 { + color: #f4c72f; } + html.theme--documenter-dark .ansi span.sgr34 { + color: #7587f0; } + html.theme--documenter-dark .ansi span.sgr35 { + color: #bc89d3; } + html.theme--documenter-dark .ansi span.sgr36 { + color: #49b6ca; } + html.theme--documenter-dark .ansi span.sgr37 { + color: #b3bdbe; } + html.theme--documenter-dark .ansi span.sgr40 { + background-color: #242424; } + html.theme--documenter-dark .ansi span.sgr41 { + background-color: #f6705f; } + html.theme--documenter-dark .ansi span.sgr42 { + background-color: #4fb43a; } + html.theme--documenter-dark .ansi span.sgr43 { + background-color: #f4c72f; } + html.theme--documenter-dark .ansi span.sgr44 { + background-color: #7587f0; } + html.theme--documenter-dark .ansi span.sgr45 { + background-color: #bc89d3; } + html.theme--documenter-dark .ansi span.sgr46 { + background-color: #49b6ca; } + html.theme--documenter-dark .ansi span.sgr47 { + background-color: #b3bdbe; } + html.theme--documenter-dark .ansi span.sgr90 { + color: #92a0a2; } + html.theme--documenter-dark .ansi span.sgr91 { + color: #ff8674; } + html.theme--documenter-dark .ansi span.sgr92 { + color: #79d462; } + html.theme--documenter-dark .ansi span.sgr93 { + color: #ffe76b; } + html.theme--documenter-dark .ansi span.sgr94 { + color: #8a98ff; } + html.theme--documenter-dark .ansi span.sgr95 { + color: #d2a4e6; } + html.theme--documenter-dark .ansi span.sgr96 { + color: #6bc8db; } + html.theme--documenter-dark .ansi span.sgr97 { + color: #ecf0f1; } + html.theme--documenter-dark .ansi span.sgr100 { + background-color: #92a0a2; } + html.theme--documenter-dark .ansi span.sgr101 { + background-color: #ff8674; } + html.theme--documenter-dark .ansi span.sgr102 { + background-color: #79d462; } + html.theme--documenter-dark .ansi span.sgr103 { + background-color: #ffe76b; } + html.theme--documenter-dark .ansi span.sgr104 { + background-color: #8a98ff; } + html.theme--documenter-dark .ansi span.sgr105 { + background-color: #d2a4e6; } + html.theme--documenter-dark .ansi span.sgr106 { + background-color: #6bc8db; } + html.theme--documenter-dark .ansi span.sgr107 { + background-color: #ecf0f1; } + html.theme--documenter-dark code.language-julia-repl > span.hljs-meta { + color: #4fb43a; + font-weight: bolder; } + html.theme--documenter-dark .hljs { + background: #2b2b2b; + color: #f8f8f2; } + html.theme--documenter-dark .hljs-comment, + html.theme--documenter-dark .hljs-quote { + color: #d4d0ab; } + html.theme--documenter-dark .hljs-variable, + html.theme--documenter-dark .hljs-template-variable, + html.theme--documenter-dark .hljs-tag, + html.theme--documenter-dark .hljs-name, + html.theme--documenter-dark .hljs-selector-id, + html.theme--documenter-dark .hljs-selector-class, + html.theme--documenter-dark .hljs-regexp, + html.theme--documenter-dark .hljs-deletion { + color: #ffa07a; } + html.theme--documenter-dark .hljs-number, + html.theme--documenter-dark .hljs-built_in, + html.theme--documenter-dark .hljs-literal, + html.theme--documenter-dark .hljs-type, + html.theme--documenter-dark .hljs-params, + html.theme--documenter-dark .hljs-meta, + html.theme--documenter-dark .hljs-link { + color: #f5ab35; } + html.theme--documenter-dark .hljs-attribute { + color: #ffd700; } + html.theme--documenter-dark .hljs-string, + html.theme--documenter-dark .hljs-symbol, + html.theme--documenter-dark .hljs-bullet, + html.theme--documenter-dark .hljs-addition { + color: #abe338; } + html.theme--documenter-dark .hljs-title, + html.theme--documenter-dark .hljs-section { + color: #00e0e0; } + html.theme--documenter-dark .hljs-keyword, + html.theme--documenter-dark .hljs-selector-tag { + color: #dcc6e0; } + html.theme--documenter-dark .hljs-emphasis { + font-style: italic; } + html.theme--documenter-dark .hljs-strong { + font-weight: bold; } + @media screen and (-ms-high-contrast: active) { + html.theme--documenter-dark .hljs-addition, + html.theme--documenter-dark .hljs-attribute, + html.theme--documenter-dark .hljs-built_in, + html.theme--documenter-dark .hljs-bullet, + html.theme--documenter-dark .hljs-comment, + html.theme--documenter-dark .hljs-link, + html.theme--documenter-dark .hljs-literal, + html.theme--documenter-dark .hljs-meta, + html.theme--documenter-dark .hljs-number, + html.theme--documenter-dark .hljs-params, + html.theme--documenter-dark .hljs-string, + html.theme--documenter-dark .hljs-symbol, + html.theme--documenter-dark .hljs-type, + html.theme--documenter-dark .hljs-quote { + color: highlight; } + html.theme--documenter-dark .hljs-keyword, + html.theme--documenter-dark .hljs-selector-tag { + font-weight: bold; } } + html.theme--documenter-dark .hljs-subst { + color: #f8f8f2; } diff --git a/v0.2.0/assets/themes/documenter-light.css b/v0.2.0/assets/themes/documenter-light.css new file mode 100644 index 0000000..9595d5b --- /dev/null +++ b/v0.2.0/assets/themes/documenter-light.css @@ -0,0 +1,7738 @@ +@charset "UTF-8"; +/* Font Awesome 5 mixin. Can be included in any rule that should render Font Awesome icons. */ +@keyframes spinAround { + from { + transform: rotate(0deg); } + to { + transform: rotate(359deg); } } + +.tabs, .pagination-previous, +.pagination-next, +.pagination-link, +.pagination-ellipsis, .breadcrumb, .file, .button, .is-unselectable, .modal-close, .delete { + -webkit-touch-callout: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; } + +.navbar-link:not(.is-arrowless)::after, .select:not(.is-multiple):not(.is-loading)::after { + border: 3px solid transparent; + border-radius: 2px; + border-right: 0; + border-top: 0; + content: " "; + display: block; + height: 0.625em; + margin-top: -0.4375em; + pointer-events: none; + position: absolute; + top: 50%; + transform: rotate(-45deg); + transform-origin: center; + width: 0.625em; } + +.admonition:not(:last-child), .tabs:not(:last-child), .message:not(:last-child), .list:not(:last-child), .level:not(:last-child), .breadcrumb:not(:last-child), .highlight:not(:last-child), .block:not(:last-child), .title:not(:last-child), +.subtitle:not(:last-child), .table-container:not(:last-child), .table:not(:last-child), .progress:not(:last-child), .notification:not(:last-child), .content:not(:last-child), .box:not(:last-child) { + margin-bottom: 1.5rem; } + +.modal-close, .delete { + -moz-appearance: none; + -webkit-appearance: none; + background-color: rgba(10, 10, 10, 0.2); + border: none; + border-radius: 290486px; + cursor: pointer; + pointer-events: auto; + display: inline-block; + flex-grow: 0; + flex-shrink: 0; + font-size: 0; + height: 20px; + max-height: 20px; + max-width: 20px; + min-height: 20px; + min-width: 20px; + outline: none; + position: relative; + vertical-align: top; + width: 20px; } + .modal-close::before, .delete::before, .modal-close::after, .delete::after { + background-color: white; + content: ""; + display: block; + left: 50%; + position: absolute; + top: 50%; + transform: translateX(-50%) translateY(-50%) rotate(45deg); + transform-origin: center center; } + .modal-close::before, .delete::before { + height: 2px; + width: 50%; } + .modal-close::after, .delete::after { + height: 50%; + width: 2px; } + .modal-close:hover, .delete:hover, .modal-close:focus, .delete:focus { + background-color: rgba(10, 10, 10, 0.3); } + .modal-close:active, .delete:active { + background-color: rgba(10, 10, 10, 0.4); } + .is-small.modal-close, #documenter .docs-sidebar form.docs-search > input.modal-close, .is-small.delete, #documenter .docs-sidebar form.docs-search > input.delete { + height: 16px; + max-height: 16px; + max-width: 16px; + min-height: 16px; + min-width: 16px; + width: 16px; } + .is-medium.modal-close, .is-medium.delete { + height: 24px; + max-height: 24px; + max-width: 24px; + min-height: 24px; + min-width: 24px; + width: 24px; } + .is-large.modal-close, .is-large.delete { + height: 32px; + max-height: 32px; + max-width: 32px; + min-height: 32px; + min-width: 32px; + width: 32px; } + +.control.is-loading::after, .select.is-loading::after, .loader, .button.is-loading::after { + animation: spinAround 500ms infinite linear; + border: 2px solid #dbdbdb; + border-radius: 290486px; + border-right-color: transparent; + border-top-color: transparent; + content: ""; + display: block; + height: 1em; + position: relative; + width: 1em; } + +.hero-video, .modal-background, .modal, .image.is-square img, #documenter .docs-sidebar .docs-logo > img.is-square img, +.image.is-square .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-square .has-ratio, .image.is-1by1 img, #documenter .docs-sidebar .docs-logo > img.is-1by1 img, +.image.is-1by1 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-1by1 .has-ratio, .image.is-5by4 img, #documenter .docs-sidebar .docs-logo > img.is-5by4 img, +.image.is-5by4 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-5by4 .has-ratio, .image.is-4by3 img, #documenter .docs-sidebar .docs-logo > img.is-4by3 img, +.image.is-4by3 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-4by3 .has-ratio, .image.is-3by2 img, #documenter .docs-sidebar .docs-logo > img.is-3by2 img, +.image.is-3by2 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-3by2 .has-ratio, .image.is-5by3 img, #documenter .docs-sidebar .docs-logo > img.is-5by3 img, +.image.is-5by3 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-5by3 .has-ratio, .image.is-16by9 img, #documenter .docs-sidebar .docs-logo > img.is-16by9 img, +.image.is-16by9 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-16by9 .has-ratio, .image.is-2by1 img, #documenter .docs-sidebar .docs-logo > img.is-2by1 img, +.image.is-2by1 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-2by1 .has-ratio, .image.is-3by1 img, #documenter .docs-sidebar .docs-logo > img.is-3by1 img, +.image.is-3by1 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-3by1 .has-ratio, .image.is-4by5 img, #documenter .docs-sidebar .docs-logo > img.is-4by5 img, +.image.is-4by5 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-4by5 .has-ratio, .image.is-3by4 img, #documenter .docs-sidebar .docs-logo > img.is-3by4 img, +.image.is-3by4 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-3by4 .has-ratio, .image.is-2by3 img, #documenter .docs-sidebar .docs-logo > img.is-2by3 img, +.image.is-2by3 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-2by3 .has-ratio, .image.is-3by5 img, #documenter .docs-sidebar .docs-logo > img.is-3by5 img, +.image.is-3by5 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-3by5 .has-ratio, .image.is-9by16 img, #documenter .docs-sidebar .docs-logo > img.is-9by16 img, +.image.is-9by16 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-9by16 .has-ratio, .image.is-1by2 img, #documenter .docs-sidebar .docs-logo > img.is-1by2 img, +.image.is-1by2 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-1by2 .has-ratio, .image.is-1by3 img, #documenter .docs-sidebar .docs-logo > img.is-1by3 img, +.image.is-1by3 .has-ratio, +#documenter .docs-sidebar .docs-logo > img.is-1by3 .has-ratio, .is-overlay { + bottom: 0; + left: 0; + position: absolute; + right: 0; + top: 0; } + +.pagination-previous, +.pagination-next, +.pagination-link, +.pagination-ellipsis, .file-cta, +.file-name, .select select, .textarea, .input, #documenter .docs-sidebar form.docs-search > input, .button { + -moz-appearance: none; + -webkit-appearance: none; + align-items: center; + border: 1px solid transparent; + border-radius: 4px; + box-shadow: none; + display: inline-flex; + font-size: 1rem; + height: 2.25em; + justify-content: flex-start; + line-height: 1.5; + padding-bottom: calc(0.375em - 1px); + padding-left: calc(0.625em - 1px); + padding-right: calc(0.625em - 1px); + padding-top: calc(0.375em - 1px); + position: relative; + vertical-align: top; } + .pagination-previous:focus, + .pagination-next:focus, + .pagination-link:focus, + .pagination-ellipsis:focus, .file-cta:focus, + .file-name:focus, .select select:focus, .textarea:focus, .input:focus, #documenter .docs-sidebar form.docs-search > input:focus, .button:focus, .is-focused.pagination-previous, + .is-focused.pagination-next, + .is-focused.pagination-link, + .is-focused.pagination-ellipsis, .is-focused.file-cta, + .is-focused.file-name, .select select.is-focused, .is-focused.textarea, .is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .is-focused.button, .pagination-previous:active, + .pagination-next:active, + .pagination-link:active, + .pagination-ellipsis:active, .file-cta:active, + .file-name:active, .select select:active, .textarea:active, .input:active, #documenter .docs-sidebar form.docs-search > input:active, .button:active, .is-active.pagination-previous, + .is-active.pagination-next, + .is-active.pagination-link, + .is-active.pagination-ellipsis, .is-active.file-cta, + .is-active.file-name, .select select.is-active, .is-active.textarea, .is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active, .is-active.button { + outline: none; } + .pagination-previous[disabled], + .pagination-next[disabled], + .pagination-link[disabled], + .pagination-ellipsis[disabled], .file-cta[disabled], + .file-name[disabled], .select select[disabled], .textarea[disabled], .input[disabled], #documenter .docs-sidebar form.docs-search > input[disabled], .button[disabled], fieldset[disabled] .pagination-previous, + fieldset[disabled] .pagination-next, + fieldset[disabled] .pagination-link, + fieldset[disabled] .pagination-ellipsis, fieldset[disabled] .file-cta, + fieldset[disabled] .file-name, fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .textarea, fieldset[disabled] .input, fieldset[disabled] #documenter .docs-sidebar form.docs-search > input, #documenter .docs-sidebar fieldset[disabled] form.docs-search > input, fieldset[disabled] .button { + cursor: not-allowed; } + +/*! minireset.css v0.0.4 | MIT License | github.com/jgthms/minireset.css */ +html, +body, +p, +ol, +ul, +li, +dl, +dt, +dd, +blockquote, +figure, +fieldset, +legend, +textarea, +pre, +iframe, +hr, +h1, +h2, +h3, +h4, +h5, +h6 { + margin: 0; + padding: 0; } + +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: 100%; + font-weight: normal; } + +ul { + list-style: none; } + +button, +input, +select, +textarea { + margin: 0; } + +html { + box-sizing: border-box; } + +*, *::before, *::after { + box-sizing: inherit; } + +img, +embed, +iframe, +object, +video { + height: auto; + max-width: 100%; } + +audio { + max-width: 100%; } + +iframe { + border: 0; } + +table { + border-collapse: collapse; + border-spacing: 0; } + +td, +th { + padding: 0; } + td:not([align]), + th:not([align]) { + text-align: left; } + +html { + background-color: white; + font-size: 16px; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + min-width: 300px; + overflow-x: auto; + overflow-y: scroll; + text-rendering: optimizeLegibility; + text-size-adjust: 100%; } + +article, +aside, +figure, +footer, +header, +hgroup, +section { + display: block; } + +body, +button, +input, +select, +textarea { + font-family: "Lato Medium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "Helvetica", "Arial", sans-serif; } + +code, +pre { + -moz-osx-font-smoothing: auto; + -webkit-font-smoothing: auto; + font-family: "JuliaMono", "SFMono-Regular", "Menlo", "Consolas", "Liberation Mono", "DejaVu Sans Mono", monospace; } + +body { + color: #222222; + font-size: 1em; + font-weight: 400; + line-height: 1.5; } + +a { + color: #2e63b8; + cursor: pointer; + text-decoration: none; } + a strong { + color: currentColor; } + a:hover { + color: #363636; } + +code { + background-color: rgba(0, 0, 0, 0.05); + color: #000000; + font-size: 0.875em; + font-weight: normal; + padding: 0.1em; } + +hr { + background-color: whitesmoke; + border: none; + display: block; + height: 2px; + margin: 1.5rem 0; } + +img { + height: auto; + max-width: 100%; } + +input[type="checkbox"], +input[type="radio"] { + vertical-align: baseline; } + +small { + font-size: 0.875em; } + +span { + font-style: inherit; + font-weight: inherit; } + +strong { + color: #222222; + font-weight: 700; } + +fieldset { + border: none; } + +pre { + -webkit-overflow-scrolling: touch; + background-color: whitesmoke; + color: #222222; + font-size: 0.875em; + overflow-x: auto; + padding: 1.25rem 1.5rem; + white-space: pre; + word-wrap: normal; } + pre code { + background-color: transparent; + color: currentColor; + font-size: 1em; + padding: 0; } + +table td, +table th { + vertical-align: top; } + table td:not([align]), + table th:not([align]) { + text-align: left; } + +table th { + color: #222222; } + +.is-clearfix::after { + clear: both; + content: " "; + display: table; } + +.is-pulled-left { + float: left !important; } + +.is-pulled-right { + float: right !important; } + +.is-clipped { + overflow: hidden !important; } + +.is-size-1 { + font-size: 3rem !important; } + +.is-size-2 { + font-size: 2.5rem !important; } + +.is-size-3 { + font-size: 2rem !important; } + +.is-size-4 { + font-size: 1.5rem !important; } + +.is-size-5 { + font-size: 1.25rem !important; } + +.is-size-6 { + font-size: 1rem !important; } + +.is-size-7, .docstring > section > a.docs-sourcelink { + font-size: 0.75rem !important; } + +@media screen and (max-width: 768px) { + .is-size-1-mobile { + font-size: 3rem !important; } + .is-size-2-mobile { + font-size: 2.5rem !important; } + .is-size-3-mobile { + font-size: 2rem !important; } + .is-size-4-mobile { + font-size: 1.5rem !important; } + .is-size-5-mobile { + font-size: 1.25rem !important; } + .is-size-6-mobile { + font-size: 1rem !important; } + .is-size-7-mobile { + font-size: 0.75rem !important; } } + +@media screen and (min-width: 769px), print { + .is-size-1-tablet { + font-size: 3rem !important; } + .is-size-2-tablet { + font-size: 2.5rem !important; } + .is-size-3-tablet { + font-size: 2rem !important; } + .is-size-4-tablet { + font-size: 1.5rem !important; } + .is-size-5-tablet { + font-size: 1.25rem !important; } + .is-size-6-tablet { + font-size: 1rem !important; } + .is-size-7-tablet { + font-size: 0.75rem !important; } } + +@media screen and (max-width: 1055px) { + .is-size-1-touch { + font-size: 3rem !important; } + .is-size-2-touch { + font-size: 2.5rem !important; } + .is-size-3-touch { + font-size: 2rem !important; } + .is-size-4-touch { + font-size: 1.5rem !important; } + .is-size-5-touch { + font-size: 1.25rem !important; } + .is-size-6-touch { + font-size: 1rem !important; } + .is-size-7-touch { + font-size: 0.75rem !important; } } + +@media screen and (min-width: 1056px) { + .is-size-1-desktop { + font-size: 3rem !important; } + .is-size-2-desktop { + font-size: 2.5rem !important; } + .is-size-3-desktop { + font-size: 2rem !important; } + .is-size-4-desktop { + font-size: 1.5rem !important; } + .is-size-5-desktop { + font-size: 1.25rem !important; } + .is-size-6-desktop { + font-size: 1rem !important; } + .is-size-7-desktop { + font-size: 0.75rem !important; } } + +@media screen and (min-width: 1216px) { + .is-size-1-widescreen { + font-size: 3rem !important; } + .is-size-2-widescreen { + font-size: 2.5rem !important; } + .is-size-3-widescreen { + font-size: 2rem !important; } + .is-size-4-widescreen { + font-size: 1.5rem !important; } + .is-size-5-widescreen { + font-size: 1.25rem !important; } + .is-size-6-widescreen { + font-size: 1rem !important; } + .is-size-7-widescreen { + font-size: 0.75rem !important; } } + +@media screen and (min-width: 1408px) { + .is-size-1-fullhd { + font-size: 3rem !important; } + .is-size-2-fullhd { + font-size: 2.5rem !important; } + .is-size-3-fullhd { + font-size: 2rem !important; } + .is-size-4-fullhd { + font-size: 1.5rem !important; } + .is-size-5-fullhd { + font-size: 1.25rem !important; } + .is-size-6-fullhd { + font-size: 1rem !important; } + .is-size-7-fullhd { + font-size: 0.75rem !important; } } + +.has-text-centered { + text-align: center !important; } + +.has-text-justified { + text-align: justify !important; } + +.has-text-left { + text-align: left !important; } + +.has-text-right { + text-align: right !important; } + +@media screen and (max-width: 768px) { + .has-text-centered-mobile { + text-align: center !important; } } + +@media screen and (min-width: 769px), print { + .has-text-centered-tablet { + text-align: center !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .has-text-centered-tablet-only { + text-align: center !important; } } + +@media screen and (max-width: 1055px) { + .has-text-centered-touch { + text-align: center !important; } } + +@media screen and (min-width: 1056px) { + .has-text-centered-desktop { + text-align: center !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .has-text-centered-desktop-only { + text-align: center !important; } } + +@media screen and (min-width: 1216px) { + .has-text-centered-widescreen { + text-align: center !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-centered-widescreen-only { + text-align: center !important; } } + +@media screen and (min-width: 1408px) { + .has-text-centered-fullhd { + text-align: center !important; } } + +@media screen and (max-width: 768px) { + .has-text-justified-mobile { + text-align: justify !important; } } + +@media screen and (min-width: 769px), print { + .has-text-justified-tablet { + text-align: justify !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .has-text-justified-tablet-only { + text-align: justify !important; } } + +@media screen and (max-width: 1055px) { + .has-text-justified-touch { + text-align: justify !important; } } + +@media screen and (min-width: 1056px) { + .has-text-justified-desktop { + text-align: justify !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .has-text-justified-desktop-only { + text-align: justify !important; } } + +@media screen and (min-width: 1216px) { + .has-text-justified-widescreen { + text-align: justify !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-justified-widescreen-only { + text-align: justify !important; } } + +@media screen and (min-width: 1408px) { + .has-text-justified-fullhd { + text-align: justify !important; } } + +@media screen and (max-width: 768px) { + .has-text-left-mobile { + text-align: left !important; } } + +@media screen and (min-width: 769px), print { + .has-text-left-tablet { + text-align: left !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .has-text-left-tablet-only { + text-align: left !important; } } + +@media screen and (max-width: 1055px) { + .has-text-left-touch { + text-align: left !important; } } + +@media screen and (min-width: 1056px) { + .has-text-left-desktop { + text-align: left !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .has-text-left-desktop-only { + text-align: left !important; } } + +@media screen and (min-width: 1216px) { + .has-text-left-widescreen { + text-align: left !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-left-widescreen-only { + text-align: left !important; } } + +@media screen and (min-width: 1408px) { + .has-text-left-fullhd { + text-align: left !important; } } + +@media screen and (max-width: 768px) { + .has-text-right-mobile { + text-align: right !important; } } + +@media screen and (min-width: 769px), print { + .has-text-right-tablet { + text-align: right !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .has-text-right-tablet-only { + text-align: right !important; } } + +@media screen and (max-width: 1055px) { + .has-text-right-touch { + text-align: right !important; } } + +@media screen and (min-width: 1056px) { + .has-text-right-desktop { + text-align: right !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .has-text-right-desktop-only { + text-align: right !important; } } + +@media screen and (min-width: 1216px) { + .has-text-right-widescreen { + text-align: right !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .has-text-right-widescreen-only { + text-align: right !important; } } + +@media screen and (min-width: 1408px) { + .has-text-right-fullhd { + text-align: right !important; } } + +.is-capitalized { + text-transform: capitalize !important; } + +.is-lowercase { + text-transform: lowercase !important; } + +.is-uppercase { + text-transform: uppercase !important; } + +.is-italic { + font-style: italic !important; } + +.has-text-white { + color: white !important; } + +a.has-text-white:hover, a.has-text-white:focus { + color: #e6e6e6 !important; } + +.has-background-white { + background-color: white !important; } + +.has-text-black { + color: #0a0a0a !important; } + +a.has-text-black:hover, a.has-text-black:focus { + color: black !important; } + +.has-background-black { + background-color: #0a0a0a !important; } + +.has-text-light { + color: whitesmoke !important; } + +a.has-text-light:hover, a.has-text-light:focus { + color: #dbdbdb !important; } + +.has-background-light { + background-color: whitesmoke !important; } + +.has-text-dark { + color: #363636 !important; } + +a.has-text-dark:hover, a.has-text-dark:focus { + color: #1c1c1c !important; } + +.has-background-dark { + background-color: #363636 !important; } + +.has-text-primary { + color: #4eb5de !important; } + +a.has-text-primary:hover, a.has-text-primary:focus { + color: #27a1d2 !important; } + +.has-background-primary { + background-color: #4eb5de !important; } + +.has-text-link { + color: #2e63b8 !important; } + +a.has-text-link:hover, a.has-text-link:focus { + color: #244d8f !important; } + +.has-background-link { + background-color: #2e63b8 !important; } + +.has-text-info { + color: #209cee !important; } + +a.has-text-info:hover, a.has-text-info:focus { + color: #1081cb !important; } + +.has-background-info { + background-color: #209cee !important; } + +.has-text-success { + color: #22c35b !important; } + +a.has-text-success:hover, a.has-text-success:focus { + color: #1a9847 !important; } + +.has-background-success { + background-color: #22c35b !important; } + +.has-text-warning { + color: #ffdd57 !important; } + +a.has-text-warning:hover, a.has-text-warning:focus { + color: #ffd324 !important; } + +.has-background-warning { + background-color: #ffdd57 !important; } + +.has-text-danger { + color: #da0b00 !important; } + +a.has-text-danger:hover, a.has-text-danger:focus { + color: #a70800 !important; } + +.has-background-danger { + background-color: #da0b00 !important; } + +.has-text-black-bis { + color: #121212 !important; } + +.has-background-black-bis { + background-color: #121212 !important; } + +.has-text-black-ter { + color: #242424 !important; } + +.has-background-black-ter { + background-color: #242424 !important; } + +.has-text-grey-darker { + color: #363636 !important; } + +.has-background-grey-darker { + background-color: #363636 !important; } + +.has-text-grey-dark { + color: #4a4a4a !important; } + +.has-background-grey-dark { + background-color: #4a4a4a !important; } + +.has-text-grey { + color: #6b6b6b !important; } + +.has-background-grey { + background-color: #6b6b6b !important; } + +.has-text-grey-light { + color: #b5b5b5 !important; } + +.has-background-grey-light { + background-color: #b5b5b5 !important; } + +.has-text-grey-lighter { + color: #dbdbdb !important; } + +.has-background-grey-lighter { + background-color: #dbdbdb !important; } + +.has-text-white-ter { + color: whitesmoke !important; } + +.has-background-white-ter { + background-color: whitesmoke !important; } + +.has-text-white-bis { + color: #fafafa !important; } + +.has-background-white-bis { + background-color: #fafafa !important; } + +.has-text-weight-light { + font-weight: 300 !important; } + +.has-text-weight-normal { + font-weight: 400 !important; } + +.has-text-weight-medium { + font-weight: 500 !important; } + +.has-text-weight-semibold { + font-weight: 600 !important; } + +.has-text-weight-bold { + font-weight: 700 !important; } + +.is-family-primary { + font-family: "Lato Medium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; } + +.is-family-secondary { + font-family: "Lato Medium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; } + +.is-family-sans-serif { + font-family: "Lato Medium", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; } + +.is-family-monospace { + font-family: "JuliaMono", "SFMono-Regular", "Menlo", "Consolas", "Liberation Mono", "DejaVu Sans Mono", monospace !important; } + +.is-family-code { + font-family: "JuliaMono", "SFMono-Regular", "Menlo", "Consolas", "Liberation Mono", "DejaVu Sans Mono", monospace !important; } + +.is-block { + display: block !important; } + +@media screen and (max-width: 768px) { + .is-block-mobile { + display: block !important; } } + +@media screen and (min-width: 769px), print { + .is-block-tablet { + display: block !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-block-tablet-only { + display: block !important; } } + +@media screen and (max-width: 1055px) { + .is-block-touch { + display: block !important; } } + +@media screen and (min-width: 1056px) { + .is-block-desktop { + display: block !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-block-desktop-only { + display: block !important; } } + +@media screen and (min-width: 1216px) { + .is-block-widescreen { + display: block !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-block-widescreen-only { + display: block !important; } } + +@media screen and (min-width: 1408px) { + .is-block-fullhd { + display: block !important; } } + +.is-flex { + display: flex !important; } + +@media screen and (max-width: 768px) { + .is-flex-mobile { + display: flex !important; } } + +@media screen and (min-width: 769px), print { + .is-flex-tablet { + display: flex !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-flex-tablet-only { + display: flex !important; } } + +@media screen and (max-width: 1055px) { + .is-flex-touch { + display: flex !important; } } + +@media screen and (min-width: 1056px) { + .is-flex-desktop { + display: flex !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-flex-desktop-only { + display: flex !important; } } + +@media screen and (min-width: 1216px) { + .is-flex-widescreen { + display: flex !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-flex-widescreen-only { + display: flex !important; } } + +@media screen and (min-width: 1408px) { + .is-flex-fullhd { + display: flex !important; } } + +.is-inline { + display: inline !important; } + +@media screen and (max-width: 768px) { + .is-inline-mobile { + display: inline !important; } } + +@media screen and (min-width: 769px), print { + .is-inline-tablet { + display: inline !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-inline-tablet-only { + display: inline !important; } } + +@media screen and (max-width: 1055px) { + .is-inline-touch { + display: inline !important; } } + +@media screen and (min-width: 1056px) { + .is-inline-desktop { + display: inline !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-inline-desktop-only { + display: inline !important; } } + +@media screen and (min-width: 1216px) { + .is-inline-widescreen { + display: inline !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-inline-widescreen-only { + display: inline !important; } } + +@media screen and (min-width: 1408px) { + .is-inline-fullhd { + display: inline !important; } } + +.is-inline-block { + display: inline-block !important; } + +@media screen and (max-width: 768px) { + .is-inline-block-mobile { + display: inline-block !important; } } + +@media screen and (min-width: 769px), print { + .is-inline-block-tablet { + display: inline-block !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-inline-block-tablet-only { + display: inline-block !important; } } + +@media screen and (max-width: 1055px) { + .is-inline-block-touch { + display: inline-block !important; } } + +@media screen and (min-width: 1056px) { + .is-inline-block-desktop { + display: inline-block !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-inline-block-desktop-only { + display: inline-block !important; } } + +@media screen and (min-width: 1216px) { + .is-inline-block-widescreen { + display: inline-block !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-inline-block-widescreen-only { + display: inline-block !important; } } + +@media screen and (min-width: 1408px) { + .is-inline-block-fullhd { + display: inline-block !important; } } + +.is-inline-flex { + display: inline-flex !important; } + +@media screen and (max-width: 768px) { + .is-inline-flex-mobile { + display: inline-flex !important; } } + +@media screen and (min-width: 769px), print { + .is-inline-flex-tablet { + display: inline-flex !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-inline-flex-tablet-only { + display: inline-flex !important; } } + +@media screen and (max-width: 1055px) { + .is-inline-flex-touch { + display: inline-flex !important; } } + +@media screen and (min-width: 1056px) { + .is-inline-flex-desktop { + display: inline-flex !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-inline-flex-desktop-only { + display: inline-flex !important; } } + +@media screen and (min-width: 1216px) { + .is-inline-flex-widescreen { + display: inline-flex !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-inline-flex-widescreen-only { + display: inline-flex !important; } } + +@media screen and (min-width: 1408px) { + .is-inline-flex-fullhd { + display: inline-flex !important; } } + +.is-hidden { + display: none !important; } + +.is-sr-only { + border: none !important; + clip: rect(0, 0, 0, 0) !important; + height: 0.01em !important; + overflow: hidden !important; + padding: 0 !important; + position: absolute !important; + white-space: nowrap !important; + width: 0.01em !important; } + +@media screen and (max-width: 768px) { + .is-hidden-mobile { + display: none !important; } } + +@media screen and (min-width: 769px), print { + .is-hidden-tablet { + display: none !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-hidden-tablet-only { + display: none !important; } } + +@media screen and (max-width: 1055px) { + .is-hidden-touch { + display: none !important; } } + +@media screen and (min-width: 1056px) { + .is-hidden-desktop { + display: none !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-hidden-desktop-only { + display: none !important; } } + +@media screen and (min-width: 1216px) { + .is-hidden-widescreen { + display: none !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-hidden-widescreen-only { + display: none !important; } } + +@media screen and (min-width: 1408px) { + .is-hidden-fullhd { + display: none !important; } } + +.is-invisible { + visibility: hidden !important; } + +@media screen and (max-width: 768px) { + .is-invisible-mobile { + visibility: hidden !important; } } + +@media screen and (min-width: 769px), print { + .is-invisible-tablet { + visibility: hidden !important; } } + +@media screen and (min-width: 769px) and (max-width: 1055px) { + .is-invisible-tablet-only { + visibility: hidden !important; } } + +@media screen and (max-width: 1055px) { + .is-invisible-touch { + visibility: hidden !important; } } + +@media screen and (min-width: 1056px) { + .is-invisible-desktop { + visibility: hidden !important; } } + +@media screen and (min-width: 1056px) and (max-width: 1215px) { + .is-invisible-desktop-only { + visibility: hidden !important; } } + +@media screen and (min-width: 1216px) { + .is-invisible-widescreen { + visibility: hidden !important; } } + +@media screen and (min-width: 1216px) and (max-width: 1407px) { + .is-invisible-widescreen-only { + visibility: hidden !important; } } + +@media screen and (min-width: 1408px) { + .is-invisible-fullhd { + visibility: hidden !important; } } + +.is-marginless { + margin: 0 !important; } + +.is-paddingless { + padding: 0 !important; } + +.is-radiusless { + border-radius: 0 !important; } + +.is-shadowless { + box-shadow: none !important; } + +.is-relative { + position: relative !important; } + +.box { + background-color: white; + border-radius: 6px; + box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); + color: #222222; + display: block; + padding: 1.25rem; } + +a.box:hover, a.box:focus { + box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px #2e63b8; } + +a.box:active { + box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2), 0 0 0 1px #2e63b8; } + +.button { + background-color: white; + border-color: #dbdbdb; + border-width: 1px; + color: #363636; + cursor: pointer; + justify-content: center; + padding-bottom: calc(0.375em - 1px); + padding-left: 0.75em; + padding-right: 0.75em; + padding-top: calc(0.375em - 1px); + text-align: center; + white-space: nowrap; } + .button strong { + color: inherit; } + .button .icon, .button .icon.is-small, .button #documenter .docs-sidebar form.docs-search > input.icon, #documenter .docs-sidebar .button form.docs-search > input.icon, .button .icon.is-medium, .button .icon.is-large { + height: 1.5em; + width: 1.5em; } + .button .icon:first-child:not(:last-child) { + margin-left: calc(-0.375em - 1px); + margin-right: 0.1875em; } + .button .icon:last-child:not(:first-child) { + margin-left: 0.1875em; + margin-right: calc(-0.375em - 1px); } + .button .icon:first-child:last-child { + margin-left: calc(-0.375em - 1px); + margin-right: calc(-0.375em - 1px); } + .button:hover, .button.is-hovered { + border-color: #b5b5b5; + color: #363636; } + .button:focus, .button.is-focused { + border-color: #3c5dcd; + color: #363636; } + .button:focus:not(:active), .button.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(46, 99, 184, 0.25); } + .button:active, .button.is-active { + border-color: #4a4a4a; + color: #363636; } + .button.is-text { + background-color: transparent; + border-color: transparent; + color: #222222; + text-decoration: underline; } + .button.is-text:hover, .button.is-text.is-hovered, .button.is-text:focus, .button.is-text.is-focused { + background-color: whitesmoke; + color: #222222; } + .button.is-text:active, .button.is-text.is-active { + background-color: #e8e8e8; + color: #222222; } + .button.is-text[disabled], fieldset[disabled] .button.is-text { + background-color: transparent; + border-color: transparent; + box-shadow: none; } + .button.is-white { + background-color: white; + border-color: transparent; + color: #0a0a0a; } + .button.is-white:hover, .button.is-white.is-hovered { + background-color: #f9f9f9; + border-color: transparent; + color: #0a0a0a; } + .button.is-white:focus, .button.is-white.is-focused { + border-color: transparent; + color: #0a0a0a; } + .button.is-white:focus:not(:active), .button.is-white.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); } + .button.is-white:active, .button.is-white.is-active { + background-color: #f2f2f2; + border-color: transparent; + color: #0a0a0a; } + .button.is-white[disabled], fieldset[disabled] .button.is-white { + background-color: white; + border-color: transparent; + box-shadow: none; } + .button.is-white.is-inverted { + background-color: #0a0a0a; + color: white; } + .button.is-white.is-inverted:hover, .button.is-white.is-inverted.is-hovered { + background-color: black; } + .button.is-white.is-inverted[disabled], fieldset[disabled] .button.is-white.is-inverted { + background-color: #0a0a0a; + border-color: transparent; + box-shadow: none; + color: white; } + .button.is-white.is-loading::after { + border-color: transparent transparent #0a0a0a #0a0a0a !important; } + .button.is-white.is-outlined { + background-color: transparent; + border-color: white; + color: white; } + .button.is-white.is-outlined:hover, .button.is-white.is-outlined.is-hovered, .button.is-white.is-outlined:focus, .button.is-white.is-outlined.is-focused { + background-color: white; + border-color: white; + color: #0a0a0a; } + .button.is-white.is-outlined.is-loading::after { + border-color: transparent transparent white white !important; } + .button.is-white.is-outlined.is-loading:hover::after, .button.is-white.is-outlined.is-loading.is-hovered::after, .button.is-white.is-outlined.is-loading:focus::after, .button.is-white.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #0a0a0a #0a0a0a !important; } + .button.is-white.is-outlined[disabled], fieldset[disabled] .button.is-white.is-outlined { + background-color: transparent; + border-color: white; + box-shadow: none; + color: white; } + .button.is-white.is-inverted.is-outlined { + background-color: transparent; + border-color: #0a0a0a; + color: #0a0a0a; } + .button.is-white.is-inverted.is-outlined:hover, .button.is-white.is-inverted.is-outlined.is-hovered, .button.is-white.is-inverted.is-outlined:focus, .button.is-white.is-inverted.is-outlined.is-focused { + background-color: #0a0a0a; + color: white; } + .button.is-white.is-inverted.is-outlined.is-loading:hover::after, .button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-white.is-inverted.is-outlined.is-loading:focus::after, .button.is-white.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent white white !important; } + .button.is-white.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-white.is-inverted.is-outlined { + background-color: transparent; + border-color: #0a0a0a; + box-shadow: none; + color: #0a0a0a; } + .button.is-black { + background-color: #0a0a0a; + border-color: transparent; + color: white; } + .button.is-black:hover, .button.is-black.is-hovered { + background-color: #040404; + border-color: transparent; + color: white; } + .button.is-black:focus, .button.is-black.is-focused { + border-color: transparent; + color: white; } + .button.is-black:focus:not(:active), .button.is-black.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); } + .button.is-black:active, .button.is-black.is-active { + background-color: black; + border-color: transparent; + color: white; } + .button.is-black[disabled], fieldset[disabled] .button.is-black { + background-color: #0a0a0a; + border-color: transparent; + box-shadow: none; } + .button.is-black.is-inverted { + background-color: white; + color: #0a0a0a; } + .button.is-black.is-inverted:hover, .button.is-black.is-inverted.is-hovered { + background-color: #f2f2f2; } + .button.is-black.is-inverted[disabled], fieldset[disabled] .button.is-black.is-inverted { + background-color: white; + border-color: transparent; + box-shadow: none; + color: #0a0a0a; } + .button.is-black.is-loading::after { + border-color: transparent transparent white white !important; } + .button.is-black.is-outlined { + background-color: transparent; + border-color: #0a0a0a; + color: #0a0a0a; } + .button.is-black.is-outlined:hover, .button.is-black.is-outlined.is-hovered, .button.is-black.is-outlined:focus, .button.is-black.is-outlined.is-focused { + background-color: #0a0a0a; + border-color: #0a0a0a; + color: white; } + .button.is-black.is-outlined.is-loading::after { + border-color: transparent transparent #0a0a0a #0a0a0a !important; } + .button.is-black.is-outlined.is-loading:hover::after, .button.is-black.is-outlined.is-loading.is-hovered::after, .button.is-black.is-outlined.is-loading:focus::after, .button.is-black.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent white white !important; } + .button.is-black.is-outlined[disabled], fieldset[disabled] .button.is-black.is-outlined { + background-color: transparent; + border-color: #0a0a0a; + box-shadow: none; + color: #0a0a0a; } + .button.is-black.is-inverted.is-outlined { + background-color: transparent; + border-color: white; + color: white; } + .button.is-black.is-inverted.is-outlined:hover, .button.is-black.is-inverted.is-outlined.is-hovered, .button.is-black.is-inverted.is-outlined:focus, .button.is-black.is-inverted.is-outlined.is-focused { + background-color: white; + color: #0a0a0a; } + .button.is-black.is-inverted.is-outlined.is-loading:hover::after, .button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-black.is-inverted.is-outlined.is-loading:focus::after, .button.is-black.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #0a0a0a #0a0a0a !important; } + .button.is-black.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-black.is-inverted.is-outlined { + background-color: transparent; + border-color: white; + box-shadow: none; + color: white; } + .button.is-light { + background-color: whitesmoke; + border-color: transparent; + color: #363636; } + .button.is-light:hover, .button.is-light.is-hovered { + background-color: #eeeeee; + border-color: transparent; + color: #363636; } + .button.is-light:focus, .button.is-light.is-focused { + border-color: transparent; + color: #363636; } + .button.is-light:focus:not(:active), .button.is-light.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); } + .button.is-light:active, .button.is-light.is-active { + background-color: #e8e8e8; + border-color: transparent; + color: #363636; } + .button.is-light[disabled], fieldset[disabled] .button.is-light { + background-color: whitesmoke; + border-color: transparent; + box-shadow: none; } + .button.is-light.is-inverted { + background-color: #363636; + color: whitesmoke; } + .button.is-light.is-inverted:hover, .button.is-light.is-inverted.is-hovered { + background-color: #292929; } + .button.is-light.is-inverted[disabled], fieldset[disabled] .button.is-light.is-inverted { + background-color: #363636; + border-color: transparent; + box-shadow: none; + color: whitesmoke; } + .button.is-light.is-loading::after { + border-color: transparent transparent #363636 #363636 !important; } + .button.is-light.is-outlined { + background-color: transparent; + border-color: whitesmoke; + color: whitesmoke; } + .button.is-light.is-outlined:hover, .button.is-light.is-outlined.is-hovered, .button.is-light.is-outlined:focus, .button.is-light.is-outlined.is-focused { + background-color: whitesmoke; + border-color: whitesmoke; + color: #363636; } + .button.is-light.is-outlined.is-loading::after { + border-color: transparent transparent whitesmoke whitesmoke !important; } + .button.is-light.is-outlined.is-loading:hover::after, .button.is-light.is-outlined.is-loading.is-hovered::after, .button.is-light.is-outlined.is-loading:focus::after, .button.is-light.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #363636 #363636 !important; } + .button.is-light.is-outlined[disabled], fieldset[disabled] .button.is-light.is-outlined { + background-color: transparent; + border-color: whitesmoke; + box-shadow: none; + color: whitesmoke; } + .button.is-light.is-inverted.is-outlined { + background-color: transparent; + border-color: #363636; + color: #363636; } + .button.is-light.is-inverted.is-outlined:hover, .button.is-light.is-inverted.is-outlined.is-hovered, .button.is-light.is-inverted.is-outlined:focus, .button.is-light.is-inverted.is-outlined.is-focused { + background-color: #363636; + color: whitesmoke; } + .button.is-light.is-inverted.is-outlined.is-loading:hover::after, .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-light.is-inverted.is-outlined.is-loading:focus::after, .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent whitesmoke whitesmoke !important; } + .button.is-light.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-light.is-inverted.is-outlined { + background-color: transparent; + border-color: #363636; + box-shadow: none; + color: #363636; } + .button.is-dark, .content kbd.button { + background-color: #363636; + border-color: transparent; + color: whitesmoke; } + .button.is-dark:hover, .content kbd.button:hover, .button.is-dark.is-hovered, .content kbd.button.is-hovered { + background-color: #2f2f2f; + border-color: transparent; + color: whitesmoke; } + .button.is-dark:focus, .content kbd.button:focus, .button.is-dark.is-focused, .content kbd.button.is-focused { + border-color: transparent; + color: whitesmoke; } + .button.is-dark:focus:not(:active), .content kbd.button:focus:not(:active), .button.is-dark.is-focused:not(:active), .content kbd.button.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); } + .button.is-dark:active, .content kbd.button:active, .button.is-dark.is-active, .content kbd.button.is-active { + background-color: #292929; + border-color: transparent; + color: whitesmoke; } + .button.is-dark[disabled], .content kbd.button[disabled], fieldset[disabled] .button.is-dark, fieldset[disabled] .content kbd.button, .content fieldset[disabled] kbd.button { + background-color: #363636; + border-color: transparent; + box-shadow: none; } + .button.is-dark.is-inverted, .content kbd.button.is-inverted { + background-color: whitesmoke; + color: #363636; } + .button.is-dark.is-inverted:hover, .content kbd.button.is-inverted:hover, .button.is-dark.is-inverted.is-hovered, .content kbd.button.is-inverted.is-hovered { + background-color: #e8e8e8; } + .button.is-dark.is-inverted[disabled], .content kbd.button.is-inverted[disabled], fieldset[disabled] .button.is-dark.is-inverted, fieldset[disabled] .content kbd.button.is-inverted, .content fieldset[disabled] kbd.button.is-inverted { + background-color: whitesmoke; + border-color: transparent; + box-shadow: none; + color: #363636; } + .button.is-dark.is-loading::after, .content kbd.button.is-loading::after { + border-color: transparent transparent whitesmoke whitesmoke !important; } + .button.is-dark.is-outlined, .content kbd.button.is-outlined { + background-color: transparent; + border-color: #363636; + color: #363636; } + .button.is-dark.is-outlined:hover, .content kbd.button.is-outlined:hover, .button.is-dark.is-outlined.is-hovered, .content kbd.button.is-outlined.is-hovered, .button.is-dark.is-outlined:focus, .content kbd.button.is-outlined:focus, .button.is-dark.is-outlined.is-focused, .content kbd.button.is-outlined.is-focused { + background-color: #363636; + border-color: #363636; + color: whitesmoke; } + .button.is-dark.is-outlined.is-loading::after, .content kbd.button.is-outlined.is-loading::after { + border-color: transparent transparent #363636 #363636 !important; } + .button.is-dark.is-outlined.is-loading:hover::after, .content kbd.button.is-outlined.is-loading:hover::after, .button.is-dark.is-outlined.is-loading.is-hovered::after, .content kbd.button.is-outlined.is-loading.is-hovered::after, .button.is-dark.is-outlined.is-loading:focus::after, .content kbd.button.is-outlined.is-loading:focus::after, .button.is-dark.is-outlined.is-loading.is-focused::after, .content kbd.button.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent whitesmoke whitesmoke !important; } + .button.is-dark.is-outlined[disabled], .content kbd.button.is-outlined[disabled], fieldset[disabled] .button.is-dark.is-outlined, fieldset[disabled] .content kbd.button.is-outlined, .content fieldset[disabled] kbd.button.is-outlined { + background-color: transparent; + border-color: #363636; + box-shadow: none; + color: #363636; } + .button.is-dark.is-inverted.is-outlined, .content kbd.button.is-inverted.is-outlined { + background-color: transparent; + border-color: whitesmoke; + color: whitesmoke; } + .button.is-dark.is-inverted.is-outlined:hover, .content kbd.button.is-inverted.is-outlined:hover, .button.is-dark.is-inverted.is-outlined.is-hovered, .content kbd.button.is-inverted.is-outlined.is-hovered, .button.is-dark.is-inverted.is-outlined:focus, .content kbd.button.is-inverted.is-outlined:focus, .button.is-dark.is-inverted.is-outlined.is-focused, .content kbd.button.is-inverted.is-outlined.is-focused { + background-color: whitesmoke; + color: #363636; } + .button.is-dark.is-inverted.is-outlined.is-loading:hover::after, .content kbd.button.is-inverted.is-outlined.is-loading:hover::after, .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after, .content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-dark.is-inverted.is-outlined.is-loading:focus::after, .content kbd.button.is-inverted.is-outlined.is-loading:focus::after, .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after, .content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #363636 #363636 !important; } + .button.is-dark.is-inverted.is-outlined[disabled], .content kbd.button.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-dark.is-inverted.is-outlined, fieldset[disabled] .content kbd.button.is-inverted.is-outlined, .content fieldset[disabled] kbd.button.is-inverted.is-outlined { + background-color: transparent; + border-color: whitesmoke; + box-shadow: none; + color: whitesmoke; } + .button.is-primary, .docstring > section > a.button.docs-sourcelink { + background-color: #4eb5de; + border-color: transparent; + color: #fff; } + .button.is-primary:hover, .docstring > section > a.button.docs-sourcelink:hover, .button.is-primary.is-hovered, .docstring > section > a.button.is-hovered.docs-sourcelink { + background-color: #43b1dc; + border-color: transparent; + color: #fff; } + .button.is-primary:focus, .docstring > section > a.button.docs-sourcelink:focus, .button.is-primary.is-focused, .docstring > section > a.button.is-focused.docs-sourcelink { + border-color: transparent; + color: #fff; } + .button.is-primary:focus:not(:active), .docstring > section > a.button.docs-sourcelink:focus:not(:active), .button.is-primary.is-focused:not(:active), .docstring > section > a.button.is-focused.docs-sourcelink:not(:active) { + box-shadow: 0 0 0 0.125em rgba(78, 181, 222, 0.25); } + .button.is-primary:active, .docstring > section > a.button.docs-sourcelink:active, .button.is-primary.is-active, .docstring > section > a.button.is-active.docs-sourcelink { + background-color: #39acda; + border-color: transparent; + color: #fff; } + .button.is-primary[disabled], .docstring > section > a.button.docs-sourcelink[disabled], fieldset[disabled] .button.is-primary, fieldset[disabled] .docstring > section > a.button.docs-sourcelink { + background-color: #4eb5de; + border-color: transparent; + box-shadow: none; } + .button.is-primary.is-inverted, .docstring > section > a.button.is-inverted.docs-sourcelink { + background-color: #fff; + color: #4eb5de; } + .button.is-primary.is-inverted:hover, .docstring > section > a.button.is-inverted.docs-sourcelink:hover, .button.is-primary.is-inverted.is-hovered, .docstring > section > a.button.is-inverted.is-hovered.docs-sourcelink { + background-color: #f2f2f2; } + .button.is-primary.is-inverted[disabled], .docstring > section > a.button.is-inverted.docs-sourcelink[disabled], fieldset[disabled] .button.is-primary.is-inverted, fieldset[disabled] .docstring > section > a.button.is-inverted.docs-sourcelink { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #4eb5de; } + .button.is-primary.is-loading::after, .docstring > section > a.button.is-loading.docs-sourcelink::after { + border-color: transparent transparent #fff #fff !important; } + .button.is-primary.is-outlined, .docstring > section > a.button.is-outlined.docs-sourcelink { + background-color: transparent; + border-color: #4eb5de; + color: #4eb5de; } + .button.is-primary.is-outlined:hover, .docstring > section > a.button.is-outlined.docs-sourcelink:hover, .button.is-primary.is-outlined.is-hovered, .docstring > section > a.button.is-outlined.is-hovered.docs-sourcelink, .button.is-primary.is-outlined:focus, .docstring > section > a.button.is-outlined.docs-sourcelink:focus, .button.is-primary.is-outlined.is-focused, .docstring > section > a.button.is-outlined.is-focused.docs-sourcelink { + background-color: #4eb5de; + border-color: #4eb5de; + color: #fff; } + .button.is-primary.is-outlined.is-loading::after, .docstring > section > a.button.is-outlined.is-loading.docs-sourcelink::after { + border-color: transparent transparent #4eb5de #4eb5de !important; } + .button.is-primary.is-outlined.is-loading:hover::after, .docstring > section > a.button.is-outlined.is-loading.docs-sourcelink:hover::after, .button.is-primary.is-outlined.is-loading.is-hovered::after, .docstring > section > a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after, .button.is-primary.is-outlined.is-loading:focus::after, .docstring > section > a.button.is-outlined.is-loading.docs-sourcelink:focus::after, .button.is-primary.is-outlined.is-loading.is-focused::after, .docstring > section > a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after { + border-color: transparent transparent #fff #fff !important; } + .button.is-primary.is-outlined[disabled], .docstring > section > a.button.is-outlined.docs-sourcelink[disabled], fieldset[disabled] .button.is-primary.is-outlined, fieldset[disabled] .docstring > section > a.button.is-outlined.docs-sourcelink { + background-color: transparent; + border-color: #4eb5de; + box-shadow: none; + color: #4eb5de; } + .button.is-primary.is-inverted.is-outlined, .docstring > section > a.button.is-inverted.is-outlined.docs-sourcelink { + background-color: transparent; + border-color: #fff; + color: #fff; } + .button.is-primary.is-inverted.is-outlined:hover, .docstring > section > a.button.is-inverted.is-outlined.docs-sourcelink:hover, .button.is-primary.is-inverted.is-outlined.is-hovered, .docstring > section > a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink, .button.is-primary.is-inverted.is-outlined:focus, .docstring > section > a.button.is-inverted.is-outlined.docs-sourcelink:focus, .button.is-primary.is-inverted.is-outlined.is-focused, .docstring > section > a.button.is-inverted.is-outlined.is-focused.docs-sourcelink { + background-color: #fff; + color: #4eb5de; } + .button.is-primary.is-inverted.is-outlined.is-loading:hover::after, .docstring > section > a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after, .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after, .docstring > section > a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after, .button.is-primary.is-inverted.is-outlined.is-loading:focus::after, .docstring > section > a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after, .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after, .docstring > section > a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after { + border-color: transparent transparent #4eb5de #4eb5de !important; } + .button.is-primary.is-inverted.is-outlined[disabled], .docstring > section > a.button.is-inverted.is-outlined.docs-sourcelink[disabled], fieldset[disabled] .button.is-primary.is-inverted.is-outlined, fieldset[disabled] .docstring > section > a.button.is-inverted.is-outlined.docs-sourcelink { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + .button.is-link { + background-color: #2e63b8; + border-color: transparent; + color: #fff; } + .button.is-link:hover, .button.is-link.is-hovered { + background-color: #2b5eae; + border-color: transparent; + color: #fff; } + .button.is-link:focus, .button.is-link.is-focused { + border-color: transparent; + color: #fff; } + .button.is-link:focus:not(:active), .button.is-link.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(46, 99, 184, 0.25); } + .button.is-link:active, .button.is-link.is-active { + background-color: #2958a4; + border-color: transparent; + color: #fff; } + .button.is-link[disabled], fieldset[disabled] .button.is-link { + background-color: #2e63b8; + border-color: transparent; + box-shadow: none; } + .button.is-link.is-inverted { + background-color: #fff; + color: #2e63b8; } + .button.is-link.is-inverted:hover, .button.is-link.is-inverted.is-hovered { + background-color: #f2f2f2; } + .button.is-link.is-inverted[disabled], fieldset[disabled] .button.is-link.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #2e63b8; } + .button.is-link.is-loading::after { + border-color: transparent transparent #fff #fff !important; } + .button.is-link.is-outlined { + background-color: transparent; + border-color: #2e63b8; + color: #2e63b8; } + .button.is-link.is-outlined:hover, .button.is-link.is-outlined.is-hovered, .button.is-link.is-outlined:focus, .button.is-link.is-outlined.is-focused { + background-color: #2e63b8; + border-color: #2e63b8; + color: #fff; } + .button.is-link.is-outlined.is-loading::after { + border-color: transparent transparent #2e63b8 #2e63b8 !important; } + .button.is-link.is-outlined.is-loading:hover::after, .button.is-link.is-outlined.is-loading.is-hovered::after, .button.is-link.is-outlined.is-loading:focus::after, .button.is-link.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; } + .button.is-link.is-outlined[disabled], fieldset[disabled] .button.is-link.is-outlined { + background-color: transparent; + border-color: #2e63b8; + box-shadow: none; + color: #2e63b8; } + .button.is-link.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; } + .button.is-link.is-inverted.is-outlined:hover, .button.is-link.is-inverted.is-outlined.is-hovered, .button.is-link.is-inverted.is-outlined:focus, .button.is-link.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: #2e63b8; } + .button.is-link.is-inverted.is-outlined.is-loading:hover::after, .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-link.is-inverted.is-outlined.is-loading:focus::after, .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #2e63b8 #2e63b8 !important; } + .button.is-link.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-link.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + .button.is-info { + background-color: #209cee; + border-color: transparent; + color: #fff; } + .button.is-info:hover, .button.is-info.is-hovered { + background-color: #1497ed; + border-color: transparent; + color: #fff; } + .button.is-info:focus, .button.is-info.is-focused { + border-color: transparent; + color: #fff; } + .button.is-info:focus:not(:active), .button.is-info.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(32, 156, 238, 0.25); } + .button.is-info:active, .button.is-info.is-active { + background-color: #1190e3; + border-color: transparent; + color: #fff; } + .button.is-info[disabled], fieldset[disabled] .button.is-info { + background-color: #209cee; + border-color: transparent; + box-shadow: none; } + .button.is-info.is-inverted { + background-color: #fff; + color: #209cee; } + .button.is-info.is-inverted:hover, .button.is-info.is-inverted.is-hovered { + background-color: #f2f2f2; } + .button.is-info.is-inverted[disabled], fieldset[disabled] .button.is-info.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #209cee; } + .button.is-info.is-loading::after { + border-color: transparent transparent #fff #fff !important; } + .button.is-info.is-outlined { + background-color: transparent; + border-color: #209cee; + color: #209cee; } + .button.is-info.is-outlined:hover, .button.is-info.is-outlined.is-hovered, .button.is-info.is-outlined:focus, .button.is-info.is-outlined.is-focused { + background-color: #209cee; + border-color: #209cee; + color: #fff; } + .button.is-info.is-outlined.is-loading::after { + border-color: transparent transparent #209cee #209cee !important; } + .button.is-info.is-outlined.is-loading:hover::after, .button.is-info.is-outlined.is-loading.is-hovered::after, .button.is-info.is-outlined.is-loading:focus::after, .button.is-info.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; } + .button.is-info.is-outlined[disabled], fieldset[disabled] .button.is-info.is-outlined { + background-color: transparent; + border-color: #209cee; + box-shadow: none; + color: #209cee; } + .button.is-info.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; } + .button.is-info.is-inverted.is-outlined:hover, .button.is-info.is-inverted.is-outlined.is-hovered, .button.is-info.is-inverted.is-outlined:focus, .button.is-info.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: #209cee; } + .button.is-info.is-inverted.is-outlined.is-loading:hover::after, .button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-info.is-inverted.is-outlined.is-loading:focus::after, .button.is-info.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #209cee #209cee !important; } + .button.is-info.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-info.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + .button.is-success { + background-color: #22c35b; + border-color: transparent; + color: #fff; } + .button.is-success:hover, .button.is-success.is-hovered { + background-color: #20b856; + border-color: transparent; + color: #fff; } + .button.is-success:focus, .button.is-success.is-focused { + border-color: transparent; + color: #fff; } + .button.is-success:focus:not(:active), .button.is-success.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(34, 195, 91, 0.25); } + .button.is-success:active, .button.is-success.is-active { + background-color: #1ead51; + border-color: transparent; + color: #fff; } + .button.is-success[disabled], fieldset[disabled] .button.is-success { + background-color: #22c35b; + border-color: transparent; + box-shadow: none; } + .button.is-success.is-inverted { + background-color: #fff; + color: #22c35b; } + .button.is-success.is-inverted:hover, .button.is-success.is-inverted.is-hovered { + background-color: #f2f2f2; } + .button.is-success.is-inverted[disabled], fieldset[disabled] .button.is-success.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #22c35b; } + .button.is-success.is-loading::after { + border-color: transparent transparent #fff #fff !important; } + .button.is-success.is-outlined { + background-color: transparent; + border-color: #22c35b; + color: #22c35b; } + .button.is-success.is-outlined:hover, .button.is-success.is-outlined.is-hovered, .button.is-success.is-outlined:focus, .button.is-success.is-outlined.is-focused { + background-color: #22c35b; + border-color: #22c35b; + color: #fff; } + .button.is-success.is-outlined.is-loading::after { + border-color: transparent transparent #22c35b #22c35b !important; } + .button.is-success.is-outlined.is-loading:hover::after, .button.is-success.is-outlined.is-loading.is-hovered::after, .button.is-success.is-outlined.is-loading:focus::after, .button.is-success.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; } + .button.is-success.is-outlined[disabled], fieldset[disabled] .button.is-success.is-outlined { + background-color: transparent; + border-color: #22c35b; + box-shadow: none; + color: #22c35b; } + .button.is-success.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; } + .button.is-success.is-inverted.is-outlined:hover, .button.is-success.is-inverted.is-outlined.is-hovered, .button.is-success.is-inverted.is-outlined:focus, .button.is-success.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: #22c35b; } + .button.is-success.is-inverted.is-outlined.is-loading:hover::after, .button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-success.is-inverted.is-outlined.is-loading:focus::after, .button.is-success.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #22c35b #22c35b !important; } + .button.is-success.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-success.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + .button.is-warning { + background-color: #ffdd57; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); } + .button.is-warning:hover, .button.is-warning.is-hovered { + background-color: #ffda4a; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); } + .button.is-warning:focus, .button.is-warning.is-focused { + border-color: transparent; + color: rgba(0, 0, 0, 0.7); } + .button.is-warning:focus:not(:active), .button.is-warning.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(255, 221, 87, 0.25); } + .button.is-warning:active, .button.is-warning.is-active { + background-color: #ffd83e; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); } + .button.is-warning[disabled], fieldset[disabled] .button.is-warning { + background-color: #ffdd57; + border-color: transparent; + box-shadow: none; } + .button.is-warning.is-inverted { + background-color: rgba(0, 0, 0, 0.7); + color: #ffdd57; } + .button.is-warning.is-inverted:hover, .button.is-warning.is-inverted.is-hovered { + background-color: rgba(0, 0, 0, 0.7); } + .button.is-warning.is-inverted[disabled], fieldset[disabled] .button.is-warning.is-inverted { + background-color: rgba(0, 0, 0, 0.7); + border-color: transparent; + box-shadow: none; + color: #ffdd57; } + .button.is-warning.is-loading::after { + border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; } + .button.is-warning.is-outlined { + background-color: transparent; + border-color: #ffdd57; + color: #ffdd57; } + .button.is-warning.is-outlined:hover, .button.is-warning.is-outlined.is-hovered, .button.is-warning.is-outlined:focus, .button.is-warning.is-outlined.is-focused { + background-color: #ffdd57; + border-color: #ffdd57; + color: rgba(0, 0, 0, 0.7); } + .button.is-warning.is-outlined.is-loading::after { + border-color: transparent transparent #ffdd57 #ffdd57 !important; } + .button.is-warning.is-outlined.is-loading:hover::after, .button.is-warning.is-outlined.is-loading.is-hovered::after, .button.is-warning.is-outlined.is-loading:focus::after, .button.is-warning.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; } + .button.is-warning.is-outlined[disabled], fieldset[disabled] .button.is-warning.is-outlined { + background-color: transparent; + border-color: #ffdd57; + box-shadow: none; + color: #ffdd57; } + .button.is-warning.is-inverted.is-outlined { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.7); + color: rgba(0, 0, 0, 0.7); } + .button.is-warning.is-inverted.is-outlined:hover, .button.is-warning.is-inverted.is-outlined.is-hovered, .button.is-warning.is-inverted.is-outlined:focus, .button.is-warning.is-inverted.is-outlined.is-focused { + background-color: rgba(0, 0, 0, 0.7); + color: #ffdd57; } + .button.is-warning.is-inverted.is-outlined.is-loading:hover::after, .button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-warning.is-inverted.is-outlined.is-loading:focus::after, .button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #ffdd57 #ffdd57 !important; } + .button.is-warning.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-warning.is-inverted.is-outlined { + background-color: transparent; + border-color: rgba(0, 0, 0, 0.7); + box-shadow: none; + color: rgba(0, 0, 0, 0.7); } + .button.is-danger { + background-color: #da0b00; + border-color: transparent; + color: #fff; } + .button.is-danger:hover, .button.is-danger.is-hovered { + background-color: #cd0a00; + border-color: transparent; + color: #fff; } + .button.is-danger:focus, .button.is-danger.is-focused { + border-color: transparent; + color: #fff; } + .button.is-danger:focus:not(:active), .button.is-danger.is-focused:not(:active) { + box-shadow: 0 0 0 0.125em rgba(218, 11, 0, 0.25); } + .button.is-danger:active, .button.is-danger.is-active { + background-color: #c10a00; + border-color: transparent; + color: #fff; } + .button.is-danger[disabled], fieldset[disabled] .button.is-danger { + background-color: #da0b00; + border-color: transparent; + box-shadow: none; } + .button.is-danger.is-inverted { + background-color: #fff; + color: #da0b00; } + .button.is-danger.is-inverted:hover, .button.is-danger.is-inverted.is-hovered { + background-color: #f2f2f2; } + .button.is-danger.is-inverted[disabled], fieldset[disabled] .button.is-danger.is-inverted { + background-color: #fff; + border-color: transparent; + box-shadow: none; + color: #da0b00; } + .button.is-danger.is-loading::after { + border-color: transparent transparent #fff #fff !important; } + .button.is-danger.is-outlined { + background-color: transparent; + border-color: #da0b00; + color: #da0b00; } + .button.is-danger.is-outlined:hover, .button.is-danger.is-outlined.is-hovered, .button.is-danger.is-outlined:focus, .button.is-danger.is-outlined.is-focused { + background-color: #da0b00; + border-color: #da0b00; + color: #fff; } + .button.is-danger.is-outlined.is-loading::after { + border-color: transparent transparent #da0b00 #da0b00 !important; } + .button.is-danger.is-outlined.is-loading:hover::after, .button.is-danger.is-outlined.is-loading.is-hovered::after, .button.is-danger.is-outlined.is-loading:focus::after, .button.is-danger.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #fff #fff !important; } + .button.is-danger.is-outlined[disabled], fieldset[disabled] .button.is-danger.is-outlined { + background-color: transparent; + border-color: #da0b00; + box-shadow: none; + color: #da0b00; } + .button.is-danger.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + color: #fff; } + .button.is-danger.is-inverted.is-outlined:hover, .button.is-danger.is-inverted.is-outlined.is-hovered, .button.is-danger.is-inverted.is-outlined:focus, .button.is-danger.is-inverted.is-outlined.is-focused { + background-color: #fff; + color: #da0b00; } + .button.is-danger.is-inverted.is-outlined.is-loading:hover::after, .button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after, .button.is-danger.is-inverted.is-outlined.is-loading:focus::after, .button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after { + border-color: transparent transparent #da0b00 #da0b00 !important; } + .button.is-danger.is-inverted.is-outlined[disabled], fieldset[disabled] .button.is-danger.is-inverted.is-outlined { + background-color: transparent; + border-color: #fff; + box-shadow: none; + color: #fff; } + .button.is-small, #documenter .docs-sidebar form.docs-search > input.button { + border-radius: 2px; + font-size: 0.75rem; } + .button.is-normal { + font-size: 1rem; } + .button.is-medium { + font-size: 1.25rem; } + .button.is-large { + font-size: 1.5rem; } + .button[disabled], fieldset[disabled] .button { + background-color: white; + border-color: #dbdbdb; + box-shadow: none; + opacity: 0.5; } + .button.is-fullwidth { + display: flex; + width: 100%; } + .button.is-loading { + color: transparent !important; + pointer-events: none; } + .button.is-loading::after { + position: absolute; + left: calc(50% - (1em / 2)); + top: calc(50% - (1em / 2)); + position: absolute !important; } + .button.is-static { + background-color: whitesmoke; + border-color: #dbdbdb; + color: #6b6b6b; + box-shadow: none; + pointer-events: none; } + .button.is-rounded, #documenter .docs-sidebar form.docs-search > input.button { + border-radius: 290486px; + padding-left: 1em; + padding-right: 1em; } + +.buttons { + align-items: center; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; } + .buttons .button { + margin-bottom: 0.5rem; } + .buttons .button:not(:last-child):not(.is-fullwidth) { + margin-right: 0.5rem; } + .buttons:last-child { + margin-bottom: -0.5rem; } + .buttons:not(:last-child) { + margin-bottom: 1rem; } + .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large) { + border-radius: 2px; + font-size: 0.75rem; } + .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large) { + font-size: 1.25rem; } + .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium) { + font-size: 1.5rem; } + .buttons.has-addons .button:not(:first-child) { + border-bottom-left-radius: 0; + border-top-left-radius: 0; } + .buttons.has-addons .button:not(:last-child) { + border-bottom-right-radius: 0; + border-top-right-radius: 0; + margin-right: -1px; } + .buttons.has-addons .button:last-child { + margin-right: 0; } + .buttons.has-addons .button:hover, .buttons.has-addons .button.is-hovered { + z-index: 2; } + .buttons.has-addons .button:focus, .buttons.has-addons .button.is-focused, .buttons.has-addons .button:active, .buttons.has-addons .button.is-active, .buttons.has-addons .button.is-selected { + z-index: 3; } + .buttons.has-addons .button:focus:hover, .buttons.has-addons .button.is-focused:hover, .buttons.has-addons .button:active:hover, .buttons.has-addons .button.is-active:hover, .buttons.has-addons .button.is-selected:hover { + z-index: 4; } + .buttons.has-addons .button.is-expanded { + flex-grow: 1; + flex-shrink: 1; } + .buttons.is-centered { + justify-content: center; } + .buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth) { + margin-left: 0.25rem; + margin-right: 0.25rem; } + .buttons.is-right { + justify-content: flex-end; } + .buttons.is-right:not(.has-addons) .button:not(.is-fullwidth) { + margin-left: 0.25rem; + margin-right: 0.25rem; } + +.container { + flex-grow: 1; + margin: 0 auto; + position: relative; + width: auto; } + @media screen and (min-width: 1056px) { + .container { + max-width: 992px; } + .container.is-fluid { + margin-left: 32px; + margin-right: 32px; + max-width: none; } } + @media screen and (max-width: 1215px) { + .container.is-widescreen { + max-width: 1152px; } } + @media screen and (max-width: 1407px) { + .container.is-fullhd { + max-width: 1344px; } } + @media screen and (min-width: 1216px) { + .container { + max-width: 1152px; } } + @media screen and (min-width: 1408px) { + .container { + max-width: 1344px; } } +.content li + li { + margin-top: 0.25em; } + +.content p:not(:last-child), +.content dl:not(:last-child), +.content ol:not(:last-child), +.content ul:not(:last-child), +.content blockquote:not(:last-child), +.content pre:not(:last-child), +.content table:not(:last-child) { + margin-bottom: 1em; } + +.content h1, +.content h2, +.content h3, +.content h4, +.content h5, +.content h6 { + color: #222222; + font-weight: 600; + line-height: 1.125; } + +.content h1 { + font-size: 2em; + margin-bottom: 0.5em; } + .content h1:not(:first-child) { + margin-top: 1em; } + +.content h2 { + font-size: 1.75em; + margin-bottom: 0.5714em; } + .content h2:not(:first-child) { + margin-top: 1.1428em; } + +.content h3 { + font-size: 1.5em; + margin-bottom: 0.6666em; } + .content h3:not(:first-child) { + margin-top: 1.3333em; } + +.content h4 { + font-size: 1.25em; + margin-bottom: 0.8em; } + +.content h5 { + font-size: 1.125em; + margin-bottom: 0.8888em; } + +.content h6 { + font-size: 1em; + margin-bottom: 1em; } + +.content blockquote { + background-color: whitesmoke; + border-left: 5px solid #dbdbdb; + padding: 1.25em 1.5em; } + +.content ol { + list-style-position: outside; + margin-left: 2em; + margin-top: 1em; } + .content ol:not([type]) { + list-style-type: decimal; } + .content ol.is-lower-alpha:not([type]) { + list-style-type: lower-alpha; } + .content ol.is-lower-roman:not([type]) { + list-style-type: lower-roman; } + .content ol.is-upper-alpha:not([type]) { + list-style-type: upper-alpha; } + .content ol.is-upper-roman:not([type]) { + list-style-type: upper-roman; } + +.content ul { + list-style: disc outside; + margin-left: 2em; + margin-top: 1em; } + .content ul ul { + list-style-type: circle; + margin-top: 0.5em; } + .content ul ul ul { + list-style-type: square; } + +.content dd { + margin-left: 2em; } + +.content figure { + margin-left: 2em; + margin-right: 2em; + text-align: center; } + .content figure:not(:first-child) { + margin-top: 2em; } + .content figure:not(:last-child) { + margin-bottom: 2em; } + .content figure img { + display: inline-block; } + .content figure figcaption { + font-style: italic; } + +.content pre { + -webkit-overflow-scrolling: touch; + overflow-x: auto; + padding: 0; + white-space: pre; + word-wrap: normal; } + +.content sup, +.content sub { + font-size: 75%; } + +.content table { + width: 100%; } + .content table td, + .content table th { + border: 1px solid #dbdbdb; + border-width: 0 0 1px; + padding: 0.5em 0.75em; + vertical-align: top; } + .content table th { + color: #222222; } + .content table th:not([align]) { + text-align: left; } + .content table thead td, + .content table thead th { + border-width: 0 0 2px; + color: #222222; } + .content table tfoot td, + .content table tfoot th { + border-width: 2px 0 0; + color: #222222; } + .content table tbody tr:last-child td, + .content table tbody tr:last-child th { + border-bottom-width: 0; } + +.content .tabs li + li { + margin-top: 0; } + +.content.is-small, #documenter .docs-sidebar form.docs-search > input.content { + font-size: 0.75rem; } + +.content.is-medium { + font-size: 1.25rem; } + +.content.is-large { + font-size: 1.5rem; } + +.icon { + align-items: center; + display: inline-flex; + justify-content: center; + height: 1.5rem; + width: 1.5rem; } + .icon.is-small, #documenter .docs-sidebar form.docs-search > input.icon { + height: 1rem; + width: 1rem; } + .icon.is-medium { + height: 2rem; + width: 2rem; } + .icon.is-large { + height: 3rem; + width: 3rem; } + +.image, #documenter .docs-sidebar .docs-logo > img { + display: block; + position: relative; } + .image img, #documenter .docs-sidebar .docs-logo > img img { + display: block; + height: auto; + width: 100%; } + .image img.is-rounded, #documenter .docs-sidebar .docs-logo > img img.is-rounded { + border-radius: 290486px; } + .image.is-square img, #documenter .docs-sidebar .docs-logo > img.is-square img, + .image.is-square .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-square .has-ratio, .image.is-1by1 img, #documenter .docs-sidebar .docs-logo > img.is-1by1 img, + .image.is-1by1 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-1by1 .has-ratio, .image.is-5by4 img, #documenter .docs-sidebar .docs-logo > img.is-5by4 img, + .image.is-5by4 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-5by4 .has-ratio, .image.is-4by3 img, #documenter .docs-sidebar .docs-logo > img.is-4by3 img, + .image.is-4by3 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-4by3 .has-ratio, .image.is-3by2 img, #documenter .docs-sidebar .docs-logo > img.is-3by2 img, + .image.is-3by2 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-3by2 .has-ratio, .image.is-5by3 img, #documenter .docs-sidebar .docs-logo > img.is-5by3 img, + .image.is-5by3 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-5by3 .has-ratio, .image.is-16by9 img, #documenter .docs-sidebar .docs-logo > img.is-16by9 img, + .image.is-16by9 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-16by9 .has-ratio, .image.is-2by1 img, #documenter .docs-sidebar .docs-logo > img.is-2by1 img, + .image.is-2by1 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-2by1 .has-ratio, .image.is-3by1 img, #documenter .docs-sidebar .docs-logo > img.is-3by1 img, + .image.is-3by1 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-3by1 .has-ratio, .image.is-4by5 img, #documenter .docs-sidebar .docs-logo > img.is-4by5 img, + .image.is-4by5 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-4by5 .has-ratio, .image.is-3by4 img, #documenter .docs-sidebar .docs-logo > img.is-3by4 img, + .image.is-3by4 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-3by4 .has-ratio, .image.is-2by3 img, #documenter .docs-sidebar .docs-logo > img.is-2by3 img, + .image.is-2by3 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-2by3 .has-ratio, .image.is-3by5 img, #documenter .docs-sidebar .docs-logo > img.is-3by5 img, + .image.is-3by5 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-3by5 .has-ratio, .image.is-9by16 img, #documenter .docs-sidebar .docs-logo > img.is-9by16 img, + .image.is-9by16 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-9by16 .has-ratio, .image.is-1by2 img, #documenter .docs-sidebar .docs-logo > img.is-1by2 img, + .image.is-1by2 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-1by2 .has-ratio, .image.is-1by3 img, #documenter .docs-sidebar .docs-logo > img.is-1by3 img, + .image.is-1by3 .has-ratio, + #documenter .docs-sidebar .docs-logo > img.is-1by3 .has-ratio { + height: 100%; + width: 100%; } + .image.is-square, #documenter .docs-sidebar .docs-logo > img.is-square, .image.is-1by1, #documenter .docs-sidebar .docs-logo > img.is-1by1 { + padding-top: 100%; } + .image.is-5by4, #documenter .docs-sidebar .docs-logo > img.is-5by4 { + padding-top: 80%; } + .image.is-4by3, #documenter .docs-sidebar .docs-logo > img.is-4by3 { + padding-top: 75%; } + .image.is-3by2, #documenter .docs-sidebar .docs-logo > img.is-3by2 { + padding-top: 66.6666%; } + .image.is-5by3, #documenter .docs-sidebar .docs-logo > img.is-5by3 { + padding-top: 60%; } + .image.is-16by9, #documenter .docs-sidebar .docs-logo > img.is-16by9 { + padding-top: 56.25%; } + .image.is-2by1, #documenter .docs-sidebar .docs-logo > img.is-2by1 { + padding-top: 50%; } + .image.is-3by1, #documenter .docs-sidebar .docs-logo > img.is-3by1 { + padding-top: 33.3333%; } + .image.is-4by5, #documenter .docs-sidebar .docs-logo > img.is-4by5 { + padding-top: 125%; } + .image.is-3by4, #documenter .docs-sidebar .docs-logo > img.is-3by4 { + padding-top: 133.3333%; } + .image.is-2by3, #documenter .docs-sidebar .docs-logo > img.is-2by3 { + padding-top: 150%; } + .image.is-3by5, #documenter .docs-sidebar .docs-logo > img.is-3by5 { + padding-top: 166.6666%; } + .image.is-9by16, #documenter .docs-sidebar .docs-logo > img.is-9by16 { + padding-top: 177.7777%; } + .image.is-1by2, #documenter .docs-sidebar .docs-logo > img.is-1by2 { + padding-top: 200%; } + .image.is-1by3, #documenter .docs-sidebar .docs-logo > img.is-1by3 { + padding-top: 300%; } + .image.is-16x16, #documenter .docs-sidebar .docs-logo > img.is-16x16 { + height: 16px; + width: 16px; } + .image.is-24x24, #documenter .docs-sidebar .docs-logo > img.is-24x24 { + height: 24px; + width: 24px; } + .image.is-32x32, #documenter .docs-sidebar .docs-logo > img.is-32x32 { + height: 32px; + width: 32px; } + .image.is-48x48, #documenter .docs-sidebar .docs-logo > img.is-48x48 { + height: 48px; + width: 48px; } + .image.is-64x64, #documenter .docs-sidebar .docs-logo > img.is-64x64 { + height: 64px; + width: 64px; } + .image.is-96x96, #documenter .docs-sidebar .docs-logo > img.is-96x96 { + height: 96px; + width: 96px; } + .image.is-128x128, #documenter .docs-sidebar .docs-logo > img.is-128x128 { + height: 128px; + width: 128px; } + +.notification { + background-color: whitesmoke; + border-radius: 4px; + padding: 1.25rem 2.5rem 1.25rem 1.5rem; + position: relative; } + .notification a:not(.button):not(.dropdown-item) { + color: currentColor; + text-decoration: underline; } + .notification strong { + color: currentColor; } + .notification code, + .notification pre { + background: white; } + .notification pre code { + background: transparent; } + .notification > .delete { + position: absolute; + right: 0.5rem; + top: 0.5rem; } + .notification .title, + .notification .subtitle, + .notification .content { + color: currentColor; } + .notification.is-white { + background-color: white; + color: #0a0a0a; } + .notification.is-black { + background-color: #0a0a0a; + color: white; } + .notification.is-light { + background-color: whitesmoke; + color: #363636; } + .notification.is-dark, .content kbd.notification { + background-color: #363636; + color: whitesmoke; } + .notification.is-primary, .docstring > section > a.notification.docs-sourcelink { + background-color: #4eb5de; + color: #fff; } + .notification.is-link { + background-color: #2e63b8; + color: #fff; } + .notification.is-info { + background-color: #209cee; + color: #fff; } + .notification.is-success { + background-color: #22c35b; + color: #fff; } + .notification.is-warning { + background-color: #ffdd57; + color: rgba(0, 0, 0, 0.7); } + .notification.is-danger { + background-color: #da0b00; + color: #fff; } + +.progress { + -moz-appearance: none; + -webkit-appearance: none; + border: none; + border-radius: 290486px; + display: block; + height: 1rem; + overflow: hidden; + padding: 0; + width: 100%; } + .progress::-webkit-progress-bar { + background-color: #dbdbdb; } + .progress::-webkit-progress-value { + background-color: #222222; } + .progress::-moz-progress-bar { + background-color: #222222; } + .progress::-ms-fill { + background-color: #222222; + border: none; } + .progress.is-white::-webkit-progress-value { + background-color: white; } + .progress.is-white::-moz-progress-bar { + background-color: white; } + .progress.is-white::-ms-fill { + background-color: white; } + .progress.is-white:indeterminate { + background-image: linear-gradient(to right, white 30%, #dbdbdb 30%); } + .progress.is-black::-webkit-progress-value { + background-color: #0a0a0a; } + .progress.is-black::-moz-progress-bar { + background-color: #0a0a0a; } + .progress.is-black::-ms-fill { + background-color: #0a0a0a; } + .progress.is-black:indeterminate { + background-image: linear-gradient(to right, #0a0a0a 30%, #dbdbdb 30%); } + .progress.is-light::-webkit-progress-value { + background-color: whitesmoke; } + .progress.is-light::-moz-progress-bar { + background-color: whitesmoke; } + .progress.is-light::-ms-fill { + background-color: whitesmoke; } + .progress.is-light:indeterminate { + background-image: linear-gradient(to right, whitesmoke 30%, #dbdbdb 30%); } + .progress.is-dark::-webkit-progress-value, .content kbd.progress::-webkit-progress-value { + background-color: #363636; } + .progress.is-dark::-moz-progress-bar, .content kbd.progress::-moz-progress-bar { + background-color: #363636; } + .progress.is-dark::-ms-fill, .content kbd.progress::-ms-fill { + background-color: #363636; } + .progress.is-dark:indeterminate, .content kbd.progress:indeterminate { + background-image: linear-gradient(to right, #363636 30%, #dbdbdb 30%); } + .progress.is-primary::-webkit-progress-value, .docstring > section > a.progress.docs-sourcelink::-webkit-progress-value { + background-color: #4eb5de; } + .progress.is-primary::-moz-progress-bar, .docstring > section > a.progress.docs-sourcelink::-moz-progress-bar { + background-color: #4eb5de; } + .progress.is-primary::-ms-fill, .docstring > section > a.progress.docs-sourcelink::-ms-fill { + background-color: #4eb5de; } + .progress.is-primary:indeterminate, .docstring > section > a.progress.docs-sourcelink:indeterminate { + background-image: linear-gradient(to right, #4eb5de 30%, #dbdbdb 30%); } + .progress.is-link::-webkit-progress-value { + background-color: #2e63b8; } + .progress.is-link::-moz-progress-bar { + background-color: #2e63b8; } + .progress.is-link::-ms-fill { + background-color: #2e63b8; } + .progress.is-link:indeterminate { + background-image: linear-gradient(to right, #2e63b8 30%, #dbdbdb 30%); } + .progress.is-info::-webkit-progress-value { + background-color: #209cee; } + .progress.is-info::-moz-progress-bar { + background-color: #209cee; } + .progress.is-info::-ms-fill { + background-color: #209cee; } + .progress.is-info:indeterminate { + background-image: linear-gradient(to right, #209cee 30%, #dbdbdb 30%); } + .progress.is-success::-webkit-progress-value { + background-color: #22c35b; } + .progress.is-success::-moz-progress-bar { + background-color: #22c35b; } + .progress.is-success::-ms-fill { + background-color: #22c35b; } + .progress.is-success:indeterminate { + background-image: linear-gradient(to right, #22c35b 30%, #dbdbdb 30%); } + .progress.is-warning::-webkit-progress-value { + background-color: #ffdd57; } + .progress.is-warning::-moz-progress-bar { + background-color: #ffdd57; } + .progress.is-warning::-ms-fill { + background-color: #ffdd57; } + .progress.is-warning:indeterminate { + background-image: linear-gradient(to right, #ffdd57 30%, #dbdbdb 30%); } + .progress.is-danger::-webkit-progress-value { + background-color: #da0b00; } + .progress.is-danger::-moz-progress-bar { + background-color: #da0b00; } + .progress.is-danger::-ms-fill { + background-color: #da0b00; } + .progress.is-danger:indeterminate { + background-image: linear-gradient(to right, #da0b00 30%, #dbdbdb 30%); } + .progress:indeterminate { + animation-duration: 1.5s; + animation-iteration-count: infinite; + animation-name: moveIndeterminate; + animation-timing-function: linear; + background-color: #dbdbdb; + background-image: linear-gradient(to right, #222222 30%, #dbdbdb 30%); + background-position: top left; + background-repeat: no-repeat; + background-size: 150% 150%; } + .progress:indeterminate::-webkit-progress-bar { + background-color: transparent; } + .progress:indeterminate::-moz-progress-bar { + background-color: transparent; } + .progress.is-small, #documenter .docs-sidebar form.docs-search > input.progress { + height: 0.75rem; } + .progress.is-medium { + height: 1.25rem; } + .progress.is-large { + height: 1.5rem; } + +@keyframes moveIndeterminate { + from { + background-position: 200% 0; } + to { + background-position: -200% 0; } } + +.table { + background-color: white; + color: #363636; } + .table td, + .table th { + border: 1px solid #dbdbdb; + border-width: 0 0 1px; + padding: 0.5em 0.75em; + vertical-align: top; } + .table td.is-white, + .table th.is-white { + background-color: white; + border-color: white; + color: #0a0a0a; } + .table td.is-black, + .table th.is-black { + background-color: #0a0a0a; + border-color: #0a0a0a; + color: white; } + .table td.is-light, + .table th.is-light { + background-color: whitesmoke; + border-color: whitesmoke; + color: #363636; } + .table td.is-dark, + .table th.is-dark { + background-color: #363636; + border-color: #363636; + color: whitesmoke; } + .table td.is-primary, + .table th.is-primary { + background-color: #4eb5de; + border-color: #4eb5de; + color: #fff; } + .table td.is-link, + .table th.is-link { + background-color: #2e63b8; + border-color: #2e63b8; + color: #fff; } + .table td.is-info, + .table th.is-info { + background-color: #209cee; + border-color: #209cee; + color: #fff; } + .table td.is-success, + .table th.is-success { + background-color: #22c35b; + border-color: #22c35b; + color: #fff; } + .table td.is-warning, + .table th.is-warning { + background-color: #ffdd57; + border-color: #ffdd57; + color: rgba(0, 0, 0, 0.7); } + .table td.is-danger, + .table th.is-danger { + background-color: #da0b00; + border-color: #da0b00; + color: #fff; } + .table td.is-narrow, + .table th.is-narrow { + white-space: nowrap; + width: 1%; } + .table td.is-selected, + .table th.is-selected { + background-color: #4eb5de; + color: #fff; } + .table td.is-selected a, + .table td.is-selected strong, + .table th.is-selected a, + .table th.is-selected strong { + color: currentColor; } + .table th { + color: #222222; } + .table th:not([align]) { + text-align: left; } + .table tr.is-selected { + background-color: #4eb5de; + color: #fff; } + .table tr.is-selected a, + .table tr.is-selected strong { + color: currentColor; } + .table tr.is-selected td, + .table tr.is-selected th { + border-color: #fff; + color: currentColor; } + .table thead { + background-color: transparent; } + .table thead td, + .table thead th { + border-width: 0 0 2px; + color: #222222; } + .table tfoot { + background-color: transparent; } + .table tfoot td, + .table tfoot th { + border-width: 2px 0 0; + color: #222222; } + .table tbody { + background-color: transparent; } + .table tbody tr:last-child td, + .table tbody tr:last-child th { + border-bottom-width: 0; } + .table.is-bordered td, + .table.is-bordered th { + border-width: 1px; } + .table.is-bordered tr:last-child td, + .table.is-bordered tr:last-child th { + border-bottom-width: 1px; } + .table.is-fullwidth { + width: 100%; } + .table.is-hoverable tbody tr:not(.is-selected):hover { + background-color: #fafafa; } + .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover { + background-color: #fafafa; } + .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even) { + background-color: whitesmoke; } + .table.is-narrow td, + .table.is-narrow th { + padding: 0.25em 0.5em; } + .table.is-striped tbody tr:not(.is-selected):nth-child(even) { + background-color: #fafafa; } + +.table-container { + -webkit-overflow-scrolling: touch; + overflow: auto; + overflow-y: hidden; + max-width: 100%; } + +.tags { + align-items: center; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; } + .tags .tag, .tags .content kbd, .content .tags kbd, .tags .docstring > section > a.docs-sourcelink { + margin-bottom: 0.5rem; } + .tags .tag:not(:last-child), .tags .content kbd:not(:last-child), .content .tags kbd:not(:last-child), .tags .docstring > section > a.docs-sourcelink:not(:last-child) { + margin-right: 0.5rem; } + .tags:last-child { + margin-bottom: -0.5rem; } + .tags:not(:last-child) { + margin-bottom: 1rem; } + .tags.are-medium .tag:not(.is-normal):not(.is-large), .tags.are-medium .content kbd:not(.is-normal):not(.is-large), .content .tags.are-medium kbd:not(.is-normal):not(.is-large), .tags.are-medium .docstring > section > a.docs-sourcelink:not(.is-normal):not(.is-large) { + font-size: 1rem; } + .tags.are-large .tag:not(.is-normal):not(.is-medium), .tags.are-large .content kbd:not(.is-normal):not(.is-medium), .content .tags.are-large kbd:not(.is-normal):not(.is-medium), .tags.are-large .docstring > section > a.docs-sourcelink:not(.is-normal):not(.is-medium) { + font-size: 1.25rem; } + .tags.is-centered { + justify-content: center; } + .tags.is-centered .tag, .tags.is-centered .content kbd, .content .tags.is-centered kbd, .tags.is-centered .docstring > section > a.docs-sourcelink { + margin-right: 0.25rem; + margin-left: 0.25rem; } + .tags.is-right { + justify-content: flex-end; } + .tags.is-right .tag:not(:first-child), .tags.is-right .content kbd:not(:first-child), .content .tags.is-right kbd:not(:first-child), .tags.is-right .docstring > section > a.docs-sourcelink:not(:first-child) { + margin-left: 0.5rem; } + .tags.is-right .tag:not(:last-child), .tags.is-right .content kbd:not(:last-child), .content .tags.is-right kbd:not(:last-child), .tags.is-right .docstring > section > a.docs-sourcelink:not(:last-child) { + margin-right: 0; } + .tags.has-addons .tag, .tags.has-addons .content kbd, .content .tags.has-addons kbd, .tags.has-addons .docstring > section > a.docs-sourcelink { + margin-right: 0; } + .tags.has-addons .tag:not(:first-child), .tags.has-addons .content kbd:not(:first-child), .content .tags.has-addons kbd:not(:first-child), .tags.has-addons .docstring > section > a.docs-sourcelink:not(:first-child) { + margin-left: 0; + border-bottom-left-radius: 0; + border-top-left-radius: 0; } + .tags.has-addons .tag:not(:last-child), .tags.has-addons .content kbd:not(:last-child), .content .tags.has-addons kbd:not(:last-child), .tags.has-addons .docstring > section > a.docs-sourcelink:not(:last-child) { + border-bottom-right-radius: 0; + border-top-right-radius: 0; } + +.tag:not(body), .content kbd:not(body), .docstring > section > a.docs-sourcelink:not(body) { + align-items: center; + background-color: whitesmoke; + border-radius: 4px; + color: #222222; + display: inline-flex; + font-size: 0.75rem; + height: 2em; + justify-content: center; + line-height: 1.5; + padding-left: 0.75em; + padding-right: 0.75em; + white-space: nowrap; } + .tag:not(body) .delete, .content kbd:not(body) .delete, .docstring > section > a.docs-sourcelink:not(body) .delete { + margin-left: 0.25rem; + margin-right: -0.375rem; } + .tag.is-white:not(body), .content kbd.is-white:not(body), .docstring > section > a.docs-sourcelink.is-white:not(body) { + background-color: white; + color: #0a0a0a; } + .tag.is-black:not(body), .content kbd.is-black:not(body), .docstring > section > a.docs-sourcelink.is-black:not(body) { + background-color: #0a0a0a; + color: white; } + .tag.is-light:not(body), .content kbd.is-light:not(body), .docstring > section > a.docs-sourcelink.is-light:not(body) { + background-color: whitesmoke; + color: #363636; } + .tag.is-dark:not(body), .content kbd:not(body), .docstring > section > a.docs-sourcelink.is-dark:not(body), .content .docstring > section > kbd:not(body) { + background-color: #363636; + color: whitesmoke; } + .tag.is-primary:not(body), .content kbd.is-primary:not(body), .docstring > section > a.docs-sourcelink:not(body) { + background-color: #4eb5de; + color: #fff; } + .tag.is-link:not(body), .content kbd.is-link:not(body), .docstring > section > a.docs-sourcelink.is-link:not(body) { + background-color: #2e63b8; + color: #fff; } + .tag.is-info:not(body), .content kbd.is-info:not(body), .docstring > section > a.docs-sourcelink.is-info:not(body) { + background-color: #209cee; + color: #fff; } + .tag.is-success:not(body), .content kbd.is-success:not(body), .docstring > section > a.docs-sourcelink.is-success:not(body) { + background-color: #22c35b; + color: #fff; } + .tag.is-warning:not(body), .content kbd.is-warning:not(body), .docstring > section > a.docs-sourcelink.is-warning:not(body) { + background-color: #ffdd57; + color: rgba(0, 0, 0, 0.7); } + .tag.is-danger:not(body), .content kbd.is-danger:not(body), .docstring > section > a.docs-sourcelink.is-danger:not(body) { + background-color: #da0b00; + color: #fff; } + .tag.is-normal:not(body), .content kbd.is-normal:not(body), .docstring > section > a.docs-sourcelink.is-normal:not(body) { + font-size: 0.75rem; } + .tag.is-medium:not(body), .content kbd.is-medium:not(body), .docstring > section > a.docs-sourcelink.is-medium:not(body) { + font-size: 1rem; } + .tag.is-large:not(body), .content kbd.is-large:not(body), .docstring > section > a.docs-sourcelink.is-large:not(body) { + font-size: 1.25rem; } + .tag:not(body) .icon:first-child:not(:last-child), .content kbd:not(body) .icon:first-child:not(:last-child), .docstring > section > a.docs-sourcelink:not(body) .icon:first-child:not(:last-child) { + margin-left: -0.375em; + margin-right: 0.1875em; } + .tag:not(body) .icon:last-child:not(:first-child), .content kbd:not(body) .icon:last-child:not(:first-child), .docstring > section > a.docs-sourcelink:not(body) .icon:last-child:not(:first-child) { + margin-left: 0.1875em; + margin-right: -0.375em; } + .tag:not(body) .icon:first-child:last-child, .content kbd:not(body) .icon:first-child:last-child, .docstring > section > a.docs-sourcelink:not(body) .icon:first-child:last-child { + margin-left: -0.375em; + margin-right: -0.375em; } + .tag.is-delete:not(body), .content kbd.is-delete:not(body), .docstring > section > a.docs-sourcelink.is-delete:not(body) { + margin-left: 1px; + padding: 0; + position: relative; + width: 2em; } + .tag.is-delete:not(body)::before, .content kbd.is-delete:not(body)::before, .docstring > section > a.docs-sourcelink.is-delete:not(body)::before, .tag.is-delete:not(body)::after, .content kbd.is-delete:not(body)::after, .docstring > section > a.docs-sourcelink.is-delete:not(body)::after { + background-color: currentColor; + content: ""; + display: block; + left: 50%; + position: absolute; + top: 50%; + transform: translateX(-50%) translateY(-50%) rotate(45deg); + transform-origin: center center; } + .tag.is-delete:not(body)::before, .content kbd.is-delete:not(body)::before, .docstring > section > a.docs-sourcelink.is-delete:not(body)::before { + height: 1px; + width: 50%; } + .tag.is-delete:not(body)::after, .content kbd.is-delete:not(body)::after, .docstring > section > a.docs-sourcelink.is-delete:not(body)::after { + height: 50%; + width: 1px; } + .tag.is-delete:not(body):hover, .content kbd.is-delete:not(body):hover, .docstring > section > a.docs-sourcelink.is-delete:not(body):hover, .tag.is-delete:not(body):focus, .content kbd.is-delete:not(body):focus, .docstring > section > a.docs-sourcelink.is-delete:not(body):focus { + background-color: #e8e8e8; } + .tag.is-delete:not(body):active, .content kbd.is-delete:not(body):active, .docstring > section > a.docs-sourcelink.is-delete:not(body):active { + background-color: #dbdbdb; } + .tag.is-rounded:not(body), #documenter .docs-sidebar form.docs-search > input:not(body), .content kbd.is-rounded:not(body), #documenter .docs-sidebar .content form.docs-search > input:not(body), .docstring > section > a.docs-sourcelink.is-rounded:not(body) { + border-radius: 290486px; } + +a.tag:hover, .docstring > section > a.docs-sourcelink:hover { + text-decoration: underline; } + +.title, +.subtitle { + word-break: break-word; } + .title em, + .title span, + .subtitle em, + .subtitle span { + font-weight: inherit; } + .title sub, + .subtitle sub { + font-size: 0.75em; } + .title sup, + .subtitle sup { + font-size: 0.75em; } + .title .tag, .title .content kbd, .content .title kbd, .title .docstring > section > a.docs-sourcelink, + .subtitle .tag, + .subtitle .content kbd, + .content .subtitle kbd, + .subtitle .docstring > section > a.docs-sourcelink { + vertical-align: middle; } + +.title { + color: #363636; + font-size: 2rem; + font-weight: 600; + line-height: 1.125; } + .title strong { + color: inherit; + font-weight: inherit; } + .title + .highlight { + margin-top: -0.75rem; } + .title:not(.is-spaced) + .subtitle { + margin-top: -1.25rem; } + .title.is-1 { + font-size: 3rem; } + .title.is-2 { + font-size: 2.5rem; } + .title.is-3 { + font-size: 2rem; } + .title.is-4 { + font-size: 1.5rem; } + .title.is-5 { + font-size: 1.25rem; } + .title.is-6 { + font-size: 1rem; } + .title.is-7 { + font-size: 0.75rem; } + +.subtitle { + color: #4a4a4a; + font-size: 1.25rem; + font-weight: 400; + line-height: 1.25; } + .subtitle strong { + color: #363636; + font-weight: 600; } + .subtitle:not(.is-spaced) + .title { + margin-top: -1.25rem; } + .subtitle.is-1 { + font-size: 3rem; } + .subtitle.is-2 { + font-size: 2.5rem; } + .subtitle.is-3 { + font-size: 2rem; } + .subtitle.is-4 { + font-size: 1.5rem; } + .subtitle.is-5 { + font-size: 1.25rem; } + .subtitle.is-6 { + font-size: 1rem; } + .subtitle.is-7 { + font-size: 0.75rem; } + +.heading { + display: block; + font-size: 11px; + letter-spacing: 1px; + margin-bottom: 5px; + text-transform: uppercase; } + +.highlight { + font-weight: 400; + max-width: 100%; + overflow: hidden; + padding: 0; } + .highlight pre { + overflow: auto; + max-width: 100%; } + +.number { + align-items: center; + background-color: whitesmoke; + border-radius: 290486px; + display: inline-flex; + font-size: 1.25rem; + height: 2em; + justify-content: center; + margin-right: 1.5rem; + min-width: 2.5em; + padding: 0.25rem 0.5rem; + text-align: center; + vertical-align: top; } + +.select select, .textarea, .input, #documenter .docs-sidebar form.docs-search > input { + background-color: white; + border-color: #dbdbdb; + border-radius: 4px; + color: #363636; } + .select select::-moz-placeholder, .textarea::-moz-placeholder, .input::-moz-placeholder, #documenter .docs-sidebar form.docs-search > input::-moz-placeholder { + color: rgba(54, 54, 54, 0.3); } + .select select::-webkit-input-placeholder, .textarea::-webkit-input-placeholder, .input::-webkit-input-placeholder, #documenter .docs-sidebar form.docs-search > input::-webkit-input-placeholder { + color: rgba(54, 54, 54, 0.3); } + .select select:-moz-placeholder, .textarea:-moz-placeholder, .input:-moz-placeholder, #documenter .docs-sidebar form.docs-search > input:-moz-placeholder { + color: rgba(54, 54, 54, 0.3); } + .select select:-ms-input-placeholder, .textarea:-ms-input-placeholder, .input:-ms-input-placeholder, #documenter .docs-sidebar form.docs-search > input:-ms-input-placeholder { + color: rgba(54, 54, 54, 0.3); } + .select select:hover, .textarea:hover, .input:hover, #documenter .docs-sidebar form.docs-search > input:hover, .select select.is-hovered, .is-hovered.textarea, .is-hovered.input, #documenter .docs-sidebar form.docs-search > input.is-hovered { + border-color: #b5b5b5; } + .select select:focus, .textarea:focus, .input:focus, #documenter .docs-sidebar form.docs-search > input:focus, .select select.is-focused, .is-focused.textarea, .is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .select select:active, .textarea:active, .input:active, #documenter .docs-sidebar form.docs-search > input:active, .select select.is-active, .is-active.textarea, .is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active { + border-color: #2e63b8; + box-shadow: 0 0 0 0.125em rgba(46, 99, 184, 0.25); } + .select select[disabled], .textarea[disabled], .input[disabled], #documenter .docs-sidebar form.docs-search > input[disabled], fieldset[disabled] .select select, .select fieldset[disabled] select, fieldset[disabled] .textarea, fieldset[disabled] .input, fieldset[disabled] #documenter .docs-sidebar form.docs-search > input, #documenter .docs-sidebar fieldset[disabled] form.docs-search > input { + background-color: whitesmoke; + border-color: whitesmoke; + box-shadow: none; + color: #6b6b6b; } + .select select[disabled]::-moz-placeholder, .textarea[disabled]::-moz-placeholder, .input[disabled]::-moz-placeholder, #documenter .docs-sidebar form.docs-search > input[disabled]::-moz-placeholder, fieldset[disabled] .select select::-moz-placeholder, .select fieldset[disabled] select::-moz-placeholder, fieldset[disabled] .textarea::-moz-placeholder, fieldset[disabled] .input::-moz-placeholder, fieldset[disabled] #documenter .docs-sidebar form.docs-search > input::-moz-placeholder, #documenter .docs-sidebar fieldset[disabled] form.docs-search > input::-moz-placeholder { + color: rgba(107, 107, 107, 0.3); } + .select select[disabled]::-webkit-input-placeholder, .textarea[disabled]::-webkit-input-placeholder, .input[disabled]::-webkit-input-placeholder, #documenter .docs-sidebar form.docs-search > input[disabled]::-webkit-input-placeholder, fieldset[disabled] .select select::-webkit-input-placeholder, .select fieldset[disabled] select::-webkit-input-placeholder, fieldset[disabled] .textarea::-webkit-input-placeholder, fieldset[disabled] .input::-webkit-input-placeholder, fieldset[disabled] #documenter .docs-sidebar form.docs-search > input::-webkit-input-placeholder, #documenter .docs-sidebar fieldset[disabled] form.docs-search > input::-webkit-input-placeholder { + color: rgba(107, 107, 107, 0.3); } + .select select[disabled]:-moz-placeholder, .textarea[disabled]:-moz-placeholder, .input[disabled]:-moz-placeholder, #documenter .docs-sidebar form.docs-search > input[disabled]:-moz-placeholder, fieldset[disabled] .select select:-moz-placeholder, .select fieldset[disabled] select:-moz-placeholder, fieldset[disabled] .textarea:-moz-placeholder, fieldset[disabled] .input:-moz-placeholder, fieldset[disabled] #documenter .docs-sidebar form.docs-search > input:-moz-placeholder, #documenter .docs-sidebar fieldset[disabled] form.docs-search > input:-moz-placeholder { + color: rgba(107, 107, 107, 0.3); } + .select select[disabled]:-ms-input-placeholder, .textarea[disabled]:-ms-input-placeholder, .input[disabled]:-ms-input-placeholder, #documenter .docs-sidebar form.docs-search > input[disabled]:-ms-input-placeholder, fieldset[disabled] .select select:-ms-input-placeholder, .select fieldset[disabled] select:-ms-input-placeholder, fieldset[disabled] .textarea:-ms-input-placeholder, fieldset[disabled] .input:-ms-input-placeholder, fieldset[disabled] #documenter .docs-sidebar form.docs-search > input:-ms-input-placeholder, #documenter .docs-sidebar fieldset[disabled] form.docs-search > input:-ms-input-placeholder { + color: rgba(107, 107, 107, 0.3); } + +.textarea, .input, #documenter .docs-sidebar form.docs-search > input { + box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1); + max-width: 100%; + width: 100%; } + .textarea[readonly], .input[readonly], #documenter .docs-sidebar form.docs-search > input[readonly] { + box-shadow: none; } + .is-white.textarea, .is-white.input, #documenter .docs-sidebar form.docs-search > input.is-white { + border-color: white; } + .is-white.textarea:focus, .is-white.input:focus, #documenter .docs-sidebar form.docs-search > input.is-white:focus, .is-white.is-focused.textarea, .is-white.is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .is-white.textarea:active, .is-white.input:active, #documenter .docs-sidebar form.docs-search > input.is-white:active, .is-white.is-active.textarea, .is-white.is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); } + .is-black.textarea, .is-black.input, #documenter .docs-sidebar form.docs-search > input.is-black { + border-color: #0a0a0a; } + .is-black.textarea:focus, .is-black.input:focus, #documenter .docs-sidebar form.docs-search > input.is-black:focus, .is-black.is-focused.textarea, .is-black.is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .is-black.textarea:active, .is-black.input:active, #documenter .docs-sidebar form.docs-search > input.is-black:active, .is-black.is-active.textarea, .is-black.is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); } + .is-light.textarea, .is-light.input, #documenter .docs-sidebar form.docs-search > input.is-light { + border-color: whitesmoke; } + .is-light.textarea:focus, .is-light.input:focus, #documenter .docs-sidebar form.docs-search > input.is-light:focus, .is-light.is-focused.textarea, .is-light.is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .is-light.textarea:active, .is-light.input:active, #documenter .docs-sidebar form.docs-search > input.is-light:active, .is-light.is-active.textarea, .is-light.is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); } + .is-dark.textarea, .content kbd.textarea, .is-dark.input, #documenter .docs-sidebar form.docs-search > input.is-dark, .content kbd.input { + border-color: #363636; } + .is-dark.textarea:focus, .content kbd.textarea:focus, .is-dark.input:focus, #documenter .docs-sidebar form.docs-search > input.is-dark:focus, .content kbd.input:focus, .is-dark.is-focused.textarea, .content kbd.is-focused.textarea, .is-dark.is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .content kbd.is-focused.input, #documenter .docs-sidebar .content form.docs-search > input.is-focused, .is-dark.textarea:active, .content kbd.textarea:active, .is-dark.input:active, #documenter .docs-sidebar form.docs-search > input.is-dark:active, .content kbd.input:active, .is-dark.is-active.textarea, .content kbd.is-active.textarea, .is-dark.is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active, .content kbd.is-active.input, #documenter .docs-sidebar .content form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); } + .is-primary.textarea, .docstring > section > a.textarea.docs-sourcelink, .is-primary.input, #documenter .docs-sidebar form.docs-search > input.is-primary, .docstring > section > a.input.docs-sourcelink { + border-color: #4eb5de; } + .is-primary.textarea:focus, .docstring > section > a.textarea.docs-sourcelink:focus, .is-primary.input:focus, #documenter .docs-sidebar form.docs-search > input.is-primary:focus, .docstring > section > a.input.docs-sourcelink:focus, .is-primary.is-focused.textarea, .docstring > section > a.is-focused.textarea.docs-sourcelink, .is-primary.is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .docstring > section > a.is-focused.input.docs-sourcelink, .is-primary.textarea:active, .docstring > section > a.textarea.docs-sourcelink:active, .is-primary.input:active, #documenter .docs-sidebar form.docs-search > input.is-primary:active, .docstring > section > a.input.docs-sourcelink:active, .is-primary.is-active.textarea, .docstring > section > a.is-active.textarea.docs-sourcelink, .is-primary.is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active, .docstring > section > a.is-active.input.docs-sourcelink { + box-shadow: 0 0 0 0.125em rgba(78, 181, 222, 0.25); } + .is-link.textarea, .is-link.input, #documenter .docs-sidebar form.docs-search > input.is-link { + border-color: #2e63b8; } + .is-link.textarea:focus, .is-link.input:focus, #documenter .docs-sidebar form.docs-search > input.is-link:focus, .is-link.is-focused.textarea, .is-link.is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .is-link.textarea:active, .is-link.input:active, #documenter .docs-sidebar form.docs-search > input.is-link:active, .is-link.is-active.textarea, .is-link.is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(46, 99, 184, 0.25); } + .is-info.textarea, .is-info.input, #documenter .docs-sidebar form.docs-search > input.is-info { + border-color: #209cee; } + .is-info.textarea:focus, .is-info.input:focus, #documenter .docs-sidebar form.docs-search > input.is-info:focus, .is-info.is-focused.textarea, .is-info.is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .is-info.textarea:active, .is-info.input:active, #documenter .docs-sidebar form.docs-search > input.is-info:active, .is-info.is-active.textarea, .is-info.is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(32, 156, 238, 0.25); } + .is-success.textarea, .is-success.input, #documenter .docs-sidebar form.docs-search > input.is-success { + border-color: #22c35b; } + .is-success.textarea:focus, .is-success.input:focus, #documenter .docs-sidebar form.docs-search > input.is-success:focus, .is-success.is-focused.textarea, .is-success.is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .is-success.textarea:active, .is-success.input:active, #documenter .docs-sidebar form.docs-search > input.is-success:active, .is-success.is-active.textarea, .is-success.is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(34, 195, 91, 0.25); } + .is-warning.textarea, .is-warning.input, #documenter .docs-sidebar form.docs-search > input.is-warning { + border-color: #ffdd57; } + .is-warning.textarea:focus, .is-warning.input:focus, #documenter .docs-sidebar form.docs-search > input.is-warning:focus, .is-warning.is-focused.textarea, .is-warning.is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .is-warning.textarea:active, .is-warning.input:active, #documenter .docs-sidebar form.docs-search > input.is-warning:active, .is-warning.is-active.textarea, .is-warning.is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(255, 221, 87, 0.25); } + .is-danger.textarea, .is-danger.input, #documenter .docs-sidebar form.docs-search > input.is-danger { + border-color: #da0b00; } + .is-danger.textarea:focus, .is-danger.input:focus, #documenter .docs-sidebar form.docs-search > input.is-danger:focus, .is-danger.is-focused.textarea, .is-danger.is-focused.input, #documenter .docs-sidebar form.docs-search > input.is-focused, .is-danger.textarea:active, .is-danger.input:active, #documenter .docs-sidebar form.docs-search > input.is-danger:active, .is-danger.is-active.textarea, .is-danger.is-active.input, #documenter .docs-sidebar form.docs-search > input.is-active { + box-shadow: 0 0 0 0.125em rgba(218, 11, 0, 0.25); } + .is-small.textarea, .is-small.input, #documenter .docs-sidebar form.docs-search > input { + border-radius: 2px; + font-size: 0.75rem; } + .is-medium.textarea, .is-medium.input, #documenter .docs-sidebar form.docs-search > input.is-medium { + font-size: 1.25rem; } + .is-large.textarea, .is-large.input, #documenter .docs-sidebar form.docs-search > input.is-large { + font-size: 1.5rem; } + .is-fullwidth.textarea, .is-fullwidth.input, #documenter .docs-sidebar form.docs-search > input.is-fullwidth { + display: block; + width: 100%; } + .is-inline.textarea, .is-inline.input, #documenter .docs-sidebar form.docs-search > input.is-inline { + display: inline; + width: auto; } + +.input.is-rounded, #documenter .docs-sidebar form.docs-search > input { + border-radius: 290486px; + padding-left: 1em; + padding-right: 1em; } + +.input.is-static, #documenter .docs-sidebar form.docs-search > input.is-static { + background-color: transparent; + border-color: transparent; + box-shadow: none; + padding-left: 0; + padding-right: 0; } + +.textarea { + display: block; + max-width: 100%; + min-width: 100%; + padding: 0.625em; + resize: vertical; } + .textarea:not([rows]) { + max-height: 600px; + min-height: 120px; } + .textarea[rows] { + height: initial; } + .textarea.has-fixed-size { + resize: none; } + +.radio, .checkbox { + cursor: pointer; + display: inline-block; + line-height: 1.25; + position: relative; } + .radio input, .checkbox input { + cursor: pointer; } + .radio:hover, .checkbox:hover { + color: #363636; } + .radio[disabled], .checkbox[disabled], fieldset[disabled] .radio, fieldset[disabled] .checkbox { + color: #6b6b6b; + cursor: not-allowed; } + +.radio + .radio { + margin-left: 0.5em; } + +.select { + display: inline-block; + max-width: 100%; + position: relative; + vertical-align: top; } + .select:not(.is-multiple) { + height: 2.25em; } + .select:not(.is-multiple):not(.is-loading)::after { + border-color: #2e63b8; + right: 1.125em; + z-index: 4; } + .select.is-rounded select, #documenter .docs-sidebar form.docs-search > input.select select { + border-radius: 290486px; + padding-left: 1em; } + .select select { + cursor: pointer; + display: block; + font-size: 1em; + max-width: 100%; + outline: none; } + .select select::-ms-expand { + display: none; } + .select select[disabled]:hover, fieldset[disabled] .select select:hover { + border-color: whitesmoke; } + .select select:not([multiple]) { + padding-right: 2.5em; } + .select select[multiple] { + height: auto; + padding: 0; } + .select select[multiple] option { + padding: 0.5em 1em; } + .select:not(.is-multiple):not(.is-loading):hover::after { + border-color: #363636; } + .select.is-white:not(:hover)::after { + border-color: white; } + .select.is-white select { + border-color: white; } + .select.is-white select:hover, .select.is-white select.is-hovered { + border-color: #f2f2f2; } + .select.is-white select:focus, .select.is-white select.is-focused, .select.is-white select:active, .select.is-white select.is-active { + box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); } + .select.is-black:not(:hover)::after { + border-color: #0a0a0a; } + .select.is-black select { + border-color: #0a0a0a; } + .select.is-black select:hover, .select.is-black select.is-hovered { + border-color: black; } + .select.is-black select:focus, .select.is-black select.is-focused, .select.is-black select:active, .select.is-black select.is-active { + box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); } + .select.is-light:not(:hover)::after { + border-color: whitesmoke; } + .select.is-light select { + border-color: whitesmoke; } + .select.is-light select:hover, .select.is-light select.is-hovered { + border-color: #e8e8e8; } + .select.is-light select:focus, .select.is-light select.is-focused, .select.is-light select:active, .select.is-light select.is-active { + box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); } + .select.is-dark:not(:hover)::after, .content kbd.select:not(:hover)::after { + border-color: #363636; } + .select.is-dark select, .content kbd.select select { + border-color: #363636; } + .select.is-dark select:hover, .content kbd.select select:hover, .select.is-dark select.is-hovered, .content kbd.select select.is-hovered { + border-color: #292929; } + .select.is-dark select:focus, .content kbd.select select:focus, .select.is-dark select.is-focused, .content kbd.select select.is-focused, .select.is-dark select:active, .content kbd.select select:active, .select.is-dark select.is-active, .content kbd.select select.is-active { + box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); } + .select.is-primary:not(:hover)::after, .docstring > section > a.select.docs-sourcelink:not(:hover)::after { + border-color: #4eb5de; } + .select.is-primary select, .docstring > section > a.select.docs-sourcelink select { + border-color: #4eb5de; } + .select.is-primary select:hover, .docstring > section > a.select.docs-sourcelink select:hover, .select.is-primary select.is-hovered, .docstring > section > a.select.docs-sourcelink select.is-hovered { + border-color: #39acda; } + .select.is-primary select:focus, .docstring > section > a.select.docs-sourcelink select:focus, .select.is-primary select.is-focused, .docstring > section > a.select.docs-sourcelink select.is-focused, .select.is-primary select:active, .docstring > section > a.select.docs-sourcelink select:active, .select.is-primary select.is-active, .docstring > section > a.select.docs-sourcelink select.is-active { + box-shadow: 0 0 0 0.125em rgba(78, 181, 222, 0.25); } + .select.is-link:not(:hover)::after { + border-color: #2e63b8; } + .select.is-link select { + border-color: #2e63b8; } + .select.is-link select:hover, .select.is-link select.is-hovered { + border-color: #2958a4; } + .select.is-link select:focus, .select.is-link select.is-focused, .select.is-link select:active, .select.is-link select.is-active { + box-shadow: 0 0 0 0.125em rgba(46, 99, 184, 0.25); } + .select.is-info:not(:hover)::after { + border-color: #209cee; } + .select.is-info select { + border-color: #209cee; } + .select.is-info select:hover, .select.is-info select.is-hovered { + border-color: #1190e3; } + .select.is-info select:focus, .select.is-info select.is-focused, .select.is-info select:active, .select.is-info select.is-active { + box-shadow: 0 0 0 0.125em rgba(32, 156, 238, 0.25); } + .select.is-success:not(:hover)::after { + border-color: #22c35b; } + .select.is-success select { + border-color: #22c35b; } + .select.is-success select:hover, .select.is-success select.is-hovered { + border-color: #1ead51; } + .select.is-success select:focus, .select.is-success select.is-focused, .select.is-success select:active, .select.is-success select.is-active { + box-shadow: 0 0 0 0.125em rgba(34, 195, 91, 0.25); } + .select.is-warning:not(:hover)::after { + border-color: #ffdd57; } + .select.is-warning select { + border-color: #ffdd57; } + .select.is-warning select:hover, .select.is-warning select.is-hovered { + border-color: #ffd83e; } + .select.is-warning select:focus, .select.is-warning select.is-focused, .select.is-warning select:active, .select.is-warning select.is-active { + box-shadow: 0 0 0 0.125em rgba(255, 221, 87, 0.25); } + .select.is-danger:not(:hover)::after { + border-color: #da0b00; } + .select.is-danger select { + border-color: #da0b00; } + .select.is-danger select:hover, .select.is-danger select.is-hovered { + border-color: #c10a00; } + .select.is-danger select:focus, .select.is-danger select.is-focused, .select.is-danger select:active, .select.is-danger select.is-active { + box-shadow: 0 0 0 0.125em rgba(218, 11, 0, 0.25); } + .select.is-small, #documenter .docs-sidebar form.docs-search > input.select { + border-radius: 2px; + font-size: 0.75rem; } + .select.is-medium { + font-size: 1.25rem; } + .select.is-large { + font-size: 1.5rem; } + .select.is-disabled::after { + border-color: #6b6b6b; } + .select.is-fullwidth { + width: 100%; } + .select.is-fullwidth select { + width: 100%; } + .select.is-loading::after { + margin-top: 0; + position: absolute; + right: 0.625em; + top: 0.625em; + transform: none; } + .select.is-loading.is-small:after, #documenter .docs-sidebar form.docs-search > input.is-loading:after { + font-size: 0.75rem; } + .select.is-loading.is-medium:after { + font-size: 1.25rem; } + .select.is-loading.is-large:after { + font-size: 1.5rem; } + +.file { + align-items: stretch; + display: flex; + justify-content: flex-start; + position: relative; } + .file.is-white .file-cta { + background-color: white; + border-color: transparent; + color: #0a0a0a; } + .file.is-white:hover .file-cta, .file.is-white.is-hovered .file-cta { + background-color: #f9f9f9; + border-color: transparent; + color: #0a0a0a; } + .file.is-white:focus .file-cta, .file.is-white.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(255, 255, 255, 0.25); + color: #0a0a0a; } + .file.is-white:active .file-cta, .file.is-white.is-active .file-cta { + background-color: #f2f2f2; + border-color: transparent; + color: #0a0a0a; } + .file.is-black .file-cta { + background-color: #0a0a0a; + border-color: transparent; + color: white; } + .file.is-black:hover .file-cta, .file.is-black.is-hovered .file-cta { + background-color: #040404; + border-color: transparent; + color: white; } + .file.is-black:focus .file-cta, .file.is-black.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(10, 10, 10, 0.25); + color: white; } + .file.is-black:active .file-cta, .file.is-black.is-active .file-cta { + background-color: black; + border-color: transparent; + color: white; } + .file.is-light .file-cta { + background-color: whitesmoke; + border-color: transparent; + color: #363636; } + .file.is-light:hover .file-cta, .file.is-light.is-hovered .file-cta { + background-color: #eeeeee; + border-color: transparent; + color: #363636; } + .file.is-light:focus .file-cta, .file.is-light.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(245, 245, 245, 0.25); + color: #363636; } + .file.is-light:active .file-cta, .file.is-light.is-active .file-cta { + background-color: #e8e8e8; + border-color: transparent; + color: #363636; } + .file.is-dark .file-cta, .content kbd.file .file-cta { + background-color: #363636; + border-color: transparent; + color: whitesmoke; } + .file.is-dark:hover .file-cta, .content kbd.file:hover .file-cta, .file.is-dark.is-hovered .file-cta, .content kbd.file.is-hovered .file-cta { + background-color: #2f2f2f; + border-color: transparent; + color: whitesmoke; } + .file.is-dark:focus .file-cta, .content kbd.file:focus .file-cta, .file.is-dark.is-focused .file-cta, .content kbd.file.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(54, 54, 54, 0.25); + color: whitesmoke; } + .file.is-dark:active .file-cta, .content kbd.file:active .file-cta, .file.is-dark.is-active .file-cta, .content kbd.file.is-active .file-cta { + background-color: #292929; + border-color: transparent; + color: whitesmoke; } + .file.is-primary .file-cta, .docstring > section > a.file.docs-sourcelink .file-cta { + background-color: #4eb5de; + border-color: transparent; + color: #fff; } + .file.is-primary:hover .file-cta, .docstring > section > a.file.docs-sourcelink:hover .file-cta, .file.is-primary.is-hovered .file-cta, .docstring > section > a.file.is-hovered.docs-sourcelink .file-cta { + background-color: #43b1dc; + border-color: transparent; + color: #fff; } + .file.is-primary:focus .file-cta, .docstring > section > a.file.docs-sourcelink:focus .file-cta, .file.is-primary.is-focused .file-cta, .docstring > section > a.file.is-focused.docs-sourcelink .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(78, 181, 222, 0.25); + color: #fff; } + .file.is-primary:active .file-cta, .docstring > section > a.file.docs-sourcelink:active .file-cta, .file.is-primary.is-active .file-cta, .docstring > section > a.file.is-active.docs-sourcelink .file-cta { + background-color: #39acda; + border-color: transparent; + color: #fff; } + .file.is-link .file-cta { + background-color: #2e63b8; + border-color: transparent; + color: #fff; } + .file.is-link:hover .file-cta, .file.is-link.is-hovered .file-cta { + background-color: #2b5eae; + border-color: transparent; + color: #fff; } + .file.is-link:focus .file-cta, .file.is-link.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(46, 99, 184, 0.25); + color: #fff; } + .file.is-link:active .file-cta, .file.is-link.is-active .file-cta { + background-color: #2958a4; + border-color: transparent; + color: #fff; } + .file.is-info .file-cta { + background-color: #209cee; + border-color: transparent; + color: #fff; } + .file.is-info:hover .file-cta, .file.is-info.is-hovered .file-cta { + background-color: #1497ed; + border-color: transparent; + color: #fff; } + .file.is-info:focus .file-cta, .file.is-info.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(32, 156, 238, 0.25); + color: #fff; } + .file.is-info:active .file-cta, .file.is-info.is-active .file-cta { + background-color: #1190e3; + border-color: transparent; + color: #fff; } + .file.is-success .file-cta { + background-color: #22c35b; + border-color: transparent; + color: #fff; } + .file.is-success:hover .file-cta, .file.is-success.is-hovered .file-cta { + background-color: #20b856; + border-color: transparent; + color: #fff; } + .file.is-success:focus .file-cta, .file.is-success.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(34, 195, 91, 0.25); + color: #fff; } + .file.is-success:active .file-cta, .file.is-success.is-active .file-cta { + background-color: #1ead51; + border-color: transparent; + color: #fff; } + .file.is-warning .file-cta { + background-color: #ffdd57; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); } + .file.is-warning:hover .file-cta, .file.is-warning.is-hovered .file-cta { + background-color: #ffda4a; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); } + .file.is-warning:focus .file-cta, .file.is-warning.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(255, 221, 87, 0.25); + color: rgba(0, 0, 0, 0.7); } + .file.is-warning:active .file-cta, .file.is-warning.is-active .file-cta { + background-color: #ffd83e; + border-color: transparent; + color: rgba(0, 0, 0, 0.7); } + .file.is-danger .file-cta { + background-color: #da0b00; + border-color: transparent; + color: #fff; } + .file.is-danger:hover .file-cta, .file.is-danger.is-hovered .file-cta { + background-color: #cd0a00; + border-color: transparent; + color: #fff; } + .file.is-danger:focus .file-cta, .file.is-danger.is-focused .file-cta { + border-color: transparent; + box-shadow: 0 0 0.5em rgba(218, 11, 0, 0.25); + color: #fff; } + .file.is-danger:active .file-cta, .file.is-danger.is-active .file-cta { + background-color: #c10a00; + border-color: transparent; + color: #fff; } + .file.is-small, #documenter .docs-sidebar form.docs-search > input.file { + font-size: 0.75rem; } + .file.is-medium { + font-size: 1.25rem; } + .file.is-medium .file-icon .fa { + font-size: 21px; } + .file.is-large { + font-size: 1.5rem; } + .file.is-large .file-icon .fa { + font-size: 28px; } + .file.has-name .file-cta { + border-bottom-right-radius: 0; + border-top-right-radius: 0; } + .file.has-name .file-name { + border-bottom-left-radius: 0; + border-top-left-radius: 0; } + .file.has-name.is-empty .file-cta { + border-radius: 4px; } + .file.has-name.is-empty .file-name { + display: none; } + .file.is-boxed .file-label { + flex-direction: column; } + .file.is-boxed .file-cta { + flex-direction: column; + height: auto; + padding: 1em 3em; } + .file.is-boxed .file-name { + border-width: 0 1px 1px; } + .file.is-boxed .file-icon { + height: 1.5em; + width: 1.5em; } + .file.is-boxed .file-icon .fa { + font-size: 21px; } + .file.is-boxed.is-small .file-icon .fa, #documenter .docs-sidebar form.docs-search > input.is-boxed .file-icon .fa { + font-size: 14px; } + .file.is-boxed.is-medium .file-icon .fa { + font-size: 28px; } + .file.is-boxed.is-large .file-icon .fa { + font-size: 35px; } + .file.is-boxed.has-name .file-cta { + border-radius: 4px 4px 0 0; } + .file.is-boxed.has-name .file-name { + border-radius: 0 0 4px 4px; + border-width: 0 1px 1px; } + .file.is-centered { + justify-content: center; } + .file.is-fullwidth .file-label { + width: 100%; } + .file.is-fullwidth .file-name { + flex-grow: 1; + max-width: none; } + .file.is-right { + justify-content: flex-end; } + .file.is-right .file-cta { + border-radius: 0 4px 4px 0; } + .file.is-right .file-name { + border-radius: 4px 0 0 4px; + border-width: 1px 0 1px 1px; + order: -1; } + +.file-label { + align-items: stretch; + display: flex; + cursor: pointer; + justify-content: flex-start; + overflow: hidden; + position: relative; } + .file-label:hover .file-cta { + background-color: #eeeeee; + color: #363636; } + .file-label:hover .file-name { + border-color: #d5d5d5; } + .file-label:active .file-cta { + background-color: #e8e8e8; + color: #363636; } + .file-label:active .file-name { + border-color: #cfcfcf; } + +.file-input { + height: 100%; + left: 0; + opacity: 0; + outline: none; + position: absolute; + top: 0; + width: 100%; } + +.file-cta, +.file-name { + border-color: #dbdbdb; + border-radius: 4px; + font-size: 1em; + padding-left: 1em; + padding-right: 1em; + white-space: nowrap; } + +.file-cta { + background-color: whitesmoke; + color: #4a4a4a; } + +.file-name { + border-color: #dbdbdb; + border-style: solid; + border-width: 1px 1px 1px 0; + display: block; + max-width: 16em; + overflow: hidden; + text-align: left; + text-overflow: ellipsis; } + +.file-icon { + align-items: center; + display: flex; + height: 1em; + justify-content: center; + margin-right: 0.5em; + width: 1em; } + .file-icon .fa { + font-size: 14px; } + +.label { + color: #363636; + display: block; + font-size: 1rem; + font-weight: 700; } + .label:not(:last-child) { + margin-bottom: 0.5em; } + .label.is-small, #documenter .docs-sidebar form.docs-search > input.label { + font-size: 0.75rem; } + .label.is-medium { + font-size: 1.25rem; } + .label.is-large { + font-size: 1.5rem; } + +.help { + display: block; + font-size: 0.75rem; + margin-top: 0.25rem; } + .help.is-white { + color: white; } + .help.is-black { + color: #0a0a0a; } + .help.is-light { + color: whitesmoke; } + .help.is-dark, .content kbd.help { + color: #363636; } + .help.is-primary, .docstring > section > a.help.docs-sourcelink { + color: #4eb5de; } + .help.is-link { + color: #2e63b8; } + .help.is-info { + color: #209cee; } + .help.is-success { + color: #22c35b; } + .help.is-warning { + color: #ffdd57; } + .help.is-danger { + color: #da0b00; } + +.field:not(:last-child) { + margin-bottom: 0.75rem; } + +.field.has-addons { + display: flex; + justify-content: flex-start; } + .field.has-addons .control:not(:last-child) { + margin-right: -1px; } + .field.has-addons .control:not(:first-child):not(:last-child) .button, + .field.has-addons .control:not(:first-child):not(:last-child) .input, + .field.has-addons .control:not(:first-child):not(:last-child) #documenter .docs-sidebar form.docs-search > input, + #documenter .docs-sidebar .field.has-addons .control:not(:first-child):not(:last-child) form.docs-search > input, + .field.has-addons .control:not(:first-child):not(:last-child) .select select { + border-radius: 0; } + .field.has-addons .control:first-child:not(:only-child) .button, + .field.has-addons .control:first-child:not(:only-child) .input, + .field.has-addons .control:first-child:not(:only-child) #documenter .docs-sidebar form.docs-search > input, + #documenter .docs-sidebar .field.has-addons .control:first-child:not(:only-child) form.docs-search > input, + .field.has-addons .control:first-child:not(:only-child) .select select { + border-bottom-right-radius: 0; + border-top-right-radius: 0; } + .field.has-addons .control:last-child:not(:only-child) .button, + .field.has-addons .control:last-child:not(:only-child) .input, + .field.has-addons .control:last-child:not(:only-child) #documenter .docs-sidebar form.docs-search > input, + #documenter .docs-sidebar .field.has-addons .control:last-child:not(:only-child) form.docs-search > input, + .field.has-addons .control:last-child:not(:only-child) .select select { + border-bottom-left-radius: 0; + border-top-left-radius: 0; } + .field.has-addons .control .button:not([disabled]):hover, .field.has-addons .control .button.is-hovered:not([disabled]), + .field.has-addons .control .input:not([disabled]):hover, + .field.has-addons .control #documenter .docs-sidebar form.docs-search > input:not([disabled]):hover, + #documenter .docs-sidebar .field.has-addons .control form.docs-search > input:not([disabled]):hover, + .field.has-addons .control .input.is-hovered:not([disabled]), + .field.has-addons .control #documenter .docs-sidebar form.docs-search > input.is-hovered:not([disabled]), + #documenter .docs-sidebar .field.has-addons .control form.docs-search > input.is-hovered:not([disabled]), + .field.has-addons .control .select select:not([disabled]):hover, + .field.has-addons .control .select select.is-hovered:not([disabled]) { + z-index: 2; } + .field.has-addons .control .button:not([disabled]):focus, .field.has-addons .control .button.is-focused:not([disabled]), .field.has-addons .control .button:not([disabled]):active, .field.has-addons .control .button.is-active:not([disabled]), + .field.has-addons .control .input:not([disabled]):focus, + .field.has-addons .control #documenter .docs-sidebar form.docs-search > input:not([disabled]):focus, + #documenter .docs-sidebar .field.has-addons .control form.docs-search > input:not([disabled]):focus, + .field.has-addons .control .input.is-focused:not([disabled]), + .field.has-addons .control #documenter .docs-sidebar form.docs-search > input.is-focused:not([disabled]), + #documenter .docs-sidebar .field.has-addons .control form.docs-search > input.is-focused:not([disabled]), + .field.has-addons .control .input:not([disabled]):active, + .field.has-addons .control #documenter .docs-sidebar form.docs-search > input:not([disabled]):active, + #documenter .docs-sidebar .field.has-addons .control form.docs-search > input:not([disabled]):active, + .field.has-addons .control .input.is-active:not([disabled]), + .field.has-addons .control #documenter .docs-sidebar form.docs-search > input.is-active:not([disabled]), + #documenter .docs-sidebar .field.has-addons .control form.docs-search > input.is-active:not([disabled]), + .field.has-addons .control .select select:not([disabled]):focus, + .field.has-addons .control .select select.is-focused:not([disabled]), + .field.has-addons .control .select select:not([disabled]):active, + .field.has-addons .control .select select.is-active:not([disabled]) { + z-index: 3; } + .field.has-addons .control .button:not([disabled]):focus:hover, .field.has-addons .control .button.is-focused:not([disabled]):hover, .field.has-addons .control .button:not([disabled]):active:hover, .field.has-addons .control .button.is-active:not([disabled]):hover, + .field.has-addons .control .input:not([disabled]):focus:hover, + .field.has-addons .control #documenter .docs-sidebar form.docs-search > input:not([disabled]):focus:hover, + #documenter .docs-sidebar .field.has-addons .control form.docs-search > input:not([disabled]):focus:hover, + .field.has-addons .control .input.is-focused:not([disabled]):hover, + .field.has-addons .control #documenter .docs-sidebar form.docs-search > input.is-focused:not([disabled]):hover, + #documenter .docs-sidebar .field.has-addons .control form.docs-search > input.is-focused:not([disabled]):hover, + .field.has-addons .control .input:not([disabled]):active:hover, + .field.has-addons .control #documenter .docs-sidebar form.docs-search > input:not([disabled]):active:hover, + #documenter .docs-sidebar .field.has-addons .control form.docs-search > input:not([disabled]):active:hover, + .field.has-addons .control .input.is-active:not([disabled]):hover, + .field.has-addons .control #documenter .docs-sidebar form.docs-search > input.is-active:not([disabled]):hover, + #documenter .docs-sidebar .field.has-addons .control form.docs-search > input.is-active:not([disabled]):hover, + .field.has-addons .control .select select:not([disabled]):focus:hover, + .field.has-addons .control .select select.is-focused:not([disabled]):hover, + .field.has-addons .control .select select:not([disabled]):active:hover, + .field.has-addons .control .select select.is-active:not([disabled]):hover { + z-index: 4; } + .field.has-addons .control.is-expanded { + flex-grow: 1; + flex-shrink: 1; } + .field.has-addons.has-addons-centered { + justify-content: center; } + .field.has-addons.has-addons-right { + justify-content: flex-end; } + .field.has-addons.has-addons-fullwidth .control { + flex-grow: 1; + flex-shrink: 0; } + +.field.is-grouped { + display: flex; + justify-content: flex-start; } + .field.is-grouped > .control { + flex-shrink: 0; } + .field.is-grouped > .control:not(:last-child) { + margin-bottom: 0; + margin-right: 0.75rem; } + .field.is-grouped > .control.is-expanded { + flex-grow: 1; + flex-shrink: 1; } + .field.is-grouped.is-grouped-centered { + justify-content: center; } + .field.is-grouped.is-grouped-right { + justify-content: flex-end; } + .field.is-grouped.is-grouped-multiline { + flex-wrap: wrap; } + .field.is-grouped.is-grouped-multiline > .control:last-child, .field.is-grouped.is-grouped-multiline > .control:not(:last-child) { + margin-bottom: 0.75rem; } + .field.is-grouped.is-grouped-multiline:last-child { + margin-bottom: -0.75rem; } + .field.is-grouped.is-grouped-multiline:not(:last-child) { + margin-bottom: 0; } + +@media screen and (min-width: 769px), print { + .field.is-horizontal { + display: flex; } } + +.field-label .label { + font-size: inherit; } + +@media screen and (max-width: 768px) { + .field-label { + margin-bottom: 0.5rem; } } + +@media screen and (min-width: 769px), print { + .field-label { + flex-basis: 0; + flex-grow: 1; + flex-shrink: 0; + margin-right: 1.5rem; + text-align: right; } + .field-label.is-small, #documenter .docs-sidebar form.docs-search > input.field-label { + font-size: 0.75rem; + padding-top: 0.375em; } + .field-label.is-normal { + padding-top: 0.375em; } + .field-label.is-medium { + font-size: 1.25rem; + padding-top: 0.375em; } + .field-label.is-large { + font-size: 1.5rem; + padding-top: 0.375em; } } + +.field-body .field .field { + margin-bottom: 0; } + +@media screen and (min-width: 769px), print { + .field-body { + display: flex; + flex-basis: 0; + flex-grow: 5; + flex-shrink: 1; } + .field-body .field { + margin-bottom: 0; } + .field-body > .field { + flex-shrink: 1; } + .field-body > .field:not(.is-narrow) { + flex-grow: 1; } + .field-body > .field:not(:last-child) { + margin-right: 0.75rem; } } + +.control { + box-sizing: border-box; + clear: both; + font-size: 1rem; + position: relative; + text-align: left; } + .control.has-icons-left .input:focus ~ .icon, .control.has-icons-left #documenter .docs-sidebar form.docs-search > input:focus ~ .icon, #documenter .docs-sidebar .control.has-icons-left form.docs-search > input:focus ~ .icon, + .control.has-icons-left .select:focus ~ .icon, .control.has-icons-right .input:focus ~ .icon, .control.has-icons-right #documenter .docs-sidebar form.docs-search > input:focus ~ .icon, #documenter .docs-sidebar .control.has-icons-right form.docs-search > input:focus ~ .icon, + .control.has-icons-right .select:focus ~ .icon { + color: #6b6b6b; } + .control.has-icons-left .input.is-small ~ .icon, .control.has-icons-left #documenter .docs-sidebar form.docs-search > input ~ .icon, #documenter .docs-sidebar .control.has-icons-left form.docs-search > input ~ .icon, + .control.has-icons-left .select.is-small ~ .icon, .control.has-icons-right .input.is-small ~ .icon, .control.has-icons-right #documenter .docs-sidebar form.docs-search > input ~ .icon, #documenter .docs-sidebar .control.has-icons-right form.docs-search > input ~ .icon, + .control.has-icons-right .select.is-small ~ .icon { + font-size: 0.75rem; } + .control.has-icons-left .input.is-medium ~ .icon, .control.has-icons-left #documenter .docs-sidebar form.docs-search > input.is-medium ~ .icon, #documenter .docs-sidebar .control.has-icons-left form.docs-search > input.is-medium ~ .icon, + .control.has-icons-left .select.is-medium ~ .icon, .control.has-icons-right .input.is-medium ~ .icon, .control.has-icons-right #documenter .docs-sidebar form.docs-search > input.is-medium ~ .icon, #documenter .docs-sidebar .control.has-icons-right form.docs-search > input.is-medium ~ .icon, + .control.has-icons-right .select.is-medium ~ .icon { + font-size: 1.25rem; } + .control.has-icons-left .input.is-large ~ .icon, .control.has-icons-left #documenter .docs-sidebar form.docs-search > input.is-large ~ .icon, #documenter .docs-sidebar .control.has-icons-left form.docs-search > input.is-large ~ .icon, + .control.has-icons-left .select.is-large ~ .icon, .control.has-icons-right .input.is-large ~ .icon, .control.has-icons-right #documenter .docs-sidebar form.docs-search > input.is-large ~ .icon, #documenter .docs-sidebar .control.has-icons-right form.docs-search > input.is-large ~ .icon, + .control.has-icons-right .select.is-large ~ .icon { + font-size: 1.5rem; } + .control.has-icons-left .icon, .control.has-icons-right .icon { + color: #dbdbdb; + height: 2.25em; + pointer-events: none; + position: absolute; + top: 0; + width: 2.25em; + z-index: 4; } + .control.has-icons-left .input, .control.has-icons-left #documenter .docs-sidebar form.docs-search > input, #documenter .docs-sidebar .control.has-icons-left form.docs-search > input, + .control.has-icons-left .select select { + padding-left: 2.25em; } + .control.has-icons-left .icon.is-left { + left: 0; } + .control.has-icons-right .input, .control.has-icons-right #documenter .docs-sidebar form.docs-search > input, #documenter .docs-sidebar .control.has-icons-right form.docs-search > input, + .control.has-icons-right .select select { + padding-right: 2.25em; } + .control.has-icons-right .icon.is-right { + right: 0; } + .control.is-loading::after { + position: absolute !important; + right: 0.625em; + top: 0.625em; + z-index: 4; } + .control.is-loading.is-small:after, #documenter .docs-sidebar form.docs-search > input.is-loading:after { + font-size: 0.75rem; } + .control.is-loading.is-medium:after { + font-size: 1.25rem; } + .control.is-loading.is-large:after { + font-size: 1.5rem; } + +.breadcrumb { + font-size: 1rem; + white-space: nowrap; } + .breadcrumb a { + align-items: center; + color: #2e63b8; + display: flex; + justify-content: center; + padding: 0 0.75em; } + .breadcrumb a:hover { + color: #363636; } + .breadcrumb li { + align-items: center; + display: flex; } + .breadcrumb li:first-child a { + padding-left: 0; } + .breadcrumb li.is-active a { + color: #222222; + cursor: default; + pointer-events: none; } + .breadcrumb li + li::before { + color: #b5b5b5; + content: "\0002f"; } + .breadcrumb ul, + .breadcrumb ol { + align-items: flex-start; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; } + .breadcrumb .icon:first-child { + margin-right: 0.5em; } + .breadcrumb .icon:last-child { + margin-left: 0.5em; } + .breadcrumb.is-centered ol, + .breadcrumb.is-centered ul { + justify-content: center; } + .breadcrumb.is-right ol, + .breadcrumb.is-right ul { + justify-content: flex-end; } + .breadcrumb.is-small, #documenter .docs-sidebar form.docs-search > input.breadcrumb { + font-size: 0.75rem; } + .breadcrumb.is-medium { + font-size: 1.25rem; } + .breadcrumb.is-large { + font-size: 1.5rem; } + .breadcrumb.has-arrow-separator li + li::before { + content: "\02192"; } + .breadcrumb.has-bullet-separator li + li::before { + content: "\02022"; } + .breadcrumb.has-dot-separator li + li::before { + content: "\000b7"; } + .breadcrumb.has-succeeds-separator li + li::before { + content: "\0227B"; } + +.card { + background-color: white; + box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); + color: #222222; + max-width: 100%; + position: relative; } + +.card-header { + background-color: transparent; + align-items: stretch; + box-shadow: 0 1px 2px rgba(10, 10, 10, 0.1); + display: flex; } + +.card-header-title { + align-items: center; + color: #222222; + display: flex; + flex-grow: 1; + font-weight: 700; + padding: 0.75rem; } + .card-header-title.is-centered { + justify-content: center; } + +.card-header-icon { + align-items: center; + cursor: pointer; + display: flex; + justify-content: center; + padding: 0.75rem; } + +.card-image { + display: block; + position: relative; } + +.card-content { + background-color: transparent; + padding: 1.5rem; } + +.card-footer { + background-color: transparent; + border-top: 1px solid #dbdbdb; + align-items: stretch; + display: flex; } + +.card-footer-item { + align-items: center; + display: flex; + flex-basis: 0; + flex-grow: 1; + flex-shrink: 0; + justify-content: center; + padding: 0.75rem; } + .card-footer-item:not(:last-child) { + border-right: 1px solid #dbdbdb; } + +.card .media:not(:last-child) { + margin-bottom: 1.5rem; } + +.dropdown { + display: inline-flex; + position: relative; + vertical-align: top; } + .dropdown.is-active .dropdown-menu, .dropdown.is-hoverable:hover .dropdown-menu { + display: block; } + .dropdown.is-right .dropdown-menu { + left: auto; + right: 0; } + .dropdown.is-up .dropdown-menu { + bottom: 100%; + padding-bottom: 4px; + padding-top: initial; + top: auto; } + +.dropdown-menu { + display: none; + left: 0; + min-width: 12rem; + padding-top: 4px; + position: absolute; + top: 100%; + z-index: 20; } + +.dropdown-content { + background-color: white; + border-radius: 4px; + box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); + padding-bottom: 0.5rem; + padding-top: 0.5rem; } + +.dropdown-item { + color: #4a4a4a; + display: block; + font-size: 0.875rem; + line-height: 1.5; + padding: 0.375rem 1rem; + position: relative; } + +a.dropdown-item, +button.dropdown-item { + padding-right: 3rem; + text-align: left; + white-space: nowrap; + width: 100%; } + a.dropdown-item:hover, + button.dropdown-item:hover { + background-color: whitesmoke; + color: #0a0a0a; } + a.dropdown-item.is-active, + button.dropdown-item.is-active { + background-color: #2e63b8; + color: #fff; } + +.dropdown-divider { + background-color: #dbdbdb; + border: none; + display: block; + height: 1px; + margin: 0.5rem 0; } + +.level { + align-items: center; + justify-content: space-between; } + .level code { + border-radius: 4px; } + .level img { + display: inline-block; + vertical-align: top; } + .level.is-mobile { + display: flex; } + .level.is-mobile .level-left, + .level.is-mobile .level-right { + display: flex; } + .level.is-mobile .level-left + .level-right { + margin-top: 0; } + .level.is-mobile .level-item:not(:last-child) { + margin-bottom: 0; + margin-right: 0.75rem; } + .level.is-mobile .level-item:not(.is-narrow) { + flex-grow: 1; } + @media screen and (min-width: 769px), print { + .level { + display: flex; } + .level > .level-item:not(.is-narrow) { + flex-grow: 1; } } +.level-item { + align-items: center; + display: flex; + flex-basis: auto; + flex-grow: 0; + flex-shrink: 0; + justify-content: center; } + .level-item .title, + .level-item .subtitle { + margin-bottom: 0; } + @media screen and (max-width: 768px) { + .level-item:not(:last-child) { + margin-bottom: 0.75rem; } } +.level-left, +.level-right { + flex-basis: auto; + flex-grow: 0; + flex-shrink: 0; } + .level-left .level-item.is-flexible, + .level-right .level-item.is-flexible { + flex-grow: 1; } + @media screen and (min-width: 769px), print { + .level-left .level-item:not(:last-child), + .level-right .level-item:not(:last-child) { + margin-right: 0.75rem; } } +.level-left { + align-items: center; + justify-content: flex-start; } + @media screen and (max-width: 768px) { + .level-left + .level-right { + margin-top: 1.5rem; } } + @media screen and (min-width: 769px), print { + .level-left { + display: flex; } } +.level-right { + align-items: center; + justify-content: flex-end; } + @media screen and (min-width: 769px), print { + .level-right { + display: flex; } } +.list { + background-color: white; + border-radius: 4px; + box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); } + +.list-item { + display: block; + padding: 0.5em 1em; } + .list-item:not(a) { + color: #222222; } + .list-item:first-child { + border-top-left-radius: 4px; + border-top-right-radius: 4px; } + .list-item:last-child { + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; } + .list-item:not(:last-child) { + border-bottom: 1px solid #dbdbdb; } + .list-item.is-active { + background-color: #2e63b8; + color: #fff; } + +a.list-item { + background-color: whitesmoke; + cursor: pointer; } + +.media { + align-items: flex-start; + display: flex; + text-align: left; } + .media .content:not(:last-child) { + margin-bottom: 0.75rem; } + .media .media { + border-top: 1px solid rgba(219, 219, 219, 0.5); + display: flex; + padding-top: 0.75rem; } + .media .media .content:not(:last-child), + .media .media .control:not(:last-child) { + margin-bottom: 0.5rem; } + .media .media .media { + padding-top: 0.5rem; } + .media .media .media + .media { + margin-top: 0.5rem; } + .media + .media { + border-top: 1px solid rgba(219, 219, 219, 0.5); + margin-top: 1rem; + padding-top: 1rem; } + .media.is-large + .media { + margin-top: 1.5rem; + padding-top: 1.5rem; } + +.media-left, +.media-right { + flex-basis: auto; + flex-grow: 0; + flex-shrink: 0; } + +.media-left { + margin-right: 1rem; } + +.media-right { + margin-left: 1rem; } + +.media-content { + flex-basis: auto; + flex-grow: 1; + flex-shrink: 1; + text-align: left; } + +@media screen and (max-width: 768px) { + .media-content { + overflow-x: auto; } } + +.menu { + font-size: 1rem; } + .menu.is-small, #documenter .docs-sidebar form.docs-search > input.menu { + font-size: 0.75rem; } + .menu.is-medium { + font-size: 1.25rem; } + .menu.is-large { + font-size: 1.5rem; } + +.menu-list { + line-height: 1.25; } + .menu-list a { + border-radius: 2px; + color: #222222; + display: block; + padding: 0.5em 0.75em; } + .menu-list a:hover { + background-color: whitesmoke; + color: #222222; } + .menu-list a.is-active { + background-color: #2e63b8; + color: #fff; } + .menu-list li ul { + border-left: 1px solid #dbdbdb; + margin: 0.75em; + padding-left: 0.75em; } + +.menu-label { + color: #6b6b6b; + font-size: 0.75em; + letter-spacing: 0.1em; + text-transform: uppercase; } + .menu-label:not(:first-child) { + margin-top: 1em; } + .menu-label:not(:last-child) { + margin-bottom: 1em; } + +.message { + background-color: whitesmoke; + border-radius: 4px; + font-size: 1rem; } + .message strong { + color: currentColor; } + .message a:not(.button):not(.tag):not(.dropdown-item) { + color: currentColor; + text-decoration: underline; } + .message.is-small, #documenter .docs-sidebar form.docs-search > input.message { + font-size: 0.75rem; } + .message.is-medium { + font-size: 1.25rem; } + .message.is-large { + font-size: 1.5rem; } + .message.is-white { + background-color: white; } + .message.is-white .message-header { + background-color: white; + color: #0a0a0a; } + .message.is-white .message-body { + border-color: white; + color: #4d4d4d; } + .message.is-black { + background-color: #fafafa; } + .message.is-black .message-header { + background-color: #0a0a0a; + color: white; } + .message.is-black .message-body { + border-color: #0a0a0a; + color: #090909; } + .message.is-light { + background-color: #fafafa; } + .message.is-light .message-header { + background-color: whitesmoke; + color: #363636; } + .message.is-light .message-body { + border-color: whitesmoke; + color: #505050; } + .message.is-dark, .content kbd.message { + background-color: #fafafa; } + .message.is-dark .message-header, .content kbd.message .message-header { + background-color: #363636; + color: whitesmoke; } + .message.is-dark .message-body, .content kbd.message .message-body { + border-color: #363636; + color: #2a2a2a; } + .message.is-primary, .docstring > section > a.message.docs-sourcelink { + background-color: #f6fbfd; } + .message.is-primary .message-header, .docstring > section > a.message.docs-sourcelink .message-header { + background-color: #4eb5de; + color: #fff; } + .message.is-primary .message-body, .docstring > section > a.message.docs-sourcelink .message-body { + border-color: #4eb5de; + color: #1f556a; } + .message.is-link { + background-color: #f7f9fd; } + .message.is-link .message-header { + background-color: #2e63b8; + color: #fff; } + .message.is-link .message-body { + border-color: #2e63b8; + color: #264981; } + .message.is-info { + background-color: #f6fbfe; } + .message.is-info .message-header { + background-color: #209cee; + color: #fff; } + .message.is-info .message-body { + border-color: #209cee; + color: #12537d; } + .message.is-success { + background-color: #f6fdf9; } + .message.is-success .message-header { + background-color: #22c35b; + color: #fff; } + .message.is-success .message-body { + border-color: #22c35b; + color: #0f361d; } + .message.is-warning { + background-color: #fffdf5; } + .message.is-warning .message-header { + background-color: #ffdd57; + color: rgba(0, 0, 0, 0.7); } + .message.is-warning .message-body { + border-color: #ffdd57; + color: #3c3108; } + .message.is-danger { + background-color: #fff5f5; } + .message.is-danger .message-header { + background-color: #da0b00; + color: #fff; } + .message.is-danger .message-body { + border-color: #da0b00; + color: #9b0c04; } + +.message-header { + align-items: center; + background-color: #222222; + border-radius: 4px 4px 0 0; + color: #fff; + display: flex; + font-weight: 700; + justify-content: space-between; + line-height: 1.25; + padding: 0.75em 1em; + position: relative; } + .message-header .delete { + flex-grow: 0; + flex-shrink: 0; + margin-left: 0.75em; } + .message-header + .message-body { + border-width: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; } + +.message-body { + border-color: #dbdbdb; + border-radius: 4px; + border-style: solid; + border-width: 0 0 0 4px; + color: #222222; + padding: 1.25em 1.5em; } + .message-body code, + .message-body pre { + background-color: white; } + .message-body pre code { + background-color: transparent; } + +.modal { + align-items: center; + display: none; + flex-direction: column; + justify-content: center; + overflow: hidden; + position: fixed; + z-index: 40; } + .modal.is-active { + display: flex; } + +.modal-background { + background-color: rgba(10, 10, 10, 0.86); } + +.modal-content, +.modal-card { + margin: 0 20px; + max-height: calc(100vh - 160px); + overflow: auto; + position: relative; + width: 100%; } + @media screen and (min-width: 769px), print { + .modal-content, + .modal-card { + margin: 0 auto; + max-height: calc(100vh - 40px); + width: 640px; } } +.modal-close { + background: none; + height: 40px; + position: fixed; + right: 20px; + top: 20px; + width: 40px; } + +.modal-card { + display: flex; + flex-direction: column; + max-height: calc(100vh - 40px); + overflow: hidden; + -ms-overflow-y: visible; } + +.modal-card-head, +.modal-card-foot { + align-items: center; + background-color: whitesmoke; + display: flex; + flex-shrink: 0; + justify-content: flex-start; + padding: 20px; + position: relative; } + +.modal-card-head { + border-bottom: 1px solid #dbdbdb; + border-top-left-radius: 6px; + border-top-right-radius: 6px; } + +.modal-card-title { + color: #222222; + flex-grow: 1; + flex-shrink: 0; + font-size: 1.5rem; + line-height: 1; } + +.modal-card-foot { + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; + border-top: 1px solid #dbdbdb; } + .modal-card-foot .button:not(:last-child) { + margin-right: 0.5em; } + +.modal-card-body { + -webkit-overflow-scrolling: touch; + background-color: white; + flex-grow: 1; + flex-shrink: 1; + overflow: auto; + padding: 20px; } + +.navbar { + background-color: white; + min-height: 3.25rem; + position: relative; + z-index: 30; } + .navbar.is-white { + background-color: white; + color: #0a0a0a; } + .navbar.is-white .navbar-brand > .navbar-item, + .navbar.is-white .navbar-brand .navbar-link { + color: #0a0a0a; } + .navbar.is-white .navbar-brand > a.navbar-item:focus, .navbar.is-white .navbar-brand > a.navbar-item:hover, .navbar.is-white .navbar-brand > a.navbar-item.is-active, + .navbar.is-white .navbar-brand .navbar-link:focus, + .navbar.is-white .navbar-brand .navbar-link:hover, + .navbar.is-white .navbar-brand .navbar-link.is-active { + background-color: #f2f2f2; + color: #0a0a0a; } + .navbar.is-white .navbar-brand .navbar-link::after { + border-color: #0a0a0a; } + .navbar.is-white .navbar-burger { + color: #0a0a0a; } + @media screen and (min-width: 1056px) { + .navbar.is-white .navbar-start > .navbar-item, + .navbar.is-white .navbar-start .navbar-link, + .navbar.is-white .navbar-end > .navbar-item, + .navbar.is-white .navbar-end .navbar-link { + color: #0a0a0a; } + .navbar.is-white .navbar-start > a.navbar-item:focus, .navbar.is-white .navbar-start > a.navbar-item:hover, .navbar.is-white .navbar-start > a.navbar-item.is-active, + .navbar.is-white .navbar-start .navbar-link:focus, + .navbar.is-white .navbar-start .navbar-link:hover, + .navbar.is-white .navbar-start .navbar-link.is-active, + .navbar.is-white .navbar-end > a.navbar-item:focus, + .navbar.is-white .navbar-end > a.navbar-item:hover, + .navbar.is-white .navbar-end > a.navbar-item.is-active, + .navbar.is-white .navbar-end .navbar-link:focus, + .navbar.is-white .navbar-end .navbar-link:hover, + .navbar.is-white .navbar-end .navbar-link.is-active { + background-color: #f2f2f2; + color: #0a0a0a; } + .navbar.is-white .navbar-start .navbar-link::after, + .navbar.is-white .navbar-end .navbar-link::after { + border-color: #0a0a0a; } + .navbar.is-white .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #f2f2f2; + color: #0a0a0a; } + .navbar.is-white .navbar-dropdown a.navbar-item.is-active { + background-color: white; + color: #0a0a0a; } } + .navbar.is-black { + background-color: #0a0a0a; + color: white; } + .navbar.is-black .navbar-brand > .navbar-item, + .navbar.is-black .navbar-brand .navbar-link { + color: white; } + .navbar.is-black .navbar-brand > a.navbar-item:focus, .navbar.is-black .navbar-brand > a.navbar-item:hover, .navbar.is-black .navbar-brand > a.navbar-item.is-active, + .navbar.is-black .navbar-brand .navbar-link:focus, + .navbar.is-black .navbar-brand .navbar-link:hover, + .navbar.is-black .navbar-brand .navbar-link.is-active { + background-color: black; + color: white; } + .navbar.is-black .navbar-brand .navbar-link::after { + border-color: white; } + .navbar.is-black .navbar-burger { + color: white; } + @media screen and (min-width: 1056px) { + .navbar.is-black .navbar-start > .navbar-item, + .navbar.is-black .navbar-start .navbar-link, + .navbar.is-black .navbar-end > .navbar-item, + .navbar.is-black .navbar-end .navbar-link { + color: white; } + .navbar.is-black .navbar-start > a.navbar-item:focus, .navbar.is-black .navbar-start > a.navbar-item:hover, .navbar.is-black .navbar-start > a.navbar-item.is-active, + .navbar.is-black .navbar-start .navbar-link:focus, + .navbar.is-black .navbar-start .navbar-link:hover, + .navbar.is-black .navbar-start .navbar-link.is-active, + .navbar.is-black .navbar-end > a.navbar-item:focus, + .navbar.is-black .navbar-end > a.navbar-item:hover, + .navbar.is-black .navbar-end > a.navbar-item.is-active, + .navbar.is-black .navbar-end .navbar-link:focus, + .navbar.is-black .navbar-end .navbar-link:hover, + .navbar.is-black .navbar-end .navbar-link.is-active { + background-color: black; + color: white; } + .navbar.is-black .navbar-start .navbar-link::after, + .navbar.is-black .navbar-end .navbar-link::after { + border-color: white; } + .navbar.is-black .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link { + background-color: black; + color: white; } + .navbar.is-black .navbar-dropdown a.navbar-item.is-active { + background-color: #0a0a0a; + color: white; } } + .navbar.is-light { + background-color: whitesmoke; + color: #363636; } + .navbar.is-light .navbar-brand > .navbar-item, + .navbar.is-light .navbar-brand .navbar-link { + color: #363636; } + .navbar.is-light .navbar-brand > a.navbar-item:focus, .navbar.is-light .navbar-brand > a.navbar-item:hover, .navbar.is-light .navbar-brand > a.navbar-item.is-active, + .navbar.is-light .navbar-brand .navbar-link:focus, + .navbar.is-light .navbar-brand .navbar-link:hover, + .navbar.is-light .navbar-brand .navbar-link.is-active { + background-color: #e8e8e8; + color: #363636; } + .navbar.is-light .navbar-brand .navbar-link::after { + border-color: #363636; } + .navbar.is-light .navbar-burger { + color: #363636; } + @media screen and (min-width: 1056px) { + .navbar.is-light .navbar-start > .navbar-item, + .navbar.is-light .navbar-start .navbar-link, + .navbar.is-light .navbar-end > .navbar-item, + .navbar.is-light .navbar-end .navbar-link { + color: #363636; } + .navbar.is-light .navbar-start > a.navbar-item:focus, .navbar.is-light .navbar-start > a.navbar-item:hover, .navbar.is-light .navbar-start > a.navbar-item.is-active, + .navbar.is-light .navbar-start .navbar-link:focus, + .navbar.is-light .navbar-start .navbar-link:hover, + .navbar.is-light .navbar-start .navbar-link.is-active, + .navbar.is-light .navbar-end > a.navbar-item:focus, + .navbar.is-light .navbar-end > a.navbar-item:hover, + .navbar.is-light .navbar-end > a.navbar-item.is-active, + .navbar.is-light .navbar-end .navbar-link:focus, + .navbar.is-light .navbar-end .navbar-link:hover, + .navbar.is-light .navbar-end .navbar-link.is-active { + background-color: #e8e8e8; + color: #363636; } + .navbar.is-light .navbar-start .navbar-link::after, + .navbar.is-light .navbar-end .navbar-link::after { + border-color: #363636; } + .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #e8e8e8; + color: #363636; } + .navbar.is-light .navbar-dropdown a.navbar-item.is-active { + background-color: whitesmoke; + color: #363636; } } + .navbar.is-dark, .content kbd.navbar { + background-color: #363636; + color: whitesmoke; } + .navbar.is-dark .navbar-brand > .navbar-item, .content kbd.navbar .navbar-brand > .navbar-item, + .navbar.is-dark .navbar-brand .navbar-link, + .content kbd.navbar .navbar-brand .navbar-link { + color: whitesmoke; } + .navbar.is-dark .navbar-brand > a.navbar-item:focus, .content kbd.navbar .navbar-brand > a.navbar-item:focus, .navbar.is-dark .navbar-brand > a.navbar-item:hover, .content kbd.navbar .navbar-brand > a.navbar-item:hover, .navbar.is-dark .navbar-brand > a.navbar-item.is-active, .content kbd.navbar .navbar-brand > a.navbar-item.is-active, + .navbar.is-dark .navbar-brand .navbar-link:focus, + .content kbd.navbar .navbar-brand .navbar-link:focus, + .navbar.is-dark .navbar-brand .navbar-link:hover, + .content kbd.navbar .navbar-brand .navbar-link:hover, + .navbar.is-dark .navbar-brand .navbar-link.is-active, + .content kbd.navbar .navbar-brand .navbar-link.is-active { + background-color: #292929; + color: whitesmoke; } + .navbar.is-dark .navbar-brand .navbar-link::after, .content kbd.navbar .navbar-brand .navbar-link::after { + border-color: whitesmoke; } + .navbar.is-dark .navbar-burger, .content kbd.navbar .navbar-burger { + color: whitesmoke; } + @media screen and (min-width: 1056px) { + .navbar.is-dark .navbar-start > .navbar-item, .content kbd.navbar .navbar-start > .navbar-item, + .navbar.is-dark .navbar-start .navbar-link, + .content kbd.navbar .navbar-start .navbar-link, + .navbar.is-dark .navbar-end > .navbar-item, + .content kbd.navbar .navbar-end > .navbar-item, + .navbar.is-dark .navbar-end .navbar-link, + .content kbd.navbar .navbar-end .navbar-link { + color: whitesmoke; } + .navbar.is-dark .navbar-start > a.navbar-item:focus, .content kbd.navbar .navbar-start > a.navbar-item:focus, .navbar.is-dark .navbar-start > a.navbar-item:hover, .content kbd.navbar .navbar-start > a.navbar-item:hover, .navbar.is-dark .navbar-start > a.navbar-item.is-active, .content kbd.navbar .navbar-start > a.navbar-item.is-active, + .navbar.is-dark .navbar-start .navbar-link:focus, + .content kbd.navbar .navbar-start .navbar-link:focus, + .navbar.is-dark .navbar-start .navbar-link:hover, + .content kbd.navbar .navbar-start .navbar-link:hover, + .navbar.is-dark .navbar-start .navbar-link.is-active, + .content kbd.navbar .navbar-start .navbar-link.is-active, + .navbar.is-dark .navbar-end > a.navbar-item:focus, + .content kbd.navbar .navbar-end > a.navbar-item:focus, + .navbar.is-dark .navbar-end > a.navbar-item:hover, + .content kbd.navbar .navbar-end > a.navbar-item:hover, + .navbar.is-dark .navbar-end > a.navbar-item.is-active, + .content kbd.navbar .navbar-end > a.navbar-item.is-active, + .navbar.is-dark .navbar-end .navbar-link:focus, + .content kbd.navbar .navbar-end .navbar-link:focus, + .navbar.is-dark .navbar-end .navbar-link:hover, + .content kbd.navbar .navbar-end .navbar-link:hover, + .navbar.is-dark .navbar-end .navbar-link.is-active, + .content kbd.navbar .navbar-end .navbar-link.is-active { + background-color: #292929; + color: whitesmoke; } + .navbar.is-dark .navbar-start .navbar-link::after, .content kbd.navbar .navbar-start .navbar-link::after, + .navbar.is-dark .navbar-end .navbar-link::after, + .content kbd.navbar .navbar-end .navbar-link::after { + border-color: whitesmoke; } + .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link, .content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link, + .content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link, + .content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #292929; + color: whitesmoke; } + .navbar.is-dark .navbar-dropdown a.navbar-item.is-active, .content kbd.navbar .navbar-dropdown a.navbar-item.is-active { + background-color: #363636; + color: whitesmoke; } } + .navbar.is-primary, .docstring > section > a.navbar.docs-sourcelink { + background-color: #4eb5de; + color: #fff; } + .navbar.is-primary .navbar-brand > .navbar-item, .docstring > section > a.navbar.docs-sourcelink .navbar-brand > .navbar-item, + .navbar.is-primary .navbar-brand .navbar-link, + .docstring > section > a.navbar.docs-sourcelink .navbar-brand .navbar-link { + color: #fff; } + .navbar.is-primary .navbar-brand > a.navbar-item:focus, .docstring > section > a.navbar.docs-sourcelink .navbar-brand > a.navbar-item:focus, .navbar.is-primary .navbar-brand > a.navbar-item:hover, .docstring > section > a.navbar.docs-sourcelink .navbar-brand > a.navbar-item:hover, .navbar.is-primary .navbar-brand > a.navbar-item.is-active, .docstring > section > a.navbar.docs-sourcelink .navbar-brand > a.navbar-item.is-active, + .navbar.is-primary .navbar-brand .navbar-link:focus, + .docstring > section > a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus, + .navbar.is-primary .navbar-brand .navbar-link:hover, + .docstring > section > a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover, + .navbar.is-primary .navbar-brand .navbar-link.is-active, + .docstring > section > a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active { + background-color: #39acda; + color: #fff; } + .navbar.is-primary .navbar-brand .navbar-link::after, .docstring > section > a.navbar.docs-sourcelink .navbar-brand .navbar-link::after { + border-color: #fff; } + .navbar.is-primary .navbar-burger, .docstring > section > a.navbar.docs-sourcelink .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + .navbar.is-primary .navbar-start > .navbar-item, .docstring > section > a.navbar.docs-sourcelink .navbar-start > .navbar-item, + .navbar.is-primary .navbar-start .navbar-link, + .docstring > section > a.navbar.docs-sourcelink .navbar-start .navbar-link, + .navbar.is-primary .navbar-end > .navbar-item, + .docstring > section > a.navbar.docs-sourcelink .navbar-end > .navbar-item, + .navbar.is-primary .navbar-end .navbar-link, + .docstring > section > a.navbar.docs-sourcelink .navbar-end .navbar-link { + color: #fff; } + .navbar.is-primary .navbar-start > a.navbar-item:focus, .docstring > section > a.navbar.docs-sourcelink .navbar-start > a.navbar-item:focus, .navbar.is-primary .navbar-start > a.navbar-item:hover, .docstring > section > a.navbar.docs-sourcelink .navbar-start > a.navbar-item:hover, .navbar.is-primary .navbar-start > a.navbar-item.is-active, .docstring > section > a.navbar.docs-sourcelink .navbar-start > a.navbar-item.is-active, + .navbar.is-primary .navbar-start .navbar-link:focus, + .docstring > section > a.navbar.docs-sourcelink .navbar-start .navbar-link:focus, + .navbar.is-primary .navbar-start .navbar-link:hover, + .docstring > section > a.navbar.docs-sourcelink .navbar-start .navbar-link:hover, + .navbar.is-primary .navbar-start .navbar-link.is-active, + .docstring > section > a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active, + .navbar.is-primary .navbar-end > a.navbar-item:focus, + .docstring > section > a.navbar.docs-sourcelink .navbar-end > a.navbar-item:focus, + .navbar.is-primary .navbar-end > a.navbar-item:hover, + .docstring > section > a.navbar.docs-sourcelink .navbar-end > a.navbar-item:hover, + .navbar.is-primary .navbar-end > a.navbar-item.is-active, + .docstring > section > a.navbar.docs-sourcelink .navbar-end > a.navbar-item.is-active, + .navbar.is-primary .navbar-end .navbar-link:focus, + .docstring > section > a.navbar.docs-sourcelink .navbar-end .navbar-link:focus, + .navbar.is-primary .navbar-end .navbar-link:hover, + .docstring > section > a.navbar.docs-sourcelink .navbar-end .navbar-link:hover, + .navbar.is-primary .navbar-end .navbar-link.is-active, + .docstring > section > a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active { + background-color: #39acda; + color: #fff; } + .navbar.is-primary .navbar-start .navbar-link::after, .docstring > section > a.navbar.docs-sourcelink .navbar-start .navbar-link::after, + .navbar.is-primary .navbar-end .navbar-link::after, + .docstring > section > a.navbar.docs-sourcelink .navbar-end .navbar-link::after { + border-color: #fff; } + .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link, .docstring > section > a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link, + .docstring > section > a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link, + .docstring > section > a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #39acda; + color: #fff; } + .navbar.is-primary .navbar-dropdown a.navbar-item.is-active, .docstring > section > a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active { + background-color: #4eb5de; + color: #fff; } } + .navbar.is-link { + background-color: #2e63b8; + color: #fff; } + .navbar.is-link .navbar-brand > .navbar-item, + .navbar.is-link .navbar-brand .navbar-link { + color: #fff; } + .navbar.is-link .navbar-brand > a.navbar-item:focus, .navbar.is-link .navbar-brand > a.navbar-item:hover, .navbar.is-link .navbar-brand > a.navbar-item.is-active, + .navbar.is-link .navbar-brand .navbar-link:focus, + .navbar.is-link .navbar-brand .navbar-link:hover, + .navbar.is-link .navbar-brand .navbar-link.is-active { + background-color: #2958a4; + color: #fff; } + .navbar.is-link .navbar-brand .navbar-link::after { + border-color: #fff; } + .navbar.is-link .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + .navbar.is-link .navbar-start > .navbar-item, + .navbar.is-link .navbar-start .navbar-link, + .navbar.is-link .navbar-end > .navbar-item, + .navbar.is-link .navbar-end .navbar-link { + color: #fff; } + .navbar.is-link .navbar-start > a.navbar-item:focus, .navbar.is-link .navbar-start > a.navbar-item:hover, .navbar.is-link .navbar-start > a.navbar-item.is-active, + .navbar.is-link .navbar-start .navbar-link:focus, + .navbar.is-link .navbar-start .navbar-link:hover, + .navbar.is-link .navbar-start .navbar-link.is-active, + .navbar.is-link .navbar-end > a.navbar-item:focus, + .navbar.is-link .navbar-end > a.navbar-item:hover, + .navbar.is-link .navbar-end > a.navbar-item.is-active, + .navbar.is-link .navbar-end .navbar-link:focus, + .navbar.is-link .navbar-end .navbar-link:hover, + .navbar.is-link .navbar-end .navbar-link.is-active { + background-color: #2958a4; + color: #fff; } + .navbar.is-link .navbar-start .navbar-link::after, + .navbar.is-link .navbar-end .navbar-link::after { + border-color: #fff; } + .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #2958a4; + color: #fff; } + .navbar.is-link .navbar-dropdown a.navbar-item.is-active { + background-color: #2e63b8; + color: #fff; } } + .navbar.is-info { + background-color: #209cee; + color: #fff; } + .navbar.is-info .navbar-brand > .navbar-item, + .navbar.is-info .navbar-brand .navbar-link { + color: #fff; } + .navbar.is-info .navbar-brand > a.navbar-item:focus, .navbar.is-info .navbar-brand > a.navbar-item:hover, .navbar.is-info .navbar-brand > a.navbar-item.is-active, + .navbar.is-info .navbar-brand .navbar-link:focus, + .navbar.is-info .navbar-brand .navbar-link:hover, + .navbar.is-info .navbar-brand .navbar-link.is-active { + background-color: #1190e3; + color: #fff; } + .navbar.is-info .navbar-brand .navbar-link::after { + border-color: #fff; } + .navbar.is-info .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + .navbar.is-info .navbar-start > .navbar-item, + .navbar.is-info .navbar-start .navbar-link, + .navbar.is-info .navbar-end > .navbar-item, + .navbar.is-info .navbar-end .navbar-link { + color: #fff; } + .navbar.is-info .navbar-start > a.navbar-item:focus, .navbar.is-info .navbar-start > a.navbar-item:hover, .navbar.is-info .navbar-start > a.navbar-item.is-active, + .navbar.is-info .navbar-start .navbar-link:focus, + .navbar.is-info .navbar-start .navbar-link:hover, + .navbar.is-info .navbar-start .navbar-link.is-active, + .navbar.is-info .navbar-end > a.navbar-item:focus, + .navbar.is-info .navbar-end > a.navbar-item:hover, + .navbar.is-info .navbar-end > a.navbar-item.is-active, + .navbar.is-info .navbar-end .navbar-link:focus, + .navbar.is-info .navbar-end .navbar-link:hover, + .navbar.is-info .navbar-end .navbar-link.is-active { + background-color: #1190e3; + color: #fff; } + .navbar.is-info .navbar-start .navbar-link::after, + .navbar.is-info .navbar-end .navbar-link::after { + border-color: #fff; } + .navbar.is-info .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #1190e3; + color: #fff; } + .navbar.is-info .navbar-dropdown a.navbar-item.is-active { + background-color: #209cee; + color: #fff; } } + .navbar.is-success { + background-color: #22c35b; + color: #fff; } + .navbar.is-success .navbar-brand > .navbar-item, + .navbar.is-success .navbar-brand .navbar-link { + color: #fff; } + .navbar.is-success .navbar-brand > a.navbar-item:focus, .navbar.is-success .navbar-brand > a.navbar-item:hover, .navbar.is-success .navbar-brand > a.navbar-item.is-active, + .navbar.is-success .navbar-brand .navbar-link:focus, + .navbar.is-success .navbar-brand .navbar-link:hover, + .navbar.is-success .navbar-brand .navbar-link.is-active { + background-color: #1ead51; + color: #fff; } + .navbar.is-success .navbar-brand .navbar-link::after { + border-color: #fff; } + .navbar.is-success .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + .navbar.is-success .navbar-start > .navbar-item, + .navbar.is-success .navbar-start .navbar-link, + .navbar.is-success .navbar-end > .navbar-item, + .navbar.is-success .navbar-end .navbar-link { + color: #fff; } + .navbar.is-success .navbar-start > a.navbar-item:focus, .navbar.is-success .navbar-start > a.navbar-item:hover, .navbar.is-success .navbar-start > a.navbar-item.is-active, + .navbar.is-success .navbar-start .navbar-link:focus, + .navbar.is-success .navbar-start .navbar-link:hover, + .navbar.is-success .navbar-start .navbar-link.is-active, + .navbar.is-success .navbar-end > a.navbar-item:focus, + .navbar.is-success .navbar-end > a.navbar-item:hover, + .navbar.is-success .navbar-end > a.navbar-item.is-active, + .navbar.is-success .navbar-end .navbar-link:focus, + .navbar.is-success .navbar-end .navbar-link:hover, + .navbar.is-success .navbar-end .navbar-link.is-active { + background-color: #1ead51; + color: #fff; } + .navbar.is-success .navbar-start .navbar-link::after, + .navbar.is-success .navbar-end .navbar-link::after { + border-color: #fff; } + .navbar.is-success .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #1ead51; + color: #fff; } + .navbar.is-success .navbar-dropdown a.navbar-item.is-active { + background-color: #22c35b; + color: #fff; } } + .navbar.is-warning { + background-color: #ffdd57; + color: rgba(0, 0, 0, 0.7); } + .navbar.is-warning .navbar-brand > .navbar-item, + .navbar.is-warning .navbar-brand .navbar-link { + color: rgba(0, 0, 0, 0.7); } + .navbar.is-warning .navbar-brand > a.navbar-item:focus, .navbar.is-warning .navbar-brand > a.navbar-item:hover, .navbar.is-warning .navbar-brand > a.navbar-item.is-active, + .navbar.is-warning .navbar-brand .navbar-link:focus, + .navbar.is-warning .navbar-brand .navbar-link:hover, + .navbar.is-warning .navbar-brand .navbar-link.is-active { + background-color: #ffd83e; + color: rgba(0, 0, 0, 0.7); } + .navbar.is-warning .navbar-brand .navbar-link::after { + border-color: rgba(0, 0, 0, 0.7); } + .navbar.is-warning .navbar-burger { + color: rgba(0, 0, 0, 0.7); } + @media screen and (min-width: 1056px) { + .navbar.is-warning .navbar-start > .navbar-item, + .navbar.is-warning .navbar-start .navbar-link, + .navbar.is-warning .navbar-end > .navbar-item, + .navbar.is-warning .navbar-end .navbar-link { + color: rgba(0, 0, 0, 0.7); } + .navbar.is-warning .navbar-start > a.navbar-item:focus, .navbar.is-warning .navbar-start > a.navbar-item:hover, .navbar.is-warning .navbar-start > a.navbar-item.is-active, + .navbar.is-warning .navbar-start .navbar-link:focus, + .navbar.is-warning .navbar-start .navbar-link:hover, + .navbar.is-warning .navbar-start .navbar-link.is-active, + .navbar.is-warning .navbar-end > a.navbar-item:focus, + .navbar.is-warning .navbar-end > a.navbar-item:hover, + .navbar.is-warning .navbar-end > a.navbar-item.is-active, + .navbar.is-warning .navbar-end .navbar-link:focus, + .navbar.is-warning .navbar-end .navbar-link:hover, + .navbar.is-warning .navbar-end .navbar-link.is-active { + background-color: #ffd83e; + color: rgba(0, 0, 0, 0.7); } + .navbar.is-warning .navbar-start .navbar-link::after, + .navbar.is-warning .navbar-end .navbar-link::after { + border-color: rgba(0, 0, 0, 0.7); } + .navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #ffd83e; + color: rgba(0, 0, 0, 0.7); } + .navbar.is-warning .navbar-dropdown a.navbar-item.is-active { + background-color: #ffdd57; + color: rgba(0, 0, 0, 0.7); } } + .navbar.is-danger { + background-color: #da0b00; + color: #fff; } + .navbar.is-danger .navbar-brand > .navbar-item, + .navbar.is-danger .navbar-brand .navbar-link { + color: #fff; } + .navbar.is-danger .navbar-brand > a.navbar-item:focus, .navbar.is-danger .navbar-brand > a.navbar-item:hover, .navbar.is-danger .navbar-brand > a.navbar-item.is-active, + .navbar.is-danger .navbar-brand .navbar-link:focus, + .navbar.is-danger .navbar-brand .navbar-link:hover, + .navbar.is-danger .navbar-brand .navbar-link.is-active { + background-color: #c10a00; + color: #fff; } + .navbar.is-danger .navbar-brand .navbar-link::after { + border-color: #fff; } + .navbar.is-danger .navbar-burger { + color: #fff; } + @media screen and (min-width: 1056px) { + .navbar.is-danger .navbar-start > .navbar-item, + .navbar.is-danger .navbar-start .navbar-link, + .navbar.is-danger .navbar-end > .navbar-item, + .navbar.is-danger .navbar-end .navbar-link { + color: #fff; } + .navbar.is-danger .navbar-start > a.navbar-item:focus, .navbar.is-danger .navbar-start > a.navbar-item:hover, .navbar.is-danger .navbar-start > a.navbar-item.is-active, + .navbar.is-danger .navbar-start .navbar-link:focus, + .navbar.is-danger .navbar-start .navbar-link:hover, + .navbar.is-danger .navbar-start .navbar-link.is-active, + .navbar.is-danger .navbar-end > a.navbar-item:focus, + .navbar.is-danger .navbar-end > a.navbar-item:hover, + .navbar.is-danger .navbar-end > a.navbar-item.is-active, + .navbar.is-danger .navbar-end .navbar-link:focus, + .navbar.is-danger .navbar-end .navbar-link:hover, + .navbar.is-danger .navbar-end .navbar-link.is-active { + background-color: #c10a00; + color: #fff; } + .navbar.is-danger .navbar-start .navbar-link::after, + .navbar.is-danger .navbar-end .navbar-link::after { + border-color: #fff; } + .navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link, + .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link, + .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #c10a00; + color: #fff; } + .navbar.is-danger .navbar-dropdown a.navbar-item.is-active { + background-color: #da0b00; + color: #fff; } } + .navbar > .container { + align-items: stretch; + display: flex; + min-height: 3.25rem; + width: 100%; } + .navbar.has-shadow { + box-shadow: 0 2px 0 0 whitesmoke; } + .navbar.is-fixed-bottom, .navbar.is-fixed-top { + left: 0; + position: fixed; + right: 0; + z-index: 30; } + .navbar.is-fixed-bottom { + bottom: 0; } + .navbar.is-fixed-bottom.has-shadow { + box-shadow: 0 -2px 0 0 whitesmoke; } + .navbar.is-fixed-top { + top: 0; } + +html.has-navbar-fixed-top, +body.has-navbar-fixed-top { + padding-top: 3.25rem; } + +html.has-navbar-fixed-bottom, +body.has-navbar-fixed-bottom { + padding-bottom: 3.25rem; } + +.navbar-brand, +.navbar-tabs { + align-items: stretch; + display: flex; + flex-shrink: 0; + min-height: 3.25rem; } + +.navbar-brand a.navbar-item:focus, .navbar-brand a.navbar-item:hover { + background-color: transparent; } + +.navbar-tabs { + -webkit-overflow-scrolling: touch; + max-width: 100vw; + overflow-x: auto; + overflow-y: hidden; } + +.navbar-burger { + color: #4a4a4a; + cursor: pointer; + display: block; + height: 3.25rem; + position: relative; + width: 3.25rem; + margin-left: auto; } + .navbar-burger span { + background-color: currentColor; + display: block; + height: 1px; + left: calc(50% - 8px); + position: absolute; + transform-origin: center; + transition-duration: 86ms; + transition-property: background-color, opacity, transform; + transition-timing-function: ease-out; + width: 16px; } + .navbar-burger span:nth-child(1) { + top: calc(50% - 6px); } + .navbar-burger span:nth-child(2) { + top: calc(50% - 1px); } + .navbar-burger span:nth-child(3) { + top: calc(50% + 4px); } + .navbar-burger:hover { + background-color: rgba(0, 0, 0, 0.05); } + .navbar-burger.is-active span:nth-child(1) { + transform: translateY(5px) rotate(45deg); } + .navbar-burger.is-active span:nth-child(2) { + opacity: 0; } + .navbar-burger.is-active span:nth-child(3) { + transform: translateY(-5px) rotate(-45deg); } + +.navbar-menu { + display: none; } + +.navbar-item, +.navbar-link { + color: #4a4a4a; + display: block; + line-height: 1.5; + padding: 0.5rem 0.75rem; + position: relative; } + .navbar-item .icon:only-child, + .navbar-link .icon:only-child { + margin-left: -0.25rem; + margin-right: -0.25rem; } + +a.navbar-item, +.navbar-link { + cursor: pointer; } + a.navbar-item:focus, a.navbar-item:focus-within, a.navbar-item:hover, a.navbar-item.is-active, + .navbar-link:focus, + .navbar-link:focus-within, + .navbar-link:hover, + .navbar-link.is-active { + background-color: #fafafa; + color: #2e63b8; } + +.navbar-item { + display: block; + flex-grow: 0; + flex-shrink: 0; } + .navbar-item img { + max-height: 1.75rem; } + .navbar-item.has-dropdown { + padding: 0; } + .navbar-item.is-expanded { + flex-grow: 1; + flex-shrink: 1; } + .navbar-item.is-tab { + border-bottom: 1px solid transparent; + min-height: 3.25rem; + padding-bottom: calc(0.5rem - 1px); } + .navbar-item.is-tab:focus, .navbar-item.is-tab:hover { + background-color: transparent; + border-bottom-color: #2e63b8; } + .navbar-item.is-tab.is-active { + background-color: transparent; + border-bottom-color: #2e63b8; + border-bottom-style: solid; + border-bottom-width: 3px; + color: #2e63b8; + padding-bottom: calc(0.5rem - 3px); } + +.navbar-content { + flex-grow: 1; + flex-shrink: 1; } + +.navbar-link:not(.is-arrowless) { + padding-right: 2.5em; } + .navbar-link:not(.is-arrowless)::after { + border-color: #2e63b8; + margin-top: -0.375em; + right: 1.125em; } + +.navbar-dropdown { + font-size: 0.875rem; + padding-bottom: 0.5rem; + padding-top: 0.5rem; } + .navbar-dropdown .navbar-item { + padding-left: 1.5rem; + padding-right: 1.5rem; } + +.navbar-divider { + background-color: whitesmoke; + border: none; + display: none; + height: 2px; + margin: 0.5rem 0; } + +@media screen and (max-width: 1055px) { + .navbar > .container { + display: block; } + .navbar-brand .navbar-item, + .navbar-tabs .navbar-item { + align-items: center; + display: flex; } + .navbar-link::after { + display: none; } + .navbar-menu { + background-color: white; + box-shadow: 0 8px 16px rgba(10, 10, 10, 0.1); + padding: 0.5rem 0; } + .navbar-menu.is-active { + display: block; } + .navbar.is-fixed-bottom-touch, .navbar.is-fixed-top-touch { + left: 0; + position: fixed; + right: 0; + z-index: 30; } + .navbar.is-fixed-bottom-touch { + bottom: 0; } + .navbar.is-fixed-bottom-touch.has-shadow { + box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); } + .navbar.is-fixed-top-touch { + top: 0; } + .navbar.is-fixed-top .navbar-menu, .navbar.is-fixed-top-touch .navbar-menu { + -webkit-overflow-scrolling: touch; + max-height: calc(100vh - 3.25rem); + overflow: auto; } + html.has-navbar-fixed-top-touch, + body.has-navbar-fixed-top-touch { + padding-top: 3.25rem; } + html.has-navbar-fixed-bottom-touch, + body.has-navbar-fixed-bottom-touch { + padding-bottom: 3.25rem; } } + +@media screen and (min-width: 1056px) { + .navbar, + .navbar-menu, + .navbar-start, + .navbar-end { + align-items: stretch; + display: flex; } + .navbar { + min-height: 3.25rem; } + .navbar.is-spaced { + padding: 1rem 2rem; } + .navbar.is-spaced .navbar-start, + .navbar.is-spaced .navbar-end { + align-items: center; } + .navbar.is-spaced a.navbar-item, + .navbar.is-spaced .navbar-link { + border-radius: 4px; } + .navbar.is-transparent a.navbar-item:focus, .navbar.is-transparent a.navbar-item:hover, .navbar.is-transparent a.navbar-item.is-active, + .navbar.is-transparent .navbar-link:focus, + .navbar.is-transparent .navbar-link:hover, + .navbar.is-transparent .navbar-link.is-active { + background-color: transparent !important; } + .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link, .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link, .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link, .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link { + background-color: transparent !important; } + .navbar.is-transparent .navbar-dropdown a.navbar-item:focus, .navbar.is-transparent .navbar-dropdown a.navbar-item:hover { + background-color: whitesmoke; + color: #0a0a0a; } + .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active { + background-color: whitesmoke; + color: #2e63b8; } + .navbar-burger { + display: none; } + .navbar-item, + .navbar-link { + align-items: center; + display: flex; } + .navbar-item { + display: flex; } + .navbar-item.has-dropdown { + align-items: stretch; } + .navbar-item.has-dropdown-up .navbar-link::after { + transform: rotate(135deg) translate(0.25em, -0.25em); } + .navbar-item.has-dropdown-up .navbar-dropdown { + border-bottom: 2px solid #dbdbdb; + border-radius: 6px 6px 0 0; + border-top: none; + bottom: 100%; + box-shadow: 0 -8px 8px rgba(10, 10, 10, 0.1); + top: auto; } + .navbar-item.is-active .navbar-dropdown, .navbar-item.is-hoverable:focus .navbar-dropdown, .navbar-item.is-hoverable:focus-within .navbar-dropdown, .navbar-item.is-hoverable:hover .navbar-dropdown { + display: block; } + .navbar.is-spaced .navbar-item.is-active .navbar-dropdown, .navbar-item.is-active .navbar-dropdown.is-boxed, .navbar.is-spaced .navbar-item.is-hoverable:focus .navbar-dropdown, .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed, .navbar.is-spaced .navbar-item.is-hoverable:focus-within .navbar-dropdown, .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed, .navbar.is-spaced .navbar-item.is-hoverable:hover .navbar-dropdown, .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed { + opacity: 1; + pointer-events: auto; + transform: translateY(0); } + .navbar-menu { + flex-grow: 1; + flex-shrink: 0; } + .navbar-start { + justify-content: flex-start; + margin-right: auto; } + .navbar-end { + justify-content: flex-end; + margin-left: auto; } + .navbar-dropdown { + background-color: white; + border-bottom-left-radius: 6px; + border-bottom-right-radius: 6px; + border-top: 2px solid #dbdbdb; + box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1); + display: none; + font-size: 0.875rem; + left: 0; + min-width: 100%; + position: absolute; + top: 100%; + z-index: 20; } + .navbar-dropdown .navbar-item { + padding: 0.375rem 1rem; + white-space: nowrap; } + .navbar-dropdown a.navbar-item { + padding-right: 3rem; } + .navbar-dropdown a.navbar-item:focus, .navbar-dropdown a.navbar-item:hover { + background-color: whitesmoke; + color: #0a0a0a; } + .navbar-dropdown a.navbar-item.is-active { + background-color: whitesmoke; + color: #2e63b8; } + .navbar.is-spaced .navbar-dropdown, .navbar-dropdown.is-boxed { + border-radius: 6px; + border-top: none; + box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); + display: block; + opacity: 0; + pointer-events: none; + top: calc(100% + (-4px)); + transform: translateY(-5px); + transition-duration: 86ms; + transition-property: opacity, transform; } + .navbar-dropdown.is-right { + left: auto; + right: 0; } + .navbar-divider { + display: block; } + .navbar > .container .navbar-brand, + .container > .navbar .navbar-brand { + margin-left: -.75rem; } + .navbar > .container .navbar-menu, + .container > .navbar .navbar-menu { + margin-right: -.75rem; } + .navbar.is-fixed-bottom-desktop, .navbar.is-fixed-top-desktop { + left: 0; + position: fixed; + right: 0; + z-index: 30; } + .navbar.is-fixed-bottom-desktop { + bottom: 0; } + .navbar.is-fixed-bottom-desktop.has-shadow { + box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); } + .navbar.is-fixed-top-desktop { + top: 0; } + html.has-navbar-fixed-top-desktop, + body.has-navbar-fixed-top-desktop { + padding-top: 3.25rem; } + html.has-navbar-fixed-bottom-desktop, + body.has-navbar-fixed-bottom-desktop { + padding-bottom: 3.25rem; } + html.has-spaced-navbar-fixed-top, + body.has-spaced-navbar-fixed-top { + padding-top: 5.25rem; } + html.has-spaced-navbar-fixed-bottom, + body.has-spaced-navbar-fixed-bottom { + padding-bottom: 5.25rem; } + a.navbar-item.is-active, + .navbar-link.is-active { + color: #0a0a0a; } + a.navbar-item.is-active:not(:focus):not(:hover), + .navbar-link.is-active:not(:focus):not(:hover) { + background-color: transparent; } + .navbar-item.has-dropdown:focus .navbar-link, .navbar-item.has-dropdown:hover .navbar-link, .navbar-item.has-dropdown.is-active .navbar-link { + background-color: #fafafa; } } + +.hero.is-fullheight-with-navbar { + min-height: calc(100vh - 3.25rem); } + +.pagination { + font-size: 1rem; + margin: -0.25rem; } + .pagination.is-small, #documenter .docs-sidebar form.docs-search > input.pagination { + font-size: 0.75rem; } + .pagination.is-medium { + font-size: 1.25rem; } + .pagination.is-large { + font-size: 1.5rem; } + .pagination.is-rounded .pagination-previous, #documenter .docs-sidebar form.docs-search > input.pagination .pagination-previous, + .pagination.is-rounded .pagination-next, + #documenter .docs-sidebar form.docs-search > input.pagination .pagination-next { + padding-left: 1em; + padding-right: 1em; + border-radius: 290486px; } + .pagination.is-rounded .pagination-link, #documenter .docs-sidebar form.docs-search > input.pagination .pagination-link { + border-radius: 290486px; } + +.pagination, +.pagination-list { + align-items: center; + display: flex; + justify-content: center; + text-align: center; } + +.pagination-previous, +.pagination-next, +.pagination-link, +.pagination-ellipsis { + font-size: 1em; + justify-content: center; + margin: 0.25rem; + padding-left: 0.5em; + padding-right: 0.5em; + text-align: center; } + +.pagination-previous, +.pagination-next, +.pagination-link { + border-color: #dbdbdb; + color: #363636; + min-width: 2.25em; } + .pagination-previous:hover, + .pagination-next:hover, + .pagination-link:hover { + border-color: #b5b5b5; + color: #363636; } + .pagination-previous:focus, + .pagination-next:focus, + .pagination-link:focus { + border-color: #3c5dcd; } + .pagination-previous:active, + .pagination-next:active, + .pagination-link:active { + box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2); } + .pagination-previous[disabled], + .pagination-next[disabled], + .pagination-link[disabled] { + background-color: #dbdbdb; + border-color: #dbdbdb; + box-shadow: none; + color: #6b6b6b; + opacity: 0.5; } + +.pagination-previous, +.pagination-next { + padding-left: 0.75em; + padding-right: 0.75em; + white-space: nowrap; } + +.pagination-link.is-current { + background-color: #2e63b8; + border-color: #2e63b8; + color: #fff; } + +.pagination-ellipsis { + color: #b5b5b5; + pointer-events: none; } + +.pagination-list { + flex-wrap: wrap; } + +@media screen and (max-width: 768px) { + .pagination { + flex-wrap: wrap; } + .pagination-previous, + .pagination-next { + flex-grow: 1; + flex-shrink: 1; } + .pagination-list li { + flex-grow: 1; + flex-shrink: 1; } } + +@media screen and (min-width: 769px), print { + .pagination-list { + flex-grow: 1; + flex-shrink: 1; + justify-content: flex-start; + order: 1; } + .pagination-previous { + order: 2; } + .pagination-next { + order: 3; } + .pagination { + justify-content: space-between; } + .pagination.is-centered .pagination-previous { + order: 1; } + .pagination.is-centered .pagination-list { + justify-content: center; + order: 2; } + .pagination.is-centered .pagination-next { + order: 3; } + .pagination.is-right .pagination-previous { + order: 1; } + .pagination.is-right .pagination-next { + order: 2; } + .pagination.is-right .pagination-list { + justify-content: flex-end; + order: 3; } } + +.panel { + font-size: 1rem; } + .panel:not(:last-child) { + margin-bottom: 1.5rem; } + +.panel-heading, +.panel-tabs, +.panel-block { + border-bottom: 1px solid #dbdbdb; + border-left: 1px solid #dbdbdb; + border-right: 1px solid #dbdbdb; } + .panel-heading:first-child, + .panel-tabs:first-child, + .panel-block:first-child { + border-top: 1px solid #dbdbdb; } + +.panel-heading { + background-color: whitesmoke; + border-radius: 4px 4px 0 0; + color: #222222; + font-size: 1.25em; + font-weight: 300; + line-height: 1.25; + padding: 0.5em 0.75em; } + +.panel-tabs { + align-items: flex-end; + display: flex; + font-size: 0.875em; + justify-content: center; } + .panel-tabs a { + border-bottom: 1px solid #dbdbdb; + margin-bottom: -1px; + padding: 0.5em; } + .panel-tabs a.is-active { + border-bottom-color: #4a4a4a; + color: #363636; } + +.panel-list a { + color: #222222; } + .panel-list a:hover { + color: #2e63b8; } + +.panel-block { + align-items: center; + color: #222222; + display: flex; + justify-content: flex-start; + padding: 0.5em 0.75em; } + .panel-block input[type="checkbox"] { + margin-right: 0.75em; } + .panel-block > .control { + flex-grow: 1; + flex-shrink: 1; + width: 100%; } + .panel-block.is-wrapped { + flex-wrap: wrap; } + .panel-block.is-active { + border-left-color: #2e63b8; + color: #363636; } + .panel-block.is-active .panel-icon { + color: #2e63b8; } + +a.panel-block, +label.panel-block { + cursor: pointer; } + a.panel-block:hover, + label.panel-block:hover { + background-color: whitesmoke; } + +.panel-icon { + display: inline-block; + font-size: 14px; + height: 1em; + line-height: 1em; + text-align: center; + vertical-align: top; + width: 1em; + color: #6b6b6b; + margin-right: 0.75em; } + .panel-icon .fa { + font-size: inherit; + line-height: inherit; } + +.tabs { + -webkit-overflow-scrolling: touch; + align-items: stretch; + display: flex; + font-size: 1rem; + justify-content: space-between; + overflow: hidden; + overflow-x: auto; + white-space: nowrap; } + .tabs a { + align-items: center; + border-bottom-color: #dbdbdb; + border-bottom-style: solid; + border-bottom-width: 1px; + color: #222222; + display: flex; + justify-content: center; + margin-bottom: -1px; + padding: 0.5em 1em; + vertical-align: top; } + .tabs a:hover { + border-bottom-color: #222222; + color: #222222; } + .tabs li { + display: block; } + .tabs li.is-active a { + border-bottom-color: #2e63b8; + color: #2e63b8; } + .tabs ul { + align-items: center; + border-bottom-color: #dbdbdb; + border-bottom-style: solid; + border-bottom-width: 1px; + display: flex; + flex-grow: 1; + flex-shrink: 0; + justify-content: flex-start; } + .tabs ul.is-left { + padding-right: 0.75em; } + .tabs ul.is-center { + flex: none; + justify-content: center; + padding-left: 0.75em; + padding-right: 0.75em; } + .tabs ul.is-right { + justify-content: flex-end; + padding-left: 0.75em; } + .tabs .icon:first-child { + margin-right: 0.5em; } + .tabs .icon:last-child { + margin-left: 0.5em; } + .tabs.is-centered ul { + justify-content: center; } + .tabs.is-right ul { + justify-content: flex-end; } + .tabs.is-boxed a { + border: 1px solid transparent; + border-radius: 4px 4px 0 0; } + .tabs.is-boxed a:hover { + background-color: whitesmoke; + border-bottom-color: #dbdbdb; } + .tabs.is-boxed li.is-active a { + background-color: white; + border-color: #dbdbdb; + border-bottom-color: transparent !important; } + .tabs.is-fullwidth li { + flex-grow: 1; + flex-shrink: 0; } + .tabs.is-toggle a { + border-color: #dbdbdb; + border-style: solid; + border-width: 1px; + margin-bottom: 0; + position: relative; } + .tabs.is-toggle a:hover { + background-color: whitesmoke; + border-color: #b5b5b5; + z-index: 2; } + .tabs.is-toggle li + li { + margin-left: -1px; } + .tabs.is-toggle li:first-child a { + border-radius: 4px 0 0 4px; } + .tabs.is-toggle li:last-child a { + border-radius: 0 4px 4px 0; } + .tabs.is-toggle li.is-active a { + background-color: #2e63b8; + border-color: #2e63b8; + color: #fff; + z-index: 1; } + .tabs.is-toggle ul { + border-bottom: none; } + .tabs.is-toggle.is-toggle-rounded li:first-child a { + border-bottom-left-radius: 290486px; + border-top-left-radius: 290486px; + padding-left: 1.25em; } + .tabs.is-toggle.is-toggle-rounded li:last-child a { + border-bottom-right-radius: 290486px; + border-top-right-radius: 290486px; + padding-right: 1.25em; } + .tabs.is-small, #documenter .docs-sidebar form.docs-search > input.tabs { + font-size: 0.75rem; } + .tabs.is-medium { + font-size: 1.25rem; } + .tabs.is-large { + font-size: 1.5rem; } + +.column { + display: block; + flex-basis: 0; + flex-grow: 1; + flex-shrink: 1; + padding: 0.75rem; } + .columns.is-mobile > .column.is-narrow { + flex: none; } + .columns.is-mobile > .column.is-full { + flex: none; + width: 100%; } + .columns.is-mobile > .column.is-three-quarters { + flex: none; + width: 75%; } + .columns.is-mobile > .column.is-two-thirds { + flex: none; + width: 66.6666%; } + .columns.is-mobile > .column.is-half { + flex: none; + width: 50%; } + .columns.is-mobile > .column.is-one-third { + flex: none; + width: 33.3333%; } + .columns.is-mobile > .column.is-one-quarter { + flex: none; + width: 25%; } + .columns.is-mobile > .column.is-one-fifth { + flex: none; + width: 20%; } + .columns.is-mobile > .column.is-two-fifths { + flex: none; + width: 40%; } + .columns.is-mobile > .column.is-three-fifths { + flex: none; + width: 60%; } + .columns.is-mobile > .column.is-four-fifths { + flex: none; + width: 80%; } + .columns.is-mobile > .column.is-offset-three-quarters { + margin-left: 75%; } + .columns.is-mobile > .column.is-offset-two-thirds { + margin-left: 66.6666%; } + .columns.is-mobile > .column.is-offset-half { + margin-left: 50%; } + .columns.is-mobile > .column.is-offset-one-third { + margin-left: 33.3333%; } + .columns.is-mobile > .column.is-offset-one-quarter { + margin-left: 25%; } + .columns.is-mobile > .column.is-offset-one-fifth { + margin-left: 20%; } + .columns.is-mobile > .column.is-offset-two-fifths { + margin-left: 40%; } + .columns.is-mobile > .column.is-offset-three-fifths { + margin-left: 60%; } + .columns.is-mobile > .column.is-offset-four-fifths { + margin-left: 80%; } + .columns.is-mobile > .column.is-0 { + flex: none; + width: 0%; } + .columns.is-mobile > .column.is-offset-0 { + margin-left: 0%; } + .columns.is-mobile > .column.is-1 { + flex: none; + width: 8.3333333333%; } + .columns.is-mobile > .column.is-offset-1 { + margin-left: 8.3333333333%; } + .columns.is-mobile > .column.is-2 { + flex: none; + width: 16.6666666667%; } + .columns.is-mobile > .column.is-offset-2 { + margin-left: 16.6666666667%; } + .columns.is-mobile > .column.is-3 { + flex: none; + width: 25%; } + .columns.is-mobile > .column.is-offset-3 { + margin-left: 25%; } + .columns.is-mobile > .column.is-4 { + flex: none; + width: 33.3333333333%; } + .columns.is-mobile > .column.is-offset-4 { + margin-left: 33.3333333333%; } + .columns.is-mobile > .column.is-5 { + flex: none; + width: 41.6666666667%; } + .columns.is-mobile > .column.is-offset-5 { + margin-left: 41.6666666667%; } + .columns.is-mobile > .column.is-6 { + flex: none; + width: 50%; } + .columns.is-mobile > .column.is-offset-6 { + margin-left: 50%; } + .columns.is-mobile > .column.is-7 { + flex: none; + width: 58.3333333333%; } + .columns.is-mobile > .column.is-offset-7 { + margin-left: 58.3333333333%; } + .columns.is-mobile > .column.is-8 { + flex: none; + width: 66.6666666667%; } + .columns.is-mobile > .column.is-offset-8 { + margin-left: 66.6666666667%; } + .columns.is-mobile > .column.is-9 { + flex: none; + width: 75%; } + .columns.is-mobile > .column.is-offset-9 { + margin-left: 75%; } + .columns.is-mobile > .column.is-10 { + flex: none; + width: 83.3333333333%; } + .columns.is-mobile > .column.is-offset-10 { + margin-left: 83.3333333333%; } + .columns.is-mobile > .column.is-11 { + flex: none; + width: 91.6666666667%; } + .columns.is-mobile > .column.is-offset-11 { + margin-left: 91.6666666667%; } + .columns.is-mobile > .column.is-12 { + flex: none; + width: 100%; } + .columns.is-mobile > .column.is-offset-12 { + margin-left: 100%; } + @media screen and (max-width: 768px) { + .column.is-narrow-mobile { + flex: none; } + .column.is-full-mobile { + flex: none; + width: 100%; } + .column.is-three-quarters-mobile { + flex: none; + width: 75%; } + .column.is-two-thirds-mobile { + flex: none; + width: 66.6666%; } + .column.is-half-mobile { + flex: none; + width: 50%; } + .column.is-one-third-mobile { + flex: none; + width: 33.3333%; } + .column.is-one-quarter-mobile { + flex: none; + width: 25%; } + .column.is-one-fifth-mobile { + flex: none; + width: 20%; } + .column.is-two-fifths-mobile { + flex: none; + width: 40%; } + .column.is-three-fifths-mobile { + flex: none; + width: 60%; } + .column.is-four-fifths-mobile { + flex: none; + width: 80%; } + .column.is-offset-three-quarters-mobile { + margin-left: 75%; } + .column.is-offset-two-thirds-mobile { + margin-left: 66.6666%; } + .column.is-offset-half-mobile { + margin-left: 50%; } + .column.is-offset-one-third-mobile { + margin-left: 33.3333%; } + .column.is-offset-one-quarter-mobile { + margin-left: 25%; } + .column.is-offset-one-fifth-mobile { + margin-left: 20%; } + .column.is-offset-two-fifths-mobile { + margin-left: 40%; } + .column.is-offset-three-fifths-mobile { + margin-left: 60%; } + .column.is-offset-four-fifths-mobile { + margin-left: 80%; } + .column.is-0-mobile { + flex: none; + width: 0%; } + .column.is-offset-0-mobile { + margin-left: 0%; } + .column.is-1-mobile { + flex: none; + width: 8.3333333333%; } + .column.is-offset-1-mobile { + margin-left: 8.3333333333%; } + .column.is-2-mobile { + flex: none; + width: 16.6666666667%; } + .column.is-offset-2-mobile { + margin-left: 16.6666666667%; } + .column.is-3-mobile { + flex: none; + width: 25%; } + .column.is-offset-3-mobile { + margin-left: 25%; } + .column.is-4-mobile { + flex: none; + width: 33.3333333333%; } + .column.is-offset-4-mobile { + margin-left: 33.3333333333%; } + .column.is-5-mobile { + flex: none; + width: 41.6666666667%; } + .column.is-offset-5-mobile { + margin-left: 41.6666666667%; } + .column.is-6-mobile { + flex: none; + width: 50%; } + .column.is-offset-6-mobile { + margin-left: 50%; } + .column.is-7-mobile { + flex: none; + width: 58.3333333333%; } + .column.is-offset-7-mobile { + margin-left: 58.3333333333%; } + .column.is-8-mobile { + flex: none; + width: 66.6666666667%; } + .column.is-offset-8-mobile { + margin-left: 66.6666666667%; } + .column.is-9-mobile { + flex: none; + width: 75%; } + .column.is-offset-9-mobile { + margin-left: 75%; } + .column.is-10-mobile { + flex: none; + width: 83.3333333333%; } + .column.is-offset-10-mobile { + margin-left: 83.3333333333%; } + .column.is-11-mobile { + flex: none; + width: 91.6666666667%; } + .column.is-offset-11-mobile { + margin-left: 91.6666666667%; } + .column.is-12-mobile { + flex: none; + width: 100%; } + .column.is-offset-12-mobile { + margin-left: 100%; } } + @media screen and (min-width: 769px), print { + .column.is-narrow, .column.is-narrow-tablet { + flex: none; } + .column.is-full, .column.is-full-tablet { + flex: none; + width: 100%; } + .column.is-three-quarters, .column.is-three-quarters-tablet { + flex: none; + width: 75%; } + .column.is-two-thirds, .column.is-two-thirds-tablet { + flex: none; + width: 66.6666%; } + .column.is-half, .column.is-half-tablet { + flex: none; + width: 50%; } + .column.is-one-third, .column.is-one-third-tablet { + flex: none; + width: 33.3333%; } + .column.is-one-quarter, .column.is-one-quarter-tablet { + flex: none; + width: 25%; } + .column.is-one-fifth, .column.is-one-fifth-tablet { + flex: none; + width: 20%; } + .column.is-two-fifths, .column.is-two-fifths-tablet { + flex: none; + width: 40%; } + .column.is-three-fifths, .column.is-three-fifths-tablet { + flex: none; + width: 60%; } + .column.is-four-fifths, .column.is-four-fifths-tablet { + flex: none; + width: 80%; } + .column.is-offset-three-quarters, .column.is-offset-three-quarters-tablet { + margin-left: 75%; } + .column.is-offset-two-thirds, .column.is-offset-two-thirds-tablet { + margin-left: 66.6666%; } + .column.is-offset-half, .column.is-offset-half-tablet { + margin-left: 50%; } + .column.is-offset-one-third, .column.is-offset-one-third-tablet { + margin-left: 33.3333%; } + .column.is-offset-one-quarter, .column.is-offset-one-quarter-tablet { + margin-left: 25%; } + .column.is-offset-one-fifth, .column.is-offset-one-fifth-tablet { + margin-left: 20%; } + .column.is-offset-two-fifths, .column.is-offset-two-fifths-tablet { + margin-left: 40%; } + .column.is-offset-three-fifths, .column.is-offset-three-fifths-tablet { + margin-left: 60%; } + .column.is-offset-four-fifths, .column.is-offset-four-fifths-tablet { + margin-left: 80%; } + .column.is-0, .column.is-0-tablet { + flex: none; + width: 0%; } + .column.is-offset-0, .column.is-offset-0-tablet { + margin-left: 0%; } + .column.is-1, .column.is-1-tablet { + flex: none; + width: 8.3333333333%; } + .column.is-offset-1, .column.is-offset-1-tablet { + margin-left: 8.3333333333%; } + .column.is-2, .column.is-2-tablet { + flex: none; + width: 16.6666666667%; } + .column.is-offset-2, .column.is-offset-2-tablet { + margin-left: 16.6666666667%; } + .column.is-3, .column.is-3-tablet { + flex: none; + width: 25%; } + .column.is-offset-3, .column.is-offset-3-tablet { + margin-left: 25%; } + .column.is-4, .column.is-4-tablet { + flex: none; + width: 33.3333333333%; } + .column.is-offset-4, .column.is-offset-4-tablet { + margin-left: 33.3333333333%; } + .column.is-5, .column.is-5-tablet { + flex: none; + width: 41.6666666667%; } + .column.is-offset-5, .column.is-offset-5-tablet { + margin-left: 41.6666666667%; } + .column.is-6, .column.is-6-tablet { + flex: none; + width: 50%; } + .column.is-offset-6, .column.is-offset-6-tablet { + margin-left: 50%; } + .column.is-7, .column.is-7-tablet { + flex: none; + width: 58.3333333333%; } + .column.is-offset-7, .column.is-offset-7-tablet { + margin-left: 58.3333333333%; } + .column.is-8, .column.is-8-tablet { + flex: none; + width: 66.6666666667%; } + .column.is-offset-8, .column.is-offset-8-tablet { + margin-left: 66.6666666667%; } + .column.is-9, .column.is-9-tablet { + flex: none; + width: 75%; } + .column.is-offset-9, .column.is-offset-9-tablet { + margin-left: 75%; } + .column.is-10, .column.is-10-tablet { + flex: none; + width: 83.3333333333%; } + .column.is-offset-10, .column.is-offset-10-tablet { + margin-left: 83.3333333333%; } + .column.is-11, .column.is-11-tablet { + flex: none; + width: 91.6666666667%; } + .column.is-offset-11, .column.is-offset-11-tablet { + margin-left: 91.6666666667%; } + .column.is-12, .column.is-12-tablet { + flex: none; + width: 100%; } + .column.is-offset-12, .column.is-offset-12-tablet { + margin-left: 100%; } } + @media screen and (max-width: 1055px) { + .column.is-narrow-touch { + flex: none; } + .column.is-full-touch { + flex: none; + width: 100%; } + .column.is-three-quarters-touch { + flex: none; + width: 75%; } + .column.is-two-thirds-touch { + flex: none; + width: 66.6666%; } + .column.is-half-touch { + flex: none; + width: 50%; } + .column.is-one-third-touch { + flex: none; + width: 33.3333%; } + .column.is-one-quarter-touch { + flex: none; + width: 25%; } + .column.is-one-fifth-touch { + flex: none; + width: 20%; } + .column.is-two-fifths-touch { + flex: none; + width: 40%; } + .column.is-three-fifths-touch { + flex: none; + width: 60%; } + .column.is-four-fifths-touch { + flex: none; + width: 80%; } + .column.is-offset-three-quarters-touch { + margin-left: 75%; } + .column.is-offset-two-thirds-touch { + margin-left: 66.6666%; } + .column.is-offset-half-touch { + margin-left: 50%; } + .column.is-offset-one-third-touch { + margin-left: 33.3333%; } + .column.is-offset-one-quarter-touch { + margin-left: 25%; } + .column.is-offset-one-fifth-touch { + margin-left: 20%; } + .column.is-offset-two-fifths-touch { + margin-left: 40%; } + .column.is-offset-three-fifths-touch { + margin-left: 60%; } + .column.is-offset-four-fifths-touch { + margin-left: 80%; } + .column.is-0-touch { + flex: none; + width: 0%; } + .column.is-offset-0-touch { + margin-left: 0%; } + .column.is-1-touch { + flex: none; + width: 8.3333333333%; } + .column.is-offset-1-touch { + margin-left: 8.3333333333%; } + .column.is-2-touch { + flex: none; + width: 16.6666666667%; } + .column.is-offset-2-touch { + margin-left: 16.6666666667%; } + .column.is-3-touch { + flex: none; + width: 25%; } + .column.is-offset-3-touch { + margin-left: 25%; } + .column.is-4-touch { + flex: none; + width: 33.3333333333%; } + .column.is-offset-4-touch { + margin-left: 33.3333333333%; } + .column.is-5-touch { + flex: none; + width: 41.6666666667%; } + .column.is-offset-5-touch { + margin-left: 41.6666666667%; } + .column.is-6-touch { + flex: none; + width: 50%; } + .column.is-offset-6-touch { + margin-left: 50%; } + .column.is-7-touch { + flex: none; + width: 58.3333333333%; } + .column.is-offset-7-touch { + margin-left: 58.3333333333%; } + .column.is-8-touch { + flex: none; + width: 66.6666666667%; } + .column.is-offset-8-touch { + margin-left: 66.6666666667%; } + .column.is-9-touch { + flex: none; + width: 75%; } + .column.is-offset-9-touch { + margin-left: 75%; } + .column.is-10-touch { + flex: none; + width: 83.3333333333%; } + .column.is-offset-10-touch { + margin-left: 83.3333333333%; } + .column.is-11-touch { + flex: none; + width: 91.6666666667%; } + .column.is-offset-11-touch { + margin-left: 91.6666666667%; } + .column.is-12-touch { + flex: none; + width: 100%; } + .column.is-offset-12-touch { + margin-left: 100%; } } + @media screen and (min-width: 1056px) { + .column.is-narrow-desktop { + flex: none; } + .column.is-full-desktop { + flex: none; + width: 100%; } + .column.is-three-quarters-desktop { + flex: none; + width: 75%; } + .column.is-two-thirds-desktop { + flex: none; + width: 66.6666%; } + .column.is-half-desktop { + flex: none; + width: 50%; } + .column.is-one-third-desktop { + flex: none; + width: 33.3333%; } + .column.is-one-quarter-desktop { + flex: none; + width: 25%; } + .column.is-one-fifth-desktop { + flex: none; + width: 20%; } + .column.is-two-fifths-desktop { + flex: none; + width: 40%; } + .column.is-three-fifths-desktop { + flex: none; + width: 60%; } + .column.is-four-fifths-desktop { + flex: none; + width: 80%; } + .column.is-offset-three-quarters-desktop { + margin-left: 75%; } + .column.is-offset-two-thirds-desktop { + margin-left: 66.6666%; } + .column.is-offset-half-desktop { + margin-left: 50%; } + .column.is-offset-one-third-desktop { + margin-left: 33.3333%; } + .column.is-offset-one-quarter-desktop { + margin-left: 25%; } + .column.is-offset-one-fifth-desktop { + margin-left: 20%; } + .column.is-offset-two-fifths-desktop { + margin-left: 40%; } + .column.is-offset-three-fifths-desktop { + margin-left: 60%; } + .column.is-offset-four-fifths-desktop { + margin-left: 80%; } + .column.is-0-desktop { + flex: none; + width: 0%; } + .column.is-offset-0-desktop { + margin-left: 0%; } + .column.is-1-desktop { + flex: none; + width: 8.3333333333%; } + .column.is-offset-1-desktop { + margin-left: 8.3333333333%; } + .column.is-2-desktop { + flex: none; + width: 16.6666666667%; } + .column.is-offset-2-desktop { + margin-left: 16.6666666667%; } + .column.is-3-desktop { + flex: none; + width: 25%; } + .column.is-offset-3-desktop { + margin-left: 25%; } + .column.is-4-desktop { + flex: none; + width: 33.3333333333%; } + .column.is-offset-4-desktop { + margin-left: 33.3333333333%; } + .column.is-5-desktop { + flex: none; + width: 41.6666666667%; } + .column.is-offset-5-desktop { + margin-left: 41.6666666667%; } + .column.is-6-desktop { + flex: none; + width: 50%; } + .column.is-offset-6-desktop { + margin-left: 50%; } + .column.is-7-desktop { + flex: none; + width: 58.3333333333%; } + .column.is-offset-7-desktop { + margin-left: 58.3333333333%; } + .column.is-8-desktop { + flex: none; + width: 66.6666666667%; } + .column.is-offset-8-desktop { + margin-left: 66.6666666667%; } + .column.is-9-desktop { + flex: none; + width: 75%; } + .column.is-offset-9-desktop { + margin-left: 75%; } + .column.is-10-desktop { + flex: none; + width: 83.3333333333%; } + .column.is-offset-10-desktop { + margin-left: 83.3333333333%; } + .column.is-11-desktop { + flex: none; + width: 91.6666666667%; } + .column.is-offset-11-desktop { + margin-left: 91.6666666667%; } + .column.is-12-desktop { + flex: none; + width: 100%; } + .column.is-offset-12-desktop { + margin-left: 100%; } } + @media screen and (min-width: 1216px) { + .column.is-narrow-widescreen { + flex: none; } + .column.is-full-widescreen { + flex: none; + width: 100%; } + .column.is-three-quarters-widescreen { + flex: none; + width: 75%; } + .column.is-two-thirds-widescreen { + flex: none; + width: 66.6666%; } + .column.is-half-widescreen { + flex: none; + width: 50%; } + .column.is-one-third-widescreen { + flex: none; + width: 33.3333%; } + .column.is-one-quarter-widescreen { + flex: none; + width: 25%; } + .column.is-one-fifth-widescreen { + flex: none; + width: 20%; } + .column.is-two-fifths-widescreen { + flex: none; + width: 40%; } + .column.is-three-fifths-widescreen { + flex: none; + width: 60%; } + .column.is-four-fifths-widescreen { + flex: none; + width: 80%; } + .column.is-offset-three-quarters-widescreen { + margin-left: 75%; } + .column.is-offset-two-thirds-widescreen { + margin-left: 66.6666%; } + .column.is-offset-half-widescreen { + margin-left: 50%; } + .column.is-offset-one-third-widescreen { + margin-left: 33.3333%; } + .column.is-offset-one-quarter-widescreen { + margin-left: 25%; } + .column.is-offset-one-fifth-widescreen { + margin-left: 20%; } + .column.is-offset-two-fifths-widescreen { + margin-left: 40%; } + .column.is-offset-three-fifths-widescreen { + margin-left: 60%; } + .column.is-offset-four-fifths-widescreen { + margin-left: 80%; } + .column.is-0-widescreen { + flex: none; + width: 0%; } + .column.is-offset-0-widescreen { + margin-left: 0%; } + .column.is-1-widescreen { + flex: none; + width: 8.3333333333%; } + .column.is-offset-1-widescreen { + margin-left: 8.3333333333%; } + .column.is-2-widescreen { + flex: none; + width: 16.6666666667%; } + .column.is-offset-2-widescreen { + margin-left: 16.6666666667%; } + .column.is-3-widescreen { + flex: none; + width: 25%; } + .column.is-offset-3-widescreen { + margin-left: 25%; } + .column.is-4-widescreen { + flex: none; + width: 33.3333333333%; } + .column.is-offset-4-widescreen { + margin-left: 33.3333333333%; } + .column.is-5-widescreen { + flex: none; + width: 41.6666666667%; } + .column.is-offset-5-widescreen { + margin-left: 41.6666666667%; } + .column.is-6-widescreen { + flex: none; + width: 50%; } + .column.is-offset-6-widescreen { + margin-left: 50%; } + .column.is-7-widescreen { + flex: none; + width: 58.3333333333%; } + .column.is-offset-7-widescreen { + margin-left: 58.3333333333%; } + .column.is-8-widescreen { + flex: none; + width: 66.6666666667%; } + .column.is-offset-8-widescreen { + margin-left: 66.6666666667%; } + .column.is-9-widescreen { + flex: none; + width: 75%; } + .column.is-offset-9-widescreen { + margin-left: 75%; } + .column.is-10-widescreen { + flex: none; + width: 83.3333333333%; } + .column.is-offset-10-widescreen { + margin-left: 83.3333333333%; } + .column.is-11-widescreen { + flex: none; + width: 91.6666666667%; } + .column.is-offset-11-widescreen { + margin-left: 91.6666666667%; } + .column.is-12-widescreen { + flex: none; + width: 100%; } + .column.is-offset-12-widescreen { + margin-left: 100%; } } + @media screen and (min-width: 1408px) { + .column.is-narrow-fullhd { + flex: none; } + .column.is-full-fullhd { + flex: none; + width: 100%; } + .column.is-three-quarters-fullhd { + flex: none; + width: 75%; } + .column.is-two-thirds-fullhd { + flex: none; + width: 66.6666%; } + .column.is-half-fullhd { + flex: none; + width: 50%; } + .column.is-one-third-fullhd { + flex: none; + width: 33.3333%; } + .column.is-one-quarter-fullhd { + flex: none; + width: 25%; } + .column.is-one-fifth-fullhd { + flex: none; + width: 20%; } + .column.is-two-fifths-fullhd { + flex: none; + width: 40%; } + .column.is-three-fifths-fullhd { + flex: none; + width: 60%; } + .column.is-four-fifths-fullhd { + flex: none; + width: 80%; } + .column.is-offset-three-quarters-fullhd { + margin-left: 75%; } + .column.is-offset-two-thirds-fullhd { + margin-left: 66.6666%; } + .column.is-offset-half-fullhd { + margin-left: 50%; } + .column.is-offset-one-third-fullhd { + margin-left: 33.3333%; } + .column.is-offset-one-quarter-fullhd { + margin-left: 25%; } + .column.is-offset-one-fifth-fullhd { + margin-left: 20%; } + .column.is-offset-two-fifths-fullhd { + margin-left: 40%; } + .column.is-offset-three-fifths-fullhd { + margin-left: 60%; } + .column.is-offset-four-fifths-fullhd { + margin-left: 80%; } + .column.is-0-fullhd { + flex: none; + width: 0%; } + .column.is-offset-0-fullhd { + margin-left: 0%; } + .column.is-1-fullhd { + flex: none; + width: 8.3333333333%; } + .column.is-offset-1-fullhd { + margin-left: 8.3333333333%; } + .column.is-2-fullhd { + flex: none; + width: 16.6666666667%; } + .column.is-offset-2-fullhd { + margin-left: 16.6666666667%; } + .column.is-3-fullhd { + flex: none; + width: 25%; } + .column.is-offset-3-fullhd { + margin-left: 25%; } + .column.is-4-fullhd { + flex: none; + width: 33.3333333333%; } + .column.is-offset-4-fullhd { + margin-left: 33.3333333333%; } + .column.is-5-fullhd { + flex: none; + width: 41.6666666667%; } + .column.is-offset-5-fullhd { + margin-left: 41.6666666667%; } + .column.is-6-fullhd { + flex: none; + width: 50%; } + .column.is-offset-6-fullhd { + margin-left: 50%; } + .column.is-7-fullhd { + flex: none; + width: 58.3333333333%; } + .column.is-offset-7-fullhd { + margin-left: 58.3333333333%; } + .column.is-8-fullhd { + flex: none; + width: 66.6666666667%; } + .column.is-offset-8-fullhd { + margin-left: 66.6666666667%; } + .column.is-9-fullhd { + flex: none; + width: 75%; } + .column.is-offset-9-fullhd { + margin-left: 75%; } + .column.is-10-fullhd { + flex: none; + width: 83.3333333333%; } + .column.is-offset-10-fullhd { + margin-left: 83.3333333333%; } + .column.is-11-fullhd { + flex: none; + width: 91.6666666667%; } + .column.is-offset-11-fullhd { + margin-left: 91.6666666667%; } + .column.is-12-fullhd { + flex: none; + width: 100%; } + .column.is-offset-12-fullhd { + margin-left: 100%; } } +.columns { + margin-left: -0.75rem; + margin-right: -0.75rem; + margin-top: -0.75rem; } + .columns:last-child { + margin-bottom: -0.75rem; } + .columns:not(:last-child) { + margin-bottom: calc(1.5rem - 0.75rem); } + .columns.is-centered { + justify-content: center; } + .columns.is-gapless { + margin-left: 0; + margin-right: 0; + margin-top: 0; } + .columns.is-gapless > .column { + margin: 0; + padding: 0 !important; } + .columns.is-gapless:not(:last-child) { + margin-bottom: 1.5rem; } + .columns.is-gapless:last-child { + margin-bottom: 0; } + .columns.is-mobile { + display: flex; } + .columns.is-multiline { + flex-wrap: wrap; } + .columns.is-vcentered { + align-items: center; } + @media screen and (min-width: 769px), print { + .columns:not(.is-desktop) { + display: flex; } } + @media screen and (min-width: 1056px) { + .columns.is-desktop { + display: flex; } } +.columns.is-variable { + --columnGap: 0.75rem; + margin-left: calc(-1 * var(--columnGap)); + margin-right: calc(-1 * var(--columnGap)); } + .columns.is-variable .column { + padding-left: var(--columnGap); + padding-right: var(--columnGap); } + .columns.is-variable.is-0 { + --columnGap: 0rem; } + @media screen and (max-width: 768px) { + .columns.is-variable.is-0-mobile { + --columnGap: 0rem; } } + @media screen and (min-width: 769px), print { + .columns.is-variable.is-0-tablet { + --columnGap: 0rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + .columns.is-variable.is-0-tablet-only { + --columnGap: 0rem; } } + @media screen and (max-width: 1055px) { + .columns.is-variable.is-0-touch { + --columnGap: 0rem; } } + @media screen and (min-width: 1056px) { + .columns.is-variable.is-0-desktop { + --columnGap: 0rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + .columns.is-variable.is-0-desktop-only { + --columnGap: 0rem; } } + @media screen and (min-width: 1216px) { + .columns.is-variable.is-0-widescreen { + --columnGap: 0rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-0-widescreen-only { + --columnGap: 0rem; } } + @media screen and (min-width: 1408px) { + .columns.is-variable.is-0-fullhd { + --columnGap: 0rem; } } + .columns.is-variable.is-1 { + --columnGap: 0.25rem; } + @media screen and (max-width: 768px) { + .columns.is-variable.is-1-mobile { + --columnGap: 0.25rem; } } + @media screen and (min-width: 769px), print { + .columns.is-variable.is-1-tablet { + --columnGap: 0.25rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + .columns.is-variable.is-1-tablet-only { + --columnGap: 0.25rem; } } + @media screen and (max-width: 1055px) { + .columns.is-variable.is-1-touch { + --columnGap: 0.25rem; } } + @media screen and (min-width: 1056px) { + .columns.is-variable.is-1-desktop { + --columnGap: 0.25rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + .columns.is-variable.is-1-desktop-only { + --columnGap: 0.25rem; } } + @media screen and (min-width: 1216px) { + .columns.is-variable.is-1-widescreen { + --columnGap: 0.25rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-1-widescreen-only { + --columnGap: 0.25rem; } } + @media screen and (min-width: 1408px) { + .columns.is-variable.is-1-fullhd { + --columnGap: 0.25rem; } } + .columns.is-variable.is-2 { + --columnGap: 0.5rem; } + @media screen and (max-width: 768px) { + .columns.is-variable.is-2-mobile { + --columnGap: 0.5rem; } } + @media screen and (min-width: 769px), print { + .columns.is-variable.is-2-tablet { + --columnGap: 0.5rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + .columns.is-variable.is-2-tablet-only { + --columnGap: 0.5rem; } } + @media screen and (max-width: 1055px) { + .columns.is-variable.is-2-touch { + --columnGap: 0.5rem; } } + @media screen and (min-width: 1056px) { + .columns.is-variable.is-2-desktop { + --columnGap: 0.5rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + .columns.is-variable.is-2-desktop-only { + --columnGap: 0.5rem; } } + @media screen and (min-width: 1216px) { + .columns.is-variable.is-2-widescreen { + --columnGap: 0.5rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-2-widescreen-only { + --columnGap: 0.5rem; } } + @media screen and (min-width: 1408px) { + .columns.is-variable.is-2-fullhd { + --columnGap: 0.5rem; } } + .columns.is-variable.is-3 { + --columnGap: 0.75rem; } + @media screen and (max-width: 768px) { + .columns.is-variable.is-3-mobile { + --columnGap: 0.75rem; } } + @media screen and (min-width: 769px), print { + .columns.is-variable.is-3-tablet { + --columnGap: 0.75rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + .columns.is-variable.is-3-tablet-only { + --columnGap: 0.75rem; } } + @media screen and (max-width: 1055px) { + .columns.is-variable.is-3-touch { + --columnGap: 0.75rem; } } + @media screen and (min-width: 1056px) { + .columns.is-variable.is-3-desktop { + --columnGap: 0.75rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + .columns.is-variable.is-3-desktop-only { + --columnGap: 0.75rem; } } + @media screen and (min-width: 1216px) { + .columns.is-variable.is-3-widescreen { + --columnGap: 0.75rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-3-widescreen-only { + --columnGap: 0.75rem; } } + @media screen and (min-width: 1408px) { + .columns.is-variable.is-3-fullhd { + --columnGap: 0.75rem; } } + .columns.is-variable.is-4 { + --columnGap: 1rem; } + @media screen and (max-width: 768px) { + .columns.is-variable.is-4-mobile { + --columnGap: 1rem; } } + @media screen and (min-width: 769px), print { + .columns.is-variable.is-4-tablet { + --columnGap: 1rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + .columns.is-variable.is-4-tablet-only { + --columnGap: 1rem; } } + @media screen and (max-width: 1055px) { + .columns.is-variable.is-4-touch { + --columnGap: 1rem; } } + @media screen and (min-width: 1056px) { + .columns.is-variable.is-4-desktop { + --columnGap: 1rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + .columns.is-variable.is-4-desktop-only { + --columnGap: 1rem; } } + @media screen and (min-width: 1216px) { + .columns.is-variable.is-4-widescreen { + --columnGap: 1rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-4-widescreen-only { + --columnGap: 1rem; } } + @media screen and (min-width: 1408px) { + .columns.is-variable.is-4-fullhd { + --columnGap: 1rem; } } + .columns.is-variable.is-5 { + --columnGap: 1.25rem; } + @media screen and (max-width: 768px) { + .columns.is-variable.is-5-mobile { + --columnGap: 1.25rem; } } + @media screen and (min-width: 769px), print { + .columns.is-variable.is-5-tablet { + --columnGap: 1.25rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + .columns.is-variable.is-5-tablet-only { + --columnGap: 1.25rem; } } + @media screen and (max-width: 1055px) { + .columns.is-variable.is-5-touch { + --columnGap: 1.25rem; } } + @media screen and (min-width: 1056px) { + .columns.is-variable.is-5-desktop { + --columnGap: 1.25rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + .columns.is-variable.is-5-desktop-only { + --columnGap: 1.25rem; } } + @media screen and (min-width: 1216px) { + .columns.is-variable.is-5-widescreen { + --columnGap: 1.25rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-5-widescreen-only { + --columnGap: 1.25rem; } } + @media screen and (min-width: 1408px) { + .columns.is-variable.is-5-fullhd { + --columnGap: 1.25rem; } } + .columns.is-variable.is-6 { + --columnGap: 1.5rem; } + @media screen and (max-width: 768px) { + .columns.is-variable.is-6-mobile { + --columnGap: 1.5rem; } } + @media screen and (min-width: 769px), print { + .columns.is-variable.is-6-tablet { + --columnGap: 1.5rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + .columns.is-variable.is-6-tablet-only { + --columnGap: 1.5rem; } } + @media screen and (max-width: 1055px) { + .columns.is-variable.is-6-touch { + --columnGap: 1.5rem; } } + @media screen and (min-width: 1056px) { + .columns.is-variable.is-6-desktop { + --columnGap: 1.5rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + .columns.is-variable.is-6-desktop-only { + --columnGap: 1.5rem; } } + @media screen and (min-width: 1216px) { + .columns.is-variable.is-6-widescreen { + --columnGap: 1.5rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-6-widescreen-only { + --columnGap: 1.5rem; } } + @media screen and (min-width: 1408px) { + .columns.is-variable.is-6-fullhd { + --columnGap: 1.5rem; } } + .columns.is-variable.is-7 { + --columnGap: 1.75rem; } + @media screen and (max-width: 768px) { + .columns.is-variable.is-7-mobile { + --columnGap: 1.75rem; } } + @media screen and (min-width: 769px), print { + .columns.is-variable.is-7-tablet { + --columnGap: 1.75rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + .columns.is-variable.is-7-tablet-only { + --columnGap: 1.75rem; } } + @media screen and (max-width: 1055px) { + .columns.is-variable.is-7-touch { + --columnGap: 1.75rem; } } + @media screen and (min-width: 1056px) { + .columns.is-variable.is-7-desktop { + --columnGap: 1.75rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + .columns.is-variable.is-7-desktop-only { + --columnGap: 1.75rem; } } + @media screen and (min-width: 1216px) { + .columns.is-variable.is-7-widescreen { + --columnGap: 1.75rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-7-widescreen-only { + --columnGap: 1.75rem; } } + @media screen and (min-width: 1408px) { + .columns.is-variable.is-7-fullhd { + --columnGap: 1.75rem; } } + .columns.is-variable.is-8 { + --columnGap: 2rem; } + @media screen and (max-width: 768px) { + .columns.is-variable.is-8-mobile { + --columnGap: 2rem; } } + @media screen and (min-width: 769px), print { + .columns.is-variable.is-8-tablet { + --columnGap: 2rem; } } + @media screen and (min-width: 769px) and (max-width: 1055px) { + .columns.is-variable.is-8-tablet-only { + --columnGap: 2rem; } } + @media screen and (max-width: 1055px) { + .columns.is-variable.is-8-touch { + --columnGap: 2rem; } } + @media screen and (min-width: 1056px) { + .columns.is-variable.is-8-desktop { + --columnGap: 2rem; } } + @media screen and (min-width: 1056px) and (max-width: 1215px) { + .columns.is-variable.is-8-desktop-only { + --columnGap: 2rem; } } + @media screen and (min-width: 1216px) { + .columns.is-variable.is-8-widescreen { + --columnGap: 2rem; } } + @media screen and (min-width: 1216px) and (max-width: 1407px) { + .columns.is-variable.is-8-widescreen-only { + --columnGap: 2rem; } } + @media screen and (min-width: 1408px) { + .columns.is-variable.is-8-fullhd { + --columnGap: 2rem; } } +.tile { + align-items: stretch; + display: block; + flex-basis: 0; + flex-grow: 1; + flex-shrink: 1; + min-height: min-content; } + .tile.is-ancestor { + margin-left: -0.75rem; + margin-right: -0.75rem; + margin-top: -0.75rem; } + .tile.is-ancestor:last-child { + margin-bottom: -0.75rem; } + .tile.is-ancestor:not(:last-child) { + margin-bottom: 0.75rem; } + .tile.is-child { + margin: 0 !important; } + .tile.is-parent { + padding: 0.75rem; } + .tile.is-vertical { + flex-direction: column; } + .tile.is-vertical > .tile.is-child:not(:last-child) { + margin-bottom: 1.5rem !important; } + @media screen and (min-width: 769px), print { + .tile:not(.is-child) { + display: flex; } + .tile.is-1 { + flex: none; + width: 8.3333333333%; } + .tile.is-2 { + flex: none; + width: 16.6666666667%; } + .tile.is-3 { + flex: none; + width: 25%; } + .tile.is-4 { + flex: none; + width: 33.3333333333%; } + .tile.is-5 { + flex: none; + width: 41.6666666667%; } + .tile.is-6 { + flex: none; + width: 50%; } + .tile.is-7 { + flex: none; + width: 58.3333333333%; } + .tile.is-8 { + flex: none; + width: 66.6666666667%; } + .tile.is-9 { + flex: none; + width: 75%; } + .tile.is-10 { + flex: none; + width: 83.3333333333%; } + .tile.is-11 { + flex: none; + width: 91.6666666667%; } + .tile.is-12 { + flex: none; + width: 100%; } } +.hero { + align-items: stretch; + display: flex; + flex-direction: column; + justify-content: space-between; } + .hero .navbar { + background: none; } + .hero .tabs ul { + border-bottom: none; } + .hero.is-white { + background-color: white; + color: #0a0a0a; } + .hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + .hero.is-white strong { + color: inherit; } + .hero.is-white .title { + color: #0a0a0a; } + .hero.is-white .subtitle { + color: rgba(10, 10, 10, 0.9); } + .hero.is-white .subtitle a:not(.button), + .hero.is-white .subtitle strong { + color: #0a0a0a; } + @media screen and (max-width: 1055px) { + .hero.is-white .navbar-menu { + background-color: white; } } + .hero.is-white .navbar-item, + .hero.is-white .navbar-link { + color: rgba(10, 10, 10, 0.7); } + .hero.is-white a.navbar-item:hover, .hero.is-white a.navbar-item.is-active, + .hero.is-white .navbar-link:hover, + .hero.is-white .navbar-link.is-active { + background-color: #f2f2f2; + color: #0a0a0a; } + .hero.is-white .tabs a { + color: #0a0a0a; + opacity: 0.9; } + .hero.is-white .tabs a:hover { + opacity: 1; } + .hero.is-white .tabs li.is-active a { + opacity: 1; } + .hero.is-white .tabs.is-boxed a, .hero.is-white .tabs.is-toggle a { + color: #0a0a0a; } + .hero.is-white .tabs.is-boxed a:hover, .hero.is-white .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + .hero.is-white .tabs.is-boxed li.is-active a, .hero.is-white .tabs.is-boxed li.is-active a:hover, .hero.is-white .tabs.is-toggle li.is-active a, .hero.is-white .tabs.is-toggle li.is-active a:hover { + background-color: #0a0a0a; + border-color: #0a0a0a; + color: white; } + .hero.is-white.is-bold { + background-image: linear-gradient(141deg, #e8e3e4 0%, white 71%, white 100%); } + @media screen and (max-width: 768px) { + .hero.is-white.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #e8e3e4 0%, white 71%, white 100%); } } + .hero.is-black { + background-color: #0a0a0a; + color: white; } + .hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + .hero.is-black strong { + color: inherit; } + .hero.is-black .title { + color: white; } + .hero.is-black .subtitle { + color: rgba(255, 255, 255, 0.9); } + .hero.is-black .subtitle a:not(.button), + .hero.is-black .subtitle strong { + color: white; } + @media screen and (max-width: 1055px) { + .hero.is-black .navbar-menu { + background-color: #0a0a0a; } } + .hero.is-black .navbar-item, + .hero.is-black .navbar-link { + color: rgba(255, 255, 255, 0.7); } + .hero.is-black a.navbar-item:hover, .hero.is-black a.navbar-item.is-active, + .hero.is-black .navbar-link:hover, + .hero.is-black .navbar-link.is-active { + background-color: black; + color: white; } + .hero.is-black .tabs a { + color: white; + opacity: 0.9; } + .hero.is-black .tabs a:hover { + opacity: 1; } + .hero.is-black .tabs li.is-active a { + opacity: 1; } + .hero.is-black .tabs.is-boxed a, .hero.is-black .tabs.is-toggle a { + color: white; } + .hero.is-black .tabs.is-boxed a:hover, .hero.is-black .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + .hero.is-black .tabs.is-boxed li.is-active a, .hero.is-black .tabs.is-boxed li.is-active a:hover, .hero.is-black .tabs.is-toggle li.is-active a, .hero.is-black .tabs.is-toggle li.is-active a:hover { + background-color: white; + border-color: white; + color: #0a0a0a; } + .hero.is-black.is-bold { + background-image: linear-gradient(141deg, black 0%, #0a0a0a 71%, #181616 100%); } + @media screen and (max-width: 768px) { + .hero.is-black.is-bold .navbar-menu { + background-image: linear-gradient(141deg, black 0%, #0a0a0a 71%, #181616 100%); } } + .hero.is-light { + background-color: whitesmoke; + color: #363636; } + .hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + .hero.is-light strong { + color: inherit; } + .hero.is-light .title { + color: #363636; } + .hero.is-light .subtitle { + color: rgba(54, 54, 54, 0.9); } + .hero.is-light .subtitle a:not(.button), + .hero.is-light .subtitle strong { + color: #363636; } + @media screen and (max-width: 1055px) { + .hero.is-light .navbar-menu { + background-color: whitesmoke; } } + .hero.is-light .navbar-item, + .hero.is-light .navbar-link { + color: rgba(54, 54, 54, 0.7); } + .hero.is-light a.navbar-item:hover, .hero.is-light a.navbar-item.is-active, + .hero.is-light .navbar-link:hover, + .hero.is-light .navbar-link.is-active { + background-color: #e8e8e8; + color: #363636; } + .hero.is-light .tabs a { + color: #363636; + opacity: 0.9; } + .hero.is-light .tabs a:hover { + opacity: 1; } + .hero.is-light .tabs li.is-active a { + opacity: 1; } + .hero.is-light .tabs.is-boxed a, .hero.is-light .tabs.is-toggle a { + color: #363636; } + .hero.is-light .tabs.is-boxed a:hover, .hero.is-light .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + .hero.is-light .tabs.is-boxed li.is-active a, .hero.is-light .tabs.is-boxed li.is-active a:hover, .hero.is-light .tabs.is-toggle li.is-active a, .hero.is-light .tabs.is-toggle li.is-active a:hover { + background-color: #363636; + border-color: #363636; + color: whitesmoke; } + .hero.is-light.is-bold { + background-image: linear-gradient(141deg, #dfd8d9 0%, whitesmoke 71%, white 100%); } + @media screen and (max-width: 768px) { + .hero.is-light.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #dfd8d9 0%, whitesmoke 71%, white 100%); } } + .hero.is-dark, .content kbd.hero { + background-color: #363636; + color: whitesmoke; } + .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), .content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + .hero.is-dark strong, + .content kbd.hero strong { + color: inherit; } + .hero.is-dark .title, .content kbd.hero .title { + color: whitesmoke; } + .hero.is-dark .subtitle, .content kbd.hero .subtitle { + color: rgba(245, 245, 245, 0.9); } + .hero.is-dark .subtitle a:not(.button), .content kbd.hero .subtitle a:not(.button), + .hero.is-dark .subtitle strong, + .content kbd.hero .subtitle strong { + color: whitesmoke; } + @media screen and (max-width: 1055px) { + .hero.is-dark .navbar-menu, .content kbd.hero .navbar-menu { + background-color: #363636; } } + .hero.is-dark .navbar-item, .content kbd.hero .navbar-item, + .hero.is-dark .navbar-link, + .content kbd.hero .navbar-link { + color: rgba(245, 245, 245, 0.7); } + .hero.is-dark a.navbar-item:hover, .content kbd.hero a.navbar-item:hover, .hero.is-dark a.navbar-item.is-active, .content kbd.hero a.navbar-item.is-active, + .hero.is-dark .navbar-link:hover, + .content kbd.hero .navbar-link:hover, + .hero.is-dark .navbar-link.is-active, + .content kbd.hero .navbar-link.is-active { + background-color: #292929; + color: whitesmoke; } + .hero.is-dark .tabs a, .content kbd.hero .tabs a { + color: whitesmoke; + opacity: 0.9; } + .hero.is-dark .tabs a:hover, .content kbd.hero .tabs a:hover { + opacity: 1; } + .hero.is-dark .tabs li.is-active a, .content kbd.hero .tabs li.is-active a { + opacity: 1; } + .hero.is-dark .tabs.is-boxed a, .content kbd.hero .tabs.is-boxed a, .hero.is-dark .tabs.is-toggle a, .content kbd.hero .tabs.is-toggle a { + color: whitesmoke; } + .hero.is-dark .tabs.is-boxed a:hover, .content kbd.hero .tabs.is-boxed a:hover, .hero.is-dark .tabs.is-toggle a:hover, .content kbd.hero .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + .hero.is-dark .tabs.is-boxed li.is-active a, .content kbd.hero .tabs.is-boxed li.is-active a, .hero.is-dark .tabs.is-boxed li.is-active a:hover, .hero.is-dark .tabs.is-toggle li.is-active a, .content kbd.hero .tabs.is-toggle li.is-active a, .hero.is-dark .tabs.is-toggle li.is-active a:hover { + background-color: whitesmoke; + border-color: whitesmoke; + color: #363636; } + .hero.is-dark.is-bold, .content kbd.hero.is-bold { + background-image: linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%); } + @media screen and (max-width: 768px) { + .hero.is-dark.is-bold .navbar-menu, .content kbd.hero.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%); } } + .hero.is-primary, .docstring > section > a.hero.docs-sourcelink { + background-color: #4eb5de; + color: #fff; } + .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), .docstring > section > a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + .hero.is-primary strong, + .docstring > section > a.hero.docs-sourcelink strong { + color: inherit; } + .hero.is-primary .title, .docstring > section > a.hero.docs-sourcelink .title { + color: #fff; } + .hero.is-primary .subtitle, .docstring > section > a.hero.docs-sourcelink .subtitle { + color: rgba(255, 255, 255, 0.9); } + .hero.is-primary .subtitle a:not(.button), .docstring > section > a.hero.docs-sourcelink .subtitle a:not(.button), + .hero.is-primary .subtitle strong, + .docstring > section > a.hero.docs-sourcelink .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + .hero.is-primary .navbar-menu, .docstring > section > a.hero.docs-sourcelink .navbar-menu { + background-color: #4eb5de; } } + .hero.is-primary .navbar-item, .docstring > section > a.hero.docs-sourcelink .navbar-item, + .hero.is-primary .navbar-link, + .docstring > section > a.hero.docs-sourcelink .navbar-link { + color: rgba(255, 255, 255, 0.7); } + .hero.is-primary a.navbar-item:hover, .docstring > section > a.hero.docs-sourcelink a.navbar-item:hover, .hero.is-primary a.navbar-item.is-active, .docstring > section > a.hero.docs-sourcelink a.navbar-item.is-active, + .hero.is-primary .navbar-link:hover, + .docstring > section > a.hero.docs-sourcelink .navbar-link:hover, + .hero.is-primary .navbar-link.is-active, + .docstring > section > a.hero.docs-sourcelink .navbar-link.is-active { + background-color: #39acda; + color: #fff; } + .hero.is-primary .tabs a, .docstring > section > a.hero.docs-sourcelink .tabs a { + color: #fff; + opacity: 0.9; } + .hero.is-primary .tabs a:hover, .docstring > section > a.hero.docs-sourcelink .tabs a:hover { + opacity: 1; } + .hero.is-primary .tabs li.is-active a, .docstring > section > a.hero.docs-sourcelink .tabs li.is-active a { + opacity: 1; } + .hero.is-primary .tabs.is-boxed a, .docstring > section > a.hero.docs-sourcelink .tabs.is-boxed a, .hero.is-primary .tabs.is-toggle a, .docstring > section > a.hero.docs-sourcelink .tabs.is-toggle a { + color: #fff; } + .hero.is-primary .tabs.is-boxed a:hover, .docstring > section > a.hero.docs-sourcelink .tabs.is-boxed a:hover, .hero.is-primary .tabs.is-toggle a:hover, .docstring > section > a.hero.docs-sourcelink .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + .hero.is-primary .tabs.is-boxed li.is-active a, .docstring > section > a.hero.docs-sourcelink .tabs.is-boxed li.is-active a, .hero.is-primary .tabs.is-boxed li.is-active a:hover, .hero.is-primary .tabs.is-toggle li.is-active a, .docstring > section > a.hero.docs-sourcelink .tabs.is-toggle li.is-active a, .hero.is-primary .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #4eb5de; } + .hero.is-primary.is-bold, .docstring > section > a.hero.is-bold.docs-sourcelink { + background-image: linear-gradient(141deg, #1bc7de 0%, #4eb5de 71%, #5fa9e7 100%); } + @media screen and (max-width: 768px) { + .hero.is-primary.is-bold .navbar-menu, .docstring > section > a.hero.is-bold.docs-sourcelink .navbar-menu { + background-image: linear-gradient(141deg, #1bc7de 0%, #4eb5de 71%, #5fa9e7 100%); } } + .hero.is-link { + background-color: #2e63b8; + color: #fff; } + .hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + .hero.is-link strong { + color: inherit; } + .hero.is-link .title { + color: #fff; } + .hero.is-link .subtitle { + color: rgba(255, 255, 255, 0.9); } + .hero.is-link .subtitle a:not(.button), + .hero.is-link .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + .hero.is-link .navbar-menu { + background-color: #2e63b8; } } + .hero.is-link .navbar-item, + .hero.is-link .navbar-link { + color: rgba(255, 255, 255, 0.7); } + .hero.is-link a.navbar-item:hover, .hero.is-link a.navbar-item.is-active, + .hero.is-link .navbar-link:hover, + .hero.is-link .navbar-link.is-active { + background-color: #2958a4; + color: #fff; } + .hero.is-link .tabs a { + color: #fff; + opacity: 0.9; } + .hero.is-link .tabs a:hover { + opacity: 1; } + .hero.is-link .tabs li.is-active a { + opacity: 1; } + .hero.is-link .tabs.is-boxed a, .hero.is-link .tabs.is-toggle a { + color: #fff; } + .hero.is-link .tabs.is-boxed a:hover, .hero.is-link .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + .hero.is-link .tabs.is-boxed li.is-active a, .hero.is-link .tabs.is-boxed li.is-active a:hover, .hero.is-link .tabs.is-toggle li.is-active a, .hero.is-link .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #2e63b8; } + .hero.is-link.is-bold { + background-image: linear-gradient(141deg, #1b6098 0%, #2e63b8 71%, #2d51d2 100%); } + @media screen and (max-width: 768px) { + .hero.is-link.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #1b6098 0%, #2e63b8 71%, #2d51d2 100%); } } + .hero.is-info { + background-color: #209cee; + color: #fff; } + .hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + .hero.is-info strong { + color: inherit; } + .hero.is-info .title { + color: #fff; } + .hero.is-info .subtitle { + color: rgba(255, 255, 255, 0.9); } + .hero.is-info .subtitle a:not(.button), + .hero.is-info .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + .hero.is-info .navbar-menu { + background-color: #209cee; } } + .hero.is-info .navbar-item, + .hero.is-info .navbar-link { + color: rgba(255, 255, 255, 0.7); } + .hero.is-info a.navbar-item:hover, .hero.is-info a.navbar-item.is-active, + .hero.is-info .navbar-link:hover, + .hero.is-info .navbar-link.is-active { + background-color: #1190e3; + color: #fff; } + .hero.is-info .tabs a { + color: #fff; + opacity: 0.9; } + .hero.is-info .tabs a:hover { + opacity: 1; } + .hero.is-info .tabs li.is-active a { + opacity: 1; } + .hero.is-info .tabs.is-boxed a, .hero.is-info .tabs.is-toggle a { + color: #fff; } + .hero.is-info .tabs.is-boxed a:hover, .hero.is-info .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + .hero.is-info .tabs.is-boxed li.is-active a, .hero.is-info .tabs.is-boxed li.is-active a:hover, .hero.is-info .tabs.is-toggle li.is-active a, .hero.is-info .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #209cee; } + .hero.is-info.is-bold { + background-image: linear-gradient(141deg, #05a6d6 0%, #209cee 71%, #3287f5 100%); } + @media screen and (max-width: 768px) { + .hero.is-info.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #05a6d6 0%, #209cee 71%, #3287f5 100%); } } + .hero.is-success { + background-color: #22c35b; + color: #fff; } + .hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + .hero.is-success strong { + color: inherit; } + .hero.is-success .title { + color: #fff; } + .hero.is-success .subtitle { + color: rgba(255, 255, 255, 0.9); } + .hero.is-success .subtitle a:not(.button), + .hero.is-success .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + .hero.is-success .navbar-menu { + background-color: #22c35b; } } + .hero.is-success .navbar-item, + .hero.is-success .navbar-link { + color: rgba(255, 255, 255, 0.7); } + .hero.is-success a.navbar-item:hover, .hero.is-success a.navbar-item.is-active, + .hero.is-success .navbar-link:hover, + .hero.is-success .navbar-link.is-active { + background-color: #1ead51; + color: #fff; } + .hero.is-success .tabs a { + color: #fff; + opacity: 0.9; } + .hero.is-success .tabs a:hover { + opacity: 1; } + .hero.is-success .tabs li.is-active a { + opacity: 1; } + .hero.is-success .tabs.is-boxed a, .hero.is-success .tabs.is-toggle a { + color: #fff; } + .hero.is-success .tabs.is-boxed a:hover, .hero.is-success .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + .hero.is-success .tabs.is-boxed li.is-active a, .hero.is-success .tabs.is-boxed li.is-active a:hover, .hero.is-success .tabs.is-toggle li.is-active a, .hero.is-success .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #22c35b; } + .hero.is-success.is-bold { + background-image: linear-gradient(141deg, #12a02c 0%, #22c35b 71%, #1fdf83 100%); } + @media screen and (max-width: 768px) { + .hero.is-success.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #12a02c 0%, #22c35b 71%, #1fdf83 100%); } } + .hero.is-warning { + background-color: #ffdd57; + color: rgba(0, 0, 0, 0.7); } + .hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + .hero.is-warning strong { + color: inherit; } + .hero.is-warning .title { + color: rgba(0, 0, 0, 0.7); } + .hero.is-warning .subtitle { + color: rgba(0, 0, 0, 0.9); } + .hero.is-warning .subtitle a:not(.button), + .hero.is-warning .subtitle strong { + color: rgba(0, 0, 0, 0.7); } + @media screen and (max-width: 1055px) { + .hero.is-warning .navbar-menu { + background-color: #ffdd57; } } + .hero.is-warning .navbar-item, + .hero.is-warning .navbar-link { + color: rgba(0, 0, 0, 0.7); } + .hero.is-warning a.navbar-item:hover, .hero.is-warning a.navbar-item.is-active, + .hero.is-warning .navbar-link:hover, + .hero.is-warning .navbar-link.is-active { + background-color: #ffd83e; + color: rgba(0, 0, 0, 0.7); } + .hero.is-warning .tabs a { + color: rgba(0, 0, 0, 0.7); + opacity: 0.9; } + .hero.is-warning .tabs a:hover { + opacity: 1; } + .hero.is-warning .tabs li.is-active a { + opacity: 1; } + .hero.is-warning .tabs.is-boxed a, .hero.is-warning .tabs.is-toggle a { + color: rgba(0, 0, 0, 0.7); } + .hero.is-warning .tabs.is-boxed a:hover, .hero.is-warning .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + .hero.is-warning .tabs.is-boxed li.is-active a, .hero.is-warning .tabs.is-boxed li.is-active a:hover, .hero.is-warning .tabs.is-toggle li.is-active a, .hero.is-warning .tabs.is-toggle li.is-active a:hover { + background-color: rgba(0, 0, 0, 0.7); + border-color: rgba(0, 0, 0, 0.7); + color: #ffdd57; } + .hero.is-warning.is-bold { + background-image: linear-gradient(141deg, #ffae24 0%, #ffdd57 71%, #fffa71 100%); } + @media screen and (max-width: 768px) { + .hero.is-warning.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #ffae24 0%, #ffdd57 71%, #fffa71 100%); } } + .hero.is-danger { + background-color: #da0b00; + color: #fff; } + .hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current), + .hero.is-danger strong { + color: inherit; } + .hero.is-danger .title { + color: #fff; } + .hero.is-danger .subtitle { + color: rgba(255, 255, 255, 0.9); } + .hero.is-danger .subtitle a:not(.button), + .hero.is-danger .subtitle strong { + color: #fff; } + @media screen and (max-width: 1055px) { + .hero.is-danger .navbar-menu { + background-color: #da0b00; } } + .hero.is-danger .navbar-item, + .hero.is-danger .navbar-link { + color: rgba(255, 255, 255, 0.7); } + .hero.is-danger a.navbar-item:hover, .hero.is-danger a.navbar-item.is-active, + .hero.is-danger .navbar-link:hover, + .hero.is-danger .navbar-link.is-active { + background-color: #c10a00; + color: #fff; } + .hero.is-danger .tabs a { + color: #fff; + opacity: 0.9; } + .hero.is-danger .tabs a:hover { + opacity: 1; } + .hero.is-danger .tabs li.is-active a { + opacity: 1; } + .hero.is-danger .tabs.is-boxed a, .hero.is-danger .tabs.is-toggle a { + color: #fff; } + .hero.is-danger .tabs.is-boxed a:hover, .hero.is-danger .tabs.is-toggle a:hover { + background-color: rgba(10, 10, 10, 0.1); } + .hero.is-danger .tabs.is-boxed li.is-active a, .hero.is-danger .tabs.is-boxed li.is-active a:hover, .hero.is-danger .tabs.is-toggle li.is-active a, .hero.is-danger .tabs.is-toggle li.is-active a:hover { + background-color: #fff; + border-color: #fff; + color: #da0b00; } + .hero.is-danger.is-bold { + background-image: linear-gradient(141deg, #a70013 0%, #da0b00 71%, #f43500 100%); } + @media screen and (max-width: 768px) { + .hero.is-danger.is-bold .navbar-menu { + background-image: linear-gradient(141deg, #a70013 0%, #da0b00 71%, #f43500 100%); } } + .hero.is-small .hero-body, #documenter .docs-sidebar form.docs-search > input.hero .hero-body { + padding-bottom: 1.5rem; + padding-top: 1.5rem; } + @media screen and (min-width: 769px), print { + .hero.is-medium .hero-body { + padding-bottom: 9rem; + padding-top: 9rem; } } + @media screen and (min-width: 769px), print { + .hero.is-large .hero-body { + padding-bottom: 18rem; + padding-top: 18rem; } } + .hero.is-halfheight .hero-body, .hero.is-fullheight .hero-body, .hero.is-fullheight-with-navbar .hero-body { + align-items: center; + display: flex; } + .hero.is-halfheight .hero-body > .container, .hero.is-fullheight .hero-body > .container, .hero.is-fullheight-with-navbar .hero-body > .container { + flex-grow: 1; + flex-shrink: 1; } + .hero.is-halfheight { + min-height: 50vh; } + .hero.is-fullheight { + min-height: 100vh; } + +.hero-video { + overflow: hidden; } + .hero-video video { + left: 50%; + min-height: 100%; + min-width: 100%; + position: absolute; + top: 50%; + transform: translate3d(-50%, -50%, 0); } + .hero-video.is-transparent { + opacity: 0.3; } + @media screen and (max-width: 768px) { + .hero-video { + display: none; } } +.hero-buttons { + margin-top: 1.5rem; } + @media screen and (max-width: 768px) { + .hero-buttons .button { + display: flex; } + .hero-buttons .button:not(:last-child) { + margin-bottom: 0.75rem; } } + @media screen and (min-width: 769px), print { + .hero-buttons { + display: flex; + justify-content: center; } + .hero-buttons .button:not(:last-child) { + margin-right: 1.5rem; } } +.hero-head, +.hero-foot { + flex-grow: 0; + flex-shrink: 0; } + +.hero-body { + flex-grow: 1; + flex-shrink: 0; + padding: 3rem 1.5rem; } + +.section { + padding: 3rem 1.5rem; } + @media screen and (min-width: 1056px) { + .section.is-medium { + padding: 9rem 1.5rem; } + .section.is-large { + padding: 18rem 1.5rem; } } +.footer { + background-color: #fafafa; + padding: 3rem 1.5rem 6rem; } + +h1 .docs-heading-anchor, h1 .docs-heading-anchor:hover, h1 .docs-heading-anchor:visited, h2 .docs-heading-anchor, h2 .docs-heading-anchor:hover, h2 .docs-heading-anchor:visited, h3 .docs-heading-anchor, h3 .docs-heading-anchor:hover, h3 .docs-heading-anchor:visited, h4 .docs-heading-anchor, h4 .docs-heading-anchor:hover, h4 .docs-heading-anchor:visited, h5 .docs-heading-anchor, h5 .docs-heading-anchor:hover, h5 .docs-heading-anchor:visited, h6 .docs-heading-anchor, h6 .docs-heading-anchor:hover, h6 .docs-heading-anchor:visited { + color: #222222; } + +h1 .docs-heading-anchor-permalink, h2 .docs-heading-anchor-permalink, h3 .docs-heading-anchor-permalink, h4 .docs-heading-anchor-permalink, h5 .docs-heading-anchor-permalink, h6 .docs-heading-anchor-permalink { + visibility: hidden; + vertical-align: middle; + margin-left: 0.5em; + font-size: 0.7rem; } + h1 .docs-heading-anchor-permalink::before, h2 .docs-heading-anchor-permalink::before, h3 .docs-heading-anchor-permalink::before, h4 .docs-heading-anchor-permalink::before, h5 .docs-heading-anchor-permalink::before, h6 .docs-heading-anchor-permalink::before { + font-family: "Font Awesome 5 Free"; + font-weight: 900; + content: "\f0c1"; } + +h1:hover .docs-heading-anchor-permalink, h2:hover .docs-heading-anchor-permalink, h3:hover .docs-heading-anchor-permalink, h4:hover .docs-heading-anchor-permalink, h5:hover .docs-heading-anchor-permalink, h6:hover .docs-heading-anchor-permalink { + visibility: visible; } + +.docs-dark-only { + display: none !important; } + +pre { + position: relative; + overflow: hidden; } + pre code, pre code.hljs { + padding: 0 0.75rem !important; + overflow: auto; + display: block; } + pre code:first-of-type, pre code.hljs:first-of-type { + padding-top: 0.5rem !important; } + pre code:last-of-type, pre code.hljs:last-of-type { + padding-bottom: 0.5rem !important; } + pre .copy-button { + opacity: 0.2; + transition: opacity 0.2s; + position: absolute; + right: 0em; + top: 0em; + padding: 0.5em; + width: 2.5em; + height: 2.5em; + background: transparent; + border: none; + font-family: "Font Awesome 5 Free"; + color: #222222; + cursor: pointer; + text-align: center; } + pre .copy-button:focus, pre .copy-button:hover { + opacity: 1; + background: rgba(34, 34, 34, 0.1); + color: #2e63b8; } + pre .copy-button.success { + color: #259a12; + opacity: 1; } + pre .copy-button.error { + color: #cb3c33; + opacity: 1; } + pre:hover .copy-button { + opacity: 1; } + +.admonition { + background-color: #b5b5b5; + border-style: solid; + border-width: 1px; + border-color: #363636; + border-radius: 4px; + font-size: 1rem; } + .admonition strong { + color: currentColor; } + .admonition.is-small, #documenter .docs-sidebar form.docs-search > input.admonition { + font-size: 0.75rem; } + .admonition.is-medium { + font-size: 1.25rem; } + .admonition.is-large { + font-size: 1.5rem; } + .admonition.is-default { + background-color: #b5b5b5; + border-color: #363636; } + .admonition.is-default > .admonition-header { + background-color: #363636; + color: #fff; } + .admonition.is-default > .admonition-body { + color: #fff; } + .admonition.is-info { + background-color: #def0fc; + border-color: #209cee; } + .admonition.is-info > .admonition-header { + background-color: #209cee; + color: #fff; } + .admonition.is-info > .admonition-body { + color: rgba(0, 0, 0, 0.7); } + .admonition.is-success { + background-color: #bdf4d1; + border-color: #22c35b; } + .admonition.is-success > .admonition-header { + background-color: #22c35b; + color: #fff; } + .admonition.is-success > .admonition-body { + color: rgba(0, 0, 0, 0.7); } + .admonition.is-warning { + background-color: #fff3c5; + border-color: #ffdd57; } + .admonition.is-warning > .admonition-header { + background-color: #ffdd57; + color: rgba(0, 0, 0, 0.7); } + .admonition.is-warning > .admonition-body { + color: rgba(0, 0, 0, 0.7); } + .admonition.is-danger { + background-color: #ffaba7; + border-color: #da0b00; } + .admonition.is-danger > .admonition-header { + background-color: #da0b00; + color: #fff; } + .admonition.is-danger > .admonition-body { + color: rgba(0, 0, 0, 0.7); } + .admonition.is-compat { + background-color: #bdeff5; + border-color: #1db5c9; } + .admonition.is-compat > .admonition-header { + background-color: #1db5c9; + color: #fff; } + .admonition.is-compat > .admonition-body { + color: rgba(0, 0, 0, 0.7); } + +.admonition-header { + color: #fff; + background-color: #363636; + align-items: center; + font-weight: 700; + justify-content: space-between; + line-height: 1.25; + padding: 0.5rem 0.75rem; + position: relative; } + .admonition-header:before { + font-family: "Font Awesome 5 Free"; + font-weight: 900; + margin-right: 0.75rem; + content: "\f06a"; } + +.admonition-body { + color: #222222; + padding: 0.5rem 0.75rem; } + .admonition-body pre { + background-color: whitesmoke; } + .admonition-body code { + background-color: rgba(0, 0, 0, 0.05); } + +.docstring { + margin-bottom: 1em; + background-color: transparent; + border: 1px solid #dbdbdb; + box-shadow: 2px 2px 3px rgba(10, 10, 10, 0.1); + max-width: 100%; } + .docstring > header { + display: flex; + flex-grow: 1; + align-items: stretch; + padding: 0.5rem 0.75rem; + background-color: whitesmoke; + box-shadow: 0 1px 2px rgba(10, 10, 10, 0.1); + box-shadow: none; + border-bottom: 1px solid #dbdbdb; } + .docstring > header code { + background-color: transparent; } + .docstring > header .docstring-binding { + margin-right: 0.3em; } + .docstring > header .docstring-category { + margin-left: 0.3em; } + .docstring > section { + position: relative; + padding: 0.75rem 0.75rem; + border-bottom: 1px solid #dbdbdb; } + .docstring > section:last-child { + border-bottom: none; } + .docstring > section > a.docs-sourcelink { + transition: opacity 0.3s; + opacity: 0; + position: absolute; + right: 0.375rem; + bottom: 0.375rem; } + .docstring > section > a.docs-sourcelink:focus { + opacity: 1 !important; } + .docstring:hover > section > a.docs-sourcelink { + opacity: 0.2; } + .docstring:focus-within > section > a.docs-sourcelink { + opacity: 0.2; } + .docstring > section:hover a.docs-sourcelink { + opacity: 1; } + +.documenter-example-output { + background-color: white; } + +.outdated-warning-overlay { + position: fixed; + top: 0; + left: 0; + right: 0; + box-shadow: 0 0 10px rgba(0, 0, 0, 0.3); + z-index: 999; + background-color: #ffaba7; + color: rgba(0, 0, 0, 0.7); + border-bottom: 3px solid #da0b00; + padding: 10px 35px; + text-align: center; + font-size: 15px; } + .outdated-warning-overlay .outdated-warning-closer { + position: absolute; + top: calc(50% - 10px); + right: 18px; + cursor: pointer; + width: 12px; } + .outdated-warning-overlay a { + color: #2e63b8; } + .outdated-warning-overlay a:hover { + color: #363636; } + +.content pre { + border: 1px solid #dbdbdb; } + +.content code { + font-weight: inherit; } + +.content a code { + color: #2e63b8; } + +.content h1 code, .content h2 code, .content h3 code, .content h4 code, .content h5 code, .content h6 code { + color: #222222; } + +.content table { + display: block; + width: initial; + max-width: 100%; + overflow-x: auto; } + +.content blockquote > ul:first-child, .content blockquote > ol:first-child, .content .admonition-body > ul:first-child, .content .admonition-body > ol:first-child { + margin-top: 0; } + +pre, code { + font-variant-ligatures: no-contextual; } + +.breadcrumb a.is-disabled { + cursor: default; + pointer-events: none; } + .breadcrumb a.is-disabled, .breadcrumb a.is-disabled:hover { + color: #222222; } + +.hljs { + background: initial !important; } + +.katex .katex-mathml { + top: 0; + right: 0; } + +.katex-display, mjx-container, .MathJax_Display { + margin: 0.5em 0 !important; } + +html { + -moz-osx-font-smoothing: auto; + -webkit-font-smoothing: auto; } + +li.no-marker { + list-style: none; } + +/* This file contain the overall layout. + * + * The main container is
    that is identified by id #documenter. + */ +#documenter .docs-main > article { + overflow-wrap: break-word; } + #documenter .docs-main > article .math-container { + overflow-x: auto; + overflow-y: hidden; } + +@media screen and (min-width: 1056px) { + #documenter .docs-main { + max-width: 52rem; + margin-left: 20rem; + padding-right: 1rem; } } + +@media screen and (max-width: 1055px) { + #documenter .docs-main { + width: 100%; } + #documenter .docs-main > article { + max-width: 52rem; + margin-left: auto; + margin-right: auto; + margin-bottom: 1rem; + padding: 0 1rem; } + #documenter .docs-main > header, #documenter .docs-main > nav { + max-width: 100%; + width: 100%; + margin: 0; } } + +#documenter .docs-main header.docs-navbar { + background-color: white; + border-bottom: 1px solid #dbdbdb; + z-index: 2; + min-height: 4rem; + margin-bottom: 1rem; + display: flex; } + #documenter .docs-main header.docs-navbar .breadcrumb { + flex-grow: 1; } + #documenter .docs-main header.docs-navbar .docs-right { + display: flex; + white-space: nowrap; } + #documenter .docs-main header.docs-navbar .docs-right .docs-icon, #documenter .docs-main header.docs-navbar .docs-right .docs-label, #documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button { + display: inline-block; } + #documenter .docs-main header.docs-navbar .docs-right .docs-label { + padding: 0; + margin-left: 0.3em; } + #documenter .docs-main header.docs-navbar .docs-right .docs-settings-button { + margin: auto 0 auto 1rem; } + #documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button { + font-size: 1.5rem; + margin: auto 0 auto 1rem; } + #documenter .docs-main header.docs-navbar > * { + margin: auto 0; } + @media screen and (max-width: 1055px) { + #documenter .docs-main header.docs-navbar { + position: sticky; + top: 0; + padding: 0 1rem; + /* For Headroom.js */ + transition-property: top, box-shadow; + -webkit-transition-property: top, box-shadow; + /* Safari */ + transition-duration: 0.3s; + -webkit-transition-duration: 0.3s; + /* Safari */ } + #documenter .docs-main header.docs-navbar.headroom--not-top { + box-shadow: 0.2rem 0rem 0.4rem #bbb; + transition-duration: 0.7s; + -webkit-transition-duration: 0.7s; + /* Safari */ } + #documenter .docs-main header.docs-navbar.headroom--unpinned.headroom--not-top.headroom--not-bottom { + top: -4.5rem; + transition-duration: 0.7s; + -webkit-transition-duration: 0.7s; + /* Safari */ } } +#documenter .docs-main section.footnotes { + border-top: 1px solid #dbdbdb; } + #documenter .docs-main section.footnotes li .tag:first-child, #documenter .docs-main section.footnotes li .docstring > section > a.docs-sourcelink:first-child, #documenter .docs-main section.footnotes li .content kbd:first-child, .content #documenter .docs-main section.footnotes li kbd:first-child { + margin-right: 1em; + margin-bottom: 0.4em; } + +#documenter .docs-main .docs-footer { + display: flex; + flex-wrap: wrap; + margin-left: 0; + margin-right: 0; + border-top: 1px solid #dbdbdb; + padding-top: 1rem; + padding-bottom: 1rem; } + @media screen and (max-width: 1055px) { + #documenter .docs-main .docs-footer { + padding-left: 1rem; + padding-right: 1rem; } } + #documenter .docs-main .docs-footer .docs-footer-nextpage, #documenter .docs-main .docs-footer .docs-footer-prevpage { + flex-grow: 1; } + #documenter .docs-main .docs-footer .docs-footer-nextpage { + text-align: right; } + #documenter .docs-main .docs-footer .flexbox-break { + flex-basis: 100%; + height: 0; } + #documenter .docs-main .docs-footer .footer-message { + font-size: 0.8em; + margin: 0.5em auto 0 auto; + text-align: center; } + +#documenter .docs-sidebar { + display: flex; + flex-direction: column; + color: #0a0a0a; + background-color: whitesmoke; + border-right: 1px solid #dbdbdb; + padding: 0; + flex: 0 0 18rem; + z-index: 5; + font-size: 1rem; + position: fixed; + left: -18rem; + width: 18rem; + height: 100%; + transition: left 0.3s; + /* Setting up a nicer theme style for the scrollbar */ } + #documenter .docs-sidebar.visible { + left: 0; + box-shadow: 0.4rem 0rem 0.8rem #bbb; } + @media screen and (min-width: 1056px) { + #documenter .docs-sidebar.visible { + box-shadow: none; } } + @media screen and (min-width: 1056px) { + #documenter .docs-sidebar { + left: 0; + top: 0; } } + #documenter .docs-sidebar .docs-logo { + margin-top: 1rem; + padding: 0 1rem; } + #documenter .docs-sidebar .docs-logo > img { + max-height: 6rem; + margin: auto; } + #documenter .docs-sidebar .docs-package-name { + flex-shrink: 0; + font-size: 1.5rem; + font-weight: 700; + text-align: center; + white-space: nowrap; + overflow: hidden; + padding: 0.5rem 0; } + #documenter .docs-sidebar .docs-package-name .docs-autofit { + max-width: 16.2rem; } + #documenter .docs-sidebar .docs-package-name a, #documenter .docs-sidebar .docs-package-name a:hover { + color: #0a0a0a; } + #documenter .docs-sidebar .docs-version-selector { + border-top: 1px solid #dbdbdb; + display: none; + padding: 0.5rem; } + #documenter .docs-sidebar .docs-version-selector.visible { + display: flex; } + #documenter .docs-sidebar ul.docs-menu { + flex-grow: 1; + user-select: none; + border-top: 1px solid #dbdbdb; + padding-bottom: 1.5rem; + /* Managing collapsible submenus */ } + #documenter .docs-sidebar ul.docs-menu > li > .tocitem { + font-weight: bold; } + #documenter .docs-sidebar ul.docs-menu > li li { + font-size: 0.95rem; + margin-left: 1em; + border-left: 1px solid #dbdbdb; } + #documenter .docs-sidebar ul.docs-menu input.collapse-toggle { + display: none; } + #documenter .docs-sidebar ul.docs-menu ul.collapsed { + display: none; } + #documenter .docs-sidebar ul.docs-menu input:checked ~ ul.collapsed { + display: block; } + #documenter .docs-sidebar ul.docs-menu label.tocitem { + display: flex; } + #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label { + flex-grow: 2; } + #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron { + display: inline-block; + font-style: normal; + font-variant: normal; + text-rendering: auto; + line-height: 1; + font-size: 0.75rem; + margin-left: 1rem; + margin-top: auto; + margin-bottom: auto; } + #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before { + font-family: "Font Awesome 5 Free"; + font-weight: 900; + content: "\f054"; } + #documenter .docs-sidebar ul.docs-menu input:checked ~ label.tocitem .docs-chevron::before { + content: "\f078"; } + #documenter .docs-sidebar ul.docs-menu .tocitem { + display: block; + padding: 0.5rem 0.5rem; } + #documenter .docs-sidebar ul.docs-menu .tocitem, #documenter .docs-sidebar ul.docs-menu .tocitem:hover { + color: #0a0a0a; + background: whitesmoke; } + #documenter .docs-sidebar ul.docs-menu a.tocitem:hover, #documenter .docs-sidebar ul.docs-menu label.tocitem:hover { + color: #0a0a0a; + background-color: #ebebeb; } + #documenter .docs-sidebar ul.docs-menu li.is-active { + border-top: 1px solid #dbdbdb; + border-bottom: 1px solid #dbdbdb; + background-color: white; } + #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem, #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover { + background-color: white; + color: #0a0a0a; } + #documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover { + background-color: #ebebeb; + color: #0a0a0a; } + #documenter .docs-sidebar ul.docs-menu > li.is-active:first-child { + border-top: none; } + #documenter .docs-sidebar ul.docs-menu ul.internal { + margin: 0 0.5rem 0.5rem; + border-top: 1px solid #dbdbdb; } + #documenter .docs-sidebar ul.docs-menu ul.internal li { + font-size: 0.85rem; + border-left: none; + margin-left: 0; + margin-top: 0.5rem; } + #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem { + width: 100%; + padding: 0; } + #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before { + content: "⚬"; + margin-right: 0.4em; } + #documenter .docs-sidebar form.docs-search { + margin: auto; + margin-top: 0.5rem; + margin-bottom: 0.5rem; } + #documenter .docs-sidebar form.docs-search > input { + width: 14.4rem; } + @media screen and (min-width: 1056px) { + #documenter .docs-sidebar ul.docs-menu { + overflow-y: auto; + -webkit-overflow-scroll: touch; } + #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar { + width: .3rem; + background: none; } + #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb { + border-radius: 5px 0px 0px 5px; + background: #e0e0e0; } + #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover { + background: #cccccc; } } + @media screen and (max-width: 1055px) { + #documenter .docs-sidebar { + overflow-y: auto; + -webkit-overflow-scroll: touch; } + #documenter .docs-sidebar::-webkit-scrollbar { + width: .3rem; + background: none; } + #documenter .docs-sidebar::-webkit-scrollbar-thumb { + border-radius: 5px 0px 0px 5px; + background: #e0e0e0; } + #documenter .docs-sidebar::-webkit-scrollbar-thumb:hover { + background: #cccccc; } } +#documenter .docs-main #documenter-search-info { + margin-bottom: 1rem; } + +#documenter .docs-main #documenter-search-results { + list-style-type: circle; + list-style-position: outside; } + #documenter .docs-main #documenter-search-results li { + margin-left: 2rem; } + #documenter .docs-main #documenter-search-results .docs-highlight { + background-color: yellow; } + +.ansi span.sgr1 { + font-weight: bolder; } + +.ansi span.sgr2 { + font-weight: lighter; } + +.ansi span.sgr3 { + font-style: italic; } + +.ansi span.sgr4 { + text-decoration: underline; } + +.ansi span.sgr7 { + color: white; + background-color: #222222; } + +.ansi span.sgr8 { + color: transparent; } + .ansi span.sgr8 span { + color: transparent; } + +.ansi span.sgr9 { + text-decoration: line-through; } + +.ansi span.sgr30 { + color: #242424; } + +.ansi span.sgr31 { + color: #a7201f; } + +.ansi span.sgr32 { + color: #066f00; } + +.ansi span.sgr33 { + color: #856b00; } + +.ansi span.sgr34 { + color: #2149b0; } + +.ansi span.sgr35 { + color: #7d4498; } + +.ansi span.sgr36 { + color: #007989; } + +.ansi span.sgr37 { + color: gray; } + +.ansi span.sgr40 { + background-color: #242424; } + +.ansi span.sgr41 { + background-color: #a7201f; } + +.ansi span.sgr42 { + background-color: #066f00; } + +.ansi span.sgr43 { + background-color: #856b00; } + +.ansi span.sgr44 { + background-color: #2149b0; } + +.ansi span.sgr45 { + background-color: #7d4498; } + +.ansi span.sgr46 { + background-color: #007989; } + +.ansi span.sgr47 { + background-color: gray; } + +.ansi span.sgr90 { + color: #616161; } + +.ansi span.sgr91 { + color: #cb3c33; } + +.ansi span.sgr92 { + color: #0e8300; } + +.ansi span.sgr93 { + color: #a98800; } + +.ansi span.sgr94 { + color: #3c5dcd; } + +.ansi span.sgr95 { + color: #9256af; } + +.ansi span.sgr96 { + color: #008fa3; } + +.ansi span.sgr97 { + color: whitesmoke; } + +.ansi span.sgr100 { + background-color: #616161; } + +.ansi span.sgr101 { + background-color: #cb3c33; } + +.ansi span.sgr102 { + background-color: #0e8300; } + +.ansi span.sgr103 { + background-color: #a98800; } + +.ansi span.sgr104 { + background-color: #3c5dcd; } + +.ansi span.sgr105 { + background-color: #9256af; } + +.ansi span.sgr106 { + background-color: #008fa3; } + +.ansi span.sgr107 { + background-color: whitesmoke; } + +code.language-julia-repl > span.hljs-meta { + color: #066f00; + font-weight: bolder; } + +/*! + Theme: Default + Description: Original highlight.js style + Author: (c) Ivan Sagalaev + Maintainer: @highlightjs/core-team + Website: https://highlightjs.org/ + License: see project LICENSE + Touched: 2021 +*/ +/* +This is left on purpose making default.css the single file that can be lifted +as-is from the repository directly without the need for a build step + +Typically this "required" baseline CSS is added by `makestuff.js` during build. +*/ +pre code.hljs { + display: block; + overflow-x: auto; } + +code.hljs { + padding: 3px 5px; } + +/* end baseline CSS */ +.hljs { + background: #F0F0F0; + color: #444; } + +/* Base color: saturation 0; */ +.hljs-subst { + /* default */ } + +/* purposely ignored */ +.hljs-comment { + color: #888888; } + +.hljs-tag, +.hljs-punctuation { + color: #444a; } + +.hljs-tag .hljs-name, +.hljs-tag .hljs-attr { + color: #444; } + +.hljs-keyword, +.hljs-attribute, +.hljs-selector-tag, +.hljs-meta .hljs-keyword, +.hljs-doctag, +.hljs-name { + font-weight: bold; } + +/* User color: hue: 0 */ +.hljs-type, +.hljs-string, +.hljs-number, +.hljs-selector-id, +.hljs-selector-class, +.hljs-quote, +.hljs-template-tag, +.hljs-deletion { + color: #880000; } + +.hljs-title, +.hljs-section { + color: #880000; + font-weight: bold; } + +.hljs-regexp, +.hljs-symbol, +.hljs-variable, +.hljs-template-variable, +.hljs-link, +.hljs-selector-attr, +.hljs-operator, +.hljs-selector-pseudo { + color: #BC6060; } + +/* Language color: hue: 90; */ +.hljs-literal { + color: #78A960; } + +.hljs-built_in, +.hljs-bullet, +.hljs-code, +.hljs-addition { + color: #397300; } + +/* Meta color: hue: 200 */ +.hljs-meta { + color: #1f7199; } + +.hljs-meta .hljs-string { + color: #4d99bf; } + +/* Misc effects */ +.hljs-emphasis { + font-style: italic; } + +.hljs-strong { + font-weight: bold; } diff --git a/v0.2.0/assets/themeswap.js b/v0.2.0/assets/themeswap.js new file mode 100644 index 0000000..c58e993 --- /dev/null +++ b/v0.2.0/assets/themeswap.js @@ -0,0 +1,66 @@ +// Small function to quickly swap out themes. Gets put into the tag.. +function set_theme_from_local_storage() { + // Intialize the theme to null, which means default + var theme = null; + // If the browser supports the localstorage and is not disabled then try to get the + // documenter theme + if(window.localStorage != null) { + // Get the user-picked theme from localStorage. May be `null`, which means the default + // theme. + theme = window.localStorage.getItem("documenter-theme"); + } + // Check if the browser supports user color preference + var darkPreference = false; + // Check if the users preference is for dark color scheme + if(window.matchMedia('(prefers-color-scheme: dark)').matches === true) { + darkPreference = true; + } + // Initialize a few variables for the loop: + // + // - active: will contain the index of the theme that should be active. Note that there + // is no guarantee that localStorage contains sane values. If `active` stays `null` + // we either could not find the theme or it is the default (primary) theme anyway. + // Either way, we then need to stick to the primary theme. + // + // - disabled: style sheets that should be disabled (i.e. all the theme style sheets + // that are not the currently active theme) + var active = null; var disabled = []; var darkTheme = null; + for (var i = 0; i < document.styleSheets.length; i++) { + var ss = document.styleSheets[i]; + // The tag of each style sheet is expected to have a data-theme-name attribute + // which must contain the name of the theme. The names in localStorage much match this. + var themename = ss.ownerNode.getAttribute("data-theme-name"); + // attribute not set => non-theme stylesheet => ignore + if(themename === null) continue; + // To distinguish the default (primary) theme, it needs to have the data-theme-primary + // attribute set. + var isprimary = (ss.ownerNode.getAttribute("data-theme-primary") !== null); + // Check if the theme is primary dark theme + var isDarkTheme = (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null); + // If ss is for dark theme then set the value of darkTheme to the name of the theme + if(isDarkTheme) darkTheme = themename; + // If we find a matching theme (and it's not the default), we'll set active to non-null + if(themename === theme) active = i; + // Store the style sheets of inactive themes so that we could disable them + if(themename !== theme) disabled.push(ss); + } + if(active !== null) { + // If we did find an active theme, we'll (1) add the theme--$(theme) class to + document.getElementsByTagName('html')[0].className = "theme--" + theme; + // and (2) disable all the other theme stylesheets + disabled.forEach(function(ss){ + ss.disabled = true; + }); + } + else if(darkTheme !== null && darkPreference === true) { + // If we did find an active theme, we'll (1) add the theme--$(theme) class to + document.getElementsByTagName('html')[0].className = "theme--" + darkTheme; + // and (2) disable all the other theme stylesheets + disabled.forEach(function(ss){ + if (ss.ownerNode.getAttribute("data-theme-name") !== darkTheme) { + ss.disabled = true; + } + }); + } +} +set_theme_from_local_storage(); diff --git a/v0.2.0/assets/warner.js b/v0.2.0/assets/warner.js new file mode 100644 index 0000000..5531c88 --- /dev/null +++ b/v0.2.0/assets/warner.js @@ -0,0 +1,49 @@ +function maybeAddWarning () { + // DOCUMENTER_NEWEST is defined in versions.js, DOCUMENTER_CURRENT_VERSION and DOCUMENTER_STABLE + // in siteinfo.js. + // If either of these are undefined something went horribly wrong, so we abort. + if ( + window.DOCUMENTER_NEWEST === undefined || + window.DOCUMENTER_CURRENT_VERSION === undefined || + window.DOCUMENTER_STABLE === undefined + ) { + return + }; + + // Current version is not a version number, so we can't tell if it's the newest version. Abort. + if (!/v(\d+\.)*\d+/.test(window.DOCUMENTER_CURRENT_VERSION)) { + return + }; + + // Current version is newest version, so no need to add a warning. + if (window.DOCUMENTER_NEWEST === window.DOCUMENTER_CURRENT_VERSION) { + return + }; + + // Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs. + if (document.body.querySelector('meta[name="robots"]') === null) { + const meta = document.createElement('meta'); + meta.name = 'robots'; + meta.content = 'noindex'; + + document.getElementsByTagName('head')[0].appendChild(meta); + }; + + const div = document.createElement('div'); + div.classList.add('outdated-warning-overlay'); + const closer = document.createElement('button'); + closer.classList.add('outdated-warning-closer', 'delete'); + closer.addEventListener('click', function () { + document.body.removeChild(div); + }); + const href = window.documenterBaseURL + '/../' + window.DOCUMENTER_STABLE; + div.innerHTML = 'This documentation is not for the latest stable release, but for either the development version or an older release.
    Click here to go to the documentation for the latest stable release.'; + div.appendChild(closer); + document.body.appendChild(div); +}; + +if (document.readyState === 'loading') { + document.addEventListener('DOMContentLoaded', maybeAddWarning); +} else { + maybeAddWarning(); +}; diff --git a/v0.2.0/examples/CPG_examples.ipynb b/v0.2.0/examples/CPG_examples.ipynb new file mode 100644 index 0000000..a7b8320 --- /dev/null +++ b/v0.2.0/examples/CPG_examples.ipynb @@ -0,0 +1,5756 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "source": [ + "# Open Circular Port Graph Examples" + ], + "metadata": {} + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "WARNING: using Plots.grid in module ##293 conflicts with an existing identifier.\n" + ] + } + ], + "cell_type": "code", + "source": [ + "using AlgebraicDynamics.DWDDynam\n", + "using AlgebraicDynamics.CPortGraphDynam\n", + "using AlgebraicDynamics.CPortGraphDynam: draw, barbell, gridpath, grid, meshpath\n", + "\n", + "using Catlab\n", + "using Catlab.WiringDiagrams\n", + "using Catlab.WiringDiagrams.CPortGraphs\n", + "using Catlab.Theories\n", + "using Catlab.CategoricalAlgebra\n", + "\n", + "using OrdinaryDiffEq\n", + "using Plots, Plots.PlotMeasures\n", + "\n", + "using PrettyTables" + ], + "metadata": {}, + "execution_count": 1 + }, + { + "cell_type": "markdown", + "source": [ + "## SIR Epidemiology Model" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "An SIR epidemiology model has three types of people: susceptible, infected, and recovered. When a susceptible person interacts with infected person, the susceptible person also becomes infected. Over time infected people recover. Transition rates determine the how frequently susceptible people come into contact with infected people and how fast infected people recover. The system evolves according to the law of mass action." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "In a multi-city SIR model, each city has susceptible, infected, and recovered populations. To see the spread of the disease we will consider both susceptible and infected people moving between cities. To define a multi-city SIR model, we can compose multiple single-city SIR models using the composition syntax of open CPGs. The composition pattern will consist of three boxes each of which will be filled by a single-city SIR model. Ports expose the susceptible and infected populations of each city. One set of wires connect the susceptible and infected populations of cities 1 and 2. A second set of wires connect the susceptible and infected popuation of cities 2 and 3." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "" + }, + "metadata": {}, + "execution_count": 2 + } + ], + "cell_type": "code", + "source": [ + "# Define the composition pattern\n", + "d₀ = OpenCPortGraph()\n", + "add_parts!(d₀, :Box, 1)\n", + "d₁ = barbell(2)\n", + "F = ACSetTransformation((Box=[2],), d₀, d₁)\n", + "G = ACSetTransformation((Box=[1],), d₀, d₁)\n", + "d₂ = apex(pushout(F,G))\n", + "\n", + "# Define the primitive systems\n", + "β, μ, α₁, α₂ = 0.4, 0.4, 0.01, 0.01\n", + "\n", + "sirfuncb = (u,x,p,t)->[-β*u[1]*u[2] - α₁*(u[1]-x[1]), # Ṡ\n", + " β*u[1]*u[2] - μ*u[2] - α₂*(u[2]-x[2]), #İ\n", + " μ*u[2] # Ṙ\n", + " ]\n", + "sirfuncm = (u,x,p,t)->[-β*u[1]*u[2] - α₁*(u[1]-(x[1]+x[3])/2),\n", + " β*u[1]*u[2] - μ*u[2] - α₂*(u[2]-(x[2]+x[4])/2),\n", + " μ*u[2]\n", + " ]\n", + "\n", + "boundary = ContinuousMachine{Float64}(2,3,sirfuncb, (u,p,t)->u[1:2])\n", + "middle = ContinuousMachine{Float64}(4,3, sirfuncm, (u,p,t)->u[[1,2,1,2]])\n", + "\n", + "# Compose\n", + "threecity = oapply(d₂, [boundary,middle,boundary])" + ], + "metadata": {}, + "execution_count": 2 + }, + { + "cell_type": "markdown", + "source": [ + "First, we will approximate the solution to the three city SIR model using Euler's method. The initial condition has 100 susceptible people in each city a single infected person in the first city. We show the infected populations in each city over time." + ], + "metadata": {} + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌─────────┬─────────────┬─────────────┐\n", + "│ i1 │ i2 │ i3 │\n", + "│ Float64 │ Float64 │ Float64 │\n", + "├─────────┼─────────────┼─────────────┤\n", + "│ 1.0 │ 0.0 │ 0.0 │\n", + "│ 1.3959 │ 5.0e-5 │ 0.0 │\n", + "│ 1.9463 │ 0.00013959 │ 5.0e-9 │\n", + "│ 2.7094 │ 0.000292169 │ 2.09385e-8 │\n", + "│ 3.76334 │ 0.000543308 │ 5.84449e-8 │\n", + "│ 5.21121 │ 0.00094657 │ 1.35914e-7 │\n", + "│ 7.18564 │ 0.00158188 │ 2.8438e-7 │\n", + "│ 9.85078 │ 0.00256741 │ 5.55153e-7 │\n", + "│ 13.3983 │ 0.00407637 │ 1.03168e-6 │\n", + "│ 18.0311 │ 0.00636006 │ 1.84776e-6 │\n", + "│ 23.9277 │ 0.0097794 │ 3.21529e-6 │\n", + "│ 31.1815 │ 0.0148471 │ 5.46617e-6 │\n", + "│ 39.7176 │ 0.0222833 │ 9.11493e-6 │\n", + "│ 49.2146 │ 0.0330891 │ 1.49519e-5 │\n", + "│ 59.0815 │ 0.0486455 │ 2.41802e-5 │\n", + "│ 68.5483 │ 0.0708489 │ 3.86177e-5 │\n", + "│ 76.8715 │ 0.102305 │ 6.09913e-5 │\n", + "│ 83.5617 │ 0.14661 │ 9.53683e-5 │\n", + "│ 88.4952 │ 0.208744 │ 0.000147786 │\n", + "│ 91.8553 │ 0.295635 │ 0.000227168 │\n", + "│ 93.9784 │ 0.416918 │ 0.000346667 │\n", + "│ 95.2144 │ 0.585974 │ 0.000525604 │\n", + "│ 95.8529 │ 0.821336 │ 0.000792287 │\n", + "│ 96.1049 │ 1.14857 │ 0.00118809 │\n", + "│ 96.1134 │ 1.60277 │ 0.0017733 │\n", + "│ 95.9711 │ 2.23173 │ 0.00263561 │\n", + "│ 95.7361 │ 3.09995 │ 0.0039022 │\n", + "│ 95.445 │ 4.29318 │ 0.00575701 │\n", + "│ 95.1199 │ 5.92314 │ 0.0084654 │\n", + "│ 94.7747 │ 8.13108 │ 0.0124089 │\n", + "│ 94.4178 │ 11.0877 │ 0.018134 │\n", + "│ 94.0544 │ 14.985 │ 0.0264207 │\n", + "│ 93.6876 │ 20.0143 │ 0.0383764 │\n", + "│ 93.3194 │ 26.3226 │ 0.0555651 │\n", + "│ 92.9511 │ 33.9449 │ 0.0801831 │\n", + "│ 92.5834 │ 42.7238 │ 0.115296 │\n", + "│ 92.2167 │ 52.2483 │ 0.16516 │\n", + "│ 91.8514 │ 61.8688 │ 0.235662 │\n", + "│ 91.4875 │ 70.8272 │ 0.334923 │\n", + "│ 91.1249 │ 78.4739 │ 0.474149 │\n", + "│ 90.7636 │ 84.4564 │ 0.668803 │\n", + "│ 90.4034 │ 88.7674 │ 0.94022 │\n", + "│ 90.0444 │ 91.6474 │ 1.31776 │\n", + "│ 89.6865 │ 93.4347 │ 1.8416 │\n", + "│ 89.3296 │ 94.4517 │ 2.56633 │\n", + "│ 88.9739 │ 94.9542 │ 3.56516 │\n", + "│ 88.6194 │ 95.125 │ 4.93473 │\n", + "│ 88.2662 │ 95.0865 │ 6.79946 │\n", + "│ 87.9142 │ 94.918 │ 9.31398 │\n", + "│ 87.5635 │ 94.6694 │ 12.6602 │\n", + "│ 87.2141 │ 94.3719 │ 17.0337 │\n", + "│ 86.8661 │ 94.0449 │ 22.6133 │\n", + "│ 86.5195 │ 93.7002 │ 29.5066 │\n", + "│ 86.1742 │ 93.3454 │ 37.674 │\n", + "│ 85.8302 │ 92.9848 │ 46.8507 │\n", + "│ 85.4877 │ 92.6213 │ 56.5124 │\n", + "│ 85.1464 │ 92.2566 │ 65.938 │\n", + "│ 84.8066 │ 91.8916 │ 74.3883 │\n", + "│ 84.4681 │ 91.527 │ 81.3273 │\n", + "│ 84.1309 │ 91.1632 │ 86.5583 │\n", + "│ 83.7951 │ 90.8002 │ 90.2011 │\n", + "│ 83.4606 │ 90.4383 │ 92.5573 │\n", + "│ 83.1275 │ 90.0774 │ 93.9686 │\n", + "│ 82.7957 │ 89.7178 │ 94.7313 │\n", + "│ 82.4652 │ 89.3594 │ 95.0685 │\n", + "│ 82.136 │ 89.0024 │ 95.1342 │\n", + "│ 81.8081 │ 88.6466 │ 95.0299 │\n", + "│ 81.4816 │ 88.2922 │ 94.8204 │\n", + "│ 81.1564 │ 87.9391 │ 94.5464 │\n", + "│ 80.8324 │ 87.5874 │ 94.2331 │\n", + "│ 80.5098 │ 87.2372 │ 93.8962 │\n", + "│ 80.1884 │ 86.8882 │ 93.5451 │\n", + "│ 79.8683 │ 86.5407 │ 93.186 │\n", + "│ 79.5495 │ 86.1946 │ 92.8223 │\n", + "│ 79.232 │ 85.8498 │ 92.4565 │\n", + "│ 78.9157 │ 85.5064 │ 92.0898 │\n", + "│ 78.6007 │ 85.1644 │ 91.7232 │\n", + "│ 78.2869 │ 84.8237 │ 91.3572 │\n", + "│ 77.9745 │ 84.4844 │ 90.992 │\n", + "│ 77.6632 │ 84.1465 │ 90.628 │\n", + "│ 77.3532 │ 83.8099 │ 90.2652 │\n", + "│ 77.0444 │ 83.4747 │ 89.9038 │\n", + "│ 76.7369 │ 83.1408 │ 89.5437 │\n", + "│ 76.4306 │ 82.8082 │ 89.185 │\n", + "│ 76.1255 │ 82.477 │ 88.8276 │\n", + "│ 75.8216 │ 82.1471 │ 88.4717 │\n", + "│ 75.519 │ 81.8185 │ 88.1172 │\n", + "│ 75.2175 │ 81.4912 │ 87.7642 │\n", + "│ 74.9173 │ 81.1653 │ 87.4125 │\n", + "│ 74.6183 │ 80.8406 │ 87.0622 │\n", + "│ 74.3204 │ 80.5172 │ 86.7134 │\n", + "│ 74.0237 │ 80.1952 │ 86.3659 │\n", + "│ 73.7283 │ 79.8744 │ 86.0198 │\n", + "│ 73.434 │ 79.5549 │ 85.6751 │\n", + "│ 73.1408 │ 79.2367 │ 85.3318 │\n", + "│ 72.8489 │ 78.9197 │ 84.9899 │\n", + "│ 72.5581 │ 78.604 │ 84.6493 │\n", + "│ 72.2685 │ 78.2896 │ 84.3101 │\n", + "│ 71.98 │ 77.9765 │ 83.9723 │\n", + "│ 71.6927 │ 77.6646 │ 83.6358 │\n", + "│ 71.4065 │ 77.3539 │ 83.3006 │\n", + "└─────────┴─────────────┴─────────────┘\n" + ] + } + ], + "cell_type": "code", + "source": [ + "u0 = [100,1,0,100,0,0,100,0,0.0]\n", + "\n", + "h = 0.01\n", + "tspan = (0.0, 1.0)\n", + "threecity_approx = euler_approx(threecity, h)\n", + "prob = DiscreteProblem(threecity_approx, u0, [], tspan, nothing)\n", + "sol = solve(prob, FunctionMap(); dt = h)\n", + "\n", + "map(sol) do u\n", + " return (i1=u[2], i2=u[5], i3=u[8])\n", + "end |> pretty_table" + ], + "metadata": {}, + "execution_count": 3 + }, + { + "cell_type": "markdown", + "source": [ + "Next, we will solve the continuous system and plot the results. Over time the infected populations increase and the susceptible populations decrease. The delays in the plots illustrate how the disease spreads from city 1 to city 2 and then from city 2 to city 3." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=9}", + "image/png": "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uKJHH3108+bNW7du1Wq1gxpAELR8+XKWZf/2t7+llr/88ssEQSxZsoR76po9e7bJZNq6dWuqigeDwbQpUIVCceWVV4ZCoUFzrA+q9zzjCH5qlCfT9Pb2Ll26tLi4ePny5TNmzFCr1T09PTt27Hj77bdJkrzqqqtOIUOmUqn83e9+99xzzz3zzDNccMJxsFgsv/vd7waWL1269OKLL04e5ubm3nbbbW63e968eU6n87nnnmtubl60aBHnVzkojzzyyAcffPDaa68JBILrr7+epul33nnniy++UKlUvb29SbMrrrjimmuu+fTTT6dPn/6HP/xh0qRJGIZ1dHT8/PPP77///oEDB4buOTJ0nn/++Y0bN77wwgs0TV9zzTUURb377rv/+c9/NBoN5yE5KDNnzrzuuus+/vjjefPmPfPMMwUFBQcPHnz44Ydpmn766aeTS2v33HPPxx9//N13382YMYNzKP3888+DwWBhYWF7e3uaynKpAx5++OFQKHTllVem+RYNEb1ev2DBguPbPPnkk59//vlbb72FouiNN96IouhHH330yiuvSKXSpJ6hKPrXv/71lltuueKKK1588cXp06d3dHQ8/vjjaUuzAIB//OMf27dv574GV199dUlJCZeB6MsvvwwGg/yU6fhmVH1Wec5GPB7PVVddNdC3QiQS3XfffamxgEPPLMOybG9vLxc9ffDgwWM1nXSxGZTnn3+eM+PCJ+6///5HHnkk9Sa+cOHC1GDHQTPL7NmzJ1XGlErlxo0bB2aWIUny0UcfTfN5QRAkNXkNFz7x73//O/X83ERfauAax6xZswAAyYjDQTPL7Ny5M823dsKECUeOHEm1GRhQH4/H77jjjlQnVaFQ+Oyzz6YFEvT09Nx8881cPAyCIL/61a+sVmt+fj4Mw2mRHizLut1ubkC2cePGwT6odFLDJ47FoJllDh8+nPZcVVJSsnPnzrS6f//731NTzZ177rnr168HAzLLWCyWgcuZCoXi4YcfTtrw4RPjET5fO8/oQFHUoUOHbDYbl1gkPz9/xowZnEtCkmAw6HK5ZDJZ0i8/Fos5HA6hUDjoMMLhcMRiMbVaPagHI1c9bQEvFa1Wyzltrlmz5sorr7z//vtfeeUVi8Wybdu2eDw+adKk6dOnp+oiwzBtbW1CoTDNQT8ej3///fc2m40btchksq6uLpIk09J+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8iG12WyDf51tQajVageH4r1er1KpjPky0ul0Q8fqPR5Pii/cN8ED4vV6zz///LVr1/7yl7+cwdolopjPGEIo5og9/PDDZWVlJpOJYRiO4/x+/2jTQ1LEuJ8xjUYTCoX+9Kc/rVq16qabbtqyZcvf//73Ga9mAok5Yl6vN+aIBYPBdevW3Xvvvb29vb29vZ999tkTTzwx49VMJicf0sHTWTT7gjA/P7+5uTl6u7m5uaCg4OQCg/s0ejweq9Wan58/kzVMNEMPiMvlstvtJx8Qv9+/adOmefPmPfnkkzNdv8QT8xlTq9VpaWlDCxw5cuSNN94wm81ms7m+vv7OO++866674lHTRDH0MzYwMOByufLy8mIKEASh1+ujf9Xr9W63e6ZrmUiGfsZ4nm9vb4/5rWxra+vp6dm6dStCSKfTXXDBBXv37p35eiaRvLy8zs7OcDgc/Wtzc/OwQzpjw5gzY8eOHfPnz/d4PJFIZM2aNYMDyI888siRI0cwxna7fXCQ+ZFHHlmxYkU8q5sA+vv7lUplVVUVxvihhx4688wzo/e/8847b7/9NsY4GAyed9551113Hc/z8axowvjqq6+MRmNvby/G+Nprr7355puj9z/77LP79u2LKQyTZTDGx44dU6lU9fX1GOP7779/3bp10fvfeuutd999N3p748aNDzzwAMbY4XCYTKbobMmU5ff7aZretWsXxvjFF1+0WCyCIGCMP/vssx07dmCMo91d//jHP6KFV61adffdd8e3zong5Mkyr776avQwYoznz5//9NNPY4z37Nmj1WrdbvdgsdkWhBzHXX/99Xq93mg0btq0yefzRe83mUzvvPNO9PaLL75I03RBQYHZbD548GD8Kpsonn/++egBsVgs0W8rjPGtt97605/+FGO8f/9+ergvv/wyrvWNv7vvvpuiqOzs7JUrV1qt1uida9euffzxx2NKrl279tVXX53xCiacp59+mqKo/Pz8kpKShoaG6J033XTTbbfdFr3d3Ny8ePFii8ViMBi2b98e/d5PZe+88056errJZMrJyRn8jfvd7363efPm6O2dO3dmZWXNmzfPYDBs2rQpZiJuqgmFQkO/o3JycqL3X3755ffcc0/09jfffDN37lyTyZSWlrZz586hPz47t2FyuVwcx0UnCI0oHA4PDAxkZmaS5GzrHD41oVDI4XBkZWURBBHvuiQHv9/v8XgyMjLiXZGkMZHPWH9/v16vl0qlM1mxhBWJROx2e0ZGRnT66IisVqtOp5PL5TNZseTF87zVak1PT4+ZOzI7gxAAAACYIGgPAQAASGkQhAAAAFIaBCEAAICUBkEIAAAgpUEQAgAASGkQhAAAAFIaBCEAAICUBkEIwGy2devWG2+8Md61ACChieNdAQDANOrr61MqlfGuBQAJDYIQgFlr165ddrtdKpW++eabCKGMjIzVq1fHu1IAJBxYYg2AWevyyy//8MMPSZK0WCwIoeXLl//lL3+Jd6UASDgQhADMZmvWrFEqlR988EG8KwJA4oLJMgAAAFIaBCEAAICUBkEIAAAgpUEQAjCbkSQpCEK8awFAQoMgBGA2MxqNvb298a4FAAkNghCA2eyiiy6qr69ftWrVZZdd9sADD8S7OgAkIrigHoDZbOvWrZmZmXv37u3v71er1fGuDgCJCK4jBAAAkNKgaxQAAEBKgyAEAACQ0iAIAQAApDQIQgAAACkNghAAAEBKgyAEAACQ0iAIAQAApDQIQgAAACkNghAAAEBKgyAEAACQ0iAIAQAApDQIQgAAACkNghAAAEBKgyAEAACQ0iAIAQAApDQIQgAAACkNghAAAEBKgyAEAACQ0iAIAQAApDQIQgAAACkNghAAAEBKgyAEAACQ0iAIAQAApDQIQgAAACkNghAAAEBKgyAEAACQ0iAIAQAApDQIQgAAACkNghAAAEBKgyAEAACQ0iAIAQAApDQIQgAAACkNghAAAEBKgyAEAACQ0iAIAQAApDQIQgAAACkNghAAAEBKgyAEAACQ0iAIAQAApDQIQgAAACkNghAAAEBKgyAEAACQ0v4P5SqSpu3Eb+4AAAAASUVORK5CYII=", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 4 + } + ], + "cell_type": "code", + "source": [ + "# Solve and plot\n", + "prob = ODEProblem(threecity, u0, tspan)\n", + "sol = solve(prob, Tsit5(); dtmax = 0.01)\n", + "\n", + "plot(sol, lw=2, title = \"SIR Epidemiology Model\", bottom_margin=10mm, left_margin=10mm,\n", + " label=[\"S\" \"I\" \"R\"])" + ], + "metadata": {}, + "execution_count": 4 + }, + { + "cell_type": "markdown", + "source": [ + "## Cellular automata" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + " Circular port graphs are particularly useful for modeling systems where the composition pattern is given by a grid and where the dynamics are repetative. In the case of cellular automata the composition pattern is a row of $n$ cells each of which is connected to its two neighbors. The primitive systems are identical machines whose discrete dynamics are a specified rule. See [here](https://mathworld.wolfram.com/ElementaryCellularAutomaton.html) for a complete set of rules and the patterns they generate." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=1}", + "image/png": "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", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 5 + } + ], + "cell_type": "code", + "source": [ + "function Rule(k::Int)\n", + " (left_neighbor, x, right_neighbor) ->\n", + " Bool(digits(k, base=2, pad=8)[1 + right_neighbor + 2*x + 4*left_neighbor])\n", + "end\n", + "\n", + "# Define the composition pattern\n", + "n = 100\n", + "row = apex(gridpath(n, 1))\n", + "\n", + "# Define the primitive system which will be repeated for each cell\n", + "rule = DiscreteMachine{Bool}(2, 1, 2,\n", + " (u, x, p, t)->Rule(p)(x[2], u[1], x[1]),\n", + " (u,p,t)->[u[1], u[1]])\n", + "\n", + "# Compose\n", + "automaton = oapply(row, rule)\n", + "\n", + "# Solve and plot\n", + "u0 = zeros(Int, n); u0[Int(n/2)] = 1\n", + "\n", + "rule_number = 126\n", + "tspan = (0.0, 100.0)\n", + "prob = DiscreteProblem(automaton, u0, [0,0], tspan, rule_number)\n", + "sol = solve(prob, FunctionMap())\n", + "spy(transpose(reduce(hcat, sol.u)))" + ], + "metadata": {}, + "execution_count": 5 + } + ], + "nbformat_minor": 3, + "metadata": { + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.9.1" + }, + "kernelspec": { + "name": "julia-1.9", + "display_name": "Julia 1.9.1", + "language": "julia" + } + }, + "nbformat": 4 +} diff --git a/v0.2.0/examples/CPG_examples/index.html b/v0.2.0/examples/CPG_examples/index.html new file mode 100644 index 0000000..a6b8fe4 --- /dev/null +++ b/v0.2.0/examples/CPG_examples/index.html @@ -0,0 +1,2884 @@ + +Open Circular Port Graph Examples · AlgebraicDynamics.jl

    Open Circular Port Graph Examples

    using AlgebraicDynamics.DWDDynam
    +using AlgebraicDynamics.CPortGraphDynam
    +using AlgebraicDynamics.CPortGraphDynam: draw, barbell, gridpath, grid, meshpath
    +
    +using Catlab
    +using Catlab.WiringDiagrams
    +using Catlab.WiringDiagrams.CPortGraphs
    +using Catlab.Theories
    +using Catlab.CategoricalAlgebra
    +
    +using OrdinaryDiffEq
    +using Plots, Plots.PlotMeasures
    +
    +using PrettyTables
    WARNING: using Plots.grid in module Main conflicts with an existing identifier.

    SIR Epidemiology Model

    An SIR epidemiology model has three types of people: susceptible, infected, and recovered. When a susceptible person interacts with infected person, the susceptible person also becomes infected. Over time infected people recover. Transition rates determine the how frequently susceptible people come into contact with infected people and how fast infected people recover. The system evolves according to the law of mass action.

    In a multi-city SIR model, each city has susceptible, infected, and recovered populations. To see the spread of the disease we will consider both susceptible and infected people moving between cities. To define a multi-city SIR model, we can compose multiple single-city SIR models using the composition syntax of open CPGs. The composition pattern will consist of three boxes each of which will be filled by a single-city SIR model. Ports expose the susceptible and infected populations of each city. One set of wires connect the susceptible and infected populations of cities 1 and 2. A second set of wires connect the susceptible and infected popuation of cities 2 and 3.

    # Define the composition pattern
    +d₀ = OpenCPortGraph()
    +add_parts!(d₀, :Box, 1)
    +d₁ = barbell(2)
    +F = ACSetTransformation((Box=[2],), d₀, d₁)
    +G = ACSetTransformation((Box=[1],), d₀, d₁)
    +d₂ = apex(pushout(F,G))
    +
    +# Define the primitive systems
    +β, μ, α₁, α₂ = 0.4, 0.4, 0.01, 0.01
    +
    +sirfuncb = (u,x,p,t)->[-β*u[1]*u[2] - α₁*(u[1]-x[1]), # Ṡ
    +                        β*u[1]*u[2] - μ*u[2] - α₂*(u[2]-x[2]), #İ
    +                        μ*u[2] # Ṙ
    +                        ]
    +sirfuncm = (u,x,p,t)->[-β*u[1]*u[2] - α₁*(u[1]-(x[1]+x[3])/2),
    +                        β*u[1]*u[2] - μ*u[2] - α₂*(u[2]-(x[2]+x[4])/2),
    +                        μ*u[2]
    +                       ]
    +
    +boundary  = ContinuousMachine{Float64}(2,3,sirfuncb, (u,p,t)->u[1:2])
    +middle    = ContinuousMachine{Float64}(4,3, sirfuncm, (u,p,t)->u[[1,2,1,2]])
    +
    +# Compose
    +threecity = oapply(d₂, [boundary,middle,boundary])

    First, we will approximate the solution to the three city SIR model using Euler's method. The initial condition has 100 susceptible people in each city a single infected person in the first city. We show the infected populations in each city over time.

    u0 = [100,1,0,100,0,0,100,0,0.0]
    +
    +h = 0.01
    +tspan = (0.0, 1.0)
    +threecity_approx = euler_approx(threecity, h)
    +prob = DiscreteProblem(threecity_approx, u0, [], tspan, nothing)
    +sol = solve(prob, FunctionMap(); dt = h)
    +
    +map(sol) do u
    +    return (i1=u[2], i2=u[5], i3=u[8])
    +end |> pretty_table
    ┌─────────┬─────────────┬─────────────┐
    +│      i1 │          i2 │          i3 │
    +│ Float64 │     Float64 │     Float64 │
    +├─────────┼─────────────┼─────────────┤
    +│     1.0 │         0.0 │         0.0 │
    +│  1.3959 │      5.0e-5 │         0.0 │
    +│  1.9463 │  0.00013959 │      5.0e-9 │
    +│  2.7094 │ 0.000292169 │  2.09385e-8 │
    +│ 3.76334 │ 0.000543308 │  5.84449e-8 │
    +│ 5.21121 │  0.00094657 │  1.35914e-7 │
    +│ 7.18564 │  0.00158188 │   2.8438e-7 │
    +│ 9.85078 │  0.00256741 │  5.55153e-7 │
    +│ 13.3983 │  0.00407637 │  1.03168e-6 │
    +│ 18.0311 │  0.00636006 │  1.84776e-6 │
    +│ 23.9277 │   0.0097794 │  3.21529e-6 │
    +│ 31.1815 │   0.0148471 │  5.46617e-6 │
    +│ 39.7176 │   0.0222833 │  9.11493e-6 │
    +│ 49.2146 │   0.0330891 │  1.49519e-5 │
    +│ 59.0815 │   0.0486455 │  2.41802e-5 │
    +│ 68.5483 │   0.0708489 │  3.86177e-5 │
    +│ 76.8715 │    0.102305 │  6.09913e-5 │
    +│ 83.5617 │     0.14661 │  9.53683e-5 │
    +│ 88.4952 │    0.208744 │ 0.000147786 │
    +│ 91.8553 │    0.295635 │ 0.000227168 │
    +│ 93.9784 │    0.416918 │ 0.000346667 │
    +│ 95.2144 │    0.585974 │ 0.000525604 │
    +│ 95.8529 │    0.821336 │ 0.000792287 │
    +│ 96.1049 │     1.14857 │  0.00118809 │
    +│ 96.1134 │     1.60277 │   0.0017733 │
    +│ 95.9711 │     2.23173 │  0.00263561 │
    +│ 95.7361 │     3.09995 │   0.0039022 │
    +│  95.445 │     4.29318 │  0.00575701 │
    +│ 95.1199 │     5.92314 │   0.0084654 │
    +│ 94.7747 │     8.13108 │   0.0124089 │
    +│ 94.4178 │     11.0877 │    0.018134 │
    +│ 94.0544 │      14.985 │   0.0264207 │
    +│ 93.6876 │     20.0143 │   0.0383764 │
    +│ 93.3194 │     26.3226 │   0.0555651 │
    +│ 92.9511 │     33.9449 │   0.0801831 │
    +│ 92.5834 │     42.7238 │    0.115296 │
    +│ 92.2167 │     52.2483 │     0.16516 │
    +│ 91.8514 │     61.8688 │    0.235662 │
    +│ 91.4875 │     70.8272 │    0.334923 │
    +│ 91.1249 │     78.4739 │    0.474149 │
    +│ 90.7636 │     84.4564 │    0.668803 │
    +│ 90.4034 │     88.7674 │     0.94022 │
    +│ 90.0444 │     91.6474 │     1.31776 │
    +│ 89.6865 │     93.4347 │      1.8416 │
    +│ 89.3296 │     94.4517 │     2.56633 │
    +│ 88.9739 │     94.9542 │     3.56516 │
    +│ 88.6194 │      95.125 │     4.93473 │
    +│ 88.2662 │     95.0865 │     6.79946 │
    +│ 87.9142 │      94.918 │     9.31398 │
    +│ 87.5635 │     94.6694 │     12.6602 │
    +│ 87.2141 │     94.3719 │     17.0337 │
    +│ 86.8661 │     94.0449 │     22.6133 │
    +│ 86.5195 │     93.7002 │     29.5066 │
    +│ 86.1742 │     93.3454 │      37.674 │
    +│ 85.8302 │     92.9848 │     46.8507 │
    +│ 85.4877 │     92.6213 │     56.5124 │
    +│ 85.1464 │     92.2566 │      65.938 │
    +│ 84.8066 │     91.8916 │     74.3883 │
    +│ 84.4681 │      91.527 │     81.3273 │
    +│ 84.1309 │     91.1632 │     86.5583 │
    +│ 83.7951 │     90.8002 │     90.2011 │
    +│ 83.4606 │     90.4383 │     92.5573 │
    +│ 83.1275 │     90.0774 │     93.9686 │
    +│ 82.7957 │     89.7178 │     94.7313 │
    +│ 82.4652 │     89.3594 │     95.0685 │
    +│  82.136 │     89.0024 │     95.1342 │
    +│ 81.8081 │     88.6466 │     95.0299 │
    +│ 81.4816 │     88.2922 │     94.8204 │
    +│ 81.1564 │     87.9391 │     94.5464 │
    +│ 80.8324 │     87.5874 │     94.2331 │
    +│ 80.5098 │     87.2372 │     93.8962 │
    +│ 80.1884 │     86.8882 │     93.5451 │
    +│ 79.8683 │     86.5407 │      93.186 │
    +│ 79.5495 │     86.1946 │     92.8223 │
    +│  79.232 │     85.8498 │     92.4565 │
    +│ 78.9157 │     85.5064 │     92.0898 │
    +│ 78.6007 │     85.1644 │     91.7232 │
    +│ 78.2869 │     84.8237 │     91.3572 │
    +│ 77.9745 │     84.4844 │      90.992 │
    +│ 77.6632 │     84.1465 │      90.628 │
    +│ 77.3532 │     83.8099 │     90.2652 │
    +│ 77.0444 │     83.4747 │     89.9038 │
    +│ 76.7369 │     83.1408 │     89.5437 │
    +│ 76.4306 │     82.8082 │      89.185 │
    +│ 76.1255 │      82.477 │     88.8276 │
    +│ 75.8216 │     82.1471 │     88.4717 │
    +│  75.519 │     81.8185 │     88.1172 │
    +│ 75.2175 │     81.4912 │     87.7642 │
    +│ 74.9173 │     81.1653 │     87.4125 │
    +│ 74.6183 │     80.8406 │     87.0622 │
    +│ 74.3204 │     80.5172 │     86.7134 │
    +│ 74.0237 │     80.1952 │     86.3659 │
    +│ 73.7283 │     79.8744 │     86.0198 │
    +│  73.434 │     79.5549 │     85.6751 │
    +│ 73.1408 │     79.2367 │     85.3318 │
    +│ 72.8489 │     78.9197 │     84.9899 │
    +│ 72.5581 │      78.604 │     84.6493 │
    +│ 72.2685 │     78.2896 │     84.3101 │
    +│   71.98 │     77.9765 │     83.9723 │
    +│ 71.6927 │     77.6646 │     83.6358 │
    +│ 71.4065 │     77.3539 │     83.3006 │
    +└─────────┴─────────────┴─────────────┘

    Next, we will solve the continuous system and plot the results. Over time the infected populations increase and the susceptible populations decrease. The delays in the plots illustrate how the disease spreads from city 1 to city 2 and then from city 2 to city 3.

    # Solve and plot
    +prob = ODEProblem(threecity, u0, tspan)
    +sol = solve(prob, Tsit5(); dtmax = 0.01)
    +
    +plot(sol, lw=2, title = "SIR Epidemiology Model", bottom_margin=10mm, left_margin=10mm,
    +    label=["S" "I" "R"])
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Cellular automata

    Circular port graphs are particularly useful for modeling systems where the composition pattern is given by a grid and where the dynamics are repetative. In the case of cellular automata the composition pattern is a row of $n$ cells each of which is connected to its two neighbors. The primitive systems are identical machines whose discrete dynamics are a specified rule. See here for a complete set of rules and the patterns they generate.

    function Rule(k::Int)
    +    (left_neighbor, x, right_neighbor) ->
    +    Bool(digits(k, base=2, pad=8)[1 + right_neighbor + 2*x + 4*left_neighbor])
    +end
    +
    +# Define the composition pattern
    +n = 100
    +row = apex(gridpath(n, 1))
    +
    +# Define the primitive system which will be repeated for each cell
    +rule = DiscreteMachine{Bool}(2, 1, 2,
    +            (u, x, p, t)->Rule(p)(x[2], u[1], x[1]),
    +            (u,p,t)->[u[1], u[1]])
    +
    +# Compose
    +automaton = oapply(row, rule)
    +
    +# Solve and plot
    +u0 = zeros(Int, n); u0[Int(n/2)] = 1
    +
    +rule_number = 126
    +tspan = (0.0, 100.0)
    +prob = DiscreteProblem(automaton, u0, [0,0], tspan, rule_number)
    +sol = solve(prob, FunctionMap())
    +spy(transpose(reduce(hcat, sol.u)))
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    diff --git a/v0.2.0/examples/Cyber-Physical.ipynb b/v0.2.0/examples/Cyber-Physical.ipynb new file mode 100644 index 0000000..d0e0c91 --- /dev/null +++ b/v0.2.0/examples/Cyber-Physical.ipynb @@ -0,0 +1,437 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "source": [ + "# Cyber Physical Systems Example" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "Authors: Georgios Bakirtzis [https://bakirtzis.net/](https://bakirtzis.net) and Raul Gonzalez Garcia (raulg@iastate.edu)\n", + "\n", + "The following example is a mechanization from\n", + "1. Compositional Cyber-Physical Systems Modeling - [http://dx.doi.org/10.4204/EPTCS.333.9](http://dx.doi.org/10.4204/EPTCS.333.9)\n", + "2. Categorical Semantics of Cyber-Physical Systems Theory - [https://doi.org/10.1145/3461669](https://doi.org/10.1145/3461669)" + ], + "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "using AlgebraicDynamics\n", + "using AlgebraicDynamics.DWDDynam\n", + "\n", + "using Catlab.WiringDiagrams\n", + "using Catlab.Graphics\n", + "using Catlab.Graphics.Graphviz\n", + "\n", + "using LabelledArrays\n", + "using DifferentialEquations\n", + "using Plots" + ], + "metadata": {}, + "execution_count": 1 + }, + { + "cell_type": "markdown", + "source": [ + "We use functorial semantics to model a cyper-physical system, namely an unmanned aerial vehicle (UAV).\n", + "We define a diagram of systems (the composition syntax) that is the architecture of the composition.\n", + "Then, we apply behaviors of the individual parts of the system to the architecture. This composition produces\n", + "a complete UAV model." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "We first have to define our boxes and specify what the inports and outports are.\n", + "For example, the sensor box has two inports `:e` and `:s` and one outport `s_prime`." + ], + "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "s = Box(:sensor, [:s, :e], [:s′])\n", + "c = Box(:controller, [:d, :s′], [:c])\n", + "d = Box(:dynamics, [:c], [:s]);" + ], + "metadata": {}, + "execution_count": 2 + }, + { + "cell_type": "markdown", + "source": [ + "A wiring diagram has outer inports and outports which define the interface of target system.\n", + "Then we add the boxes and wires to the diagram and visualize the result." + ], + "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "UAV = WiringDiagram([:e,:d], [:s])\n", + "\n", + "sensor = add_box!(UAV, s)\n", + "controller = add_box!(UAV, c)\n", + "dynamics = add_box!(UAV, d)\n", + "\n", + "add_wires!(UAV, [\n", + " # net inputs\n", + " (input_id(UAV), 1) => (sensor, 2),\n", + " (input_id(UAV), 2) => (controller, 2),\n", + "\n", + " # connections\n", + " (sensor, 1) => (controller, 1),\n", + " (controller, 1) => (dynamics, 1),\n", + " (dynamics, 1) => (sensor, 1),\n", + "\n", + " # net output\n", + " (dynamics, 1) => (output_id(UAV), 1)\n", + "]);" + ], + "metadata": {}, + "execution_count": 3 + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Catlab.Graphics.Graphviz.Graph(\"G\", true, \"dot\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Subgraph(\"\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Node(\"n0in1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"in1\")), Catlab.Graphics.Graphviz.Node(\"n0in2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"in2\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n0in1\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n0in2\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}())], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:rank => \"source\", :rankdir => \"LR\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:style => \"invis\", :shape => \"none\", :label => \"\", :width => \"0.333\", :height => \"0\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:style => \"invis\")), Catlab.Graphics.Graphviz.Subgraph(\"\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Node(\"n0out1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"out1\"))], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:rank => \"sink\", :rankdir => \"LR\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:style => \"invis\", :shape => \"none\", :label => \"\", :width => \"0.333\", :height => \"0\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:style => \"invis\")), Catlab.Graphics.Graphviz.Node(\"n1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"sensor\", :fillcolor => \"white\", :id => \"n1\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    sensor
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Node(\"n2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"controller\", :fillcolor => \"white\", :id => \"n2\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    controller
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Node(\"n3\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"dynamics\", :fillcolor => \"white\", :id => \"n3\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    dynamics
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n0in1\", \"s\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n1\", \"in2\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"e\", :id => \"e1\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n0in2\", \"s\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n2\", \"in2\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"d\", :id => \"e2\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n1\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n2\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"s′\", :id => \"e3\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n3\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"c\", :id => \"e4\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n1\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"s\", :id => \"e5\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n0out1\", \"n\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"s\", :id => \"e6\"))], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :rankdir => \"TB\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :shape => \"none\", :width => \"0\", :height => \"0\", :margin => \"0\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:arrowsize => \"0.5\", :fontname => \"Serif\"))", + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "G\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n1\n", + "\n", + "sensor\n", + "\n", + "\n", + "\n", + "\n", + "n0in1:s->n1:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n2\n", + "\n", + "controller\n", + "\n", + "\n", + "\n", + "\n", + "n0in2:s->n2:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n1:s->n2:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n3\n", + "\n", + "dynamics\n", + "\n", + "\n", + "\n", + "\n", + "n2:s->n3:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n3:s->n0out1:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n3:s->n1:n\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 4 + } + ], + "cell_type": "code", + "source": [ + "to_graphviz(UAV)" + ], + "metadata": {}, + "execution_count": 4 + }, + { + "cell_type": "markdown", + "source": [ + "Then we assign behaviors to inhabit the boxes." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "" + }, + "metadata": {}, + "execution_count": 5 + } + ], + "cell_type": "code", + "source": [ + "function 𝗟(𝐖)\n", + " 𝐿(u, x, p, t) = [ -p.𝓐l * (u[1] - x[1] - x[2]) ] # sc\n", + " 𝐶(u, x, p, t) = [ -p.𝓐c * (u[1] + p.𝓑c*x[1] - x[2]) ] # sl\n", + " 𝐷(u, x, p, t) = LVector(α = -0.313*u[1] + 56.7*u[2] + 0.232*x[1],\n", + " q = -0.013*u[1] - 0.426*u[2] + 0.0203*x[1],\n", + " θ = 56.7*u[2] )\n", + "\n", + " u_𝐿(u,p,t) = [ u[1] ] # outputs sl\n", + " u_𝐶(u,p,t) = [ u[1] ] # outputs sc\n", + " u_𝐷(u,p,t) = [ u[3] ] # outputs θ\n", + "\n", + " return oapply(𝐖,\n", + " Dict(:sensor => ContinuousMachine{Float64}(2, 1, 1, 𝐿, u_𝐿),\n", + " :controller => ContinuousMachine{Float64}(2, 1, 1, 𝐶, u_𝐶),\n", + " :dynamics => ContinuousMachine{Float64}(1, 3, 1, 𝐷, u_𝐷)))\n", + "end\n", + "\n", + "𝑢ᵤₐᵥ = 𝗟(UAV)" + ], + "metadata": {}, + "execution_count": 5 + }, + { + "cell_type": "markdown", + "source": [ + "Lastly, we compute and plot the solution." + ], + "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "# initial values\n", + "xₒ = LVector( e = 0.01, # [e, d] -> [θ offset, 𝛿 control input]\n", + " d = 0.05);\n", + "\n", + "uₒ = [0.0, 0, 0, 0, 0]\n", + "tspan = (0, 20.0)\n", + "\n", + "params = (𝓐l = 100, # decay constant of sensor\n", + " 𝓐c = 100, # decay constant of controller\n", + " 𝓑c = 0) # ratio of velocity to reference velocity\n", + "\n", + "prob = ODEProblem(𝑢ᵤₐᵥ, uₒ, xₒ, tspan, params)\n", + "sol = solve(prob, alg_hints=[:stiff]);" + ], + "metadata": {}, + "execution_count": 6 + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: To maintain consistency with solution indexing, keyword argument vars will be removed in a future version. Please use keyword argument idxs instead.\n", + "│ caller = ip:0x0\n", + "└ @ Core :-1\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=5}", + "image/png": "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", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 7 + } + ], + "cell_type": "code", + "source": [ + "plot(sol, vars = [1,2, ((t,y) -> (t, y*1e2), 0, 4), 3, 5],\n", + " label = [\"sl\" \"sc\" \"α\" \"q\" \"θ\"],\n", + " lw = 2, title = \"Aircraft pitch behaviour\",\n", + " xlabel = \"time\", ylabel = \"response\"\n", + ")" + ], + "metadata": {}, + "execution_count": 7 + } + ], + "nbformat_minor": 3, + "metadata": { + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.9.1" + }, + "kernelspec": { + "name": "julia-1.9", + "display_name": "Julia 1.9.1", + "language": "julia" + } + }, + "nbformat": 4 +} diff --git a/v0.2.0/examples/Cyber-Physical/index.html b/v0.2.0/examples/Cyber-Physical/index.html new file mode 100644 index 0000000..9f2980f --- /dev/null +++ b/v0.2.0/examples/Cyber-Physical/index.html @@ -0,0 +1,200 @@ + +Cyber Physical Systems Example · AlgebraicDynamics.jl

    Cyber Physical Systems Example

    Authors: Georgios Bakirtzis https://bakirtzis.net/ and Raul Gonzalez Garcia (raulg@iastate.edu)

    The following example is a mechanization from

    1. Compositional Cyber-Physical Systems Modeling - http://dx.doi.org/10.4204/EPTCS.333.9
    2. Categorical Semantics of Cyber-Physical Systems Theory - https://doi.org/10.1145/3461669
    using AlgebraicDynamics
    +using AlgebraicDynamics.DWDDynam
    +
    +using Catlab.WiringDiagrams
    +using Catlab.Graphics
    +using Catlab.Graphics.Graphviz
    +
    +using LabelledArrays
    +using DifferentialEquations
    +using Plots

    We use functorial semantics to model a cyper-physical system, namely an unmanned aerial vehicle (UAV). We define a diagram of systems (the composition syntax) that is the architecture of the composition. Then, we apply behaviors of the individual parts of the system to the architecture. This composition produces a complete UAV model.

    We first have to define our boxes and specify what the inports and outports are. For example, the sensor box has two inports :e and :s and one outport s_prime.

    s = Box(:sensor, [:s, :e], [:s′])
    +c = Box(:controller, [:d, :s′], [:c])
    +d = Box(:dynamics, [:c], [:s]);

    A wiring diagram has outer inports and outports which define the interface of target system. Then we add the boxes and wires to the diagram and visualize the result.

    UAV = WiringDiagram([:e,:d], [:s])
    +
    +sensor     = add_box!(UAV, s)
    +controller = add_box!(UAV, c)
    +dynamics   = add_box!(UAV, d)
    +
    +add_wires!(UAV, [
    +    # net inputs
    +    (input_id(UAV), 1) => (sensor, 2),
    +    (input_id(UAV), 2) => (controller, 2),
    +
    +    # connections
    +    (sensor, 1) => (controller, 1),
    +    (controller, 1) => (dynamics, 1),
    +    (dynamics, 1) => (sensor, 1),
    +
    +    # net output
    +    (dynamics, 1) => (output_id(UAV), 1)
    +]);
    to_graphviz(UAV)

    Then we assign behaviors to inhabit the boxes.

    function 𝗟(𝐖)
    +    𝐿(u, x, p, t) = [ -p.𝓐l * (u[1] - x[1] - x[2]) ] # sc
    +    𝐶(u, x, p, t) = [ -p.𝓐c * (u[1] + p.𝓑c*x[1] - x[2]) ] # sl
    +    𝐷(u, x, p, t) = LVector(α = -0.313*u[1] +  56.7*u[2] +  0.232*x[1],
    +                             q = -0.013*u[1] - 0.426*u[2] + 0.0203*x[1],
    +                             θ =  56.7*u[2]              )
    +
    +    u_𝐿(u,p,t) = [ u[1] ] # outputs sl
    +    u_𝐶(u,p,t) = [ u[1] ] # outputs sc
    +    u_𝐷(u,p,t) = [ u[3] ] # outputs θ
    +
    +    return oapply(𝐖,
    +                  Dict(:sensor     => ContinuousMachine{Float64}(2, 1, 1, 𝐿, u_𝐿),
    +                       :controller => ContinuousMachine{Float64}(2, 1, 1, 𝐶, u_𝐶),
    +                       :dynamics   => ContinuousMachine{Float64}(1, 3, 1, 𝐷, u_𝐷)))
    +end
    +
    +𝑢ᵤₐᵥ = 𝗟(UAV)

    Lastly, we compute and plot the solution.

    # initial values
    +xₒ = LVector( e = 0.01,  # [e, d] -> [θ offset, 𝛿 control input]
    +              d = 0.05);
    +
    +uₒ = [0.0, 0, 0, 0, 0]
    +tspan = (0, 20.0)
    +
    +params = (𝓐l = 100,  # decay constant of sensor
    +          𝓐c = 100,  # decay constant of controller
    +          𝓑c = 0)    # ratio of velocity to reference velocity
    +
    +prob = ODEProblem(𝑢ᵤₐᵥ, uₒ, xₒ, tspan, params)
    +sol = solve(prob, alg_hints=[:stiff]);
    plot(sol, vars = [1,2, ((t,y) -> (t, y*1e2), 0, 4), 3, 5],
    +    label = ["sl" "sc" "α" "q" "θ"],
    +    lw = 2, title  = "Aircraft pitch behaviour",
    +    xlabel = "time", ylabel = "response"
    +)
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    diff --git a/v0.2.0/examples/Ecosystem.ipynb b/v0.2.0/examples/Ecosystem.ipynb new file mode 100644 index 0000000..4a4320c --- /dev/null +++ b/v0.2.0/examples/Ecosystem.ipynb @@ -0,0 +1,1808 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "source": [ + "# Ecosystem Models" + ], + "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "using AlgebraicDynamics\n", + "using AlgebraicDynamics.DWDDynam\n", + "using AlgebraicDynamics.UWDDynam\n", + "\n", + "using Catlab.CategoricalAlgebra\n", + "using Catlab.WiringDiagrams\n", + "using Catlab.Graphics\n", + "using Catlab.Programs\n", + "\n", + "using LabelledArrays\n", + "using OrdinaryDiffEq\n", + "using Plots, Plots.PlotMeasures" + ], + "metadata": {}, + "execution_count": 1 + }, + { + "cell_type": "markdown", + "source": [ + "There will be 16 parameters in to the total ecosystem. With four distinct types:\n", + "- parameters $\\alpha$ represent the rate at which a species population grows\n", + "- parameters $\\beta$ represent the rate at which a population of prey declines in a predation interaction\n", + "- parameters $\\gamma$ represent the rate at which a population of predators grows in a predation interaction\n", + "- parameters $\\delta$ represent the rate at with a species population declines" + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "16-element LabelledArrays.LArray{Float64, 1, Vector{Float64}, (:αr, :βrf, :γrf, :δf, :βrh, :γrh, :δh, :γfishh, :βfishh, :αfish, :βfishF, :γfishF, :δF, :βFs, :γFs, :δs)}:\n :αr => 0.3\n :βrf => 0.015\n :γrf => 0.015\n :δf => 0.7\n :βrh => 0.01\n :γrh => 0.01\n ⋮\n :γfishF => 0.015\n :δF => 0.7\n :βFs => 0.017\n :γFs => 0.017\n :δs => 0.35" + }, + "metadata": {}, + "execution_count": 2 + } + ], + "cell_type": "code", + "source": [ + "params = LVector(αr=0.3, βrf=0.015, γrf=0.015, δf=0.7,\n", + " βrh=0.01, γrh=0.01, δh=0.5,\n", + " γfishh=0.001, βfishh=0.003,\n", + " αfish=0.35, βfishF=0.015, γfishF=0.015,\n", + " δF=0.7, βFs=0.017, γFs=0.017, δs=0.35)" + ], + "metadata": {}, + "execution_count": 2 + }, + { + "cell_type": "markdown", + "source": [ + "## Land Ecosystem" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "### Rabbits and foxes" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "A standard Lotka Volterra predator-prey model is the composition of three primitive resource sharers:" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "1. a model of rabbit growth: this resource sharer has dynamics $\\dot r(t) = \\alpha r(t)$ and one port which exposes the rabbit population.\n", + "2. a model of rabbit/fox predation: this resource sharer has dynamics $$\\dot r(t) = -\\beta r(t) f(t), \\dot f(t) = \\gamma r(t)f(t)$$ and two ports which expose the rabbit and fox populations respectively.\n", + "3. a model of fox population decline: this resource sharer has dynamics $\\dot f(t) = -\\delta f(t)$ and one port which exposes the fox population." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "However, there are not two independent rabbit populations -- one that grows and one that gets eaten by foxes. Likewise, there are not two independent fox populations -- one that declines and one that feasts on rabbits. To capture these interactions between the trio of resource sharers, we compose them by identifying the exposed rabbit populations and identifying the exposed fox populations.\n", + "The syntax for this undirected composition is defined by an undirected wiring diagram." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "" + }, + "metadata": {}, + "execution_count": 3 + } + ], + "cell_type": "code", + "source": [ + "# Define the primitive systems\n", + "dotr(u,p,t) = p.αr*u\n", + "dotrf(u,p,t) = [-p.βrf*u[1]*u[2], p.γrf*u[1]*u[2]]\n", + "dotf(u,p,t) = -p.δf*u\n", + "\n", + "rabbit_growth = ContinuousResourceSharer{Float64}(1, dotr)\n", + "rabbitfox_predation = ContinuousResourceSharer{Float64}(2, dotrf)\n", + "fox_decline = ContinuousResourceSharer{Float64}(1, dotf)\n", + "\n", + "# Define the composition pattern\n", + "rabbitfox_pattern = @relation (rabbits, foxes) begin\n", + " rabbit_growth(rabbits)\n", + " rabbitfox_predation(rabbits,foxes)\n", + " fox_decline(foxes)\n", + "end\n", + "\n", + "# Compose\n", + "submodels = Dict(\n", + " :rabbit_growth => rabbit_growth,\n", + " :rabbitfox_predation => rabbitfox_predation,\n", + " :fox_decline => fox_decline\n", + ")\n", + "rabbitfox_system = oapply(rabbitfox_pattern, submodels)" + ], + "metadata": {}, + "execution_count": 3 + }, + { + "cell_type": "markdown", + "source": [ + "Previously, when we derived the Lotka-Volterra model via [undirected composition](https://algebraicjulia.github.io/AlgebraicDynamics.jl/dev/examples/Lotka-Volterra/#Undirected-composition), we by-hand defined the undirected wiring diagram that implements the composition pattern. In contrast, here we implement the same composition pattern as before but this time using the [`@relation` macro](https://algebraicjulia.github.io/Catlab.jl/stable/apis/programs/#Catlab.Programs.RelationalPrograms.@relation-Tuple). This strategy simplifies the definition and explicitly names the boxes and variables. We visualize the composition pattern below." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Catlab.Graphics.Graphviz.Graph(\"G\", false, \"neato\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Node(\"n1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box1\", :label => \"rabbit_growth\")), Catlab.Graphics.Graphviz.Node(\"n2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box2\", :label => \"rabbitfox_predation\")), Catlab.Graphics.Graphviz.Node(\"n3\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box3\", :label => \"fox_decline\")), Catlab.Graphics.Graphviz.Node(\"n4\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer1\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n5\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer2\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n6\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"junction\", :fillcolor => \"black\", :height => \"0.075\", :id => \"junction1\", :label => \"\", :shape => \"circle\", :style => \"filled\", :width => \"0.075\", :xlabel => \"rabbits\")), Catlab.Graphics.Graphviz.Node(\"n7\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"junction\", :fillcolor => \"black\", :height => \"0.075\", :id => \"junction2\", :label => \"\", :shape => \"circle\", :style => \"filled\", :width => \"0.075\", :xlabel => \"foxes\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n1\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n6\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n6\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n4\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n6\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n7\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n7\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n5\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n7\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}())], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :shape => \"ellipse\", :margin => \"0.05,0.025\", :width => \"0.5\", :height => \"0.5\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :len => \".75\"))", + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "G\n", + "\n", + "\n", + "\n", + "n1\n", + "\n", + "rabbit_growth\n", + "\n", + "\n", + "\n", + "\n", + "n6\n", + "\n", + "rabbits\n", + "\n", + "\n", + "\n", + "n1--n6\n", + "\n", + "\n", + "\n", + "\n", + "n2\n", + "\n", + "rabbitfox_predation\n", + "\n", + "\n", + "\n", + "n2--n6\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n7\n", + "\n", + "foxes\n", + "\n", + "\n", + "\n", + "n2--n7\n", + "\n", + "\n", + "\n", + "\n", + "n3\n", + "\n", + "fox_decline\n", + "\n", + "\n", + "\n", + "n3--n7\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n4--n6\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n5--n7\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 4 + } + ], + "cell_type": "code", + "source": [ + "to_graphviz(rabbitfox_pattern, box_labels = :name, junction_labels = :variable, edge_attrs=Dict(:len => \".75\"))" + ], + "metadata": {}, + "execution_count": 4 + }, + { + "cell_type": "markdown", + "source": [ + "We can now construct an `ODEProblem` from the resource sharer `rabbitfox_system` and plot the solution." + ], + "metadata": {} + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: To maintain consistency with solution indexing, keyword argument vars will be removed in a future version. Please use keyword argument idxs instead.\n", + "│ caller = ip:0x0\n", + "└ @ Core :-1\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=2}", + "image/png": "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NzfX26/20UcfAXj88cffeecdAOvWrRP+tW7dOgBLly59/PHH4TbCV61a5aJce/fufeXKFfE1er1+9OjR4mvGjx+/cOFCAB988IH4yh9//DE+Pl58Zfv27f/66y/xNQqFgoxeihSoIgw8qlWEdrt94MCBAAYNGrRr165z5859+eWXxJxaunQpuebgwYNPPfUUgClTpmxxQqYAF0VYVlY2YsQI0mKz2Ujj0qVLx40bt2bNmsOHD588eXLdunXdu3f3OL+48NNPPwFISUlxaR86dCgAopk4jiMqp3///jt37jx37tzXX3+dmJgIYNGiRcJbXBThtm3bRo0aBWDhwoXCNzKZTDzPZ2dnJyQkKBSK//73v3/++efJkyc///zzJk2aMAyzceNG4YZEESYlJQ0aNOjrr79OT0//7rvveKciTEpK6tSp0yeffJKenv7VV1+ROw8YMODVV1/dsmXLyZMnDx069MYbb4SHh6vVapdZyR2PivDEiRNk4i4uLuadijApKalLly4rV65MT09fvXq11Wq9evVq48aNlUrlE088sXv37n/++eeTTz5p1KgRy7I7duwQ7vbWW28BaNOmza+//nrlypUdO3akpKQ0bdrURREuW7ZszJgx33333aFDh06dOvXLL7/06tULwH/+8x9yQXFx8ZYtW8jMu3nzZsGXS/5LdEOTJk2++OKLs2fP/vHHH4MHDwbQr18/YbQQRdikSZOQkJCZM2euX79+165du3bt8igZb4qQWJkffvgh71SESUlJ4eHh8+bN27Zt2+bNm48dO8bz/L333gugb9++v/7666lTp7Zs2ULWfNOnTyf3KS8vj4iIiI2NdVm0EU02btw4H7+aoAgLCgrUavVdd90l/OvOO+9UqVR5eXnuivDnn39mGCY8PPzDDz88ffr0gQMHSCfbtWtXUVEhXDZhwgQit927d1+5cuWHH35o2rQpGfZiRfjzzz+zLBsbG/vuu+9mZGQcPnz4hRdeUCqViYmJBQUFwmVUEcqCKsLAo1pFSB7pm266iUzWhL179wKIjIwkpgzP8ytWrAAwf/58l7eLFWFmZmbXrl0ZhnnllVd896q0tLRZs2ahoaHiD3XHarWSKZVMW4SrV68qFIqwsDDSt/Xr1wNo0aKFwWAQrjl06BDDMGFhYURJ8G6KkOf5adOmkcna5UOJRhEbxDzPZ2RkKBSKbt26CS1EEXbp0sVqtYqvJIowJiZGbOV4g5i2jz32mO/L3BVhRUVFamqqWAeQbsfFxZWWlorfO378ePGahrB3716GYXr37i3cLTIyUqFQnDx5UrimsLCQ2CViRehORUVF69attVqtMFR4nm/VqhUAsUXO87xeryfu5d27dwuNJpOpXbt2AL7//nvSQhQhgFdffdW3WHgvipAkrLIse+rUKd6pCAG4GN9k5PTu3Vv8C1oslg4dOrAsSxyJPM//5z//AfDll1+K3zty5EgA27dv99E3QRHyPH/XXXcplcqcnBye53Nzc1Uq1d13383zvIsi5DiOOGa//fZb4T52u52o57fffpu0HD9+HEB8fLxYNQoZ0YIiNJvNxGzNyMgQd0yIoQotVBHKgibLNECIIpw5c6bYW9irV69BgwaRQIXE+/z111+9evX6559/vvzyy1dffdX3xREREYMGDdLr9b5TvZVKJfGyinMNPvvsM7vdfv/99xO/Gen/k08+KXa4paSkDB8+vKKiQm4avdVq/e6770JCQogFLNCtW7fevXsfOXJEmKYJTz31lMdwy/Tp011iih4ZPXo0wzAHDhyQ0rfvv/8+LS0tLS3tnnvuadOmzfr167VaLXG7CTz66KNiL7TRaPzxxx+joqLIhCvQq1evW2+9dd++fUVFRQC2b99eWlqampoqjvbFxMSQfCXfhIaGDhkyxGQykdnZBzt37iwuLu7fv3/fvn2FRo1GQ0T9448/ii9WqVQuP4EPLl26RCTzwAMPdOvWbfr06QBmzJhBVCzh5ptvvueee8TvWr16NYDnn39e/AuqVKpp06ZxHCeMnP/+978Mw5CFIOHq1aubN29u06YNcaVIYfLkySQuCODLL7+0Wq2TJ092v+zEiRNnz55t06bN2LFjhUaWZckmP0FExFOSlpYWGhoqXNa9e3eX/uzYsSMzMzM1NbVbt27idqLa6y0DvOFB46sNEGIyujwqAFJSUnbs2PH333+7hN88cuDAgVWrVrEsu2nTJo+zw3fffffpp5+eOXMmOztbvJejoKCAvPjtt9/IpExo3bo1Sah7+OGHlyxZsnr16jfeeEOlUvE8T/JIhTnaR/83bdokd3fE6dOn9Xp9kyZNXnrpJZd/ke5dunRJHHER54CI6dixo3tjYWHh4sWLN23alJWVlZeXJ26X0re9e/cSSx1AbGzs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", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 5 + } + ], + "cell_type": "code", + "source": [ + "u0 = [10.0, 100.0]\n", + "tspan = (0.0, 100.0)\n", + "\n", + "prob = ODEProblem(rabbitfox_system, u0, tspan, params)\n", + "sol = solve(prob, Tsit5())\n", + "\n", + "plot(sol, rabbitfox_system,\n", + " lw=2,\n", + " title = \"Lotka-Volterra Predator-Prey Model\",\n", + " xlabel = \"time\", ylabel = \"population size\")" + ], + "metadata": {}, + "execution_count": 5 + }, + { + "cell_type": "markdown", + "source": [ + "### Rabbits, foxes, and hawks\n", + "Suppose we now have a three species ecosystem containing rabbits, foxes, and hawks. Foxes and hawks both prey upon rabbits but do not interact with each other. This ecosystem consists of five primitive systems which share variables.\n", + "1. rabbit growth: $\\dot r(t) = \\alpha r(t)$\n", + "2. rabbit/fox predation: $\\dot r(t) = -\\beta r(t) f(t), \\dot f(t) = \\delta r(t)f(t)$\n", + "3. fox decline: $\\dot f(t) = -\\gamma f(t)$\n", + "4. rabbit/hawk predation: $\\dot r(t) = -\\beta' r(t)h(t), \\dot h(t) = \\delta' r(t)h(t)$\n", + "5. hawk decline: $\\dot h(t) = -\\gamma' h(t)$" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "This means the desired composition pattern has five boxes and many ports and wires to keep track of. Instead of implementing this composition pattern by hand, we construct it as a pushout." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Catlab.Graphics.Graphviz.Graph(\"G\", false, \"neato\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Node(\"n1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box1\", :label => \"rabbit_growth\")), Catlab.Graphics.Graphviz.Node(\"n2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box2\", :label => \"rabbitfox_predation\")), Catlab.Graphics.Graphviz.Node(\"n3\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box3\", :label => \"fox_decline\")), Catlab.Graphics.Graphviz.Node(\"n4\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box4\", :label => \"rabbithawk_predation\")), Catlab.Graphics.Graphviz.Node(\"n5\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box5\", :label => \"hawk_decline\")), Catlab.Graphics.Graphviz.Node(\"n6\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer1\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n7\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer2\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n8\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer3\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n9\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"junction\", :fillcolor => \"black\", :height => \"0.075\", :id => \"junction1\", :label => \"\", :shape => \"circle\", :style => \"filled\", :width => \"0.075\", :xlabel => \"rabbits\")), Catlab.Graphics.Graphviz.Node(\"n10\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"junction\", :fillcolor => \"black\", :height => \"0.075\", :id => \"junction2\", :label => \"\", :shape => \"circle\", :style => \"filled\", :width => \"0.075\", :xlabel => \"foxes\")) … Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n1\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n9\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n9\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n4\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n9\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n6\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n9\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n10\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n10\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n7\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n10\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n4\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n11\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n5\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n11\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n8\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n11\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}())], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :shape => \"ellipse\", :margin => \"0.05,0.025\", :width => \"0.5\", :height => \"0.5\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :len => \".9\"))", + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "G\n", + "\n", + "\n", + "\n", + "n1\n", + "\n", + "rabbit_growth\n", + "\n", + "\n", + "\n", + "\n", + "n9\n", + "\n", + "rabbits\n", + "\n", + "\n", + "\n", + "n1--n9\n", + "\n", + "\n", + "\n", + "\n", + "n2\n", + "\n", + "rabbitfox_predation\n", + "\n", + "\n", + "\n", + "n2--n9\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n10\n", + "\n", + "foxes\n", + "\n", + "\n", + "\n", + "n2--n10\n", + "\n", + "\n", + "\n", + "\n", + "n3\n", + "\n", + "fox_decline\n", + "\n", + "\n", + "\n", + "n3--n10\n", + "\n", + "\n", + "\n", + "\n", + "n4\n", + "\n", + "rabbithawk_predation\n", + "\n", + "\n", + "\n", + "n4--n9\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n11\n", + "\n", + "hawks\n", + "\n", + "\n", + "\n", + "n4--n11\n", + "\n", + "\n", + "\n", + "\n", + "n5\n", + "\n", + "hawk_decline\n", + "\n", + "\n", + "\n", + "n5--n11\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n6--n9\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n7--n10\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n8--n11\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 6 + } + ], + "cell_type": "code", + "source": [ + "# Define the composition pattern for rabbit growth\n", + "rabbit_pattern = @relation (rabbits,) -> rabbit_growth(rabbits)\n", + "\n", + "# Define the composition pattern for the rabbit/hawk Lotka Volterra model\n", + "rabbithawk_pattern = @relation (rabbits, hawks) begin\n", + " rabbit_growth(rabbits)\n", + " rabbithawk_predation(rabbits,hawks)\n", + " hawk_decline(hawks)\n", + "end\n", + "\n", + "# Define transformations between the composition patterns\n", + "rabbitfox_transform = ACSetTransformation((Box=[1], Junction=[1], Port=[1], OuterPort=[1]), rabbit_pattern, rabbitfox_pattern)\n", + "rabbithawk_transform = ACSetTransformation((Box=[1], Junction=[1], Port=[1], OuterPort=[1]), rabbit_pattern, rabbithawk_pattern)\n", + "\n", + "# Take the pushout to define the composition pattern for the rabbit, fox, hawk system\n", + "rabbitfoxhawk_pattern = ob(pushout(rabbitfox_transform, rabbithawk_transform))\n", + "\n", + "# Visualize the compsition pattern\n", + "to_graphviz(rabbitfoxhawk_pattern, box_labels = :name, junction_labels = :variable, edge_attrs=Dict(:len => \".9\"))" + ], + "metadata": {}, + "execution_count": 6 + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: To maintain consistency with solution indexing, keyword argument vars will be removed in a future version. Please use keyword argument idxs instead.\n", + "│ caller = ip:0x0\n", + "└ @ Core :-1\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=3}", + "image/png": "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dOjQof379x85ckSn0507d27SpEmLFy82mUx//etfd+3aNXny5EhHGnXa29snTJiQm5t7991379q16/DhwzU1NTExMQ0NDVOnTi0uLmYY5vXXX9+/f/+YMWMiHWy0WLFiRXd394YNGx5++GH5frJGozl8+HBubu4f/vAHt9u9adOmmpoa+Wvro48+2tjYWFBQsHHjxhkzZqxduxaGUCKUJGnLli01NTVjxox55JFHyKOFgZ0/f/6KcWULFiyQh492dHS8/fbbbrf7vvvuky90iAEcOHBAEAT5Rh8AuN3ut99+u729PTc3d9asWZGNLZpt3br1wIEDSUlJixcvDq/b0NLS8u6773Icl5+fP27cuMhGGLU6Ozs3b94sb1xVWFgYExMjlzc1Nb3//vsY44KCgvT09MgGGVU2bdoUCATCh0uXLlUqlQBQW1v74YcfKhSKxYsXJycny68KgvDee+/V1dVNnDhx0aJF8iPDIZMICYIgCOJmGBrPCAmCIAjiJiGJkCAIghjWSCIkCIIghjWSCAmCIIhhjSRCgiAIYlgjiZAgCIIY1kgiJIihYcuWLd9//32koyCIWxBJhAQRdX788ccNGza43e6ehcuWLXv//fcjFRJB3MJIIiSIqHPkyJHi4uIrNjv805/+lJeXF6mQCOIWNjS2YSII4sknn+yz3Ol0ajSanounOxwOi8XSc8eoMI/H4/P5bDZbn68SxPBEPgwEEV3eeeedpUuXAsCUKVPMZrPZbK6vrweAO+6447nnnpPr/P3vfzebzVVVVRMnTrRarXq9vqSkRBTF8vLyxMREm81mMpneeuutnm9bWVk5ZcoUg8Fgt9vtdvv69et/8b+MIKIUuSIkiOgye/bsp556qrS0dO3atfJu2vJ/29rauru75TrBYLCrq2vJkiVPPfVUVlbW1q1bn3/++VAoVFVVtX79ervdvnr16uLi4nvuuWfUqFEAsH///l/96ldz586trKw0Go3l5eXLli3TaDSPP/54BP9SgogWmCCIKPPRRx8BQH19fc9Cm822fPly+edXX30VAN56663wq5mZmRRF1dXVyYcOhwMh9Nprr8mHM2bMmDBhAs/z4foFBQWZmZk3988giCGCXBESxFA1d+7c8M9paWnBYDAjI0M+tFqtFovl7NmzAOD1evfv3//QQw/t3r07XN9ms506dSoUCskb1hDEcEYSIUEMVSaTKfyzUqnseQgACoVC3uu8o6NDFMXPP/88vGG3zGAwdHR0yLuVEsRwRhIhQdziDAYDAPzxj38sLS2NdCwEEY3IqFGCiDo6nQ4Aem66/XOYzebx48d/8sknPM/fkDckiFsMSYQEEXUyMjJomn799df37dv3ww8/BIPBn/mGq1atqq2tffjhh48dOxYIBFpaWsrLy5955pkbEi1BDHUkERJE1ElOTl63bt2uXbtycnImT57c3Nz8M9/wvvvu++ijj2pqaiZMmKDRaFJSUoqKijDGNyRaghjqEPkwEMSQIEkSQgghdN3vgDFuaGhwuVwWiyU5OZll2RsYHkEMXSQREgRBEMMauTVKEARBDGskERIEQRDDGkmEBEEQxLBGEiFBEAQxrJFESBAEQQxrJBESBEEQw9r/A6SeqCosRlPiAAAAAElFTkSuQmCC", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 7 + } + ], + "cell_type": "code", + "source": [ + "# Define the additional primitive systems\n", + "dotrh(u, p, t) = [-p.βrh*u[1]*u[2], p.γrh*u[1]*u[2]]\n", + "doth(u, p, t) = -p.δh*u\n", + "\n", + "rabbithawk_predation = ContinuousResourceSharer{Float64}(2, dotrh)\n", + "hawk_decline = ContinuousResourceSharer{Float64}(1, doth)\n", + "\n", + "# Compose\n", + "merge!(submodels, Dict(\n", + " :rabbithawk_predation => rabbithawk_predation,\n", + " :hawk_decline => hawk_decline\n", + "))\n", + "\n", + "land_system = oapply(rabbitfoxhawk_pattern, submodels)\n", + "\n", + "# Solve and plot\n", + "u0 = [10.0, 100.0, 50.0]\n", + "tspan = (0.0, 100.0)\n", + "\n", + "prob = ODEProblem(land_system, u0, tspan, params)\n", + "sol = solve(prob, Tsit5())\n", + "\n", + "plot(sol, land_system,\n", + " lw=2,\n", + " title = \"Land Ecosystem\",\n", + " xlabel = \"time\", ylabel = \"population size\")" + ], + "metadata": {}, + "execution_count": 7 + }, + { + "cell_type": "markdown", + "source": [ + "Unfortunately, the hawks are going extinct in this model. We'll have to give hawks something else to eat!" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "## Ocean Ecosystem" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "Consider a ocean ecosystem containing three species —- little fish, big fish, and sharks -— with two predation interactions —- sharks eat big fish and big fish eat little fish." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "This ecosystem can be modeled as the composition of 3 machines:\n", + "1. Evolution of the little fish population: this machine has one exogenous variable which represents a population of predators $h(t)$ that hunt little fish. This machine has one output which emits the little fish population. The dynamics of this machine is the driven ODE $$\\dot f(t) = \\alpha f(t) - \\beta f(t)h(t)$$\n", + "2. Evolution of the big fish population: this machine has two exogenous variables which represent a population of prey $e(t)$ that are eaten by big fish and a population of predators $h(t)$ which hunt big fish. This machine has one output which emits the big fish population. The dynamics of this machine is the drive ODE $$\\dot F(t) = \\gamma F(t)e(t) - \\delta F(t) - \\beta'F(t)h(t)$$\n", + "3. Evolution of the shark population: this machine has one exogenous variable which represents a population of prey $e(t)$ that are eaten by sharks. This machine has one output which emits the shark population. The dynamics of this machine is the driven ODE $$\\dot s(t) = \\gamma's(t)e(t) - \\delta's(t)$$" + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "" + }, + "metadata": {}, + "execution_count": 8 + } + ], + "cell_type": "code", + "source": [ + "# Define the primitive systems\n", + "dotfish(f, x, p, t) = [p.αfish*f[1] - p.βfishF*x[1]*f[1]]\n", + "dotFISH(F, x, p, t) = [p.γfishF*x[1]*F[1] - p.δF*F[1] - p.βFs*x[2]*F[1]]\n", + "dotsharks(s, x, p, t) = [p.γFs*s[1]*x[1]-p.δs*s[1]]\n", + "\n", + "fish = ContinuousMachine{Float64}(1,1,1, dotfish, (f,p,t)->f)\n", + "FISH = ContinuousMachine{Float64}(2,1,1, dotFISH, (F,p,t)->F)\n", + "sharks = ContinuousMachine{Float64}(1,1,1, dotsharks, (s,p,t)->s)" + ], + "metadata": {}, + "execution_count": 8 + }, + { + "cell_type": "markdown", + "source": [ + "We compose these machines by (1) sending the output of the big fish machine as the input to both the little fish and shark machines and (2) sending the output of the little fish and shark machines as the inputs to the big fish machine.\n", + "The syntax for this directed composition is given by a directed wiring diagram." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Catlab.Graphics.Graphviz.Graph(\"G\", true, \"dot\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Subgraph(\"\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Node(\"n0out1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"out1\")), Catlab.Graphics.Graphviz.Node(\"n0out2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"out2\")), Catlab.Graphics.Graphviz.Node(\"n0out3\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"out3\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n0out1\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n0out2\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n0out3\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}())], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:rank => \"sink\", :rankdir => \"LR\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:style => \"invis\", :shape => \"none\", :label => \"\", :width => \"0.333\", :height => \"0\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:style => \"invis\")), Catlab.Graphics.Graphviz.Node(\"n1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"fish\", :fillcolor => \"white\", :id => \"n1\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    fish
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Node(\"n2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"Fish\", :fillcolor => \"white\", :id => \"n2\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    Fish
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Node(\"n3\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"shark\", :fillcolor => \"white\", :id => \"n3\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    shark
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n1\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n2\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"pop\", :id => \"e1\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n2\", \"in2\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"pop\", :id => \"e2\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n1\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"pop\", :id => \"e3\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n3\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"pop\", :id => \"e4\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n1\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n0out1\", \"n\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"pop\", :id => \"e5\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n0out2\", \"n\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"pop\", :id => \"e6\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n0out3\", \"n\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"pop\", :id => \"e7\"))], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :rankdir => \"TB\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :shape => \"none\", :width => \"0\", :height => \"0\", :margin => \"0\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:arrowsize => \"0.5\", :fontname => \"Serif\"))", + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "G\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n1\n", + "\n", + "fish\n", + "\n", + "\n", + "\n", + "\n", + "n1:s->n0out1:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n2\n", + "\n", + "Fish\n", + "\n", + "\n", + "\n", + "\n", + "n1:s->n2:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n2:s->n0out2:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n2:s->n1:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n3\n", + "\n", + "shark\n", + "\n", + "\n", + "\n", + "\n", + "n2:s->n3:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n3:s->n0out3:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n3:s->n2:n\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 9 + } + ], + "cell_type": "code", + "source": [ + "# Define the composition pattern\n", + "ocean_pattern = WiringDiagram([], [:fish, :Fish, :shark])\n", + "fish_box = add_box!(ocean_pattern, Box(:fish, [:pop], [:pop]))\n", + "Fish_box = add_box!(ocean_pattern, Box(:Fish, [:pop, :pop], [:pop]))\n", + "shark_box = add_box!(ocean_pattern, Box(:shark, [:pop], [:pop]))\n", + "\n", + "output_box = output_id(ocean_pattern)\n", + "add_wires!(ocean_pattern, Pair[\n", + " (fish_box, 1) => (Fish_box, 1),\n", + " (shark_box, 1) => (Fish_box, 2),\n", + " (Fish_box, 1) => (fish_box, 1),\n", + " (Fish_box, 1) => (shark_box, 1),\n", + " (fish_box, 1) => (output_box, 1),\n", + " (Fish_box, 1) => (output_box, 2),\n", + " (shark_box, 1) => (output_box, 3)\n", + "])\n", + "\n", + "# Visualize the composition pattern\n", + "to_graphviz(ocean_pattern, orientation=TopToBottom)" + ], + "metadata": {}, + "execution_count": 9 + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: To maintain consistency with solution indexing, keyword argument vars will be removed in a future version. Please use keyword argument idxs instead.\n", + "│ caller = ip:0x0\n", + "└ @ Core :-1\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=3}", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOydaWBTVfr/vzd70qTpvhcoOwguLLIJKIoLKOOGooj6c0TEXRS3ERD/zqgjLqhDlcFt0JnB3UGkiLiCCMgORZaWlu57mzR7cu//xUlCmq1pc9NSeD6vkpObc04uJd886+EEQQBBEARBnKlIunsDBEEQBNGdyLp7AwQhAi0tLaWlpa2trWlpaf369eM4rrt3RBBEj4EsQqJn89tvv1122WUpKSnnnHPOhAkTBgwYkJ2dvXjx4tbW1u7eWufJzMxUhOCOO+7o7t11knffffdf//pXd++CIILAUYyQ6LmsWLHi/vvv53l+0qRJl1xyiV6vP3r06Jo1a+rq6oYNG7Zhw4asrKzu3mNnSE5ObmxsHDdunFKp9Hvpsssue+KJJ7plV1Gi1Wo1Gk1tbW13b4Qg/CEhJHoqBQUF06ZNk8lkq1evvvHGG73jTU1NN95448aNG8eOHfvLL7/IZD3P/8+EsLS0tFevXt29F9EgISROWXredwRBAHC5XPfdd58gCH/96199VRBAYmLiZ599NmzYsN9+++3999+/8847fV91Op1bt27dv3+/zWbLysoaP358bm6u3+TFxcU///xzbW1tWlraRRdd1Lt378DVd+7cefjw4ZqaGr1ef/75559zzjl+1xQWFloslnPPPVcQhG+//fbw4cNarfaSSy7Jy8sT6R64MRgMP/zwQ0lJiUwm69Onz+TJk7Vare8FZrP5u+++Ky4ulslkw4cPv+CCC6RSqd8kFRUV27ZtKysrk8lk6enpY8aMYbelpaXl2LFjiYmJffv29XtLc3NzUVFRUlKS9xPV1tZu3bq1tLRUIpGkpqaOGjWqX79+AJqamoqLi3medzqdO3fuZBdrtdpBgwb5bnLTpk3FxcUcx5199tkTJ0703aTD4di3bx97S319/fr16+vr6wcNGnT55ZdLJBIALpdr48aNf/zxR3x8/LRp0zIyMkS5t8SZgkAQPZCCggIAycnJVqs16AWvv/46gFGjRvkO/vjjj/379/f9++c47sUXX/ReYDAYZs2a5ZtrI5PJHn30UZfL5TtJSkqK3/+jyy67rKGhwXctJo27d+8+66yzvJfJ5fJ//OMf7X66pKQkAKWlpe1e+corr+h0Ot+dqNXq7du3ey9Yu3Ztenq67wXDhw8vLCz0neSZZ54JtJtXrVolCEJdXZ1KpcrMzLTb7X5LP/zwwwBWrFjBni5fvjzQkfvCCy8IgvDpp58GfvNMmjTJO9WHH37od0uHDx9+5MgR7wUVFRUAJkyYsGbNmri4OO9l48aNY3rse5N1Ot0PP/zQ7q0jCC8khESP5MknnwRw0003hbrg+PHjAKRSaUtLCxvZsmWLQqGQyWSPPfbY77//fvjw4W+//XbBggV/+9vf2AUOh2Py5MkALr/88g0bNvzxxx/r1q0777zzACxZssQ786effjpt2rQPP/xw27Zthw8fLigomDp1KoBrr73WdwNMCPPy8qZPn75u3brff//9+eefVygUcrnc9ys+KBEK4f/7f/8PQEZGxooVKwoLCw8cOPDpp59ef/31P//8M7vg119/lclkSqXyhRdeOHTo0O7du+fOncveUltby6757rvvAAwaNOjLL78sLi4+evTopk2bHn744f/85z/sgtmzZwP48ssvfZe2Wq2pqalxcXHs9u7atYvjuJycnI8//vjo0aNFRUU//vjjk08++dZbbwmCUFNTs3HjRpVKpdfrN3rYsWMHm+rf//43x3Hp6en5+fl79uzZsWPHI488IpFI8vLyvP92TAgzMjK0Wu2SJUu2bt3KXN8A7r777qFDh06fPn39+vXbt29/5JFHAPTq1cvhcIS/ewThhYSQ6JEwd+izzz4b5hq1Wg1g7969giDwPM+U6Z133gl1/apVqwDMmDHDd9BgMGRmZmo0Gj+DzxeHwzFy5EiO43yliy135ZVX8jzvHVywYAGAl156KfynY0I4YsSIsQH8+OOP7JqSkhK5XK7T6Q4fPhxqngsuuADAq6++6js4c+ZMAAsXLmRPn3rqKQCff/55qEk2b94MYNq0ab6Dq1evBnDnnXeyp6+88gqAt99+O8yHiouLS01N9Rs0mUzJyckajebQoUO+448//jiAv//97+wpE0IATFkZJ06cYIbsxRdf7HuT2a+ZLVu2hNkMQfhC5RNEj6SlpQVAfHx8mGvYq83NzQAOHjy4d+/eAQMG/N///V+o69mX+9NPP+07qNPp5syZYzabf/zxx1BvlMlkTCd+//13v5ceffRRX0frpZdeCoBZq+1y5MiRgwEYDAb26scff+xwOG6//faBAwcGfXtdXd3mzZsTExPnzZvnO86STj///HP2NCEhAcC2bduEEHlzEyZMOO+88woKCkpLS72D//znPwHcdddd7GliYiKA7du38zwfyUfz8s033zQ0NFx//fWDBw/2Hb/nnnsArF+/3ndQr9f7Rnxzc3NZ5PKhhx7yvclMCCO8yQQBSpYheigsH8RsNoe5hr3Krty7dy+Ac889N0yt/e7duwGsWbPms88+CxwvKSnxjnz77bdvvvlmYWFhRUWF1Wr1jtfX1/vN6ZsPAoCF66qrq8N9Ng8HDx4MkzXq/UShLigsLAQwZMgQZhl7Oeecc+RyeVFRkcViUavVM2fOfPbZZ1988cUvv/xy2rRpF1100cUXX6zRaHzfctddd82fP//dd99dunQpgD/++OOXX34555xzRo8ezS648sorU1NT33nnne+//3769OkXXnjh1KlTw/9MYbB7W1ZW5lcTIgiCRCLxvecA+vbt65fmk5qaeuTIEb+fAqmpqQBqamraXZ0gGCSERI8kOzsbQFFRUagLampqjEYjAJb9yAypzMzMUNe7XC6DwcBx3Lvvvhv4amJiotdgevvtt+fPnx8XF3fFFVfceOON7Ov+l19+WbdundPp9Hujn6KwFMdQtleHYJ8oTKEkaymQlpbmNy6VSpOTk6urq41Go1qt7tOnz/bt2xctWrR+/fpXX3311VdfVavVc+fO/dvf/uZNS7nlllsef/zxf/7zn4sWLZLJZCtXrhQEYf78+d45U1JStm/f/vTTT69du/bNN9988803FQrFnDlzXnrpJWYshoLZ69u3b9+zZ4/fS3q9Xi6X+4743Ux47qef0rPfOh21TYkzGRJCokcyYcKE5cuXb9q0ied59m3ox8aNGwEMHDiQ2Qd6vR6AN9QUiFQqjYuLs1qtJ06c8Cs/8MXhcDz11FMajWbnzp2+hkhDQ8O6deui+UQdhbk0w3wilk0aWLfndDrr6+s5jvNabEOGDPn000+tVutvv/323XffrVq16vXXXzeZTCxoCkCr1c6ePTs/P/+bb7657LLLPvzwQ61We9NNN/lO26dPnw8//NDhcGzfvv277757991333nnnbq6uq+++irMp2CbXLJkycKFCzt8CwhCJChGSPRIrrzyypSUlJKSko8//jjwVZfLxdI3br/9djbCkj93794dxho777zzXC7Xb7/9FmbdsrKyxsbGkSNH+rnjdu3a1fEPERXsE3nL8gI566yzOI4rLCz0cyDv3r3b6XT2799fpVL5jqtUqgsvvPC5557bvXu3XC738w/fd999HMetXLny008/rauru/nmm4N6PuVy+YQJE5YsWbJ3796EhIR169Z5XcdyuTzQYmaf4tdff+3AJycIsSEhJHokarWaxavuu+8+P68az/MPPvjg7t27+/Tpc++997LBIUOGjB49uri4+O233w41J8ujWbJkic1m83vJbDa7XC4AKSkpHMdVVFSwp4yffvpp06ZNIn2ySLnxxhsVCsUHH3zAYoGBJCcnX3TRRc3NzW+99Zbv+PPPPw+A5Y7C40H1e6NcLrfZbL4/GoYOHTphwoSCggL2dm+aTKhJ9Hq9RqPhed5ut7OR7OzslpYW5q/2woKLa9euZbmpfvTohrFED4Jco0RPZf78+Xv37l25cuXYsWPvuuuuSy65JD4+/siRI6tWrdqxY0dycvInn3zia7Xk5+dPnDjx3nvvLSwsvP7665OTk0tKStavX5+enr5o0SIAt9122yeffFJQUDB27Nj7779/2LBhHMcdP378p59++uijj8rKynQ6XXx8/IgRI3bu3DlnzpwHH3wwPj7+u+++W7JkSd++fYuLi8X9gIsXLw500ubk5LC8kqysrOeff/6RRx6ZNGnSU089deGFFwqCcPTo0X//+9+PPPIIy5z8+9//Pn78+CeeeMJoNF599dUmkyk/P/+LL77Iycl59NFH2YT33HNPRUXFrFmzBg8enJGRUVZW9uqrr5rN5ltvvdUvsWj+/PmbN28+ePDgqFGjRo4c6fvSokWLtm/ffssttwwZMiQ7O7uqqio/P7+ysvKKK67w/hOMGjXq4MGD11xzzbRp07RabWZm5lVXXRUXF/f2229ff/31l1566YIFCyZNmpSZmVlRUVFYWLh69eobbriBFYwSRGzptsINghCDlStX+qXAcBx31VVXHTt2LPDirVu3Dh061PdimUz22muveS+wWq0PP/ywX4cUmUw2ZcoUi8XCrjl48GCfPn18l1uwYMFLL70EwLdrDKsj9JaEM1iq5zXXXBP+Q7E6wqCcffbZvlfm5+f7ZaMkJCTs3LnTe8HGjRv9esidf/75vjfnL3/5i0Kh8LuBN9xwg8Fg8NsVK6IHwJJlfFm2bJmfoxXAFVdcUVdX572msrLy0ksv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sisgkjwAvbYinEwyyiCK/SjeCliFrMsABE6EG3/hlOF8kpGyiH2fr1ckYjgb4fRmBrnUGgApn+emGUs5hs0SOoaoSYTHjh375V/+5aGhIUEQ+vr63va2t/34xz82/753333329/+9tHR0ePHj5ceZIx9+tOf7urq6urq+vSnP12i2NOnT7/xjW/0+/1XXnnlCy+8UOdt6eibALxzaMMnvLID2KlVl+XgLfNv6jX4engFwYUdpghfXmMArq79e9reCUccmzYRcnS7tzQ6Gs4jnEfQYcrhqb3FVaMTccaAg8F60eNyBBwgQEpFdXWDbZy3oQib0UdoW5+Ve42uZsMMrNfXXepnONJ1CMDptQmjFQHTBbqVi0oAoNEMauQIAewtpgnPNSA9OfjseI3VJEJ+9ELuAdgmQq2MCDey22ya5TQM+NaFgSSIff4eythS2myRanrxHAA2Oc67uWZS0FnhDt6w1r0WjInwRz/60U033fTss8/efPPNn/rUp975zneOj4//4i/+4gMPPGDyfTVN+9jHPhaNRsunWDz44IMPP/zwyZMnT5069b3vfe873/kOf/yDH/zgu971rng8/olPfOJ973ufptV2unW4Abxt46CGQR/pcCGS37bhqybBifB6oyxg0a5sZ+1/U0XIw01L23rYT5oIjQLocgNAZKvqZXj19iXtpoRIq4tlzppoZyyHSOB3gLJmtjZOpgSYjs1y+CUQIN0YH1vqG9mwelmxDHeC7vV1l/56SechAGfXzhutaJ+feLGMRnMAvLWIkDuOJufNWwXVgoQ8AK327PiJBAAM+AcAzCftEGFe562KLgDxjabYp3mr38avhk+YWjAdHc1nkgDElQWeKL2QZOMxllSxP0AsGQkZE+Hv//7vv/nNb56Zmfn7v//7+++//4EHHpienr7tttvuuusu3lCxKe6///7bb79dkjZEr7/5zW9+4hOf6O/v7+vr+53f+Z1vfOMbAF566aWpqak//MM/lCTpjjvuAPDoo4/W2zHBzQOV2+aR0tMxM1vbNjy/SgFcb6QI+73EIyGcb46zYrPAK2Wuqn1j1e8BtlURzmdYTEa3u2CiVgddbgIgslWKkMdFTbYxtTo0WjS4sfCS5kZH0youZuEWrU1jEAh8DrAGhgLCitV4BcqLZcLZNQA93q7SX3m2rJoIadHBx15olOcIGc2iRo4QRcfR2cT8xMaSSxsgRAYg15gLgVKNVccAgPnUoo0l5DJT7IrQaOEc2ZjUKBKhWdLN51MApGx61A8Ak0n25DID8Gajy2wdGBBhJBKZmJj4whe+UN4y6HK57r///mg0eubMGUsLlGNiYuLo0aP8/48ePXr+/HkA586dO3TokMvlAkAIOXr06LlzBpH3Ei5vZx1VX1yh/SCxsxRVOaZTbCWHHo9xHxVBwbplJziWcSxlsZRFu6ue6/y2K8KTUcBceRhXhFvWQTFuInNZQnuL7UYLLhtWyKC55jITCcaAA6ZjsyXwoFnFeB2rS8MeEfIcocYArOWiAHiCkGMg0Bdw+tdysUguWv6quTTL6xjwEb/xrIVNIAnwSBCQQW1FOBwaIiALqaXzCQrTLTGGIEwGkK9DhHEG4OruIQAL9hRhJg7AJThQFRrl58iljRFhYfqExi7zpAG8FmX/Ok8B3DJg7bAY1BtRSgE4HJXfJJ9Nz/9qD7FYrESuwWCQu7XFYjG/f71QOBgMrq2t1XoHXddf/ccvkds+zf/5oQ996Ctf+QqAEY8ESCdX5dSeZowvawEenxUA58+101TK2JBi0O04C/FsODcstco61dLwkGNLIuC4LETTNTYMwM0gEveajGgiZXXiTFNwfEkCpDG/mkpt0tUfEiRAWkzIqZTNX4ilo3ci4gSEEXc+ldr823RpAuCMZPVNP4U9jEddANnrzKVSZk9ev+gEhKV4dq/UBM+m11ZEwHHAb/kD+kUXQJbjmaCt8CgDzsZdABkUMymreQcKwJ1SkUqllhIrAPyCv/zkHQ3tezV86rXFk9f1Xl16kH/SUZ/9r9IvuSSaByBqQmm5it9el6cjnFtbzq5IQl83qXOCbgJVTQHIac5aF6UzcRdADnqEgNOfUtKz4fkOt5XAArD62HfhQkcmCmApteHsK5wjrg0/yy5HO4CZ2FytLZWDqYpCKCA4GKT44n7/6HSa/HieiQQ3tmf5N04pdTgc1XRWAQMi7O7uHh4evv/++x966CFRXO9IvO+++/x+/+HDhzfdXy10dnYmk4XKyEQi0d3dzR8s/8zxeLyrq8v49YDj/BPTxx8feOi/VDx+tJsB2mzeEQhYCQxvIV5L6wB984AjEDC+/xpp03+6TFd1dyDQQkoxbwx0ZpIC+rW9Uq0Nc/R41KUscpK/w645fSOYyOgAvabPten3PhCkgJ5izkZ+IeaP3tmUCuDnBjwBE4dlkDFAS+piK2ybNIoLKZUAVw34zBiNcnR4NIBpkjfQjFHGM3kdoEe7NvktVSPk0pBiutNnbxsLGZbRtB4PhjsNevI2hVtU8zokTyClpwEMtPWVf0GXdB96NXxqPnfxlsBNpQdn5yigH+m0/ElLCDk1Uc4A6Ax2li9X/v/72obDuTUXWej393eG7P9mRJECyDG34Q9vJYe4ora7MNrt3xsaOhU+G6PxvYE9FhagNLc0iX0kqMoAEvr62UcZziZVANcO+gJlzgOHhAMALmZXzJwLemJNEQDApcPDtHfvE//7KcqAX9hDRrv9xS1QXd/8ZtTgmksIuffeex9++OHDhw9/9rOf/au/+qs/+ZM/ueqqq7785S9/7nOfc7vrdV/Wx9jY2IkTBV+iEydOjI2NATh06NC5c+d4TQ1j7NSpU/xx4+3Ov9rhNLiz406+O639oBwvrDIAb6ia4VACD43unKmEhQRh7UoZjuKov63YUjU2dRktgRt+bk2xTDiP1RxCzpr9lxVoadXohRRTKPYGTNltl8BzhIkGYpLlOGM9NsvBW/tt1+ycLXRP2uTyUiPjWi4GoNPTUf7Xgx2jAM5Hp8ofnLDi4FNrUQk5AD5HzTu2vaEhAF5h3sYhLQeleQAZ1fiSfrowVpqgaPY9l7SWJtRTMQU6AL+cxsaa7ckky2oY9pO2jf47Pd5up+hcy0Zz2ubnKs2mFEIAOBmj6cQfHBVGg2SPj/zFdaYdZYowPjl+/dd/3ev1/umf/umf//mf8yaHw4cPf/Ob3/zoRz9q8n1Pnz6dy+U0TZuYmPB4PEePHnW5XB/72MfuvvvuX/3VXyWEfPnLX/7CF74A4KqrrhobG7v33ns/+9nPfv3rX5ck6ZZbbrH6MfYHiEgwm2YqxbbE6OpDpXhljQnEYJhRCXt8ALC9zenleHmzShmOPi+wtj1EKOuFebxmUnG8WGat9WP/UEx+HGkz27vW5gQBEgpaYS1TqF+1FtAq9NQ3y/zWvLdABQIOArCkYvPAWC2XrV49nGdJlcXzCQDt7g0FjofaR1D0IF1fMd4EIpRJFrVzhAD2hYYBeMmCpQKoCuROPJOZPQkHsprL0GiCewTyYpa9BSJcqHqbetBjYVkgANyKAmnDbSi/hb28o/IlAiFDgf6p+OxccmGs40D996eZFFeETgqazw77ydn3Sgx2KKDmXeKtt9566623ptPp1dXVzs7OUMhaAfLnP//5qamp0dHRr371qwAefvjhPXv2vP/975+YmLjhhhsIIXfeeeftt9/On/zggw9+/OMfHxoaGhsbe/jhh8vjsSbhFDDkI7NpNptmtp33WocTUZbXcUkbqWM/uKc4zGHrtlUbURmzKeaTNj+l+zwEYMvZFtqD1cLpOFMpDrcRjwmts5XtE4Uef9PGFiJB0ImEgoSCNusGlfXBi9TN2/BzNNFcRqM4n2ACWTcQMQ9es5O0rwjXNY0NlPRoLB8H0LaRCAcDA16HZyUTTsjJkCtYXBGwfttRsWi0oAhrEiGnJS9ZsHFvUQBjiX/+Rr47AwfR4E4oqK5APF1W+Vxh9m0SeiIsCwDgVhUJeji/fqJy85crjQJOw8GhqfjsfHJxcyLMplQBABwUTM4BsDegGHWIkMPv94ui6PFYTqsYWnITQu6555577rmn4vGDBw/+9Kc/tbpEBUYCmE1jKmXfi711eCHMYDTkvRxDXgCY3wHj/QC8ssYYcEXn5mV+vds0/B3rN5WmrgVbSoRRCyWjHO0uklBYTGZtzibfT5wuu683D+4J2ZT2CR6bHfYxS7HZwjYaC43aVqIcPDS6lpdzWt4lOiuYSSBktG3fyfCZydj0z/VdASCh4GKWeSVrXSLViyZJjoB4a4dGG1eEemJNi1yUex0AdOaKK4zPAivHeNn93PBGs2+ToOkkJyqnztrV5HKuvXS//HLtzMuw6TAsk7PlitDS3ipQk0AfffTRW265pbOz0+v1trW13XDDDd/97ncbWanVGAkS7LyedA4zRMgtSBazO8LR7qXNWulL6PUQACtbO+GI4zUrjoKdLgJgbUv6CM24vlWg0FPfglZCfl9/6fYpQs7EY0E71acFRbhxGxk1+/3zPzoZNva8Lod5lztDcCJczSYAtBlVSx7sGAFwLnqhfLmxELE9zJ2pSp+6ADBRcAmk5sXZ7wyorE0k+W6nzTHpemwFQF4AAAq34Q+P/4wvbQOAgXWzbwv3kjSX5orQyTAiJmV9fWTb8XDNK0xhwoYJ9UnlPA+9OhljcguI8Nvf/vbb3/72ycnJD37wg1/84hc/8pGPrK2tvfe9773//vsbWayl2OcnAGZ2JhGuMgDX1Z0s4ZXQ4YKsb537SR0UPGVMeBRxRbgtOcLXogzAFSbYGkDQCaeApAqlxSOcmT0ibI3vts5wNs6IdUXYTCLklTJBOydm9WREythdP73nL1/46u/+5LNPzT9b57UxGUtZ+BrQZ3z1cDYOoM1lEGgabduPsjThuC3xXY7I//jj3/zZJwGIQr0g3HSKZdgwgLXsvL2FtOgqAFkkAChzVRPhUhaRPNpdhRt0kYhDgQHKmKV6GZpNyYWqTnZQSgBYzDK+/3AevR5j81se+J1JbP7RSorQpYPlG7oGGRChpml33XXXrbfeOjk5+dd//dd33333l770pfHx8d/+7d++55574vF4I+u1DvsCADCzM0KL5UiqOJtgbnHzIF5BFO6ANOHLdacvlWMHKEJTTyZAZyE62tqtzqVZQkGvB5Ycnlo0pP5CkuV17A0Y+LzXR1uzFeElIVtEWNXX/8zC82fWzrlEJ2Xsvx//mqrXDJsWih7b7OszvnosnwYQMiJCrggvxKb5Py3ZCVVDXZqRJ0/I0ACIQs0EIYDTcZahewBMJ+bsraXHVgEoIgAEqBKrKg/mzoXll6yStZv5VWg2rYgEgJOSvWIaxdml3Gzyum5jGVZwDEhe1NkmbQ+6nFMICOBkLQiNhsPhSCTyR3/0R+VNiIIg3HPPPbIsT05ONrJe68AV4ezOU4QvhhlluLKTODdL5A56gR1QOJpQMJlgbtFUcoUrwtUtV4QLGbYmo9NltkUBxehoqwW3ebObcrTIZe1kIVtp+YW8fSLejPaJ8QaIsFqYPjb7FID/64pfP9A+Es5Gfjr7VK3XnjYyLrGEAhHKSdQgwpHQXkkQ55KLeU3GulWKzeXUi9MA8iIAMFLvNmo8hiwdAjATt0mENJNkBFyu9SiZ6h8ev8ssb0ziPRtmhNr6Krl0QbFRNixlUZwk/PQyQ43xAwA8krvH161S9WJquf77y/kUI3BCIAzND422t7d7PB5FqbwblGWZELJd83g3BXcfn9tuFqmGmQQhx4CXANtvHc4rZS7vIGaqkLdLEb66BpiOi3Lwepm1Fk9islTCU0KLfLcLjuTWyaDNBTSjfUKjmEgwYjc0WtHOyMBeWj4B4MahN9429ssAfjRVs8huPN4QETI5d/2F7/era0k5ASDkNujvdoiOfaFhyuhUfBbAeAyNrKiFFwHkeLgS9YjwVKwQGp1KzNpbS88kFQIKOCnatHS19WB13mFvaBjArCUizKZl3uenY0jMoWj9+vgSA3BTf80DtS+0ByZIN6tkAbiZCIDKzQ6Nut3uT3ziE5/5zGfKo6DZbPauu+66/fbbdywRDniJJGApy9QWJ4Gs4nneSm9i9PygD9gBRGhpmleHC5KAmNzy3FsF6pRf18LW+G7bJMLWhEZPxQArjRwl8NBovOGbhskky+vYFyA+qQmKcD65GJcTXZ6OwUD/TcNvcorOE6uneG9DNQytLM0j9fj/ue6Fv/vH6bvTSgo1FCGAA+08TXghoWAhw7ySsZmwGWiRiwDyIgOg1x6NBOBklGXpHgIym5intqrraDohiwDgominqerxZNWVaPtDw7CuCAvtE5T1CRkAZ+JsNs3OxFnQgWtrX2E4EW5KurKSBeAUJABMbijUY1zRHAwGz549Ozw8fPPNN/f19UUikSeffFJRlDvuuOMzn/kMf85tt9127bXXNrJ2cyEJGPCSuTSbzzDbv8VW4IUwhTVF2PIt1YclIhQIut1YyiKcY2Zm7zULr0ZtECHQ+tDoazaJEEDz5wabd96pQFuTQqM26obKwYmw1EfIbVwu6ToEwOfwXtN3xbHFF48tvvhLo28zWNpuWJgj99rTAEaUizS7gnpEOAL87Hx0qivIGHBJAylJPRkDkOOv12smdVWKs3FGia/L2xnORi6ml7hRtSXQTFIRCLg5mZYKb1RTOQ1nE0wSNkT49wQHJUFcTC0puuIUTbW7MjknBwHASdEv5AAcj7DvTjMAbx8S6vT8mSTdrJKFBx7RCYCpDZ08xkT4D//wD4qiSJL01FPrIXhRFL/1rW+V/nnppZfuKCIEMOzHXBrzaYw037LRJubSbCmLThdGTbT5F+bcbnexjNX5zr0espRlK7mCot0avBIx5QBXji0gwqyG8wnmECxXTHS0IEeY0XAhyZyCrU52JwSCtAqN2m9SxvrYZJsvr1CEvD6TizAA1w9ee2zxxecWj1cTYTiP5RxCTrslo1TXVgpXYVFeBkHQaXxN4fUyk7HpQIh/Uvv3gjQVA5CVRACCVvOgn4kzheJgiIy27QtnI9PxWXtEmC9m79r11MRGRfhalGkUl3cQd5m1iUOQBgMDs4n5ueTCgfYRM6usV3VSuLXMWIhMJNi9r+oA3re/3oHa1zYME6VAspqHBy7JBYApLVCEExMGk5d3Pvb4CMDmM9vgclILhQRhjym3LT7VaHsVYULB+QRzixZiSj1uAFjdwq6PuILpFPNK1kxDisUyLbzPOBllOsORduKyaI7U0YJJTOMxRhkOt29epVUNAoSciMlIqAWbVns4wUuH7CpC35knX57423v3fBy4CcVY2f7QXv7XNwxcDeDllRM600Wy4YifKHoa2FtYW1tmemFOAtXicCDoqkGE7SMEZCo+I0Y1gNjWvgD0ZBSAHAwBSbG2h0Ahe9dBRtr2Pnfx+FR89sY911tdqxS0dFG066mKYrfjNW6F94eGZxPzU/FZk0RI87ki3YLmsrddRu59la3JGPSRX9lb70e5LzRMQOaSC9XfbDnyeh6AR3QDYEpDd5E7z5ezAXC7zvmdVC9TSBDWKBSuAJ9zu70D31+KFDxlzPv1bX29TKmcx5JY2YJiGX6RutK6LODFMs0NjfI0j9UgbQntzfDdLmRMrQj3cqj/+o1uNfaZ+f+hU4ai28hwaIj/tdfXsyc4mFYyE2uVpexFJdpQuo6DsiyAgNN4foXP4e3398q6cjKyiAaONtM1mk1BEJVgAICo1OwceLWYvdvfthcAr9OxuBijuUyeu4DqLKinFzdec14MMwDXVBHhiKUVKWWqrBYzkUzJ3bht8WcAACAASURBVHWZeGk7CTrwrbeI9e8UPZK7z9+j6Er9IYiyLgNwOT0AaGOK8PVFhH6CYqvKDsHzYbOVMgB6PUQkWM1D2756n1rnQB30bHkHhfl+/3JsQbGMjRIejo4WNNRbMhyoRuMdHUkV0ynmFnHIlv2vtrbM29161WhicUGj+lJ6RSDCkL+/9Jyrey8H8PLyiYrX2itZKkFPrAFgoW4AKpGBmooQwKGOUQALiQuNrEizKTAmeAOy0wHAq+qZGnMzS7+x0fZ9AC7EZ6yuxZQ8qC67HADcFCGaXctDLmPeWvV9loiQKjkwxunWScHkXIcLp26TEh92vG1w86PE16ofHc1TFYDX6St8qAZcuV5XRDjEFeGO6anXKF6KMGKuUgaAJKDHA8q2pz+d48UIA+pNyajG1ivCl007wJVjC3KE9onQTQBEm0rSpRiavZeP6cu3xR5LpO0z4ckoY8CRdmvCvQR17lzp/1Nz51cyqzrTu71dDnG9kOTqvssBvLJ6suK19kqWStDjEQCO4cMAZFEDauYIARxsHwEg0Ok+T6Gt1gZoNgVA8AVzvMld02vZAb5acOnEcHDIIUiLqYuWbM+AQu+54nEBcFF0IcvKitXXZJxLMJ9kcPRG2vbBNBGyfI4CCgEBceqMWqzqLK41U+c5OV0F4HH5icMJxphm15T2dUaEe3w7SxGeiLKshoMhUu3sXgv92104yhWhRSIEttZ3+yV7irDFIwl1hhNRRiyW8HAEHJAEpFQ0q/mHASfssjIApql/9OKnv7T4l/4n/qftPbxqxQy2Gmp4EYBORADyyuJSegXAgL+3/DlX9h4lIKfCZ1W6LqBUivEYIw0rQu/eAzohssAkQfQ4avYzcEXoJ1P2DjUHzaQACN5ATmAAgrpqGMOfSbGojF4PBn3EIUjDwSHK2JTFtnqaSwOQnS4Abp210wzKMkrPLFMGXNttkBzp9/e5JXc4G0kqm4+Pp3JWEQkjcIlOAYXpEObBFeFk0bXHEDmmAPA4vcTJ04T2z+3XFREO7TAifG6VAXijubgox/amCVdymEuzgMNaEUqPhwBY3SpFmFRxPslcouWi/FaHRicSLKNhX4C0W68uIUCHC6x5haMXkiypYshHum0N0s6fOR7MrwHoGf83UJvkbFsfc/BE3YXQGAAaXljKrADo30iEba7Q3tBQXsufi66nCc/GmaxjJGjZWK4E3sng6B2OOhwAfA4fqV1/xwtHfcL0VZ02l0NJEXoDOYECCGmK4R1bxS3gaPt+AJMbZyJuCpbLAJCdIgCPjhDLAphKFs6LJ5cZgBv7DD6vQEghOhqb2XwVOScLDICnUNVpjQhH2/YBuFB3oRzTAfhc/gIRNtBK+Loiwm43nAIieeQ38ajbIjxrnQi3t3C0JAct9UJtcdXoyxFGmVnjm3L4HXCLyGjI1ci+NL4xWNepJXS4SJceX8s0hwlfKZCQzZcrM4XZDpKSUS9au86WwOOTNvQxhx5ZAjDZczUAxFdWMmEAfb6eiqdd0XMUwGur46VHXqk94sckaCYOQPSHljxBAN66Ftjt7jYidkoku9+/iSVYvRULodFAFjqAdl0xvLPk9ZylFP6BAhHWk00Ga+U5EToAuCj8egbAhaI55WNLDMBb+43PLs5Pk6aIMM8ThB7JA8BqaHRPcNAtuVYy4bRiXP3IVCXPidbhJU4XAKruEiEAQCAY9BG2M3yrUSTC6//9KELzvf/lKIZGt2jPFdcCSyiIwtbMqTc/u8oQ7137yUtnftP1td9nahNqZuylUUtQ5s4DiEjtAJSyXJ15aBQno0wg9qt19EQEQKT3CAApGV7NRgD0eLsqnnZ5zxEAJ8qI8NXGiTCdACD4Q2G3H4ALm2j8tD4CwEds3jGgTBHmmQqgS8kb3llW1LLZI0I+qCEviQDcFE4tC2AiDgCrOby6xjxSzavWAdMalCk57pvqdXpBiNViFoEII217Gdhk3PjTMVXmdnReyUMcLgBo4MR5XREhii5li9ttzgJgNYcLSeZ3WKvh5jnCpe2YaoRitZhVIuz2EAKE86BbQoU2spgltLReplb3lSkw9v7p7whgzpWp3ImnG9+MvTRqCdrqPIAfBd8IQF2x4+x8Os7yOkaDJGgvPskYT9Rl+w7qRHBlY6vpVQA9vu6KJ17ecymAU+GzJbMxPjvF9mdHGREmXB4ALlrvMyxlEVFHAMSz9gcSsFwagODxZXUZQJearVaElBV+Y9f1FK7bvE7nQnyGMgvhaypnURxG6KZEVGWJaVy+/+s8pQw39RFPjSnKvIPQDPVSOc9d3DySmzhcYMxqDq+wVrQGESoyJ1qPw82JkDbQSvh6I8KdkyZ8drWgrjYd8l6Ofi+wTYqQWfEHL4dTQLsLGm2+Q5ghGiFCnjCLZOxXl9WCzgpmN/aIUF2aac+H+f/nTtQbs2cGrKgI7W2GyTk9GaWS87HANQC0ZTtE2KAkpZkE01TBG/D7fatSO2F0NbMKoLtKEfZ4u/p8PSklPZOYA0CZHdehcjBNpfksESXB7ct4HACctF7X2/EITbFRANXtjOZBcxkAgtuX4USo5Kqrz87EWULBvgDpK0Zqg65Ar68nr+XnrYwJZPksgLxIAHgEB4AO5CeTLKHgn6YpgPfsq8kLB9r3CYTMJObKq5OMV1HWQ6M8h2e11Y/T/LnYBeP3V2XO5V7JIzgbNZd53RGhF9gZHRTHVizHRVG0G13aDkV7Ns7iCvb4iA3L0C3roFjNYTrFAg5TI6Kq0e3C387dd/hL70k//n+au7HTMZbRsD9AumwVp8hT4wBe8YwBUKbHN3v6JphJsTUZvR4LM6rKoUWWwJjW1j/tHACgrS3ZeJPjjUlSPREFIIY6O1wISx0A1vIxAF0eA7u28ujo+SRLqtjjI/Y7GTJJAII/BELyTgmAQ633KY6HWYoeAHA+NmXPAhvFSk54vLKmCECnll3KVIo8fkmpqDngNavnrdTL8EENXK65RReAG9pzlOFb5+gji8wp4LbaROiW3EOBQZVqs5v5nzE5XxCdkktw2anq5B/tXLQGESoybzXxOjzEwe1Gd0OjRRRm2273AAcAx1YZgDf1WjvCRUXYih1tgudMT8moRqGnvvX1Mi8UcySWdHYJb4i9+EvJZwiliR8+oKdiTdzYcev9l+XgBSnfb3tL3hXUk1Hex9bgZuylUQFosVUAaOuZd/RQED0WBi2Un1FGv3Xiwf/y2H99fO6Zlu6BfztCoL3dhRWpPSuSvK56HR6vw4DfLus+AuBE+DSKAQObAWoAZek6AIpLAOBS611PXggzlYUCru6Mmp1PLthblFdy5pwSA3PpcDA9mqo8nZ5ZYQDeVEmEIwAmarCF8VpyDkCOUAA+yQ3gnb0ygE+9oGsU790v1L+ZO2huRVrMEXocnmJ7g7WQ0UjbXkkQ5xILfNxj5adQ5axIwGt6uSJswHf79UeEwA6YbSvrOB5mArGsCHs9RCBYyTF9y6ncRmlPCVwRJpYuamv2C+fM4PkwhV22BnDF4pMAqCAxVeHjBZqFFxoI2KJIhKfd+5eC+wGoS9bKHypQKKmwuxnu5+Ls6JUFZ8TZyXRNKxLzN09854GTDz5/8aXPP3X/0wvP13oHleK1NUYaICSaigMQA+2dLhKW2mNOoIYcBHBZzxEAJ1dPo+E7EmwkQtkJAB65ZgaOFY/2WMcBAGfXzttcNJcBkHdIALyUAEimKuNaT68wADdsbGzg656zEpXlDfU56AA8ogfArX1yjwcaRdCBP71mE1LgK24aB2Zynis2X4kILRaOOkXnvtCwznTDlCRT5JxEAPidXuJwY5cIy8FjQdteNfryGsvrONJmuaXMIaDLDZ1tw8x3HnipNTa6Pno9uDXx+DV/f8fKn90pn3u12Vtbh/nhjoYYXDkB4LmDtwLIn3mpiRuzl14tQVtdBHDeNTTn2wtAXbJuIFm1mWvNOdxWgxOhp6sbwIKjG0WnlaSSeujM9wRCfmHkFgb2/774t7JuHIw6EWV5HYdCJGRqXI/RHlIxAGKgrcuNsKM95iAAOmsQ4b7QnqAzsJqNrGRWG0khc5QToSZRAB65Zj5sMsHWZPR7cXXvQQBnozbThLylIScJALwQAbBcJl2Wy17IsAtJ1uasdAk4xIkwdsF8VJbnCLPQAHgcHgB+mn3sl6QvXiM+/S5p0xl2Y3UjluurKPli6NJ+w3uBdKMGtxdMlbMiA+B3+Aqh0d1imRIGvcAOUIRPLxvcu5lEv4enCbeUy2MyzsSZW7RZYtDvpncvfYu7HMUf/tumb4+DssIl3qSJeQW06Io7s7YmhR4Z/AXwVrkGzAnLkdNwMsokwaYAopkkzaaYyxuR2ifdQygOK7cHnRUKVeoMPt3kHRJrADztXR4Ji1InAD0eBvDY7NOyrlzTf9Wnr//dsc4DkezaDyd/YvgOTWCjdByAEGjvciMstcUdANDhMZ4uSECOdl8C4JXV06+sMdI8IlQFDYBfqZl8ei7M4yjCka4xAGfX7LSaoBga5bE+L5EABGlmOrX+++TtfTf2CRVJgXZ3qNfXnVVzCymzvxmeI8xSFYDP5QXA5NyRNnL3lYKZEveDHaMCIZOx6fr1MkzO50QBgK9IhDZ8sQ93HgRwJmJEhIqcEbgiLIVGd3OERfR7C6HFbfStBvDUMgPwZlvqasAHCbrwL3+z8ucfz5081uytGeO5VUYZrum2PD+I45LoyT4tGgkMiYF2dWlGmbd5OaiP8RhLKNgfIDyTahXqwgUAJz0HJkiPGOygmaS9MpBqvBRhKsXRduKrUXReH9xChXUOAjgnDaAxIjwTZykVIwHSY7dahBOhGOrscpFlqQtFRfjMwgsAbtn7FgLyG5e+D8DD537AYHAz8YIVr3njPfAGhkBbp4tExVDCWU8Rolgv88T8mZyGsTbSZleJouR25gsAUIkCICjXlBqlApZDHaMCIeej06pupyaZK8K8QAF4iANAUM9cKCPCRxcZgP80YHBIrUZleY4wTxUAXqcfRY1oEj6HdygwoFK1vhEoUwrFMj6H13ZVJyfCs0aKMK9kNAEOCE7RydsndqtG1+EQ0OuBzrC0fb7VlOGZFYoaNkWbot9D7oh8v+u1f1GXZqLfvq/VWTcOvmF7zA1g78WXALzYfb3nihsA5MdfaOLeSrDh1FOOQh7OtX81D8fQKAB10UKJQR1wWWB7Y1p0BYDU0QvgpNCPxoiQFz1d1wgJJdYACKGOTjeWHAVFqFH9xOo4Abmu/yoANwy9odvbNZdc5Jk5wz28oSFFmAAg+oIuEVl3KC4BQIe7rdbzeb3MqchpNPBFFJYutPT5AciQAbTnayYqnikmFHwO797gHpWqtRrA64Exms8ByBAdgE9wAvDT3IVk8e/Avy1QAIZzGwqyybQYZXKeEeSoQkB8Lj+KGtE8DncewmbUS5V8tlTVaatYBsBo+z635FpIXkzKle6mKTkFwAsJwG6xjAF4mjD1w/+5+Kl3R772uQYnF9vAqRiLytjrJ3ttTcce9LKPRb4PwDGwn6lK+omHm71BA/A8vG0ibFsaB/Bc4Ar3JdcAkM+90sS9ldBIFhPFxvAJ997VHHMMciK0bwXSxI3p0RUA3u5ekeAs7SKipCejtq30n+UapQES4hNixVBnlxsrjg7+yGRsKqfl9wQHeXxSIMI7Rm4G8G/Tj1e8PK5gIsHcon1PGZR6GHwhAMzXlijkCI1DowDGOkZdojOVm5NIyl7BVwksmwZAPH4AWS0LoFfJJo2+jaiM8Rhzi4Xi2Eu6DgE4HbE81ZypMqhOnC7eTe8V3QACevZ0rHA3/2pMWM5h2E8Mx2VfYoKWykHlrCwQyphLconF0KilDfMVz9RdkSn5fKFYxktstU8AEIk41nGAgY1XHdWUkgEQIE4ABUW4Gxotx5CPvCP5XPDYPzJVyY8/n/j+17d4A08sMQBvsSUHARxJnu7TojF/f8ev/yGA7EuPlYZltwgKxQthRoA3W2z24GCa6li9oBPhKemQc+RSEKLMnWuKT1gFeEeKbbbWVhcAzLkHEwrQuw+AaqtVvBrPrlA0wD16dBWA1NHb4YIKAaFuMMYrVuxsZrUhVmZyjsk54nQJbl+Xm6xKHQBoMsqvs0e6DpWe+fP7bgLwxNwxjW7w9i2F2Z0NXF1ohnu7BAE4/KGEAwDaaytCh+i4pPMQAwsJE81RhF4/gKSaAdChKgtxA7Xx9DKlDNcVEwqXdo0BGA+ftbxiPgtAcHu5ryZvafDT7MkiEf7zvADg3cPGn2us84ClqCyTc3zGhc/hIS4PrNdz8p/BmbqUzxQ523CxDIBLuw4DGI9UHtWEnAIQEt0oKcLd0Gg5hnz4rch3AfhveBcEMfPcj3moZ8vA7dtv6rd5No4uvwzg5a7rHIOjUu8wzSSVaYPoUxPxYpjlNFzabmFcVDm05Tlo6rRzYFr1wO139O1lmmrbqbkWlnM4n2ABh93ZOozxeGOybaj0X3VlvvGNXUiy5Rx6PDhgZWRHObR4GIDY3tPtJgDUUC+K8VKriMo4G2ceqQGHz2LfAoAeN1aLipBXCY51HCw9c39oeH/b3qSSenn5tfJ3ONbYbQEHTXNFGATgDQa5Imx3heq8ZF/7pQB6pNNWx5JULl10O5N1RdEVByNOipWYgUnHExvPdH7JPmVDEeYyAIjLm1VzAHySB0CQZk9EWU4DA747JwK4bb/x5boUlTXZVs/kfFYqdODxVnduumYeo+37naJzLrlQyxEbhapRAl7V2cB0CN4bcyp8puJxPgoqKHoA7DbUG2CMrlydm1Ac3tC77/Bc9iama9kXH92y1Rnw5DJFA0TYuXQKwHOBKwB4jlwLIH+2mYX+1agzeMUMOOdd8O7XKCJ5OPcchF2n5jp4apkCuL7HZiu9nowyRRb8Ib/fC2DFtweE6JGLoI1OKnmmEFW2NLFj497iEQBSW1e3BwCy/h4Aeixs462OrTAGXNeAGqOpKAAh0Aag201WpXYAejLGx7Hyqegl3Dz8ZgAVzfWFA2L35wSA6RqVCyZnALq9QtxBALSxesVImnAJgD7nafvfBIB1IgyklDQAr04AhGMGE/geu8gA3DxQONZ7Q8M+h3clsxrJRa2tKHNF6EurGQB+px/AfkdW1vFcmD12kc1kyB4fqRNkurSbc7AJMcoYVXJcq/mdXlIIjVqjKIcgjXWMUsZOr9VkfabkMxIABIpVndRWDu9o12ECcmbtXEWRalzLAghKnAht5iBLeB0S4aWrLxLGTvdcQ5wu33U/DyD76pNbtvp4jK3mMOQjB4K2bB51zbl8jhHymDQGwHXoKgDy5Ikm73IjnlhqiLnV5VkAy8F9AJZzzLHnIJpXh1LCUwW2tvmL5TVHUmc/92lcVp1iWzfTNS1qMwJZQoPpVRTHLAihzh43AZDw8EJNO0TYYNET1hVhB4AeD9KCRxHdupKfTsyiOIWnhLfsuR7AscUXSqbPKsXzq/bD7Bw0mwJjxOMHIQB6PTQjQQCCdVMEF7JjDCLVpriuamD1giLkROihEoC1eKX0ieTxWnTDoAaBkIIorJIv9cGLNonHm1GzAHxOP4BRVw7A/56i972mA7jzsFCH4AvxQxNRWaYqoDTvLM5Z5IrQ4rBAALxd5FTtFamcz3BF6PQLDYRGg67A3tBQXpPPbezR/P/Ze+94O6p6bfxZU3YvZ5/eW3JOekISUgghoSvSAoiIHa9d9Gd/r/2iV69cr/J6RRELigW5ooIoYEJvISSkkd5OTu9t9zIza71/rJnd9zm74e8D1+evnH0ms9aevc8883zL8/WpIQAVsgP/LJbJisaRAwBecq8FYF60hpitylBPcbeVIqA/JBZLKurYAJRYr6nhlOpSKMydyyAIysCp1yLlxqFQ7BxjBNiaYwLZ/GcY7QcQ9DQDGA5BbuoEoAyV5I2Sied45rXYC6tNjQCQqurjtqhSTamNChzPl6anmRKjQR8RJdFRwe0xJyw1MLrai9vM5lJIyM8b+CpgOOf5zJ5pM4mo0Sqrx2GyJx/cUdHW7GyciXjjKZx9kyyoYnFFkQOB9T3oDQwu/mOF5KOAU2UIzTUY/YUxc4B2MmiHJwvjofTVjWKZACdCyABmZtNDo08MUcqwuY5YkjqOeDtjoWlCPUdotvEVHRYXgIXmEAF+epw+PsQqTOzjS+f6THl6Mh9FyAfkhiwm8MYGPUdYMBHydzoH5atKJCJAJKKtWGeZOPjIyQNjh5NfnKURAG5OhP9sqE8HY9bBIwCeNC0HQCTZsmg1GIsc3/ePWf8pPVpS5G0xNngawBn7QsowGmbEbJUbOpimvkadeQBemWR+BYsrEpb2hYKP7FGqWgGMhJjc2AFClLG+crWrA5iO4tAMs4glWLdMjwMQK+s42YyGIVU3wujhKxpjYZyYZQ65hPGzvmkwJrgqQQgn6WGpGoBaeGg0rGLPBBNJ8ZUyALQAV4QVALhCnZLdwxYCoNXVnHn8+c3rYbQYouQwO0dySzsAl8kLwKlAC/hy/ZfxMI7OsCCWIXVIbxFgkSAAwWr3RQMAnKIZgM+fzsF/H2QA3tSccgtdUbMEhutp/uBESCy2YCwEwGlzAXBooVuXCRqDJODOdcrc+ftWd7PL7JwMTY0F53l+4n0aEbMMvRXdCmNCYUFYUbOUgBydPKGxbMkFxoI0ygjsJhsBKaVYBsA5dcsB7B87lPziNA0DqLK4kVCE/8wRGlAnh0nINy5V7qO13K7T3L0Gr1lBfxo0hmdGKIBLiiVCZfgsgNGKDgBDQQAwtS0CEOsrOAOfJ7iEvbBYpaVHFwVBrm0EMBKCYLGL7moWi5axA/K5UUoZNtamPH0XBC6wpMq6eisBMBpiUlUDjJBpKRtjwKZaIhedk/Px7vVKGCOO+8UqGPHSgrBrgsUoVlYWb2yGuCK0u2FYwI8JnpG5iHADkoiQh9mLLpnW9xD0ARDtOhHaBB8At8poKCcRPj1CGdDq5tLhUK7D5gVTYkxViCQT2cTLMdySBUA4kKIIKcNjgxTAFS0p73RpdbckiKeme8JqATd9Fq8aVUIAHLYK/uIPzhNfukY6eaN0TfM8/iAEZHl1XhzMxV/IJIErQosVRYVGPRZ3i6sxrEZOTWep0GFKLCQAgNOUFLoslghX160kIIcmjsaSLP2mWARAjbUSifaJf1aNGogNnAJw3LFQoRgNMQCWrlUAomeK/9vIH69MsNkYut2ktagOQgDqSC+AYFU7jKmKptZFAJTXTBE+NUyRw7EiH2jTY6Ca5Kmrd8gAhkMMgNzQBiN3WBY8M8LZuvivKydC0VOjz/cIQ6quhxEyLXFjRUeVEZ835KqCQYRnUAmjgqYgcBIq+plG308gERrlDw1DgnvMTAA0Oxsyj19es9hlcvb7Bgf9wyrVY7Ml7iFNEUpkBoBL0UOmWfEkf55rXiYS8fjUqYJ4KGXppG56niOsNNkBsHBgJinwtnOMjYexwEWWpo4Ds0iWLs8CjWkFRUd5sQwxW3lo1GWrAkAjIQJsrCUd85l/cqzUncfnCQvroVFJBOA0OYprnzBWzKm/WSzilwgAl8kJwLBYKzJ06bG4F3o6Imr0UFIkdoYoAKpt1fhnH2EmlMHTAIY9XQD6gwAg1TaLTo/mnVIny+OnNQceH2IALs3m/pAnlJFeALS2DXFFyIswB4qf+TkHIhpeHGMCKZ5j1IlhAFJNY6MNAIZDACDVtQJQi5psnhUlBpyRaFGoa9AnPpZHEZaopxHvXndVAuB7O6M4iMnComFuu/WP3AwMk0/RUQHAKqHChHGxYtQCAE3OxszjRSJuaFwLYOfQnr2TzKeg213MSMuUPYRScoRM8wFwKyyWOzTK//SuaLUtqlqgUu1QgcHJxNJhniC0A/BHAwAcsh2Am4aOziZC/X/upQC2tWV5m6ty00MuxBUhp16Xoyr+Yv7gRHhw/PDch9FoBEBIJuBEqGfviikvypq601eJRXwyALjNLgClFMtwrG9cA2DXsF4/rzFtRlAEoNpWhTgR/jNHGAf3CglULwDQH2AAQIipYwnKMe90XuwYymmDlA9oJKj5ponJ7Kqpg6EIpfpWIpvUyWFa4B9GPnhxjEU0nFNV5DhZGDk2saqejxTmcz/k2rJ16QEYD+PwNLNLJVln8W4EyVOjV42GIFbWozQiHA6xY7PMKZdk8cyJUHBXAqg3plGKbm5sVkD/a1DFrnEmEmwpQZ7C8DbjihBAg41Miu5xiwCg0Vmf9b9sal4HYOfgbi7Lio4uJPYQ8gMgNgf/cTYyC8ClwD+bnQhPeFmvn1VbcE4VWV23EsC+0SILrVlY72SAoQjdFicAlxrgVuYANIY/nGUAbszW2LeqbjmAA/MRUsqikTAAZrGFlLBABIejEkbiMH8squyySOY+7+BMxDvXWtEwgIDAkKQIC7VY41hdtxzAqxNH4jXDiVVikYAEABUWF4CinWXi2MgftowI/GhgXAUqozBZEqHXIky943ijEWFsqAcAaegA0G9E9U3tSwHEegt2fCgIPgW7xpkk4KKi1dXYAACptrnJQQAMhQCAiJJc3w7Gyt6iDsPA8NJSlJbRlsAnQfI9S/VcEZaHCJ8cpgy4oL6E3riQn8UigsVOzNZGOwEwHGLE5hAsdhYN84xUURvTLYSKThACoPq8oUoA9VZCgPEIEyqqYaQPATzW8+Snnvjy93ffNRvNeY97YZTFKNZWl+Q3jbjbtaHGmuyYkComZBCQBntd1v+yvmGNJIiHJo4+OeRHCQnyONJCozNRLwC3ysIZFSscjw0wAJc3CQLBGk6EY0USYYqtTNQHwGWpAODWAtxJHMATQ2woyBa6SFZD11W1ywQiHJs8kXWcbPZF+YBAWWBgDtkumKwQBBaLFNTkKgni8polDGxuUciJMCgCgNPsEMxWEMJikSJK22ps1c3OxkAseCJj+BSLRXycCM2879kyxwAAIABJREFUmKVUIlxes6TC7B70D/N+1iH/CID6KOX1ov9sqE8BDXhpYFaw2Nw1tQAGjKmEpvbFAKJ9JRVVz4unhqlCsbG2+FIFPpROrm3mKcb4/uWmDpTPGDMZO4YYgMubS0hxTXMirIvP/dCYrgi5pVm5NnlpUwmbnJ0EIHpqANgluE2IaJiOQqyqB6BOFykKnxxiAC4pYWNIhEY9MKZRqhSKrSq+7b+e3v6dl36wf+zQX0499okdX8zl5fH4EEVpYXkAYIyG/CBEjBOhjUybBVWAm4kWKXvlosNkX1GzVKXa8cn9IsEljaXeVdKIMK4IlRyPLI8MUABvaSEAVtQuNYmmU9NneKlLwUsnhUZ9PFBprwDgokE+CAnAXccogFu6s/f12WVbV2WnQtVMV7Cci0ZCAIKSAMBhsoMQwWyDUeGZP1bXrsB8apjLJu7u7TQ5QAiRzWCsOJZaW78KwN6Rg2mvs1jULwsAKpKrOottnwAgEGFzywYAT/U9D+DMbC+AhogeFCWiREQJVCvajfINRYS8OkOqb21zEgB9cUXY3AVBVIZ7Swkiz4u/DzAAby6BVNSJQQBSTXOLHQAGjP3LjZ0wCkrLiNEwDk4xu4TNJVTbcycwsbLeJKDWApViLMwER4Vgc9BwgI9XLQUM2DHIUELAGUZzOo83AmiyEQDDQcYHPmhFmZkxIy9VysYAaL4ZAIJTt5Pm2bWAnReOTgViwbv33wvgI6vft9DT0e8b/P6eu7Ke5/GSHxfAGYhSweaEoJfnNtvhlWMA6mJzvc1NTesAuMgr62oKHkadZRvBVEUY8QJwKWDZqka9MTw3wiQBV7QIAMyiaUXNEspYcdFRI11nB8AnHrht1QCqWXAoyHZPsEPT7K/91CLiXxblvNS6Kh1Np4eci0aDSFJpAIjFhsLThGvqVwLYP6ca5orQT1QYJZ2CHh0tngj3jKbP4maxCLeHrTC7kCiWKWn+wWUdFwLYcfZpyijXoJ1ByikWiTRhkUu8sYhwrB+AXNfGFVWfMc2LmMxyQxuoVna7k2Q8OsAAXNFcAqnohSdNTXYiEAyFGO8AkRs7ACgjZSbC7YOUARc1FjmDkEObSowQ4nM/OH9LXBROlNSlB+DwNBsOsUYbyWdkaM5NckXoruY/xqO4YmUdAHWqGCKMbyzrQID8oYdGXfqkvWY7AEybdCJ8tOcJfyywpn7lzUuv/+aWL1oky5O9z2UWYgyH2KFp5pBL8pRBvGTUkbD0bHGQiBQBUBWZK0x3XtM6AB5x/5uydFgUDKbHJ1OI0K0yOZxF5D0yQGMUm+sSTrn87vzKSPrdOR/EjUZhuFlWOKsBNJAggNsP0o+8qFGGDy0W6nL33XJC2ps3E3NF6BdUGGWWgoUrwsKqpRZVLbTLtn7f0EQoZ8kxJ0IfYgBcZifiCbwC7UY51tavEol4ZOJYmpsPi0ZmZACoslUiWbEVO1MFwKraZS2uprHgxJN9z+0fPQSgy085/yXeRbFS5w1FhHqOra6Fzz/qCySi3kbtZb6TSgrFwWk2EGQNNqwudiw4AGViCIBU3WgSUG8lKo13I7QDUEbK2aKOBHOXYoUVoJEgMVt5SqnFQRCv8alpgqFxS4HRtkxKucHznjyxQidCTtiDpSnCsmwMjGkBLwiJcw9Xq6Pc6to79fjZZwBc330lgEZH/TuW3gDgZwd+k3aa7YOMARc1CKUMfECigc8Vf6XdQTTRD6A6rM4Rd2pxNamkUYZ/iaMMmfgcoVFmVbIQ4Z/OMgDXtyfe+bkN5wDYPVJM6zAN8256niP0A3C76wC4tYBdwp976c4x1mInX18z18PjypplsiCfmD7Ny23mBVd+AWiIk5PFjsLrZUQi8t7zV3KLURoNa4SEqCoSUW/yK8pulMNhsi+tXqRQ9ZVUUUhjkWkTAVBt1cMwpFgLmzgIyNuXXAfgv17+8WzU2xhhDYpIJFn/rVySy9obiwjHBwHIdS3VFjhkzMYwa2RPTS3dAF47f5ZH+hmAK1tK8vvVJkcASNUNAFodgFHvI9hdoruKRcPFTSTICoXqlTJpHcEFQZtJyEEYamaAd63U8DRhqQZmjw6UukkY5Zfx0CiPPA8GmVhZC0AtyszssQEK4M0lBADAhw1RTbA5iajbSfOHiX6hCsCYf+zk9Bm7bNvYeC7/7Y2Lr3GZnYcmjqaJQv2ZprSrhHjJaJIibHPARCYBVEUp77XPikPTbFRZB2AqsKfEPSB1RnxICUe1mFWyqLDKVAmHUu6kPgWPDVKB4Pr2xHvv8iyoMLvHguP9voKfw/RBEFa7SrWQEpYE0eGoAiGIBv9wsbiikmxtINuvEOf2ebFI5uU1iymjeYZneS7QBwWpirDQ0CiAc+tXA9iT+yGARcN+CQzMZXYSEABCsXajHBubzgXw0lDK585iuiKstuqhjtLrZQBcseCSFTVLI2oEwNUjVDAlPoYSXdbeUESojOtVlwDaHQRArxEdlVu7ACivmSL8az8FcHWOgWH5gAa8NBIULHZ+G0oTtVwUqqO9Je9Ux4tjbDaGpRX5tutmRdy3jP/II9K8a6UsTp7eGF4cY5KAy0osSElVhJxsBgKQPEUqQm8ML4wxSSipzghGgjAeFwXQ5gCAk7QSwH42AeDchnNkUX/stcnWty66GsD9RxPjmmPGM81bykWE9mQiJBYyBaA6xniLYVb8pY9NaecCeHHw5RL3AKrRaAiCyAtGZiKzADyWiqDsBHB8OCVN+KezNKxiS31K56JAyLqG1QB2DxcsCuOhUV/Ux8CcJicRRMFsBaVvrg2/er30zJXSkor5r/O5fAMjeTk78rCkn0ZhKMLiQqMA1jeuBvDKyAGaI3pEo2G/3tigf8q6IizcZY3j/KZ1AF4a2pPcRBGM+sMiMRORpzxhhC5LTBOKRPzPi77+sTXv//q5H98yqZFkInwdhUZHRkb2JkFREvHiI0eO3H///fv2Fe8IypSYNjNBREmqqgfQ7gSA3gSRdBBRUsYHS9HmuTASwu4JZpVKKlVQp0YAiNW6eQdXhPF6H7m+DTw6WiY83EcBXJ2tIzh/6L5lnlr+Y6sdMHwMZD00WhIR/n2QKhSb60puCfByRZgSGu03FGER9tbby7UxP6+UScyb5Q9AhzUPCDkkhWFkvOLY1v0Ws2jaNbyHV5ADeGaE+RSsrCRtxfoZJfYTTFeEVgl2aQJAdVQfTJEVD/ZRH11slV2D/uFeb0ltMzQUAGOC1c5HT/AEYYXFrVodAI6PpDSQ/PIkBfCervS/uw1NawC8PFzw/DKqG406vFEf4rUeNgcAFiqAljY0rsGcyiwOpqlMiRFR4uMU3HpotEhF2OxsbHTUe6O+41PZo18sGvZJBEarOwDCXdaKyhEC6Khoa3I2zES8ybYvo+FJAPWCg4tOlKOnnsMmW29asm1L1UoYKpNDn8RUrMvaP5QIf/GLX2zbtu1fDXi9+nf6Rz/60aWXXrpjx45t27bddtttxZ1cnRwGY2J1Ay9440LnrJFTIJIsNbSD0teiG++v/ZQyXNYk2OYalzYP1KS4KDIUraSnCXtL2WcyHu5nAK5uLU3Q6CWjWRVhEzi7l5DXfLivDJtEhiJsMx4yBJuTmK00EuIDB/LHX/oYgKtK3hj1JZoIOfgD0OmAJNjdJx2A4d8Rh9vsurh9C2XsL6ceMzZDAVxT2jONvp9Aeo4QgAmTAKpijOaoAe7xs32TzCkLFzSvA/BCaaIwvYlQV4Ruk8MN4GQSER6ZYc+PMpecpbF9XcNqgQj7xw5FCvRai+cIORHqxihWBwyxmCcWejqqrJ6x4MTZ2XkeXpnhuM1TkroitBaTI+QwYpWv5FguzD1fPIYiLHoARRxbWzYBeKb/hfgrQ9FZAPVy4otkWNiUp26fE2q8UgYJO9PXgyIEcM011zxuoLq6GkAoFPrqV7/64IMP3nPPPU8//fTtt98+MVHMyCRVrzRp4j92OgmAHl9SvUzzQrw2XmVz+C3lj3hnOv/RIPK4oi2ne+er0+yMj9VZE6PUioNqGHjyH9uT9kzMVtHlYbEoV2NFQKF6gvDa0i4si0VoKEBkU/ze2uYgBOgPMMr0BCdPdua/MW64XOLGYChCMUkRNtuJScBIiM143FMm4pRsbe70Qszrut4C4LGeJ2NajBmsvK2tDH/LRo4wsR9f1A8Wkahs1fRe+0z8oYcBuKZN2Nq6EcALA7tK2kMokSBEUmi0osIF4OxY4k/6jsMUwLu7BIecfpIKs3tJVbdClTnKRrKC6X2EjllOhJYiiZCArG9cC+Cl4eyEFIdOvRYbf6d6BzoPV4YLDo0COK/pXAA7h7Ina2k0PMvrOa16x44RGi3euOqits0Anu57MT6JYkiZBdBoTjzhlSVHGAcnvBRF+Poiwunp6aeeeurEicQsheeff97pdG7cuBHAggULli9fvn379iLOzIlQrtWJsMMJAD3+BBHKLQthmJGWETNRPD3MJAHXlHYn0iaHAfC4LozQblzRynWtIEQdGyh9ojoM5r62ba5Rn/lAm+ahUV0R1llhlTAZgV8BjIeSoqOjTw2z2RhWVJIFRY04TmySx0VdVTAKPG0SaqyIahgNM9FTCyPZmSeeGWEzUSz3FDl7ORlcYwlJOUKRoM1JGHDcaQawyFofDy7Fsahq4aKqhb6o/5n+nbvG2VCQtTnImhLKlRP7CabYygAYD00AEDU7DBvSTNx3hgK4qVNY17DaIlmOT52ao3x//j3oilDfA6eHSouHEyEJ+XaOMQBnfOw3p6gk4FPLs//dbWpejyRTrrxX151lUhShzRH/Vf7grmC5lFkcfOoTsdj1YKzFjYQiLIYIV9eusMnWMzNnx4JZFAWLhmdkAqDKKGPRB1CUoAi7Kxd0uFtnIrO7hvRY9FnqBdBpS3jyGU0a5clM8RBoco5QkEtyWSshllc4CCFHjx79j//4j1dffXXVqlUPPfSQzWYbGhpqbk488zY3Nw8O5qz10jTtZz/7mSzrT4BLlizZvHkz/7cyPghAqGrQNA1AhwMAzvjAfwQgNXYCiA6cir9SFvz5LItRXNqICqmkEyuTIwCEynp+llYbBIK+AIsqmiQAkkmqrFenRqKjA1JdS3FLaJrGT/7HHgpgWytKvBR6vaW7Kn6edgc5Nst6vNpyD8TqBvQcjo0NSJ3L5zpLDvCy+NI3qcxMABBclcnnaXdgPIxTs3SlpwaAMjVqmm+VpKvHAFzXVurGAKjeaQDE7k4+VYeDnfLiuIkB6BRcWVe5qvOyE1On/3rq75JzM4Ab2kHL8a1WeRbQ5owvOhoYBwDqBsZV33TmZg5O49A0q7bg0gYqQVzfsPq5gZee6dvJWz7iiF+9PPdAbA5+/FR4BoDb5CJ2CsCj+X54RFtfRT7yAo1R3NJFOuzZ3/rGhrU/O/DrnUN7FFUV8m5y4bKPmazTIX1dTdOIxQFADXoL+sTX1q6SBfnwxLGZ0CwPeGZ/v0E/AGKxzkQmALgkh6ZpMFkAaOEAXzH/qwdAgLC+Yc0z/S8+27fzhkVXpf2WRcOzLgLAY9K/dUy2AKCRUCnf5zd3XHzXgV89ePKRjQ1rAZymPgjotDfFz8nVmxoJluX2q3H9KpsTZ5PN/PW081NKWR7ZmX8oEX7hC1/48pe/DCAYDG7duvW73/3u17/+dUVRRDHRlCNJUnIRTRoYY/v27Us+fsOGDfwfCq/U99Ty/95sBoF41s8iMVUkAMCqmyGI6thALBTktbZlwQNnBYBc10IVpTRSmRoBQF1VfP8i0GAVh0I461XaHQAg1LZgaiQ63MMqs3sfzwtFURRFOe7FkVnRY2Kbq+e40vODKTEa9BJJphYHNU7UZheOzZKTs+oiByOV9QBi44Ny4cuoFA/2CgC5pkktZZMAYtNjAIjTk/xuO+zC7glyckZd6a4BoEyOzHst+NVTKf5cpo0BUH1TAKjVkbz6QqewA+SMGAXQHjNl3dgFjefdJf/q0MSxvokhoPG6Fk1RytBjykOj1GyLLzrsGwUQo1XAKdU3k7mZe04IAHlbO4OmKBo2Nax7buCl5/p3Xt1xefJh/OrlswdOhMxs58dPhaYBuE1OaooCqKH+/9vD+v30pQlSbWa3raK53nizraHBXjcSHDs8fnRJZXc+SzNVYUqMSLIKMh2eBeCQ7IqiMLMVgBrwFfQHI0NaVbPslbEDLwy8fFnb1lyH6SM1zDZv1EdAbKJNURTKrVhCAb5i/leP47z6c5/pf/HZgZ3XdL4p7Vc0GuIdfhUmNz8nk0wAVGOt4nBJ65ZfHv79KyMHTkyedpocY0LMprEWe338nEw2A1BDwZJuOgaUcAgAk+T42agkA9AiobTzU0oFYf5Y3T+UCONKzm6333DDDbt27QLQ0NAwPp4ITI2Pjzc2Zpn2wiFJ0l133WWxZJmVMDM1AsDW1CFaLAAsQKNdHQqycdWsdwhYLHJdizLSK86M8CF/pWMygqdGFFnATd1mSwnOUkyJUd80ESV7fXPc3WqhWx0KsaGYebGFAIg2dcSO7cbkcNa3nw8URbFYLA8d1QB6fYfotJX0NKD6JsGYWFFjsSY8NroqtL8P0f6wbLEIrKE1CGBmrIgNPz7EJqPq4gpybkOxczEMcINKU2Vt8ja6PRp6aX9EstQ0BgH4p+fdJL96O8q3MQDegBeAtbpeTlp9aSUFtGHBD6AjKmTdmAWWi9su+NvpHUR9coHrPec3mcsQGIXuYWatrI0HnWZiXgCiVAcg6vOmbSas4r6zCoAPLZUtFgJga/v539/7k8NTx4IsHM9Cwbh6+ewhFgsDMLkr+fHemA9AnbPG7EEQuLjCB+ClCeKU8eBlcsucnQwXtJ73h2MP7Rrdu7pxZT5La74wAMHmsFgsPsXP17VYLDFXRRgQY5FCv8lb2s57ZezAS6N7rl6UTkhxUKoACNssKtWcJofT5gBAeNo4FuYr5n/19HXbN31v711Hp44HWCjeyQcAVGOx6KRZBtDiaeLnpE4XAEGNFX1jAWCxWK5e+KYHjj/8iyO/W9+wBsAyH7M63CbjnFGrHYBE1VJWiUNjFIBsscXPFrM5woCYcX5KaT4a9P+3PsKDBw82NTUB2LhxY19fX39/PwCfz7dnz54LLrig0LOxaFjzzxDZFC+RB9DtAoBTSX1HcgvvJixbmvCBs1ShuLyJVJXmr6jNjHNSibMgAJ6COuVNrZcpuYPi/jMMwE2dpX70RqVMbfKLfM+nfQyl5Qjv19NOZbi9p5WMcnS7+bWF3kGRdyvh789QAG8v+erpe9P91TzJLy6uIDL8YQStFNW+nCUMVy64HECd+Mw7Oml5WDAaZkqMmCzJqZfx0CSAGncjAMWXniP87Wk6E8XGWrLKMMCzydb1DaspY8/27yxuG2lGozw0Wmn18Mxlp+DfeY308wvE4zdKm+vned9bWjYCeG7gpTyXjlfKIKlaFYBgdQKg2Qze5sbm5o0CIXtGDswxKJgXy3hNApIKWPQcYbjIAhabbN3YuJYy9nTfC8mv00iIEkzLRCCkzqbXuBk9i6VOeXv38re5zM5XRg789MC9ALZMUu4mo69SwrynTPBcY/L5jarU10P7xI033vi1r33thz/84dve9rbt27d/5jOfAVBbW/v+97//hhtuuPvuu6+99torr7yyuzuvOEYyeO+EVN2IpGQAv9md9GYUjpavXuZ3pymAmxeUTCq8ibAqJebZxYnQqJKT69tRcuHongl2wsvqrWUYGqc3EVamEGFXEnlLNU0gRJ0cAU0fVzY3wir+1EsBvKPkC4uMJkKO+HdDtxudHgMQUSO/O/LHb+38/l9OPabQLHZiIRV/Pss3VgbqYZpKQ34IYnIDO4DlHmIX+gA0hRjLPae+1d0dRquJzC53zlOOkSe40WhyCSsMIuyqb2WEyGFvcjMMZfj+YQrgk8tSPqaL2y6AMSWgmG2EfEiqGp02imVEuxsADfo21pJ/WSTw+ZdzY1n1kiqrZzgwmjknKCv0Oh2dCHn/YgUSxTIFE2GV1bO8ZmlMi+Wq4YTBQNPmlAIWbrHGiiqW4bi0fSsAbtGXvNa0TDSCSosn7tJAzHYUW6GaDLfZ9W+bv2CRLCrV1gXl1V6aUtXJmzTKVjXKi2US5xdK8/X+hxLhhz70IUJIT0/P5s2bT548uXDhQv76D3/4w1tvvfX48eNvf/vbf/e73xVxZt2uujolpspvdieS5krLegdFefxlTvvYzjHmkLGtvXQiHEVSEyFHtxtI2r9U2wxBVCeGSjGu/a3B3GLJd3ItmyJcVAEAJ7wAQExm0V3NVEUtpDkBwF/7qTeGdTWEf4Kl7pM7bldUJb8YJ0LBUUFkEw36AoGpW3f8608P/HrH2We+v/uuT+z4V97XlYyH+qhPwcZa0lWOjVH/DBgTnRVILeWos6LWNACgJUznaD65v4cOK5cC2Dv8ROmbAUD96bYyAHjl4SWt9bOiU2Aa77jneOAsPT7L2p0krY1vU/N6i2Q+PHEsa9Xi/NvQexndAIJKKKJGLJLFJlsFhwtGXWueEAjZ2roJwDN9L+a1dJLZ91R4GkCltSL+SqFVoxwXtfLWgpyPBZztZkUgWRFy6i2BnDY1rXOaHCemTyc3MrJoeNRCADQ7E7dKXREW21CfjLX1q+6/9qd3Xn77p3oFwvQzc+hEWKbp4lz5ZVGErwsivOyyy2677bY77rjjk5/8ZE1NTWITgvDe9773jjvu+PCHPxzPIxYEPied23rFsbiCADg2m6wIF0AQ1JHeUrgkjntPUQa8tUOwl5xp1V1GUxXhogoC4Ljxh09kk1TTCKoVPfA2RvVK93dnOHEUAd1fLZUI2xzELGIoyAK8g4K31RfoOHrvqex2IcXBUIQ1yS9WmNBkJ0EVvQHdEODO3T89NdPT4mr6zPqPNjjqjk2d/OKz30zThdzH5H3dZdqYPomwMvNXzZYBAE1RkYb8uVqjfnKMjqtbRMG0e2RfcZSTBhqcRarNDWV0MjQlEHJ+Q82sXAHglZ5p/qsYxVf3UgBfWiVIqdfDKlk2Na1nYMWJQqOFg7PRDAx6EAxFWNDZOA891fc8w/zFRPHeiYgaDSohk2jSBxVxIgwWM+DwwtZNAhF2De3NNUiSLzotqkhpabCDEBoJFu1HIYvyJe1bAPztzI74iywSHLYQAC2upviLRbvYZIXHUrGiZgnJCF2WMuwpE1z5CVks1l4PRPjaweimTyHCJRVAEpEAICaLXNvMNLX02X4aw70nGYBbynFbTOum51joIpKAXj+LD8CRS/OXeWxImIxgZSVZXVUOpcUdt1OJUCTodhNmPH9ItQWnCYeCbPsgM4tlCDgDAKWabxqECO50vllaAQBHZiBV1g1ayfbRXbIgf3vrV67tuuLOy2+vs9ccnjj+86Q5D71B8tQws0nlSxD60psI47ALAwAqqRNGjjMNO8fY3klWYXFuaTmPMvrImcfLsB+/F4CY5K82GZ7WmFZp8ciCJLs9AB47rhPhv+/XTnnZ0gqS9fvP43I7zj5dxDY41XHa47KMl3sQ2UTMVqbECupFW16ztNZWPRocPzJxYt6D46Y205EZAJWWCt2W2u5EUaFRAJVWz+q6FQpVnunPrkq57JtkEQC1Rt4OgiCYbaC0FKF29cLLAWzveTpur0MjoQErALS7W+OHlStHGAdTFaapRJTioyGQIKrXOEf4emmof40Qn+SX/GKbg9glDAVZfAYFALmlG+Vw394+yAaCbKGLXDBfxj4fZM0RmgR0uYjGcCJRL9OOEojw3h4RwPvLJWhSHbfjWFpBABydZYg7jhYyqv6XJ5nGcG2bUGL9kb5J/wyoJjo98fEOcSz3EAAHp5lUWf9YnUgZu7rr8lZXE4Bqa+W/bf4/IhH/cPyho5P6DfSe0yJluLFDcJep9YZyRej0ZP5KUYYACLQahqJNw/cOUQAfWixs67ocwKNnnoibehS/H97dn2Qrw4Vmrb0GQFNdFYAj/dNPDrPfnKbfPkAFgrs3i1K2b9P6xjVus6tntu/0TMGOhgYRugBMhqeQNMGAk/QclqeZEAjhwujx3mfmX9ogQkOJGvpMV4SFidE4Lu+4CMD2HI8FPB47SUMA6uyJuAWx2VGgwWkaFno6V9Qs8ccCj/U8qa8VCZ11CAC6KzsTC5VVESLOUklxURj+NbRYa+/0JTJyhPrs39dFscxrB10RphKhQMB94o/MZAwm7C91HtPdxymADywq0ZtFR1ZFCIAPfY3vX27oQLGj6nv97Kkx0SKWJy4KqqmzkyAk7q8WB9/z4WmuCFtgeB3kA43hZycogA/mHv9dEPTZ9KkloxznVBEAB6aYUln9UpVAQG5YdHX8t0uru29eeh1l7Hu776KMhlX85qwI4KNLyvYno4dGM6SqN+oLqV4N1hG1HoA2kx72PD7LHuqjFhEfXyquqlve6mqeCE3O62Ay/34ySljHgxMw7s6uSg+AanXm0kfV9zyjaQz/sU7MVbcpCxKnn7/3PFXQHlg0zFSFmCy803cyNA2gyqbndzlJ0xxOb7nAJ5s/1fu8os2TEIkXy0yGpgDUxNe12CGINBoqztdpa+smq2Q5NH500J9lTjWvUhlX/QDq7IkvahG+bpm4cfG1AH5/9EEe5A8FZ/utkEC6KxfGjyGSTGQT9/4uZa04uLgUzCmTi3VH0xLKf1KWyMgRCqUpzjcCEdJISPPPEJM5PnAuDv2mnEmEpQ0m7AuwR/qpWSxPXFTzz7BoWLA5eYY8Gcs8APDqtEGEje0AivMN/8lxygXN3KPU8oQ2OwWqia7KTKW1qhIADupEyKcS5kuEf+2n/QHW7SaXNJXlAWMuIuSeZPsm2W7ZGxWwmNqTKwgAvGfF2xscdadnev56evt9Z+hUlKyrIRtKc2dN2Vvc+y0V+hQ9oWlQrEG20Og39lPKcEu30GADAbmm680A/nLysRL3w8cNCkkSRBaXAAAgAElEQVQKdTQ4DoDX2fPX31Ix65DRZCc/3Sx+YeVcX/4rOi8BsOPsM1nrb3OB25nGw7NcEdbElRlXhLmnQWXFgor2Lk+nL+Z/cWgeuzVjDqKLW8TFiRCECDYHGCsuOmqVLBe1bWZgfzu9I/O3NBxgBCORGQANjkRMqCxEeEHLeR0VbWPB8QdPPgJgn/e0Rki36LFIKXcBgc8BLm2tODLjljAEYllKcmAoQiGlKrWkYVJvBCJMyMEMI6WVlQTAwamUwlEiSspof9HRZAB3HaMaw1s7hFrr/AfPCy117kQyVqXuX6pqIGar5p0qNEoTVvHz4xTAx5aW5xNX9bkTWTxuVlXpIUcAUmUdkWTNO5lnXue/D1MAH1tSHp0NQ06JFemyFcCSCuKU0eNnz4UGAJznTZ85bhZNH1vzfgD3HLzv+4cCQE5byyL35p0CIGQ8vfV5BwHUO1qGTdXIUIR7J9n/9FCLiC+eo2/mzZ0XWyTznpH9WQVHAfvJcAAf0xVhLYyxxudbp/3vlQdvlj64eJ5L0V25YKGnwxv1FTShkNuZxudATYSmYMRmAYhFKUIAVyy4FMC8mVRqdG7o3ZO2JH1m5xxcZHT06oVvAvD3niczVSmNBGdlEtGiHovbLifCiToRFlWqmjgJIR9d/T4A9xz8XZ93YEfwBID1lnSPRj06WnIHBQcfr5hGhMao4fLmCJPaJ0obJvWGIMLxQSTNnUhG8k2Zg8gmqaEdVCu6mzCo4mfHs7RPFQ295DUrEabtnxC5sQOAMlSYKPztaToVxdpKurFMgkadHkXSbPpktDlItQXjYQwEGQRBqmkCY/lER/dPsadHmEvGLWWKiwJQ9d6JLEQoEqyvIQTq/tlTAFaP+jMr9La0nLeydtls1BsKPtRiY5njfkqB5uPlrOmhUa4I19Y2D8s1AJSkcYkaw8d3apThk8uEFmMUrdPkuLR9KwN76OSjJe0nQxFyIqx31MCobuXh3DzBW/7/eroAD31j/IVOhOPBFGXGK1pzTYOaA5d1bDWJpldG9o8F53JXj6cnORHWJhGhqNfLFEmES6sXdXk6ZyLep/tTOtzBGA0FMlsakOjZKEaDJmND49rLOy4Kq5GPbv/8HmXUorHL3Onev4b6LFPckodGrfbkF0lZS3KozrVJ7RmmkoZJvSGIUJ87kT6tBsDqKkKAg1NMS7rFmdoWAYj1HS9uuV+epNNRbKoj62vKRCp670QWY7kOJ/GYMRLCcEh/A6bGTgCxoTP5n58yfWDNxxeVzW2cW7FIVVmIEMDaagJgzwQDwC3C82n5+M9XKYB/WSS4iumgybFPrggzEpkcm+uJSzwR1cItUaEyENGy3WE/svoWgDRJf/vwwkm5rH8u1MvbJ7KHRjc3NpsqawDMjCXu3d99lb48zprt5CurU/Trdd1vAfDomSdCSvFP3JnFO6PBMcQVYeFEeHnHhRbJvG/0YP5SVeNUZBTsTKQSElerWT+mueEyOS9s3UQZe3hOVo4PvuBW4/yNc+jNG8UqQgDXL7oKwAPHH05ZMRoG1QadZgBt7hShVkqpaho+t+Hj5zWdG1RCEsgt/VqlI/0rZ7Qtlic0agyWSiVCUSKyiXu8lb4EL+1J6VM0mSEITIkVl8d9QxDh+ACMSv00VJrR7iRBFceTuwnbFqNYIlQpvn+IAvjcivKplmxNkBwEWFNFALwyYaQJmzpRYJrw4X56bJa1Oci25rIRYdYy1zg21BAAL40x8AFSgDLWP/cJT3nZAz3UJODT5buwiNvfpPZ4xHFxo+AhhwCs0lwwPog0HPYtnNTWi4iQ6B/LuDGmqVpgFoKYWTXKQ6Mtrubrz6kDwGYngioAPNhLv/KKRoCfXyA6U58VFno6V9UuCyqheH1gwftRYjQcIKIU9zZjYKNcEXIirOAlrAXMV3KY7Je0baGM5Z+/5HlKniNUNGU6MiMJYqJ6k4dGC6kajeParrcAeOT0jjlKZuLubiOBMQANjsRzHq9iLaidPw2XtW+ttHpOTp95ZeRAYsWQH8CAQwTQWdGWfHy5FCEAs2j6zoVf+/VVP7orvHzzJOUecskw5FqZQqPGqOH0VcxlE4VGYWpaPU7xhalvBCJUxgZh1GVkYl0NAfDyRIIIze1LAMR6jxWx1n1n6Fk/W+Qm15ZjDipH1pLXOHh1xq5xgwib+VTFfBUhA/59PwXw2RXpjc+lQJ3MXubKcX69AODFsSRFODoPEX5zP9UY3tediPiVBVntb+I4r5ZUSYcALJYbYUjzZEQ0fGkP7VXfSSA+Ofj0cGC0bBvzToEx0VWJVGv8mBYbDY6LRGxyNrx7hTskWu1a8JqHZ295TrvxSU1juG2t+KbmLJfoxsXXAPjj8YcpK8zQTt9PfDKikWifjfgiasRlcvLEFTFbBYuNxaIFZa2uW3QlgEd7nohoeemA5BaOsdAEZazGVi0Q/RLxh4ZCi2U4ltcs7q5cMBPxPtH3XNYDmKbSSJCIUlgivpjfIlkqLIm5jDxaW3QHBQBZlPln9KtD9ycWDfkB9FgBYKGnM/n4MhIhR5u7xROKIiNoCSM0Wq4coa4IM1fhacLS62UYo9EwCBFMqfU4vDC1qPO//omQMXViEMYNNxN8CPvL4wkilGqaBJtTm53kJYX5Q2P41gEK4IvnlDrSNhlZmyDj2FQnANg5ntRKKIjK2ECetc5/66d7J1mDDR8oX+INgDaVxQonjvNqiSzglUnmV4zexzktUo/MsPvOUJOAL51Tzk0yJaYFZokoZXVvAaDRqIOcZkykQjcAbSJdEd5+kPb42cKK5isWXKxS7RcHi/H/y750NuM3AIP+Ecpok7NeFiRZgLW6DsD40NivTlIA31grfnV19kt0fvOGJmfDcGA0f4/pZGTGRUcCo0hTRe6CRWGXp3NFzdJALPhEf3b6SUOy3ymPT9Ynxyd5aNRXcGiUg7fH/OHYQ1ldZmjQB8YEu3PQPwKg2dmQPBLZKFgtXhECuK77SrfZdWji6C5jbD0NBSIi6ZcUSRAXJbU04DUgQqR6yKWsZS1r1WgkPYFnrOJAOXQni0XAGDFZ0h4iSQm+3q97IlSnx1gsKroq00LScfDykBdGk776hJjalwCI9hwpaK1fn6InvazLTd5ZFtMTAAANzNJwQLA5BIc76wHn1RKB4OVxFtUAgMgmuaENVFPySBNShq++QgH86yrRWr6JWywW0fwzRJLTnKzjcMpYV0MUiqeHqVTbTERJnRqZ8I0+cPzhe1793e7hfTS1LOX/7NY0hg8tFtoc5ZaDjImemsxyYo6jkycY1ADanwi2AlAmUip6Dk6zbx/QCHDnJvGWlTebRNNTfc8V0SGefW98JoY7PXnZ5x0A0OrSwxvW6noA/75w8nsbxCNvlXKxIACBCDct2QbgvqN/Kmo/vHInQczDGUQo8ehobh/wrHjbkmsBPHTm0XykanILB99AfdIG+AMNLSRPmYxL2rdU26p6Zvt2D+/LsnRAt1rt9w8io3RFt/wuKiobh1WyvGv5jQB+tPce3lVCg76jTqIRtqSqO72loQRft1yIOwakva4HfkurUE2sEsmuCIm1PO7eWfsUUVph6uufCMcGAEj1rbkOWFNNbBKOzbKJJM8Bc+cyALGzR/NfKKLhtn0UwNdXlzPGyMsppZrscV0AlWas8JCIhpcMUWhq5q2Q85vj/O4MPTjN2hzkw/MVuxcEdWoUjIlV9cg98fJNzQKARwcYESWppumlCrzr0Vvv3Pvzew/9z+ef/rcPPfbpXq9ePvPYAHtkgLlN+Orq9AaGMuwzR48Hx6GJowA0suR5tRGpVnB+BTc/pcUoPrpUuKCe1Nqq39J+KWXs7gO/LsveeBWPlFHF0+cbQFLdBC9Hutg69pkVwqL5nL7f3HmJx1JxYur0npH9Be/Hm17CynmoMamzjRffFqQIAWxu3tDkbBgNjefyGEvZRlILB99AU3Jrnc1JJJmGA8W1fsuCdNPiawH85vAfMn8bL1jt9w4h6VlEX5oXrBYVlU3Gdd1Xtrqa+32D9x66H4AW8r3sEQBsaFybdmTpWclMJI/XSFmrrOpTJ8KMHGFZOiORUJwZRMh1bVGK83VPhDzmxisyssIk4Pw6woBnRhIPpKaOpQCiPYfzX+gHh2lfgJ1TRcrjgWlA7/3IVukTx6VNBMCOQX3/cmte5jgBBV/cQwH8+7mCuawUo8dycyQIOa5pJQD+0kc1hsNNFT/ulCJa7IKWje9afmOdvfbUTM/Htn/+wPjhkIpbd2oAvr5GLEtTZso+eY9HjvgtgEMTxwBc3LKsx2wQIWMAIhre+oR6bJatqCTfXa9fu5u6rnWY7LuH9+0dPVj63vRO/0wi9A4CaDPuwnzzWkbyMivMoonLr19nu9HPs5+MYVVD/hEATc7Ep8x3m+l0MzcEIrxj6fUAfnv4gXmdr3X/VacHwGDGBkCI4PLA6DwpAld3vdltdh2aOJb5rMAHawgO95nZs8goXeEtjMWlJ5MhC9IXNn5CIMLvjjzwZN/zQ97hXZWCYNjfJEPPSpYWjE0GU2JMiRHZlDxvUl+rvEQYCiJpkFZiFT0AW7IijIaRVXHykp+iiPZ1T4TqWD8ME85cuLhRALBjMKlwtHURkU3K8Nk8owEjIXzrgAbgu+vFMmYHYShauTZ7gpMjrq74j6bWbgCx/nlMhL+5XxsKsvU15J0Ly/wpG2Wuc5H3OVWk201Gw3ikP/BDuZcS3CR3/fuWL31w1bt/fdWdF7VtDiqh//P0Nz71wrEeP1tVST5Rpk7/ZGhTOZsdAVBGuY/o51YvrXE7xqVKFot6J8YPTbOLH1F3DLE6K/5ymWgzQspOk+MdS28A8JP9v6LFzgRI7C1HFU+vtx9JilCsaoAhbfPBtq63uMzOV8ePFMrWXOcld/dzImx2JSKEuiIsMLMO4E0dF1dbq87M9r4wsGuOw5im0qAXgsBZZ9A3hMwQZWnRUatkuXnp9QB+dvA3aaxsFKxWnJ7pBbDA0578W6OFsVQiBLCiZsmHznkPZeybL/zXp2b+rgq4yN6VnArVV9QVoa/oARRpyCUHUW4iZGE/AGLNIEJbGSwCEM90ZupaS/Gh19c9EXIHaqm+bY5jeJXd3wcTXygim0xti8BY7GxeovCzL2t+BdvahEvLZP0VB+8rkHIrWgBb6onbhIPTrMfPAMiNnUQ2qeODczz7HJxmdxymIsGdm0qfPJiOfFQsjDlKd+1/YEYLLwqwG8Z1aWWRLF87//NXdF4SUSOHB7/tEMfu2ZLdu7nUfU4OAxCzORUAOOvtDyqhBkddk9Pzh0vEs9ZmANfd17Pyz+pL46zVQZ66Uupwply8ty6+ptZWfXL6zONFzVVI2Ru35kklQo1pA75hApIUGq2H0aySD2yy9aYl1wEotK6HK0IpyXlgwDeMVB7iipCP3yoIsii/deFVAH756u/neIag/lkwJjoqIAga0wb9IwSk1ZXyNeNtl9pskYoQwPWLrqq2VZ2YOv1E77PJr/OorNduGQuO22VbszPVuNjhBiFaYLbQKdNZcfPS629d+wGLZA5BXeJjH2u6LPMYIsmCxcY0tVy2ZLkShCi/Isy+ULlyhCwUiJ8tGUZo9H9h1Silemi0YS4iPKeKNNvJYJDtnUxqoliwEkDk5PwPzo8NsN+foTYJd2ws/+XSFWHuHCcAs4irWgUAvz/DABBRMrV0gbFYX3ZRGKN47zOaQnHrMmFdmbr+U/bMHQxy5zU5/mWRYJd8geCjBOTdfao23BN/thUI2bbk4362VibeLa7bl1SUocc2yz5ze9cB4HJwWfViAGuryapFbQAWRQeqLfjkMmH/dRIfo5EMs2j64DnvAfDTg78JqyVNVtOmxpChVof8owpV6h21Vkn3jpKqG0GINjWa//33rYuu8lgqjkwef6EQb7M05wFf1D8b9dpka3xUbHy33EuhULyp9aI6e82Z2d40+knZg28axlyqYf+oQpVae41FsiQfw9sZ1QLzlMkwi6YPrno3gJ/svzfZf4B3bpyUwgCWVHcLqQVWRJQEuxuUllg4GseNi6956IZf/ySw+CsnFIczu+GD0cVfnhXjTqrZFippvEb6QsZYx/RVrOWh21y1r8YYjf99ilCdHGaxqOipzar34yDAtjYC4IGexN3E3HUOgOipAzn/GwBgJooPvqAB+MZasd1ZZlJh0bA6PUZkU66bdRy8TvVXJylnEl71mqvY5193awenWZebfOvcMpefcOgqNkfjZhz1VlxRu0NAlMjnLhQraCigGvfQvgC7YjtejXxakloCkb7/3PXD8u+SMWOmRxanAgBHJo4DWFq9SN9texuAb7cOTbxL/sF5Yi5r8ss6ti6t7p4MTf228DxcHDQUoJEgMVvT7kp8mHhH0qw4IpvEihqmqepMvvRjkSzvWX4TgLv335vvbCbGjCpWPUfIa3ZaXc3JLQRiRQ0I0WYnilBFsii/f+U7Afz84G+jWvZSF2McRxWAM7O9ADor0h8Q+Q5pgZWrabi846Kl1YsmQ1M/TSp94g5z+9UJAOfUppuQwZjLUXRUNhMWyVLpCyJ1BmQyiraUywpj4nFWIiwr4+YqybE7AWjF2tQlzp+zT/F/qyLkA4m4/ebcuKlTAHDfmYTXmqljCTFZlJHeuduSPvKiNhRkm+pIeQ2XOZTRPjAm1TZDmIexLm8mbQ5y2sceG2AATB3LkKPY549n6f89TGUBv71QtJevZSIOGvTRgJeYrZmzPtKgMU2N7ABwIHBVr2shjDGQL4yyTQ9rvX62vtb248u/ZJdtT/U9/6cTfyvvPjXfNIuGBYc788mU48jkCQDLqxfzH3lQYd5ZjwTkk+d+SCDkf479pWiTazVHF2YPJ8LUMg0+blodL2C48dVdb2p2Nvb7Bv9y8u/5HK8FZpkSE+yueBkFr+ltTzX9IrJJdHqYphZaOMpxecdFXZ7OseD4/UcfzL4NvbeyGkDPbC+ABZ70P+3SFSEAgZDPb7hVFqSHTj4ab6WgvhkK7PKfRrYaThRlMjcvdAOBbDMpETcQKEdiEhk+rsnQhx6rSum2LywWZapCTGY+SCsZYjzrWRpy5ghLMIp7fRMhN842NS+c98jz60mXmwwGdSIBQETJvHAlGIue2Jvrf915lP6hh7pk/OZCsfyptjiRz1npwyESfGKZAOCb+zXG2z8IifUdZ1rKjJtd4+y9z2oM+N4GsVxWqOl75tVJda25mvPieHl473R4qtLa7GPL/qh0AXh274lrH9e2PqIOh9hFDeSxN0uLPE1f2PgJAHftu+f4VKnTkpNh+PVkl62+mH/AN2QWTfFbre5mPto7b23CkqruKzovVajy/d13Fbe3XPNGDBmUQoSyPspqfrPWxH8RpI+uuQXAL1+9zxud/76jO8cmxWmzUnJ8z5kWPPlAIOTWcz8A4L6jfxzNZn6dPDPr+NRpAF2pZisApMpaGKVGpaCzou2Wle9gYN/c+T3+QKN5Jw9UCFMxX5OzobtyQeZ/4U9+xT0EZAdjWsALQnL1EAvFeqtmhZY08TgTom6dU6oo1HWnLZvutHEiLE9oNEuO0F78+V/fRKgMngYgN2f51qaBALyX7o7DiWCRZcm5ACLH9mT9L08Ns8/s0gjw8y1iZ7mDohx8iITcmP7XnhUfWSLUW7FrnP3mFBXsLrm+jcWiyWnCPRPsLdvVkIoPLhY+UabJGFn2PNKL/Mh7e8/TAN62+NL7L5ZOOrsABHqOP9xHzSK+ulrYfoXER71f2Hr+9YuuUqh62wvfDcTKY/KERDlu9oqeo5MnGNiiqi7J0OKC1SF6alksmtVxNA0fXv1et9m1d/TgjqKqZnRFWJ0es+Xd+mkyiFsm5T/cmGNz84b1DWt8Mf9P9v9q/v3oQ7WSiHCmFxmUjEQVazFECOCc2uWXtm+NqNHv7f5x5m85x0juagbGn4qWVHWnb8DD85SlEiGAm5fesLl5gy/q//QTXzkxeTIY9v5PswhgW/dbsh5vEGHxdTppoEEfqCZYHZlDPfUVnTwYW87QqJiDCMsVHdUneDhew0ykvkSmLYCt+Akhr2ciZIw3leejCAF8YJHgNuGpYfac4TJjWbIOQOT43kzD8gNT7PonVIXiC6uE8g7fSQYfImHKg8gB2CXcvl4E8Imd2pEZZl64EkD0lF7s88BZevGj6kwUb+0QfrzpNUkNcqjDvZivOglAUAntHNojEHJZ+9YbO4RfvmsZCFkbPf3z83H2Jvkba8XkSQ4fW/P+xVVdw4HR7+z673lbzfLE3OW4hyeOA1hRsyT5Rf5B5DOfy2128VGFd+79xUyk4HuHrlZTiTAQC44Gxs2iKa1OMk+z1kx88twPyoL82JknD4wdmvvItD4TBnZqpgdAlyf9m6nHaYtShBy3rv2Ay+zcPbwvc0qt0VJS0+sd8EZ9tbbqOnt6FQmfBa35Z0ofpy4Q8tXzP7uqdtl4aPIjOz7/iRXCoJW0upq3dV2R9fiiu0dyQXcPcGWPi6LcwVgjDFuR9bdG22KpYVhjtHKWVQz/mtKJ0A/D6yfl/CV48byOiVCdGqVBn+j05LJUToPbhM+sEAH8fy9pCgUAqbpBqmuloUD0TMqdYu8ku+wx1RvD2zqFb7829SYAQKkydAaEyPkROYD3dAk3LxB8Ci56RH3ZvfSFauHuoe3f2PnLax599uYnAwEF7+sWfn/Ra9KKEAcn73lV7PMDu2JabFXt8mpbFYBqj0uqbpTVyLsdZ+syGudlQfq3zV9wmhzPD7z0h2N/Kcs+lVEews3eoMlb6ZfXLE7ZRtMCGGGGefGmzovWN6zxRn1Zxc08exsfQka10amZHgbWWdEukpSvnFzfhvnMWrOixdX07uVvY2C37/phZM4aV05souGQMOAbDiqhGlu1x5J+r+E9M2qB8jQZHov7U+s+AuDOvT8f8KUkPo2Wkrp9owcBnFOXpWIFgiB6asAYd0soERbJ8l8X3/b2JdfJRAqJZIFivv2ir5nE9OQWh1iUw9wc0CczZ8zhikMoazCW5xpFZ3bfXVF3KihVfc5RkkNMFmIys1i06KmBqUvkMor7X0aEfHyEqX3xvEfG8bkVQoeTHJhiX92rS0DrivMAhA8lfIof7qMXPaJORnB1q/CbC8vcPp8MZbSPxaJSVX3Wzp5cuGeLeGULobHdt43+4q4O6W/mmSfPPuid+d5Gy4c+1vmnu8/XXlMWBGN6XrNpHiJ8uu8FAJe0b4m/otvancneuNngqPvieZ8iIHfvv/fgeGEesFmhjvYCkBuyFFIpVD0+dZKALK9OVYQtCwHE+vNKVRKQz234uF22PT/wUqHDj/TBYamOBDwYuKgq/alIdFcJNicN+ooIyr1z2Vu7PJ3DgdEf7btnrv2kjoY+NnkCwJKqrswjec9MshddEbik7YLL2i8Mq5GvPv+dRBcK1bTZKRAiempeHNwNYH3jmqz/natSLW+TgblhEk0fXXPLHxbf+sODse/SlcmWcmngD9xqyenJOIxK3ZxEaARjy6MIDdee7IqQE2Tp6tOwbM2RiSxH+Y8xPzlDEVodIISGA0VYELyeifDsURj1k3nCJuHeraIs4PaD9DsHKQOsq84HED74AhibjeHjO7Vtj2t+Be9aKPzpUtH0mkqr/hMwhiPmD4uID3c+udzynzLx1octNw+orvAFDutSkYQOj9z3gcc+fapMrtBZoYwNsFhErKzN9UXn8McCe0cPiES8oGVj/EXTghUAojmIEMD5zevfuewGjWlff/52PiK8aNDArOabESz2rCN5T02fiajRNnezy5zyCCK3dIOXtub3h1Rnr/nUug8D+MGeu9PEzdx7o0GfYHWk3QGP6vSTnhVDvJCnkCGUHJIgfmnTp02i6eFTf59jKoVRWKSHal+dOIqMuLF+wppGEKJODBU3/jSOz274WIe79exs3zde+C7v8VBnJkA10V09EZ3dP3bIJJrOa1yX/U1VFV+wkwvi7HRlLOe4Ln3deBtlmaxeOMPlQYTlUYRUj8RmV4SCm1v2lKoINd02PVcAtgyWrXp7RuYtSBAEqwOUFiEKX8dEyJsHzB1Z/lznwAX15O7NokDwxT3aRY+of4ou0CoaNO/U9/76asf9yo+PUlnAf20Qf32hWN5x5JmI9RxB4US4e2Tf9/fcBYYPr37vnS3XXzVKf20XH7n+O/992X+0u1v6vAMf2/6Foqezzgtl4CQAU0uWm3UyXhzcrVD1nLrlFebEU5tl4SoA0TOvztGF9i+r3rWuYfVMZPYrz347V7dZPogN8vhtR9bS1gPjhwGsrE1/hBJdlWJlLY0E5x0jHMflHRdd2r41rEb+7YX/zHPDykgfsnkhHZk8DmCZ0deYDH0a81AxjzidFW0fWf0+AN956QdZ+z1YNKz5polskjx6jvDAWPbrA4CYrZKnlqmKmjGyqiBYJcu3tn7ZbXbtHNrzzRe/p1DVUKX1/3PsQcrolpbzHKbs82Q4YZcSns2EMcA5e2M7B+/7ZEqsXP0MyVWyWSE6PUSSadBXekI0c/By+lplykfqzaC56JZbtpZwAWkkyJQYMVsz2zNgNKIUUWf7eiVCGvAqo31ENsnz3ZQzcUu38KdLxWoLnh1h73iG/li+AADd/+RsDJc1kVe2SZ9d8doFRBOI6oq2ACKfiXi/vfMOyuj7Vr79HUtvqFi1CUD4yMugdFXtsp9dccc1XW+OabHvvPSDsvhhZiLWexyAqTXLzToZz/a/CODC1vOTXxQra6XqBhoKxAZzxh4FInxt8+eanA0npk9/e+cdRb8FvZy4JXvydf/YIeRomja3L4XxjJInPrv+Y62uptMzZ7+768689qb3zKQQ4ZB/ZCo847G4k7094+DlYPnMG8mK6xddeWHr+UEl9OVnvxVU0hvFlPEBMCZVN/JZIsOB0UH/sNPkyNpCAGPSSxE5yzQ0Of9fe2ceV0Xd/aL5Ks4AACAASURBVPEzd9/ZLrssoiIgKIKaqCiaey6Z5lKWrZK/skfr8XnSrLRFfcwyTTOtNLPMxyVT1BQ3cEFxYREQZN/3C9z93pk7M78/Bm8Id4ceIOf9hy/v3Lkzh2G4Z875nvM53pvHfyRkCy6XXVtxYU1pzX0AyJMKfs8/w0AYzw2aa+6DLA9Hymgt06rGZ16fvfXUrl7wcBhn52n1vma0cAEAEITpLAWSJDsdFLYOgnaWmut66qoV0IeDLc2sRHZaIqBVEtZs56WDx++tjlBfkAkkyek7CGGxHfj40wGMwvnsr0YyZ/gjeX2fBIB5qmtpTxkSp7EiXP8HThBwRZOhoYrBE3B8bSoZpdh+Z0+zTh7tNeTF8IUAwPbyZ3n0IVRyqtiHw+S8O+L/qE7hX+//tv7aZrQTQZVJ9KWU8w6zsI8a09yuyWAgjFi/mHZv8QZGA4Au12zjJgBIOOKN49aKOMKk8uvfpu9zzM7WtLOphySMMGTV30cAifSM6PguJ8isUoE5BGz+x2NXC9j886VJtswCxExVG1G+ebDHoLZKLkaopz20wsq8EXMggKyO+UeQc0CpvGLtlQ0YjrV9l6pHZT+MUClhthHeQ41z4dsb4xMEDuVpOxLiNmD7pA0eAml2Q96yqsOrwtkf4ZkGAl8Q+nQ/50Bzn2LZ31hplYdqfKZFiP48tTuVle1UNPznSU3pzbaDahchOl2q2ipWYGaAKHRdTazliLDV3XbCrz88vmlH+LDz0u6Is7c6Ql3eXQDgDRzq8BGcOPCPcEbCZNaJ5wI4fQexMU1wmU1DtLsEStqNEzTIqqaMkYy6rEtlV3ks3r9HLjcKIQoiYwFAk5Zk3G1G/8mbx68TsgVJ5dffvfSREu2aYZsAQGhVWHUJwmJz/EyUURi5XpmKEdgQj0Edaw55YcMBQHf/luUTBTj5fRz7HpvB+m/u74dzf3fAVKq9khNgInLNaczTGnSBTn5tVTSNcKmFzALrCrRt6evkvyZmJQNBvsv46WKplbvIZM/MndoMAIj2GmLyI2xPPwZPiDfVO5y54rF4m+I+kPJd02rvrbu22dBmha9Vtv5hY+j5kiQAGPdoNP+IMdSCpUN52o70dwn64altTwdPZ5FINR9BEFgYOmdp5IsWPsJy80I4XFwu6/ys81YIApfVAoJYniwGf3aPdIUjJEnrEeHDd4lOV+iYG/tlhCl2QZgsXNVCGjBz+9h0ojaCsSbOQiVgO6GZTrSW/JiLOF3gMYoISZLqgqcaATuPaNQ0AFBdS+iSo9mCLi8NAHjBtjpygiR33P0BABYPmufZZmILP2o8AGgzr7ZdRYjyGrxz8n/cBdJ79TnLE9+rM6Xi4QD6omwgSWqClYXdLpddB4DxAWM6vsUdEIlwuGj5A6sFkNFeQ/4d8zYDQb5J23eq8JxddhpktbhcxhA5mXzApyS1hpupSGR7BTAlLrhcZvsyIUWs38hlUa8QJLnxxlep1WZDXhLVYzVlCJPFbpMJMBA4NR5vuLeZ+wFBqOpou0ZJt8NT6PH5hPUSrvhaZer7yZ/pDK1C5w9VHfoCQE5jXn5TkYQrjvEdZu441GOQw3najkg44pXD3/iuWLIhBzsWt2VZ1MvmgtFWEITt6Q8kaajpbHqWwtBUS+IGppO046C+drRmZeu6IBjFFU0kqmeKXToOmH3kjO4+AEB0ulekdUi1hejzYRq2M6o9JKonVHKEzWGaq039iyPCVkdrf311r3SEaNkDXNHEdPWwRWXUFviRYxkiZ6yyUF94r0sOaAWS1OXeAQBuqNmvm3ZcLrta0FzsIZDOD3267Xa2lz/HL5jQqLT3Hhn/3dc5YNeUzX2dA0rk5f937l9dUkqqz08HAG5wpIV9lKjqdk0aE2GO9RvV8V2Ew+WFRANJajOvWT3dpMC45dFLSSC/uPXN6aLzttuJFmUBALdvmMnlkJTKWwAQ42PmyiMId2AUAOhz79h+Ror5IbMXhT2DEYa1VzYaFSzb21aeDwRODdIybkyry1Sh6r7OARZq91vVZYustMZbJsg54MsnP3HmOt2svrP8/Hs1qrq2qhQkkN9lHACAWQOmmuulAwCW1IchEOFyWVdqrGhUrObGQAPH2csmlSUqPYt2UVTaOtPU4gQYilZxg65whO0qdc2eUeoDAESne0VwM/K2baGWSDtTjtsqieDsbn4lsrMJ2IcVRqZDW4eP3ysdoTbjCgDwB5uIOWyHIMmrFTfXXdu88MTrM39/6c1BxIYQ1t7kr8sVXbkIbxJ9SQ6hamFJfdgWxxAawUl8772DAPDK4Oe4Hb6hhDFTAUB9vb1otbtAumPSpqGeEY3apuWJ79k1lMckuvu3AYAXYkKP2EhS+XWMMER7DemYF6XgDx0HAJq7NimTPTPwqf+LeoUgyc9v7jiaZ2u8rivIAABKeacd5YqqEnm5mCMyWRJJQaUZtNmWRsiaI37okjnBT6E4uib506Ty6x130JdkQ4cKKSobOd58NhIAuP0dydl2ZIBL0I7Jm3zF3vlNRa+cefvQ3QNanZIpcWU4u32f+XN6XZYz12lh6BxLh0AQqloKLXU8PG0HVl0MJMn2CqQKdqxCqSraKH1g/exUHa8Z7YVHzuvpBwhiqK9sp/HrAK1DPS1Ot4aHnhJv7FTjJjyMCC3nfll2ToE2cZaH2kDmdqBk/AydaEExWMzxtjac2J967YWOkMCpJTHB0LHWdjVLYXPx0j9Wrr2y4XLZtRpVnRJVNRG6HDHjEK/uhYT/e/v86pSqW12l9dURbcZVAOAPNhEzmSSx+HKlstpP4js5aHzHdwXR4xl8kb44By1vX0wh4gg/n7B+atAErUH3wZUNh/NPOPxDYbXlhsZqhlBiuWT0XPElAJjUd5y5HfjhMQyeAC3LszH3uCD06eXRrwPA13e/252+37r9JKl/kAYAVGDXDqrNf3SfESzzS7O80GEIk6UvznFAdxEB5B/Dl84PfRojDOuvbT54/1g7g/UF9wCAG/Rnwapcr0guT2EgyJSgCRaOzAkMRbh8rLas83GYn8R3z9QvxweM0WDaXQ+OvhnJ+WQAsuTUWz9nH2EgjDWjVog5loaawcNqKb09tbWWoW5dy2vPjxhApWfLTc/jtBeq8MeW9BLC4bGkPiRucEDxrv1Jaynva+VRmOXhBwwGIavtpOul0rmWA9DWFdBOqCU8HKti1t0yeAKGUEKieoc7KCw3urTOjm6xO7vb+xwh+uAurmhiefrZ24FnJLHk8htnVxU0F3sK3d+MfvWnGTtPPXvwyJy970vGxDUQAoKRWZ+zOunT+D/evVVjOsHVGUjcoE2/Ag9jI6tghGF/9n8B4KWIhe3EtygQLl84ajoAKC/8t+O7bAZrdcyK+KFLAOCnvMMfXNnYsYDeFlqj8IhRFp7ZyxVV2Q15AjZ/bId60T+tZXP4UXEAoE45Y+Op54XMXB3zDxaDefD+sQ+vbGo7TLUjaEU+rmhmuniwOzTqkUBSGtkTAy1deQZfxB04FAhck3nVRgvbggDyZtQrVOve7vT9H139j1FJnMRQtCQHEIQ74M+imCN5J/U4OtJnmJfQUvUgwmTxgiOBJHU5nY3sAUDEEa4b86/Px68LRZy0TMhhKMvkFVKB22fj1picQNQOaqh158NTIxaKm0zC9u2HMFlYbVknxbpaz15VDAA21m9TwShV8dQZbBSvR9gclps3EHhn+iYJtYJQtSBcvrmMIgXbi0r8Ou7jqWFhlsNcKj2LyxwdYdZYCwBMV9M5XqaLBzAYeEujvc8Nvc8Raq+fBgBhjGlhXKsczz+9IeUrjMBmD5j204xv5ofMDnDyE3NEHgLppClvv9Hs9HWGfql0jJTv+qCpcNWlde9e+pAajtNV6HJScWUz2yvAxuffM0Xna1R1gU5+EwLMRsCicXMQDleblWKuhOG5sLkbxn0gYguvVtx87cyKXJmdhfgkSSUz+Raj8ISCsySQTwaMbTdVvL21o2cAgCY10faqvylBEzaPXyfmiK5U3Hjj3D+pAbYmsRBt363JrFRWewrdzRVnGhFETwAATaodC5PtWBT2zGfj3heyBcnlKS+dXp5SdQsA9AUZJIZy/AYYRTHKFVWHc39HAHkhfIHVY/LCYwCg3WJwZxjhE/VRIbI9E9s8+I1vpmw+NPu7Ub4jbPkgJzCkdZZnlywTkiRanA0Pe1dsAWFz2P4DgSDsanQxCaFVGeorETaHZcNAFXjYk4OW5XXqrCT5sIvGehjaKqfQiTwwlftlewVYHp1Ghaed6RA1NFD5XotxJzVNpc4Rv07o1ISqBeHwzLVnIEwWy9kdCAJvsnWQNUUvc4QR7mKsMBPh8oVPTHbg42eLL227vQcAlke//s6IZTzWI0ViCIfnNPt1Hk6OT7p1IG7jsqiXxRzRnZqM186s+Dx1R5O2a4ahqJJ/BwAqhrOKHkd/yj4MAK8Mfp5h/iZmSlxEsbOAJOXHvzWXfI/xHfbVuE8HuvavVtW+ee7fP2b9arBZJUtfeM/QUMV0lvIGmK2UUWMaqqTl6WArzyhs3yBucCSh06iunLTRAACI9hry7dQtfZ0DyuQV8WffPZqXYKLdniBa0+aRsR2PQDX5zRowzUpRIgB/8GiGQISWP+hMbeQo3xHfT/8q3D2kQdO4OunTf1766G7GaQDgDWqVnavXNL6f/KkeR6cGTQiTWteF4EfEIEyWLj+jqwbUYbXleFO9O8fpifBpg6QhbIatc5wRFrs1PLXWCWOTGXXluLKZ6eRmtY2vLa2LpvkZnTw7WpoHJMnxG2BuFlL78/a1W3KhIwZZDaFRMZ3crE63hq4o0211utb0gVlu3giXj7c0OjwpqVUsokMypi1sD8fjzj8rjCx8GbYmeO2LOHuZIxzl6wwAothZHccTW+VOTcbnqV+TQC4f9vq8kJkm9xFExfEjYgitSv3LlwuCZx6cvXt+yGwGgpwqTHzuZPyPWb9qLar4W0VflKUvymIIRDY68qN5Jxs1soGu/cf6m002UognLWSKXfTFOepUs80GXgKPnVM2LwydQwKx796v8Wffud9oU2ioSj4OAMKRUy3kRU8U/KHGNJGeEf07DFPtiGTy8wCgunTUrj+5PmKfb6dsmdF/sh5Hv7773VuJ/y58tBpWl3cHb2lkuftyAtu3/N+tzbxbmylkC8wN2WkLwuYIn5gCAKrL1hvkLeAj8vp60qa3h70u4ghv16SvIdNXRbC/41UfvH/si1vfvHTqrXJFVX+XIEqw1CoMgZgXNhwIXHO7ayT0dFkpAMAPG251xnJHeBGjAECT3gWtt60V1KbWdC0Z0CrOYHqYqO3oCzMBgBNkatKFKdh+AxAOF6st68zovladZNsWd1pLk0pyHT9dpW3j6hCE4xsEtk0i6wihVuAtjdQyqoXdqMibcpn2glEz4CyWNbEdUj7qZY4QABCBWDzhWXs/VSav+PDqJgOBLx40b+7AGRb2dFmwgunsri/Kajn2jYQjfjP61f0zdsb6xWgNun33fl10YumxB6faaXPYCknKT3wHAKJxz1huHqKQaZt/yTkKAPFDl5gUHGkLgyd0mhMPAC3Hd1tY7qZml2+d+Jmv2LuwueTNxFWbb35tOdjFKgu1OakIhysaY/a6qVD1r/d/A4AXBtn0q+H2j+CFDSd0avnJH2zZ3wiPxV31xFsb49ZKBW45jXmv//HOf25uNzZKKi//BlS0/eg3uxrTbEndCQAvhM83p2DZDtG4pxEmS5NxBetcWQQDYcwdOPPX2Xued31CgpHVPORk5ZXd6ftPFpxVY5pYv5FbJ35iOZPcFmpFQH39lAW9Vtuhome+qejZKvyIUQiboy/M7Lwo10N/bFNW1ginbyhDIMJqyzspOtoqzWGxKagtCIvNDQoHkqQ+6BhUm5aNqWBOwECEyUKrihwWEHjod60vwT50uo7UA7dWPPXpZ/m5qlUvsLLQgcLR1ojT4gw4x8aW9TJHiBKkaNZrDIF94aBCr1yd/Kka08T5j34t8gXLOzNETm4vv4+wOeqUM/KEHwCgj9jn07Grv560cZA0pFnXsv3OnkUn4397cNpeVWhV8nG0PJ/pLBWPf8aW/Xem/aDGNKP7jLC6pkUhiIoTRMWReq3sh/WE1pKgTKRH+N7p2xcPmsdEmKeLzi86Gf9d5gGF3pRkO0m2/LYLSFI0ZibD1LBNih/u/azQK4d6RgzztvULxXnOGwibo76V6ED1xyjfET/N2Dk/9GkmwjhTdOG5k/GfpWzNTD+tL8hg8EVUP4kRSmOzWlU70LX/syGzbTwF09ldGDMNCEL++257zeuIhC2anV21MxP73PeZN6NeeS5s7rKol3+Y/tWnY9dIOHYM4eKFDmd59DHIajV3OhsUoiX3sZpSptjF3lCMgiEQ8SNGAUGor5/ujBmGpjp9yX2Ew+XZ3FNLgTBZfCoqvXvJ8bPLarDqEoTLtz0iBABe2AgA0GalOHjWh07URj0NhMNj+gUDgTuWB8ab6w2NNQye0ORIsnY8rAd2ZOX14Vw8K+LJTGcp08mNUCscKE+lfK3lAa7Uu1iHEnrL9DJHuO9eJTfSpmJLIxhh+ODqpiplzUDX/tTEO6sf4QSEuL20BmGylBePNP+6ldIcGuwx6Jspmz8b935/l74NmsZtd3Yv+P3V/VmHmnU21QHri7LkCXsBwOXZtxCO9QjgasXNi6VXeCze28OW2nJ8CpcF/2B7B2K15Y27P7D8/MhjcV+PfPHHGTvG+sXoDLqfs4/M//3VnXd/qFY90kWkTPpNX5zDlLiIJy8yd6hb1Wm/559hMZh2mcpy95VMXwIk2fTL5w481AvZgjejXvlp5jdU10FiyeW37+9eFcE+OqLfTdn9alWtElVVKKpOFPzxyum30+uypHzX9bH/ttA10RHJtBcYQoku766FbLONaNKTsapitpN0+Jjn54c+HT90ycLQObbkkNuDIJLJzwGA/MxPJNqpLL3y0lEAEIycYuPaWEdEsbMAQHU9oTNSZ+obfwBJ8iNG25IjaYdg+EQAUN8853BrgebOZSBJfniMXZLF/CFjAEF0929Zftw0B1r2AJfLmM7uVktGjbCCh4Kjrrc18zxgiC09mtRuaHGOA3cXJRvJ7Wf9kaLV3dqpXkIaMKyywNjGag62bxDC5mB15Xb9dnqZI7QXEsj/3NieUZcl5btuGPd+u+oYC/AGjXR75QOEw1Wnnqv/aiVV6wwAY/o88f30rz4b936I24BmnXzvvYPPHn/14+tb0uuyLIxK0BfnyL5bR+IG8fi5xloJC9So6janfg0ASyNfsFxV3w6Ey5fGf8py9URLcxu2vWtVJKKP2OeTsat3TdkS4ztMZ9Afzjvx/Mn4f11ef6nsqh5HtVk35Al7AUFcFqxg8ExnFO835q+7tpkgyVcGPx/kbGmRvCPiuGf4g0cTGlXDrjWO6Tf6iLzWxKz4ZdbuZ5iBThhU85BjmtzVSZ8sOrF0xpHnFics+/LWrlp1fbBrv68nb/IWWRJ17AhDKHF+5g0AaDn2jcOC1wBAqBXy3/cAgGTaC45pxLdFED2e4xeMtzTYm1Vui744W5t9A+FwRWNtDZE7wukbxh0whNColOcOOnYEQquihCAsZN0twO0XwfYOxOUyzS1H6ntJ3KC+8QcA2Ft5x3Ry4wUPJTHUsfNqbl8Aqp7L5qVZ9qAYQBDtvRQH2kUoFSde+BO27MwQiDkBoaQB0+XYVwZFqBX60jyEyeL0MyFk0Q4qFNbl2SfehBZnkxjK9gmynBFEmCxOwEAgSbscLXPdunV2WdO9fPbZZ++99x6LZdMzLAnkV7d3nyk6L2Dzv3jyEz+JFRGHdrA8+vBDh+vz0w215ZqbZwllE9sniMETIID4S/rM7D9lqGe4GtOUKSqLW0rPFl86W3ypSdss5oikgjalvQShSj7e/MsWEtUJouJc5r9t9e5v1rW8c/HDek3j6D4j3op+zZYQti0MnoA/eLT+wV2stkydmsjgCzl9+gPCAAAURblcE48C7gK3iYHjxviNxHCsTFFZrqhMLk85knP8/oMkHYPwGD3bc/TTHT+F4dix/FMbUrZqDbonA2LfGma3qYAg/EFP6AuzDDWlmrQkTp/+VlWPTUJcOt4v6fL0Juboycs8pIFsJhsAEECkfNdIz/CXBi9aHv1auxm8NsL26YsrmtDSPO2966ygcJ7UypiejpAGTPbDx1hNCbd/hPOcNxwoS2kPgnACgjW3zqOluUwXj3bi3bZA6DSyPR8SaoVk0iL+IJu+H83B9g5Up55Dyx7wgiMtT1Ewee/JT36vL8riBkdKzOcbLIEgTKFEm3kVq8gXjpxqWQK3I+obZ7RpSWzvQKdZr9r7e2EIRJq0JKymVDR6hl0hNaFWNB38AgjcZdFKpsi0+lJHMCYbynMNDVVMiatd/dMGWU3L8d0Im+OyYAXCtikMIFGdLvcOiWoFwywpPLRDc/uCLucmLyRaOHKK1Z2ZYhdV8nG8qU40drbtj4aqpONo+QPhyClWF3RxuUxfkMng8vjhMSRJkiTJZFpJBf1tHSFGGDbf/PpUYSKHydk47oNwd0e675kSV+ETU0idBq3IR8seqK+exKoKEYTBdJYiLI6XyHNCQOz0fhOFbEGtur5OXZ/VkJtQeO500flyRSWqV/Py7qkPbtXcuQQEIRo3x2X+21azE0Utpf+89FGlsrq/S9DGuLUWJB8twOALBcOexGW1WGWh7v5tTVoywmKz3H0xgjTpCClc+S5j/EY+HTzNDUVaGsvqQV/FR9KcGQm6ghMFf9yuTc9tzH/QVHRf9iC1Ou1EwR9bb397rTIVJ/FZA6b+a+Ryqz0JJkGYLMHQsVh1MVZVrLlzCW+q4/j2Z/BtqmcBAEIlb/r1S/W1BGAw3J5fFTBkYrTXkClBE+aFzHpu0Nx5ITMnBMQGOQcgnXA/vJBorKoYqypCM68whRKO3wDbvzQJtUK29xN9QQbTyU36xmcMnsBhM9rClLgyJa667Ju6+6kMoRPH346RnKReK/vhY6yigO3bz/X5fyL25IpNWOLkRmIoWpSlu3+bHz7SxNDwh3R0hNrMa/KT3yNMlturH5rTaLYK28tfX5CJ1ZYbGqoEkWNt/9XgzfVNP35GYqjL/LdtURltB8vdV3f/tqG+EnADz55FVvmJ79DS+7xBT4jHmni4NAeKojxnN216MlZdIho13XbnIT/5PVZZKBw2QRAVZ+NHWO6+qqsnDfWV/IhR5rSt20OSzQe/IFRyyfQXbcn3MngCfVGWoaGa6Sy1Oty09QwY2vzrlySmd5m7zFwT4Z/HFzmpryXgTXWi2NnAYD6+jrBCUbUm+dMbVXd4LN6Gce9He9tUbGIShMXmhY3gD4kltWpDbRlWW6bNuKq8dFR7LwUrzzfUV/CUysE8nzmeI6Kd+nGBIUOVjfqW/KaipMqbv7Wkp3CU5S5CbOw07rA4IUfIYZq9g8vkFfuzD21J3SnXKwa69t/y5Dq7yig6ms2PjGX7BmGVhYaGKl1Oqir5uKHsAalqAQOKsNgMLr/ttwahakHL87V3L+vOHPC5lhRXoxuv4geFj+O5eMn1yha9vFpVmycrSK/Lulubea8+p1RegeJoqFvwv0a+9WzIbMe8oNFUQdR4hMVGi3PQigL1tQSsqhBIkil2MbuYSpJoZYHy0tGmg1uwyiKEy3dbskYwpFPas2bNYzD4kWMIZTNW9kB3/5Y25yaDJ2RJfRCLf1okhmpun2/68TOsuoQpcZEu22BXk5xVOH36Iyy2/kG67v4trKqY49ffghMyglbky/Z8hJY/YEpcpcs22B6RWIDXfwhalodVF2vSkqgBmaZP/agjVN8633zwCyAI59mv8SOstAZZAkG4/SI0ty9iVUV4SwMvbDhiw0oYoWpp3L0Wb6rnh4+UTLNSPWfuvOw+QerU82jJfZa7r43q/9p7KfKE7xEmy+3ltUzzpWcdQVFU2CdI9yDNUFeOyxv5gy3J0hrRF2a1HP8WYbJcl6y25fagQNhcQq1ES3MNtWXC4RNtebZQp55T3zzHdPFwmb/clusPAAyeQJt+BasuEcVMs8Wvq6+e0GalcPwHSqY8Z3VnpshJl3fH0FDNFLuw/Qfa4ggR8i+YY24vCoViw4YNaWlpYWFha9eulUrNTo/k8/nNzc08ntlik3JF1fH80wkF5zAC8xR6fDp2tblB2w6AK5q1aZe12TfRkvvm1udJBEr5yD0nRo4To0DEQJFHLq8Lz9lb5OHGd3XiSgQsPgNhqDB1k7a5qKW0Tt0AAAwEeTp4+htDX+4oru0gBKHJvKpO+UNfmPlIvTKCGAMvUq9r++MweALhyKniifONZaI1qroSeXmNqrZFpzAQBh6L6y3yHCQN8RU7ksk0h6GxWnHuoDYtyWgMy82b5dGHKXFlCMWAMIDAcZUcb67DKotbCzQQhBf2hPMz8Y7lVO2i6Wai/uwBStge4fK5/YdwAgeyPfowJW4IT4Cw2IROTShbDPWV+rI8fV4atVbPDQp3ffHflqWtHEZz93LLka8JnQYQhBcSzY8YxQkKZ3v4thtyaZDVosXZmvRkXe4dIEmWp7/09fUsaZddMRLVy/Zv1OXcBABeSLRwzEzewKh2iUqlUikWi4Eg9IX3lJePUf1/4gnznGa91nkD9AWZjd99SKJ6tm+Q08xXeQOjzH59k6T23rWW47vxlkaWp7/Hii8d6Eg2oko+3nJ8NzAYkkkLxRMXWsrNkqQq5bT8t29J3OA0+3Xx+Ll2nYi6elhtef3Wf5B6rXDUdOdnlln2H2hpbuN3HxFqhWTqYsnUxXadjtAo6zbF44om4ajpLvPespzHQkvzGnatJvVa1yWrBbbJRgIAkGT91n+g5fmC6PGui/9l2d1itWX1W1eQeq106cc829pstFk3ZD+sZwjE7u98DU5ubLYVX9sjHOEzzzxDBxkUDQAAErhJREFUkuSKFSv27dtXVFR09apZjUe3YPefT/8q4UuMZS8kScpRpUzbVCavyG7ILZVXAAADQaYFTfy/qFdsbBqzFxLVY1WFaHUJ3liDK5oItYIkCABgcHkMkTPLzYvtE8TpG4pzeflNhbmNBfnNRcXNpeWKSgsdF05cSazfyGdDZgc6WVfBdwBC1dKSmcKoKcaqSwyN1bjikd5BhkDM8vDl9BnADY7khQyzOpjtrwNXNGvTk7U5qWhproXSNZabF2/QE8InJrNtk4jsPEqlUsTjau5cVN/4o6O+eUc4/gPF4+fy7amJcABcLlOc+0Vz67xxnirCZDHEzgy+CJgsUqPElc3GWZUIhyeKnSWZ8nzX/35JUpV8XHH2F+oBBWFz2L5BLPc+TLEztT6tlzchChlWnk/tQLW9OqYPZRK0Ir9p/0aqOozp7M4bGMXu04/l6kEtjJEGDG9uQCsKKMkFAOD0DXN75QNqjmtnUF74r/z0j1QCgx8VxwuOZHkFMJ3cEBYbSBJXtRgaqvRFWZo7l6jhTeInn3Wa+ardZ6EeIwB0ubdlez8hMZTl5i0aO5sX/kS7R0ASN6BleZpb59W3LgCB8yNGub281saZHm3RF2c37lpDYignMFQydTEveGjHgxCqFtX108oL/yUxVDhyisvClXadAqsta/hqJaHT8AY94Twn3nTKhCS19641H9lBqOSCYRNcF//L9uPLvl+nzb7Jknq7vPk518VscEXR/Y6wpKQkJCSkpqbG1dUVRVEPD48LFy4MG2a6qSjomVC/uZYkOoVswfiAMfNCZvV1sjvv/1dDAinTNNWo61t0LS16hRbTAoLwWTwXnrOf2MdP0seCiFqXYPxzAgAgCELXqr6NsDn2Fhr8LyAIQ0OVobEKVzQTGiUAAIPJEIhZLu4sr0BbVy+6jrZXD5fL9IWZWFWxoaEKVzaTOg1JkgwOjyFyZrl6sv36cwcM+R8EqUYItUKblaJ7kIaV53ecccOUuLD9gnmhwwRDx9meInPEDK1KfeOsNj3ZQrs0y6OPIHq8aMzMLreExFDV1ZOqayfxJkvDB1hSH/GEeZZlkuxCX5wt/32P1WcjlpuX06zX+A4l8Nvee2hFfvPBL4117Ay+iOkspaJDQqfBm+paEyoMpjhujtOMl8HRZWB9UVbTT5soOVkGT8ju04/p4kF9URBqhaG+Eqsto37LotEznOcuc+BE+sIs2d6PCY0SEITjF8zxD2a6eDD4QiBJXCU3NFbrCzKpHAwvbITby2vt+poidJrGb95Dy/PdVm7jWxMT6H5H+Ntvv61bt+7evdZS10mTJs2dO/eNN94wubP3cL/4L5brCX3b0ErMEbnxXfuIfYJd+4W4DbCrV+yx4hFHSGMnveXqkbiBUDYTGhUgCMLhWlpq/csgtCqsqtjQVEeo5EASAKAHhsgngO0TZIu6ZqcgSbSyEC25T42soqJhhMliOrmxvfw5/SI4ffr/FTE6Wpanzb6JluYZGioJZQvljRhCCcvVi+MfzAsbxgsd7rBPan/vkaQ2K0VzN0lflEWoHu1jRhC2px8vbIRw1FOdz34TOo36WoL69gWTs4gRNoc3MEo04VmuzWrpHcHlMsXZnzV3L5Go3uQOLDcv8ZPzhTHTHPitkRgqP/szb/gknpeVNFv3O8Jdu3YdOnQoOTmZerlw4cKQkBBzJTwsFis8PNxYBDh16tQ1a9b8b+z8G6BSqUQix1dEHnPoq9cZ6KvXGSxcPVKjJBRNQOAAgLC5iLP7X5HdIZTNRH0F+TDNjvBFDBcPhodfl50L0xvKHxB15YSiiVoQYQgkiJMb07c/0zuwMw8uBEGw2WyBwErBtoOiEl2ISCTS6f5cCtJoNBaeu1ks1q5duzic1qvv6enZKx7Sew705eoM9NXrDPTV6wxmr55YDJ5dWZBs9iw+f+likxhcpQA2VcPaBUEQOG59zE73O0I/P7+ysjKCIBgMBgCUlJS88ILZgmYEQYYOHWqhapSGhoaGhsYuul9ibcyYMWw2OyEhAQBu3LhRXl4+bZrZQTm2+HYac5w9e7a7Teit4DiemJjY3Vb0VvR6/eXLl7vbit6KUqm0UEhPYxmZTHbz5k2ru3W/I6Syna+99lpMTMyMGTN27NhhYS0Bw7C2eVQa29FoNEuWLOluK3ortbW1b7/9dndb0VvJz8+n1/IdJj09fcOGDd1tRW/l+vXrW7Zssbpb96dGAWDGjBklJSWFhYVBQUESyV9Y3k1DQ0ND8/hgYzVoj3CEACASiSIjbR1lR0NDQ0ND01V0f2qUhoaGhoamG+kpEaHtzJkzx8YxTDRtIQgCRdFJkyZ1tyG9Er1eL5PJ6KvnGGq1uqysjL56jtHS0lJYWEhfPcdoaGiwZbde5lH+85//REXZMfSEpi0LFy7s29cmmXyadpAkWVpaSl89xyAIoqKiIiDAvrnNNBQGg6GmpsbP7y+RIP7bo9frrXbTQ09QlqGhoaGhoelG6DVCGhoaGprHGtoR0tDQ0NA81tCOkIaGhobmsYZ2hDQ0NDQ0jzVMcwOPeiBpaWlnz55FUbRPnz7dbUsvoKmp6cKFC7du3WIymR4eHsbtKIr+8ccfqamp7u7u9EAAqyQlJWm1Wnd3d+oljuPnz5+/fv26s7Ozs7Nz99rWk1EqlWfOnLl9+zZBEN7erYPx1Gp1QkJCZmamr68vn8/vXgt7LARBJCUlXb16VS6X+/v7G6fOKRSKEydOZGdn+/n50YMH2kKSZEFBQXp6uqenp3E2EQDIZLLff/89Pz8/ICCg7fbU1NTz588DgPHOBLKXsGXLFl9f3/j4+MDAwA8//LC7zenp5OTkiMXi6dOnL1myRCqVvvfee9R2FEVHjx49evTol19+2dXVNTU1tXvt7OEcOHCAxWItXbqUekkQxPTp06Ojo1977TU3N7fExMTuNa/HkpGR4e3tPWnSpJdeemnQoEHUxubm5oEDB06dOnXRokWenp5FRUXda2TPBMOwCRMmDBs2bOXKlUOGDJkxYwaO4yRJ1tbWBgYGzp49e+7cuX5+flVVVd1taU+hqanJyclJKpUCQG5urnF7YWGhh4fHwoULp06dGhIS0tzcTG1fu3ZtYGBgfHy8r6/vl19+SW3sHY5QoVCIxeK0tDSSJAsLC/l8fkNDQ3cb1aNpaWkxXqLMzEwAoF4eOnQoPDwcRVGSJDdu3Dht2rTutLJnU19fHxER8eKLLxod4YULF/z8/NRqNUmSe/bsGTFiRLca2EPBcTw0NHTbtm3ttm/evHnixIkEQZAkuWzZsvj4+O6wrqdz8+ZNkUik0WhIkpTL5Ww2OycnhyTJtWvXzp07l9rn+eefX7VqVXda2ZPAMKy0tJQkyXaOcOnSpcuWLSNJkiCISZMmbdmyhSTJuro6Ho9XWFhIkmRaWppEIlEqlSRJ9o41witXrnh4eAwdOhQA+vXrFxoaSs/EsYzxEQkAvLy8AABFUQA4derUrFmz2Gw2AMybNy8xMRHDsG60syezbNmyDz/80NXV1bjl1KlT06dPp/pz582bd+vWrbq6uu4zsIeSmZlZVVX10ksvXblyJSMjg3zYqXzq1Kl58+ZRib558+adOnWqW83sobi6upIkqdfrAUCr1TKZTCoDT109ap+5c+fSV88Ii8UyqdWQkJAwd+5cAEAQxHjFzp8/P2jQoH79+gHA0KFDpVJpcnIy9JZimaqqqrbrgr6+vlVVVd1oT+/ik08+mTZtmo+PDwBUVVX5+vpS2319fXEcr6mp6VbreihHjhzR6XTGrx6KtlfPxcWFz+fT92FHioqKJBLJ+PHjd+7cuWjRolmzZlFjRNvde7W1tfR40Y4MGDBg+/bto0aNWrBgQVxc3L59+0z+5dI3nmUMBkN9fb3RaxivmDlX0jsk1nAcN64YAwCLxTIYDN1oTy9i165dp0+fvnbtGvUSx3EGo/Xph8lkAgB9JTsik8nef//9S5cutdve9uoBfR+aQavVVlZWHjhwIC4uTqfThYaGHj16dMGCBe3uPZIkcRynbkIaI3K5fPv27ZMmTYqNjXV2dt66deusWbMEAkHb70Amk0nfeJYhCIIgiI5XzJwr6R0Robe3d319vfFlXV0d9ZREY5l9+/Zt2rTpwoULxsvV9kpSab0/66ZoHrJ//34mk/nJJ5/Ex8dfvHjx6tWr69evh0evnkajUSqV9H3YER8fHwaDERsbCwA8Hm/kyJFZWVnQ4d6TSqVtC/loKH799Vcej7dt27Z58+bt3r1brVYfP34cALy9vY360fQXoFU4HI6bm1vHK2bOlfQORzhq1KiioqLy8nIAkMlkaWlp48aN626jejqHDx9eu3bt2bNng4KCjBvj4uKMy6uJiYkjR46kq9g7Mn369I8//njixIkTJ0708/Pz9fUdOXIkAMTFxZ0/f54gCABITEwMDg42ZqtojAwfPlwoFBYXF1MvCwoKKMHo8ePHnzt3jtqYmJgYFxfXXRb2ZJhMJrWcDwBUJQgVNMfFxdFXzy5M3m9jx45NS0uTyWQAUF5eXlxcPGrUKOhFotvLly+/fv36kiVLDh06FBwcvH///u62qEdz7969qKiosWPHDhgwgNqyatWq/v37q1SqwYMHjx07NiwsbPPmzfv27Zs5c2b3mtrDWblypUaj2b17NwBgGBYdHT1w4MCYmJgtW7Zs2rTpxRdf7G4DeyLr16//7bffli5deuvWrZSUlPT0dJFIVFlZOXTo0MWLF7u4uHzxxRcXL14cNmxYd1va46ivrx8yZMjEiRPHjBlz8eLF27dvZ2RkODk5FRQUjBgxIj4+nsVi7dixIyUlJSwsrLuN7SmsWrVKoVDs2bNn/vz5VD5ZIBDcvn174sSJ77zzjlwuP3DgQEZGBvXY+sILLxQWFi5cuHD//v2xsbHbtm2DXuQICYI4fPhwRkZGWFjY888/Ty8tWKa6urpdXdmsWbOo8tHGxsYff/xRLpc/9dRTVKBDY4EbN24YDAYq0QcAcrn8xx9/rK+vnzhx4vjx47vXtp5MQkLCjRs3/Pz8Fi9ebNRtKC8v//nnn1EUnTdvXnh4ePda2GNpamo6dOgQNbhq0aJFTk5O1PaioqKDBw+SJLlw4cLg4ODuNbJHceDAAa1Wa3y5ZMkSLpcLANnZ2UePHuVwOIsXL/b396feNRgMv/zyS25ubmRk5IIFC6glw17jCGloaGhoaP4KescaIQ0NDQ0NzV8E7QhpaGhoaB5raEdIQ0NDQ/NYQztCGhoaGprHGtoR0tDQ0NA81tCOkIaGhobmsYZ2hDQ0vYPDhw/fuXOnu62gofkbQjtCGpoeR0lJyZ49e+RyeduNy5cvP3jwYHeZREPzN4Z2hDQ0PY709PT4+Ph2ww5Xr149ffr07jKJhuZvTO8Yw0RDQ7NixQqT22UymUAgaCue3tDQ4Obm1nZilBGlUqlWqz08PEy+S0PzeEL/MdDQ9Cx++umnJUuWAMDw4cNdXV1dXV0fPHgAAIMHD163bh21z7fffuvq6pqamhoZGSmVSsVi8bJly3AcP3LkiK+vr4eHh4uLy969e9seNjk5efjw4RKJxNvb29vbe+fOnf/zn4yGpodCR4Q0ND2LJ5988t13312/fv22bduoadrUv3V1dQqFgtpHp9M1Nze/+OKL7777blRUVEJCwscff6zX61NTU3fu3Ont7b158+b4+Phx48b169cPAFJSUiZPnjxlypTk5GRnZ+cjR44sX75cIBC8/PLL3fiT0tD0FEgaGpoexrFjxwDgwYMHbTd6eHisXLmS+v/WrVsBYO/evcZ3Q0NDGQxGbm4u9bKhoQFBkK+++op6GRsbO2TIEAzDjPsvXLgwNDT0r/0xaGh6CXRESEPTW5kyZYrx/wMGDNDpdCEhIdRLqVTq5uZWUVEBACqVKiUl5dlnn01KSjLu7+HhkZ+fr9frqYE1NDSPM7QjpKHprbi4uBj/z+Vy274EAA6HQ806b2xsxHH85MmTxoHdFBKJpLGxkZpWSkPzOEM7QhqavzkSiQQA/vnPf65fv767baGh6YnQVaM0ND0OkUgEAG2HbncGV1fXiIiI48ePYxjWJQekofmbQTtCGpoeR0hICJPJ3LFjx/Xr1+/evavT6Tp5wI0bN2ZnZ8+fP//evXtarba8vPzIkSPvv/9+l1hLQ9PboR0hDU2Pw9/ff/v27RcvXoyLixs2bFhxcXEnD/jUU08dO3YsIyNjyJAhAoEgICBg6dKlJEl2ibU0NL0dhP5joKHpFRAEgSAIgiAOH4EkyYKCgpaWFjc3N39/fzab3YXm0dD0XmhHSENDQ0PzWEOnRmloaGhoHmtoR0hDQ0ND81hDO0IaGhoamsca2hHS0NDQ0DzW0I6QhoaGhuaxhnaENDQ0NDSPNf8Prb/TWMli63cAAAAASUVORK5CYII=", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 10 + } + ], + "cell_type": "code", + "source": [ + "# Compose\n", + "ocean_system = oapply(ocean_pattern, [fish, FISH, sharks])\n", + "\n", + "# Solve and plot\n", + "u0 = [100.0, 10, 2.0]\n", + "tspan = (0.0, 100.0)\n", + "\n", + "prob = ODEProblem(ocean_system, u0, tspan, params)\n", + "sol = solve(prob, Tsit5())\n", + "\n", + "plot(sol, ocean_system,\n", + " lw=2, title = \"Ocean Ecosystem\",\n", + " xlabel = \"time\", ylabel = \"population size\"\n", + ")" + ], + "metadata": {}, + "execution_count": 10 + }, + { + "cell_type": "markdown", + "source": [ + "## Total ecosystem\n", + "### Another layer of composition" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "We will introduce a final predation interaction -- hawks eat little fish -- which will combine the land and ocean ecosystems.\n", + "The composition will be as resource shareres so the first thing we will do is use the dynamics of the machine `ocean_system` to define the dynamics of a resource sharer. We will also define a resource sharer that models hawk/little fish predation." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Catlab.Graphics.Graphviz.Graph(\"G\", false, \"neato\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Node(\"n1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box1\", :label => \"turf\")), Catlab.Graphics.Graphviz.Node(\"n2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box2\", :label => \"air\")), Catlab.Graphics.Graphviz.Node(\"n3\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"box3\", :label => \"surf\")), Catlab.Graphics.Graphviz.Node(\"n4\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer1\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n5\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer2\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n6\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer3\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n7\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer4\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n8\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer5\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n9\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:height => \"0\", :id => \"outer6\", :label => \"\", :margin => \"0\", :shape => \"none\", :style => \"invis\", :width => \"0\")), Catlab.Graphics.Graphviz.Node(\"n10\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"junction\", :fillcolor => \"black\", :height => \"0.075\", :id => \"junction1\", :label => \"\", :shape => \"circle\", :style => \"filled\", :width => \"0.075\", :xlabel => \"rabbits\")) … Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n1\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n12\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n12\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n6\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n12\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n13\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n13\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n7\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n13\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n14\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n8\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n14\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n15\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}()), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n9\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n15\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}())], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :shape => \"ellipse\", :margin => \"0.05,0.025\", :width => \"0.5\", :height => \"0.5\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :len => \".75\"))", + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "G\n", + "\n", + "\n", + "\n", + "n1\n", + "\n", + "turf\n", + "\n", + "\n", + "\n", + "\n", + "n10\n", + "\n", + "rabbits\n", + "\n", + "\n", + "\n", + "n1--n10\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n11\n", + "\n", + "foxes\n", + "\n", + "\n", + "\n", + "n1--n11\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n12\n", + "\n", + "hawks\n", + "\n", + "\n", + "\n", + "n1--n12\n", + "\n", + "\n", + "\n", + "\n", + "n2\n", + "\n", + "air\n", + "\n", + "\n", + "\n", + "n2--n12\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n13\n", + "\n", + "littlefish\n", + "\n", + "\n", + "\n", + "n2--n13\n", + "\n", + "\n", + "\n", + "\n", + "n3\n", + "\n", + "surf\n", + "\n", + "\n", + "\n", + "n3--n13\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n14\n", + "\n", + "BigFish\n", + "\n", + "\n", + "\n", + "n3--n14\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n15\n", + "\n", + "sharks\n", + "\n", + "\n", + "\n", + "n3--n15\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n4--n10\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n5--n11\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n6--n12\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n7--n13\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n8--n14\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n9--n15\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 11 + } + ], + "cell_type": "code", + "source": [ + "# Define the additional primitive systems\n", + "ocean_system_rs = ContinuousResourceSharer{Float64}(3, (u,p,t) -> eval_dynamics(ocean_system, u, [], p))\n", + "\n", + "dothf(u,p,t) = [p.γfishh*u[1]*u[2], -p.βfishh*u[1]*u[2]]\n", + "fishhawk_predation = ContinuousResourceSharer{Float64}(2, dothf)\n", + "\n", + "# Define the composition pattern\n", + "eco_pattern = @relation (rabbits, foxes, hawks, littlefish, BigFish, sharks) begin\n", + " turf(rabbits,foxes,hawks)\n", + " air(hawks, littlefish)\n", + " surf(littlefish, BigFish, sharks)\n", + "end\n", + "\n", + "# Visualize the composition pattern\n", + "to_graphviz(eco_pattern, box_labels = :name, junction_labels = :variable, edge_attrs=Dict(:len => \".75\"))" + ], + "metadata": {}, + "execution_count": 11 + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "" + }, + "metadata": {}, + "execution_count": 12 + } + ], + "cell_type": "code", + "source": [ + "# Compose\n", + "\n", + "ecosystem = oapply(eco_pattern, Dict(\n", + " :turf => land_system,\n", + " :air => fishhawk_predation,\n", + " :surf => ocean_system_rs)\n", + ")" + ], + "metadata": {}, + "execution_count": 12 + }, + { + "cell_type": "markdown", + "source": [ + "We can now plot the evolution of the total ecosystem." + ], + "metadata": {} + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: To maintain consistency with solution indexing, keyword argument vars will be removed in a future version. Please use keyword argument idxs instead.\n", + "│ caller = ip:0x0\n", + "└ @ Core :-1\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=6}", + "image/png": "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", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 13 + } + ], + "cell_type": "code", + "source": [ + "# Solve and plot\n", + "u0 = [100.0, 50.0, 20.0, 100, 10, 2.0]\n", + "tspan = (0.0, 100.0)\n", + "\n", + "prob = ODEProblem(ecosystem, u0, tspan, params)\n", + "sol = solve(prob, Tsit5())\n", + "plot(sol, ecosystem,\n", + " lw=2, title = \"Total Ecosystem\",\n", + " xlabel = \"time\", ylabel = \"population size\"\n", + ")" + ], + "metadata": {}, + "execution_count": 13 + }, + { + "cell_type": "markdown", + "source": [ + "Let's zoom in on a narrower time-window." + ], + "metadata": {} + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: To maintain consistency with solution indexing, keyword argument vars will be removed in a future version. Please use keyword argument idxs instead.\n", + "│ caller = ip:0x0\n", + "└ @ Core :-1\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=6}", + "image/png": "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", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 14 + } + ], + "cell_type": "code", + "source": [ + "tspan = (0.0, 30.0)\n", + "\n", + "prob = ODEProblem(ecosystem, u0, tspan, params)\n", + "sol = solve(prob, Tsit5())\n", + "plot(sol, ecosystem,\n", + " lw=2, title = \"Total Ecosystem\",\n", + " xlabel = \"time\", ylabel = \"population size\"\n", + ")" + ], + "metadata": {}, + "execution_count": 14 + }, + { + "cell_type": "markdown", + "source": [ + "As a sanity check we can define the rates for the hawk/little fish predation to be 0. This decouples the land and ocean ecosystems. As expected, the plot shows the original evolution of the land ecosystem overlayed with the original evolution of the ocean ecosystem. This shows that they two ecosystems now evolve independently." + ], + "metadata": {} + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: To maintain consistency with solution indexing, keyword argument vars will be removed in a future version. Please use keyword argument idxs instead.\n", + "│ caller = ip:0x0\n", + "└ @ Core :-1\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=6}", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOydZ2AUVdfHz8z23fQGKSSE0GsElF4DAcFCEaUjNYDgo4gQURAVBFRU4AGRBwEBC4r6IiDNEEGQgER6FwglvW+yfcr74W6WzbZsktmEwPl92r07e++dEfefc+4pFM/zgCAIgiCPK3RtbwBBEARBahMUQgTxLHv27Jk8efLx48cFmW337t0JCQkpKSmCzIYgCKAQIrXC/PnzqTLEYnFAQEBMTMzgwYOXLFmSlpZW27sTmLNnz27atOn69euCzJaamrphw4YbN264uObOnTtS56xZs0aQndQwRUVFGzZs+O2332p7I8gjiLi2N4A8vkRHR8fExJDXmZmZBw8e/O233959993Zs2cvX75cLpfX7vbqLjzPm0wmiUTSrVs3+0/DwsJqfkvVJzs7OyEhYcCAAYMGDartvSCPGiiESK0xbty49957z/K2tLR069atCxYsWLVqVUZGxo4dOyiKqsXt1XV8fHySk5NrexcIUgdAIUQeFry8vGbOnNm1a9du3br9+OOPo0ePHjJkiPUFJpPp6NGjly9fZlm2adOmcXFxMpnMfh61Wp2cnJyWliYSiaKjo3v27Ont7W19gVarTUpKunnzpkgkatOmTY8ePUQikfUF//zzj0QiadOmjfVgQUHB7du3Q0NDLRbVjRs31Gp1q1atRCLRoUOHrl+/rlKpBgwYEBkZ6c796vX6P/744/r16zzPt2zZsnfv3hKJxOYanuePHTv2zz//yGSy7t27t27d2p2ZK0tWVlZycnJmZqa3t3fjxo27d+9us5O8vLzff/89PT3dy8urc+fO7dq1s5/kypUrZ8+ezcjI8PLyCg8P79q1a0BAAABkZGRkZmaGh4fXr1/f5iv2H928eTM1NTU9PV0ul4eFhXXp0iUkJIRceenSJQBQq9Wpqank4nr16kVERFhvMikpKT09XaFQdOnSJTY21nqt4uLif//9NyQkpEGDBrdu3UpKStLpdE899VTnzp3JBVqtdu/evXfv3o2IiBg8eLCXl1c1nihS1+ARpMaZN28eACxatMjhp3PmzAGA+Ph468GkpKSGDRta/9ONjIz866+/bL77+eef+/j4WF8ml8utL9u7d6/NL3KrVq0uXrxoPYlI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zPJWp9NptVq9Xh8REWGpkc2y7CeffOLj4xMVFdWkSZPz58/37du3R48eGRkZZ86cKSwsbN68+R9//NGyZUsAiIiIeOeddywT6vX6UaNGqVSq3377TSKRkJH8/HypVNqsWbMau00EQdyn9L4OAJT15dosvT7P6KFVzA2S7FyjnJDpE7Zaa15IkDxC54VGwSKEQtzK4yiE2zs9+WduXs2s5S0RPxNa33rk3XffffPNN9u0aRMVFTVnzpzx48cDgLe3t4+PD7nAy8uLFIVZvXr16tWr4+PjfXx81Gp1Xp55z5aS3IS9e/dSFHX58mWiggDw3XffLV68eO7cud27d1+xYkXbtm09fJcIglQObZYBAAJaeWuz9KSDvCdw5hplhegdb17CSbCMIOkTJpdnhAI2qX8chbBrYEDXwICKr/MMoaGh27dvN5lM+/fvf+mll1zEiy5fvvzgwYOtW7cGgOeff57nzf+9Sf9CC8OHD2/YsGHPnj1///13YmL26dOnT58++fn5H3300aRJk7D6KII8VLAGzlBsosWUX1PV/aRcfb6nhNDsGrW3CIV0jTo+xhMwod5p1CgGy9Rddu/eff/+fYlE0qxZM7FYLBY7/VvEy8vrzJkzPM/v3r374MGDLuacP3/+zJkz+/bte//+faPRuGPHjtLS0oCAgAYNGkil1esGhiCI0OhyDcCDPEgm95cCgFHNeGghc18ILzuLUCgh5IEhRbE9JIQug2Uo4YJlUAhrmsuXLw8cODA8PHzkyJFffvlleHi4VCq1zqZv1qyZn58fAGzYsGHlypUNGjTYuXNnYmJiWFgYAAQEBDRp0sRycWhoKMmmf+WVV1577bU33nhDo9Hs2LGjdevWDRs23Lt378aNG2v8FhEEcQUxARVBUmKrEQemJygTwgdCQppCCGURMlqnRbEFEELnKmteAoNl6i7z58+fP3++9UhYWNiRI0csb//3v/+RF7179z579qzN1wcOHGjds37ixImW1wkJCaQHxc8//yz4thEEEQoihPJAqUhG0xKaNXKskSO2mrA4OCOUCWkRmiNl7HInQIgzQtetJ8CSoSFErVG0CBEEQWoUfb4JAOSBUihTKU8YhYye5RieaK1l0BzMKVCwjItglupbhM4SMx4sQUqs4RkhgiBIncNQaAQAWYAEyvyWxIcpLKYS0heifON44hoVqLIM4yRk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", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 15 + } + ], + "cell_type": "code", + "source": [ + "tspan = (0.0, 100.0)\n", + "params.βfishh = 0; params.γfishh = 0\n", + "\n", + "prob = ODEProblem(ecosystem, u0, tspan, params)\n", + "sol = solve(prob, Tsit5())\n", + "plot(sol, ecosystem,\n", + " lw=2, title = \"Decoupled Ecosystem\",\n", + " xlabel = \"time\", ylabel = \"population size\"\n", + ")" + ], + "metadata": {}, + "execution_count": 15 + } + ], + "nbformat_minor": 3, + "metadata": { + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.9.1" + }, + "kernelspec": { + "name": "julia-1.9", + "display_name": "Julia 1.9.1", + "language": "julia" + } + }, + "nbformat": 4 +} diff --git a/v0.2.0/examples/Ecosystem/index.html b/v0.2.0/examples/Ecosystem/index.html new file mode 100644 index 0000000..9920508 --- /dev/null +++ b/v0.2.0/examples/Ecosystem/index.html @@ -0,0 +1,950 @@ + +Ecosystem Models · AlgebraicDynamics.jl

    Ecosystem Models

    using AlgebraicDynamics
    +using AlgebraicDynamics.DWDDynam
    +using AlgebraicDynamics.UWDDynam
    +
    +using Catlab.CategoricalAlgebra
    +using Catlab.WiringDiagrams
    +using Catlab.Graphics
    +using Catlab.Programs
    +
    +using LabelledArrays
    +using OrdinaryDiffEq
    +using Plots, Plots.PlotMeasures

    There will be 16 parameters in to the total ecosystem. With four distinct types:

    • parameters $\alpha$ represent the rate at which a species population grows
    • parameters $\beta$ represent the rate at which a population of prey declines in a predation interaction
    • parameters $\gamma$ represent the rate at which a population of predators grows in a predation interaction
    • parameters $\delta$ represent the rate at with a species population declines
    params = LVector(αr=0.3, βrf=0.015, γrf=0.015, δf=0.7,
    +                 βrh=0.01, γrh=0.01, δh=0.5,
    +                 γfishh=0.001, βfishh=0.003,
    +                 αfish=0.35, βfishF=0.015, γfishF=0.015,
    +                 δF=0.7, βFs=0.017, γFs=0.017, δs=0.35)
    16-element LabelledArrays.LArray{Float64, 1, Vector{Float64}, (:αr, :βrf, :γrf, :δf, :βrh, :γrh, :δh, :γfishh, :βfishh, :αfish, :βfishF, :γfishF, :δF, :βFs, :γFs, :δs)}:
    +     :αr => 0.3
    +    :βrf => 0.015
    +    :γrf => 0.015
    +     :δf => 0.7
    +    :βrh => 0.01
    +    :γrh => 0.01
    +         ⋮
    + :γfishF => 0.015
    +     :δF => 0.7
    +    :βFs => 0.017
    +    :γFs => 0.017
    +     :δs => 0.35

    Land Ecosystem

    Rabbits and foxes

    A standard Lotka Volterra predator-prey model is the composition of three primitive resource sharers:

    1. a model of rabbit growth: this resource sharer has dynamics $\dot r(t) = \alpha r(t)$ and one port which exposes the rabbit population.
    2. a model of rabbit/fox predation: this resource sharer has dynamics $\dot r(t) = -\beta r(t) f(t), \dot f(t) = \gamma r(t)f(t)$ and two ports which expose the rabbit and fox populations respectively.
    3. a model of fox population decline: this resource sharer has dynamics $\dot f(t) = -\delta f(t)$ and one port which exposes the fox population.

    However, there are not two independent rabbit populations – one that grows and one that gets eaten by foxes. Likewise, there are not two independent fox populations – one that declines and one that feasts on rabbits. To capture these interactions between the trio of resource sharers, we compose them by identifying the exposed rabbit populations and identifying the exposed fox populations. The syntax for this undirected composition is defined by an undirected wiring diagram.

    # Define the primitive systems
    +dotr(u,p,t) = p.αr*u
    +dotrf(u,p,t) = [-p.βrf*u[1]*u[2], p.γrf*u[1]*u[2]]
    +dotf(u,p,t) = -p.δf*u
    +
    +rabbit_growth = ContinuousResourceSharer{Float64}(1, dotr)
    +rabbitfox_predation = ContinuousResourceSharer{Float64}(2, dotrf)
    +fox_decline = ContinuousResourceSharer{Float64}(1, dotf)
    +
    +# Define the composition pattern
    +rabbitfox_pattern = @relation (rabbits, foxes) begin
    +    rabbit_growth(rabbits)
    +    rabbitfox_predation(rabbits,foxes)
    +    fox_decline(foxes)
    +end
    +
    +# Compose
    +submodels = Dict(
    +    :rabbit_growth => rabbit_growth,
    +    :rabbitfox_predation => rabbitfox_predation,
    +    :fox_decline => fox_decline
    +)
    +rabbitfox_system = oapply(rabbitfox_pattern, submodels)

    Previously, when we derived the Lotka-Volterra model via undirected composition, we by-hand defined the undirected wiring diagram that implements the composition pattern. In contrast, here we implement the same composition pattern as before but this time using the @relation macro. This strategy simplifies the definition and explicitly names the boxes and variables. We visualize the composition pattern below.

    to_graphviz(rabbitfox_pattern, box_labels = :name, junction_labels = :variable, edge_attrs=Dict(:len => ".75"))

    We can now construct an ODEProblem from the resource sharer rabbitfox_system and plot the solution.

    u0 = [10.0, 100.0]
    +tspan = (0.0, 100.0)
    +
    +prob = ODEProblem(rabbitfox_system, u0, tspan, params)
    +sol = solve(prob, Tsit5())
    +
    +plot(sol, rabbitfox_system,
    +    lw=2,
    +    title = "Lotka-Volterra Predator-Prey Model",
    +    xlabel = "time", ylabel = "population size")
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Rabbits, foxes, and hawks

    Suppose we now have a three species ecosystem containing rabbits, foxes, and hawks. Foxes and hawks both prey upon rabbits but do not interact with each other. This ecosystem consists of five primitive systems which share variables.

    1. rabbit growth: $\dot r(t) = \alpha r(t)$
    2. rabbit/fox predation: $\dot r(t) = -\beta r(t) f(t), \dot f(t) = \delta r(t)f(t)$
    3. fox decline: $\dot f(t) = -\gamma f(t)$
    4. rabbit/hawk predation: $\dot r(t) = -\beta' r(t)h(t), \dot h(t) = \delta' r(t)h(t)$
    5. hawk decline: $\dot h(t) = -\gamma' h(t)$

    This means the desired composition pattern has five boxes and many ports and wires to keep track of. Instead of implementing this composition pattern by hand, we construct it as a pushout.

    # Define the composition pattern for rabbit growth
    +rabbit_pattern = @relation (rabbits,) -> rabbit_growth(rabbits)
    +
    +# Define the composition pattern for the rabbit/hawk Lotka Volterra model
    +rabbithawk_pattern = @relation (rabbits, hawks) begin
    +    rabbit_growth(rabbits)
    +    rabbithawk_predation(rabbits,hawks)
    +    hawk_decline(hawks)
    +end
    +
    +# Define transformations between the composition patterns
    +rabbitfox_transform  = ACSetTransformation((Box=[1], Junction=[1], Port=[1], OuterPort=[1]), rabbit_pattern, rabbitfox_pattern)
    +rabbithawk_transform = ACSetTransformation((Box=[1], Junction=[1], Port=[1], OuterPort=[1]), rabbit_pattern, rabbithawk_pattern)
    +
    +# Take the pushout to define the composition pattern for the rabbit, fox, hawk system
    +rabbitfoxhawk_pattern = ob(pushout(rabbitfox_transform, rabbithawk_transform))
    +
    +# Visualize the compsition pattern
    +to_graphviz(rabbitfoxhawk_pattern, box_labels = :name, junction_labels = :variable, edge_attrs=Dict(:len => ".9"))
    # Define the additional primitive systems
    +dotrh(u, p, t) = [-p.βrh*u[1]*u[2], p.γrh*u[1]*u[2]]
    +doth(u, p, t)  = -p.δh*u
    +
    +rabbithawk_predation = ContinuousResourceSharer{Float64}(2, dotrh)
    +hawk_decline         = ContinuousResourceSharer{Float64}(1, doth)
    +
    +# Compose
    +merge!(submodels, Dict(
    +    :rabbithawk_predation => rabbithawk_predation,
    +    :hawk_decline => hawk_decline
    +))
    +
    +land_system = oapply(rabbitfoxhawk_pattern, submodels)
    +
    +# Solve and plot
    +u0 = [10.0, 100.0, 50.0]
    +tspan = (0.0, 100.0)
    +
    +prob = ODEProblem(land_system, u0, tspan, params)
    +sol = solve(prob, Tsit5())
    +
    +plot(sol, land_system,
    +    lw=2,
    +    title = "Land Ecosystem",
    +    xlabel = "time", ylabel = "population size")
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Unfortunately, the hawks are going extinct in this model. We'll have to give hawks something else to eat!

    Ocean Ecosystem

    Consider a ocean ecosystem containing three species —- little fish, big fish, and sharks -— with two predation interactions —- sharks eat big fish and big fish eat little fish.

    This ecosystem can be modeled as the composition of 3 machines:

    1. Evolution of the little fish population: this machine has one exogenous variable which represents a population of predators $h(t)$ that hunt little fish. This machine has one output which emits the little fish population. The dynamics of this machine is the driven ODE $\dot f(t) = \alpha f(t) - \beta f(t)h(t)$
    2. Evolution of the big fish population: this machine has two exogenous variables which represent a population of prey $e(t)$ that are eaten by big fish and a population of predators $h(t)$ which hunt big fish. This machine has one output which emits the big fish population. The dynamics of this machine is the drive ODE $\dot F(t) = \gamma F(t)e(t) - \delta F(t) - \beta'F(t)h(t)$
    3. Evolution of the shark population: this machine has one exogenous variable which represents a population of prey $e(t)$ that are eaten by sharks. This machine has one output which emits the shark population. The dynamics of this machine is the driven ODE $\dot s(t) = \gamma's(t)e(t) - \delta's(t)$
    # Define the primitive systems
    +dotfish(f, x, p, t) = [p.αfish*f[1] - p.βfishF*x[1]*f[1]]
    +dotFISH(F, x, p, t) = [p.γfishF*x[1]*F[1] - p.δF*F[1] - p.βFs*x[2]*F[1]]
    +dotsharks(s, x, p, t) = [p.γFs*s[1]*x[1]-p.δs*s[1]]
    +
    +fish   = ContinuousMachine{Float64}(1,1,1, dotfish,   (f,p,t)->f)
    +FISH   = ContinuousMachine{Float64}(2,1,1, dotFISH,   (F,p,t)->F)
    +sharks = ContinuousMachine{Float64}(1,1,1, dotsharks, (s,p,t)->s)

    We compose these machines by (1) sending the output of the big fish machine as the input to both the little fish and shark machines and (2) sending the output of the little fish and shark machines as the inputs to the big fish machine. The syntax for this directed composition is given by a directed wiring diagram.

    # Define the composition pattern
    +ocean_pattern = WiringDiagram([], [:fish, :Fish, :shark])
    +fish_box = add_box!(ocean_pattern, Box(:fish, [:pop], [:pop]))
    +Fish_box = add_box!(ocean_pattern, Box(:Fish, [:pop, :pop], [:pop]))
    +shark_box = add_box!(ocean_pattern, Box(:shark, [:pop], [:pop]))
    +
    +output_box = output_id(ocean_pattern)
    +add_wires!(ocean_pattern, Pair[
    +    (fish_box, 1)  => (Fish_box, 1),
    +    (shark_box, 1) => (Fish_box, 2),
    +    (Fish_box, 1)  => (fish_box, 1),
    +    (Fish_box, 1)  => (shark_box, 1),
    +    (fish_box, 1)  => (output_box, 1),
    +    (Fish_box, 1)  => (output_box, 2),
    +    (shark_box, 1) => (output_box, 3)
    +])
    +
    +# Visualize the composition pattern
    +to_graphviz(ocean_pattern, orientation=TopToBottom)
    # Compose
    +ocean_system = oapply(ocean_pattern, [fish, FISH, sharks])
    +
    +# Solve and plot
    +u0 = [100.0, 10, 2.0]
    +tspan = (0.0, 100.0)
    +
    +prob = ODEProblem(ocean_system, u0, tspan, params)
    +sol = solve(prob, Tsit5())
    +
    +plot(sol, ocean_system,
    +    lw=2, title = "Ocean Ecosystem",
    +    xlabel = "time", ylabel = "population size"
    +)
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Total ecosystem

    Another layer of composition

    We will introduce a final predation interaction – hawks eat little fish – which will combine the land and ocean ecosystems. The composition will be as resource shareres so the first thing we will do is use the dynamics of the machine ocean_system to define the dynamics of a resource sharer. We will also define a resource sharer that models hawk/little fish predation.

    # Define the additional primitive systems
    +ocean_system_rs = ContinuousResourceSharer{Float64}(3, (u,p,t) -> eval_dynamics(ocean_system, u, [], p))
    +
    +dothf(u,p,t) = [p.γfishh*u[1]*u[2], -p.βfishh*u[1]*u[2]]
    +fishhawk_predation = ContinuousResourceSharer{Float64}(2, dothf)
    +
    +# Define the composition pattern
    +eco_pattern = @relation (rabbits, foxes, hawks, littlefish, BigFish, sharks)  begin
    +    turf(rabbits,foxes,hawks)
    +    air(hawks, littlefish)
    +    surf(littlefish, BigFish, sharks)
    +end
    +
    +# Visualize the composition pattern
    +to_graphviz(eco_pattern, box_labels = :name, junction_labels = :variable, edge_attrs=Dict(:len => ".75"))
    # Compose
    +
    +ecosystem = oapply(eco_pattern, Dict(
    +    :turf => land_system,
    +    :air => fishhawk_predation,
    +    :surf => ocean_system_rs)
    +)

    We can now plot the evolution of the total ecosystem.

    # Solve and plot
    +u0 = [100.0, 50.0, 20.0, 100, 10, 2.0]
    +tspan = (0.0, 100.0)
    +
    +prob = ODEProblem(ecosystem, u0, tspan, params)
    +sol = solve(prob, Tsit5())
    +plot(sol, ecosystem,
    +    lw=2, title = "Total Ecosystem",
    +    xlabel = "time", ylabel = "population size"
    +)
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Let's zoom in on a narrower time-window.

    tspan = (0.0, 30.0)
    +
    +prob = ODEProblem(ecosystem, u0, tspan, params)
    +sol = solve(prob, Tsit5())
    +plot(sol, ecosystem,
    +    lw=2, title = "Total Ecosystem",
    +    xlabel = "time", ylabel = "population size"
    +)
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    As a sanity check we can define the rates for the hawk/little fish predation to be 0. This decouples the land and ocean ecosystems. As expected, the plot shows the original evolution of the land ecosystem overlayed with the original evolution of the ocean ecosystem. This shows that they two ecosystems now evolve independently.

    tspan = (0.0, 100.0)
    +params.βfishh = 0; params.γfishh = 0
    +
    +prob = ODEProblem(ecosystem, u0, tspan, params)
    +sol = solve(prob, Tsit5())
    +plot(sol, ecosystem,
    +    lw=2, title = "Decoupled Ecosystem",
    +    xlabel = "time", ylabel = "population size"
    +)
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    diff --git a/v0.2.0/examples/Lotka-Volterra.ipynb b/v0.2.0/examples/Lotka-Volterra.ipynb new file mode 100644 index 0000000..0ce85a4 --- /dev/null +++ b/v0.2.0/examples/Lotka-Volterra.ipynb @@ -0,0 +1,588 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "source": [ + "# Lotka-Volterra Three Ways" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "We will give three examples of deriving the Lotka-Volterra equations $$ \\dot r(t) = \\alpha r(t) - \\beta r(t)f(t), \\dot f(t) = \\gamma f(t) r(t) - \\delta f(t)$$ as a composition of primitive systems. First, we will show it as the composition of resource sharers where the undirected composition pattern is an undirected wiring diagram. Second, we will show it as the composition of machines where the directed composition pattern is a wiring diagram. Lastly, we will show it as the composition of machines where the directed composition pattern is an open circular port graph (open CPG)." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "Although these examples are quite small and you can easily work them out by hand, this approach is based on the solid mathematical theory of operad algebras that allows you to scale to larger and more complex problems." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "## Undirected composition\n", + "### Undirected wiring diagrams" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "A standard Lotka-Volterra predator-prey model is the composition of three resource sharers:" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "1. a model of rabbit growth: this resource sharer has dynamics $\\dot r(t) = \\alpha r(t)$ and one port which exposes the rabbit population.\n", + "2. a model of rabbit/fox predation: this resource sharer has dynamics $$\\dot r(t) = -\\beta r(t) f(t), \\dot f(t) = \\gamma r(t)f(t)$$ and two ports which expose the rabbit and fox populations respectively\n", + "3. a model of fox population decline: this resource sharer has dynamics $\\dot f(t) = -\\delta f(t)$ and one port which exposes the fox population." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "However, there are not two independent rabbit populations --- one that grows and one that gets eaten by foxes. Likewise, there are not two independent fox populations --- one that declines and one that feasts on rabbits. To capture these interactions between the trio of resource sharers, we compose them by identifying the exposed rabbit populations and identifying the exposed fox populations." + ], + "metadata": {} + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: To maintain consistency with solution indexing, keyword argument vars will be removed in a future version. Please use keyword argument idxs instead.\n", + "│ caller = ip:0x0\n", + "└ @ Core :-1\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=2}", + "image/png": "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NzfX26/20UcfAXj88cffeecdAOvWrRP+tW7dOgBLly59/PHH4TbCV61a5aJce/fufeXKFfE1er1+9OjR4mvGjx+/cOFCAB988IH4yh9//DE+Pl58Zfv27f/66y/xNQqFgoxeihSoIgw8qlWEdrt94MCBAAYNGrRr165z5859+eWXxJxaunQpuebgwYNPPfUUgClTpmxxQqYAF0VYVlY2YsQI0mKz2Ujj0qVLx40bt2bNmsOHD588eXLdunXdu3f3OL+48NNPPwFISUlxaR86dCgAopk4jiMqp3///jt37jx37tzXX3+dmJgIYNGiRcJbXBThtm3bRo0aBWDhwoXCNzKZTDzPZ2dnJyQkKBSK//73v3/++efJkyc///zzJk2aMAyzceNG4YZEESYlJQ0aNOjrr79OT0//7rvveKciTEpK6tSp0yeffJKenv7VV1+ROw8YMODVV1/dsmXLyZMnDx069MYbb4SHh6vVapdZyR2PivDEiRNk4i4uLuadijApKalLly4rV65MT09fvXq11Wq9evVq48aNlUrlE088sXv37n/++eeTTz5p1KgRy7I7duwQ7vbWW28BaNOmza+//nrlypUdO3akpKQ0bdrURREuW7ZszJgx33333aFDh06dOvXLL7/06tULwH/+8x9yQXFx8ZYtW8jMu3nzZsGXS/5LdEOTJk2++OKLs2fP/vHHH4MHDwbQr18/YbQQRdikSZOQkJCZM2euX79+165du3bt8igZb4qQWJkffvgh71SESUlJ4eHh8+bN27Zt2+bNm48dO8bz/L333gugb9++v/7666lTp7Zs2ULWfNOnTyf3KS8vj4iIiI2NdVm0EU02btw4H7+aoAgLCgrUavVdd90l/OvOO+9UqVR5eXnuivDnn39mGCY8PPzDDz88ffr0gQMHSCfbtWtXUVEhXDZhwgQit927d1+5cuWHH35o2rQpGfZiRfjzzz+zLBsbG/vuu+9mZGQcPnz4hRdeUCqViYmJBQUFwmVUEcqCKsLAo1pFSB7pm266iUzWhL179wKIjIwkpgzP8ytWrAAwf/58l7eLFWFmZmbXrl0ZhnnllVd896q0tLRZs2ahoaHiD3XHarWSKZVMW4SrV68qFIqwsDDSt/Xr1wNo0aKFwWAQrjl06BDDMGFhYURJ8G6KkOf5adOmkcna5UOJRhEbxDzPZ2RkKBSKbt26CS1EEXbp0sVqtYqvJIowJiZGbOV4g5i2jz32mO/L3BVhRUVFamqqWAeQbsfFxZWWlorfO378ePGahrB3716GYXr37i3cLTIyUqFQnDx5UrimsLCQ2CViRehORUVF69attVqtMFR4nm/VqhUAsUXO87xeryfu5d27dwuNJpOpXbt2AL7//nvSQhQhgFdffdW3WHgvipAkrLIse+rUKd6pCAG4GN9k5PTu3Vv8C1oslg4dOrAsSxyJPM//5z//AfDll1+K3zty5EgA27dv99E3QRHyPH/XXXcplcqcnBye53Nzc1Uq1d13383zvIsi5DiOOGa//fZb4T52u52o57fffpu0HD9+HEB8fLxYNQoZ0YIiNJvNxGzNyMgQd0yIoQotVBHKgibLNECIIpw5c6bYW9irV69BgwaRQIXE+/z111+9evX6559/vvzyy1dffdX3xREREYMGDdLr9b5TvZVKJfGyinMNPvvsM7vdfv/99xO/Gen/k08+KXa4paSkDB8+vKKiQm4avdVq/e6770JCQogFLNCtW7fevXsfOXJEmKYJTz31lMdwy/Tp011iih4ZPXo0wzAHDhyQ0rfvv/8+LS0tLS3tnnvuadOmzfr167VaLXG7CTz66KNiL7TRaPzxxx+joqLIhCvQq1evW2+9dd++fUVFRQC2b99eWlqampoqjvbFxMSQfCXfhIaGDhkyxGQykdnZBzt37iwuLu7fv3/fvn2FRo1GQ0T9448/ii9WqVQuP4EPLl26RCTzwAMPdOvWbfr06QBmzJhBVCzh5ptvvueee8TvWr16NYDnn39e/AuqVKpp06ZxHCeMnP/+978Mw5CFIOHq1aubN29u06YNcaVIYfLkySQuCODLL7+0Wq2TJ092v+zEiRNnz55t06bN2LFjhUaWZckmP0FExFOSlpYWGhoqXNa9e3eX/uzYsSMzMzM1NbVbt27idqLa6y0DvOFB46sNEGIyujwqAFJSUnbs2PH333+7hN88cuDAgVWrVrEsu2nTJo+zw3fffffpp5+eOXMmOztbvJejoKCAvPjtt9/IpExo3bo1Sah7+OGHlyxZsnr16jfeeEOlUvE8T/JIhTnaR/83bdokd3fE6dOn9Xp9kyZNXnrpJZd/ke5dunRJHHER54CI6dixo3tjYWHh4sWLN23alJWVlZeXJ26X0re9e/cSSx1AbGzs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", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 1 + } + ], + "cell_type": "code", + "source": [ + "using AlgebraicDynamics\n", + "using AlgebraicDynamics.UWDDynam\n", + "using Catlab.WiringDiagrams, Catlab.Programs\n", + "using LabelledArrays\n", + "using OrdinaryDiffEq, Plots, Plots.PlotMeasures\n", + "\n", + "const UWD = UndirectedWiringDiagram\n", + "\n", + "# Define the primitive systems\n", + "dotr(u,p,t) = p.α*u\n", + "dotrf(u,p,t) = [-p.β*u[1]*u[2], p.γ*u[1]*u[2]]\n", + "dotf(u,p,t) = -p.δ*u\n", + "\n", + "rabbit_growth = ContinuousResourceSharer{Float64}(1, dotr)\n", + "rabbitfox_predation = ContinuousResourceSharer{Float64}(2, dotrf)\n", + "fox_decline = ContinuousResourceSharer{Float64}(1, dotf)\n", + "\n", + "# Define the composition pattern\n", + "rf = @relation (rabbits,foxes) begin\n", + " growth(rabbits)\n", + " predation(rabbits,foxes)\n", + " decline(foxes)\n", + "end\n", + "\n", + "# Compose\n", + "rabbitfox_system = oapply(rf, [rabbit_growth, rabbitfox_predation, fox_decline])\n", + "\n", + "# Solve and plot\n", + "u0 = [10.0, 100.0]\n", + "params = LVector(α=.3, β=0.015, γ=0.015, δ=0.7)\n", + "tspan = (0.0, 100.0)\n", + "\n", + "prob = ODEProblem(rabbitfox_system, u0, tspan, params)\n", + "sol = solve(prob, Tsit5())\n", + "\n", + "plot(sol, rabbitfox_system,\n", + " lw=2, title = \"Lotka-Volterra Predator-Prey Model\",\n", + " xlabel = \"time\", ylabel = \"population size\"\n", + ")" + ], + "metadata": {}, + "execution_count": 1 + }, + { + "cell_type": "markdown", + "source": [ + "## Directed composition\n", + "A standard Lotka-Volterra predator-prey model is the composition of two machines:" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "1. Evolution of a rabbit population: this machine has one input which represents a population of predators, $h(t)$, that hunt rabbits. This machine has one output which emits the rabbit population $r(t)$. The dynamics of this machine is the driven ODE $\\dot r(t) = \\alpha r(t) - \\beta r(t) h(t).$" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "2. Evoluation of a fox population: this machine has one input which represents a population of prey, $e(t)$, that are eaten by foxes. This machine has one output which emits the fox population $f(t)$. The dynamics of this machine is the driven ODE $\\dot f(t) =\\gamma f(t)e(t) - \\delta f(t).$" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "### Wiring diagrams\n", + "Since foxes hunt rabbit, these machines compose by setting the fox population to be the input for rabbit evolution. Likewise, we set the rabbit population to be the input for fox evolution. We first implement this setting of inputs using a wiring diagram as our composition pattern." + ], + "metadata": {} + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: To maintain consistency with solution indexing, keyword argument vars will be removed in a future version. Please use keyword argument idxs instead.\n", + "│ caller = ip:0x0\n", + "└ @ Core :-1\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=2}", + "image/png": "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NzfX26/20UcfAXj88cffeecdAOvWrRP+tW7dOgBLly59/PHH4TbCV61a5aJce/fufeXKFfE1er1+9OjR4mvGjx+/cOFCAB988IH4yh9//DE+Pl58Zfv27f/66y/xNQqFgoxeihSoIgw8qlWEdrt94MCBAAYNGrRr165z5859+eWXxJxaunQpuebgwYNPPfUUgClTpmxxQqYAF0VYVlY2YsQI0mKz2Ujj0qVLx40bt2bNmsOHD588eXLdunXdu3f3OL+48NNPPwFISUlxaR86dCgAopk4jiMqp3///jt37jx37tzXX3+dmJgIYNGiRcJbXBThtm3bRo0aBWDhwoXCNzKZTDzPZ2dnJyQkKBSK//73v3/++efJkyc///zzJk2aMAyzceNG4YZEESYlJQ0aNOjrr79OT0//7rvveKciTEpK6tSp0yeffJKenv7VV1+ROw8YMODVV1/dsmXLyZMnDx069MYbb4SHh6vVapdZyR2PivDEiRNk4i4uLuadijApKalLly4rV65MT09fvXq11Wq9evVq48aNlUrlE088sXv37n/++eeTTz5p1KgRy7I7duwQ7vbWW28BaNOmza+//nrlypUdO3akpKQ0bdrURREuW7ZszJgx33333aFDh06dOvXLL7/06tULwH/+8x9yQXFx8ZYtW8jMu3nzZsGXS/5LdEOTJk2++OKLs2fP/vHHH4MHDwbQr18/YbQQRdikSZOQkJCZM2euX79+165du3bt8igZb4qQWJkffvgh71SESUlJ4eHh8+bN27Zt2+bNm48dO8bz/L333gugb9++v/7666lTp7Zs2ULWfNOnTyf3KS8vj4iIiI2NdVm0EU02btw4H7+aoAgLCgrUavVdd90l/OvOO+9UqVR5eXnuivDnn39mGCY8PPzDDz88ffr0gQMHSCfbtWtXUVEhXDZhwgQit927d1+5cuWHH35o2rQpGfZiRfjzzz+zLBsbG/vuu+9mZGQcPnz4hRdeUCqViYmJBQUFwmVUEcqCKsLAo1pFSB7pm266iUzWhL179wKIjIwkpgzP8ytWrAAwf/58l7eLFWFmZmbXrl0ZhnnllVd896q0tLRZs2ahoaHiD3XHarWSKZVMW4SrV68qFIqwsDDSt/Xr1wNo0aKFwWAQrjl06BDDMGFhYURJ8G6KkOf5adOmkcna5UOJRhEbxDzPZ2RkKBSKbt26CS1EEXbp0sVqtYqvJIowJiZGbOV4g5i2jz32mO/L3BVhRUVFamqqWAeQbsfFxZWWlorfO378ePGahrB3716GYXr37i3cLTIyUqFQnDx5UrimsLCQ2CViRehORUVF69attVqtMFR4nm/VqhUAsUXO87xeryfu5d27dwuNJpOpXbt2AL7//nvSQhQhgFdffdW3WHgvipAkrLIse+rUKd6pCAG4GN9k5PTu3Vv8C1oslg4dOrAsSxyJPM//5z//AfDll1+K3zty5EgA27dv99E3QRHyPH/XXXcplcqcnBye53Nzc1Uq1d13383zvIsi5DiOOGa//fZb4T52u52o57fffpu0HD9+HEB8fLxYNQoZ0YIiNJvNxGzNyMgQd0yIoQotVBHKgibLNECIIpw5c6bYW9irV69BgwaRQIXE+/z111+9evX6559/vvzyy1dffdX3xREREYMGDdLr9b5TvZVKJfGyinMNPvvsM7vdfv/99xO/Gen/k08+KXa4paSkDB8+vKKiQm4avdVq/e6770JCQogFLNCtW7fevXsfOXJEmKYJTz31lMdwy/Tp011iih4ZPXo0wzAHDhyQ0rfvv/8+LS0tLS3tnnvuadOmzfr167VaLXG7CTz66KNiL7TRaPzxxx+joqLIhCvQq1evW2+9dd++fUVFRQC2b99eWlqampoqjvbFxMSQfCXfhIaGDhkyxGQykdnZBzt37iwuLu7fv3/fvn2FRo1GQ0T9448/ii9WqVQuP4EPLl26RCTzwAMPdOvWbfr06QBmzJhBVCzh5ptvvueee8TvWr16NYDnn39e/AuqVKpp06ZxHCeMnP/+978Mw5CFIOHq1aubN29u06YNcaVIYfLkySQuCODLL7+0Wq2TJ092v+zEiRNnz55t06bN2LFjhUaWZckmP0FExFOSlpYWGhoqXNa9e3eX/uzYsSMzMzM1NbVbt27idqLa6y0DvOFB46sNEGIyujwqAFJSUnbs2PH333+7hN88cuDAgVWrVrEsu2nTJo+zw3fffffpp5+eOXMmOztbvJejoKCAvPjtt9/IpExo3bo1Sah7+OGHlyxZsnr16jfeeEOlUvE8T/JIhTnaR/83bdokd3fE6dOn9Xp9kyZNXnrpJZd/ke5dunRJHHER54CI6dixo3tjYWHh4sWLN23alJWVlZeXJ26X0re9e/cSSx1AbGzs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", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 2 + } + ], + "cell_type": "code", + "source": [ + "using AlgebraicDynamics.DWDDynam\n", + "\n", + "# Define the primitive systems\n", + "dotr(u, x, p, t) = [p.α*u[1] - p.β*u[1]*x[1]]\n", + "dotf(u, x, p, t) = [p.γ*u[1]*x[1] - p.δ*u[1]]\n", + "\n", + "rabbit = ContinuousMachine{Float64}(1,1,1, dotr, (u, p, t) -> u)\n", + "fox = ContinuousMachine{Float64}(1,1,1, dotf, (u, p, t) -> u)\n", + "\n", + "# Define the composition pattern\n", + "rabbitfox_pattern = WiringDiagram([], [:rabbits, :foxes])\n", + "rabbit_box = add_box!(rabbitfox_pattern, Box(:rabbit, [:pop], [:pop]))\n", + "fox_box = add_box!(rabbitfox_pattern, Box(:fox, [:pop], [:pop]))\n", + "\n", + "add_wires!(rabbitfox_pattern, Pair[\n", + " (rabbit_box, 1) => (fox_box, 1),\n", + " (fox_box, 1) => (rabbit_box, 1),\n", + " (rabbit_box, 1) => (output_id(rabbitfox_pattern), 1),\n", + " (fox_box, 1) => (output_id(rabbitfox_pattern), 2)\n", + "])\n", + "\n", + "# Compose\n", + "rabbitfox_system = oapply(rabbitfox_pattern, [rabbit, fox])\n", + "\n", + "# Solve and plot\n", + "u0 = [10.0, 100.0]\n", + "params = LVector(α=.3, β=0.015, γ=0.015, δ=0.7)\n", + "tspan = (0.0, 100.0)\n", + "\n", + "prob = ODEProblem(rabbitfox_system, u0, tspan, params)\n", + "sol = solve(prob, Tsit5())\n", + "\n", + "plot(sol, rabbitfox_system, params,\n", + " lw=2, title = \"Lotka-Volterra Predator-Prey Model\",\n", + " xlabel = \"time\", ylabel = \"population size\"\n", + ")" + ], + "metadata": {}, + "execution_count": 2 + }, + { + "cell_type": "markdown", + "source": [ + "### Open CPG\n", + "We next implement the setting of inputs using an open CPG as our composition pattern. We will use a barbell CPG. A barbell has two boxes connected by $n$ wires. In this instance we will set $n$ to $1$ since each machine receives and emits exactly one piece of information." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=2}", + "image/png": "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", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 3 + } + ], + "cell_type": "code", + "source": [ + "using AlgebraicDynamics.CPortGraphDynam\n", + "using AlgebraicDynamics.CPortGraphDynam: barbell\n", + "\n", + "# Define the composition pattern\n", + "rabbitfox_pattern = barbell(1)\n", + "\n", + "# Compose\n", + "rabbitfox_system = oapply(rabbitfox_pattern, [rabbit, fox])\n", + "\n", + "# Solve and plot\n", + "u0 = [10.0, 100.0]\n", + "params = LVector(α=.3, β=0.015, γ=0.015, δ=0.7)\n", + "tspan = (0.0, 100.0)\n", + "\n", + "prob = ODEProblem(rabbitfox_system, u0, tspan, params)\n", + "sol = solve(prob, FRK65(0))\n", + "\n", + "plot(sol, lw=2, bottom_margin=10mm, left_margin=10mm, title = \"Lotka-Volterra Predator-Prey Model\", label=[\"rabbits\" \"foxes\"])\n", + "xlabel!(\"Time\")\n", + "ylabel!(\"Population size\")" + ], + "metadata": {}, + "execution_count": 3 + } + ], + "nbformat_minor": 3, + "metadata": { + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.9.1" + }, + "kernelspec": { + "name": "julia-1.9", + "display_name": "Julia 1.9.1", + "language": "julia" + } + }, + "nbformat": 4 +} diff --git a/v0.2.0/examples/Lotka-Volterra/index.html b/v0.2.0/examples/Lotka-Volterra/index.html new file mode 100644 index 0000000..3a50273 --- /dev/null +++ b/v0.2.0/examples/Lotka-Volterra/index.html @@ -0,0 +1,244 @@ + +Lotka-Volterra Three Ways · AlgebraicDynamics.jl

    Lotka-Volterra Three Ways

    We will give three examples of deriving the Lotka-Volterra equations $ \dot r(t) = \alpha r(t) - \beta r(t)f(t), \dot f(t) = \gamma f(t) r(t) - \delta f(t)$ as a composition of primitive systems. First, we will show it as the composition of resource sharers where the undirected composition pattern is an undirected wiring diagram. Second, we will show it as the composition of machines where the directed composition pattern is a wiring diagram. Lastly, we will show it as the composition of machines where the directed composition pattern is an open circular port graph (open CPG).

    Although these examples are quite small and you can easily work them out by hand, this approach is based on the solid mathematical theory of operad algebras that allows you to scale to larger and more complex problems.

    Undirected composition

    Undirected wiring diagrams

    A standard Lotka-Volterra predator-prey model is the composition of three resource sharers:

    1. a model of rabbit growth: this resource sharer has dynamics $\dot r(t) = \alpha r(t)$ and one port which exposes the rabbit population.
    2. a model of rabbit/fox predation: this resource sharer has dynamics $\dot r(t) = -\beta r(t) f(t), \dot f(t) = \gamma r(t)f(t)$ and two ports which expose the rabbit and fox populations respectively
    3. a model of fox population decline: this resource sharer has dynamics $\dot f(t) = -\delta f(t)$ and one port which exposes the fox population.

    However, there are not two independent rabbit populations –- one that grows and one that gets eaten by foxes. Likewise, there are not two independent fox populations –- one that declines and one that feasts on rabbits. To capture these interactions between the trio of resource sharers, we compose them by identifying the exposed rabbit populations and identifying the exposed fox populations.

    using AlgebraicDynamics
    +using AlgebraicDynamics.UWDDynam
    +using Catlab.WiringDiagrams, Catlab.Programs
    +using LabelledArrays
    +using OrdinaryDiffEq, Plots, Plots.PlotMeasures
    +
    +const UWD = UndirectedWiringDiagram
    +
    +# Define the primitive systems
    +dotr(u,p,t) = p.α*u
    +dotrf(u,p,t) = [-p.β*u[1]*u[2], p.γ*u[1]*u[2]]
    +dotf(u,p,t) = -p.δ*u
    +
    +rabbit_growth = ContinuousResourceSharer{Float64}(1, dotr)
    +rabbitfox_predation = ContinuousResourceSharer{Float64}(2, dotrf)
    +fox_decline = ContinuousResourceSharer{Float64}(1, dotf)
    +
    +# Define the composition pattern
    +rf = @relation (rabbits,foxes) begin
    +    growth(rabbits)
    +    predation(rabbits,foxes)
    +    decline(foxes)
    +end
    +
    +# Compose
    +rabbitfox_system = oapply(rf, [rabbit_growth, rabbitfox_predation, fox_decline])
    +
    +# Solve and plot
    +u0 = [10.0, 100.0]
    +params = LVector(α=.3, β=0.015, γ=0.015, δ=0.7)
    +tspan = (0.0, 100.0)
    +
    +prob = ODEProblem(rabbitfox_system, u0, tspan, params)
    +sol = solve(prob, Tsit5())
    +
    +plot(sol, rabbitfox_system,
    +    lw=2, title = "Lotka-Volterra Predator-Prey Model",
    +    xlabel = "time", ylabel = "population size"
    +)
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Directed composition

    A standard Lotka-Volterra predator-prey model is the composition of two machines:

    1. Evolution of a rabbit population: this machine has one input which represents a population of predators, $h(t)$, that hunt rabbits. This machine has one output which emits the rabbit population $r(t)$. The dynamics of this machine is the driven ODE $\dot r(t) = \alpha r(t) - \beta r(t) h(t).$

    2. Evoluation of a fox population: this machine has one input which represents a population of prey, $e(t)$, that are eaten by foxes. This machine has one output which emits the fox population $f(t)$. The dynamics of this machine is the driven ODE $\dot f(t) =\gamma f(t)e(t) - \delta f(t).$

    Wiring diagrams

    Since foxes hunt rabbit, these machines compose by setting the fox population to be the input for rabbit evolution. Likewise, we set the rabbit population to be the input for fox evolution. We first implement this setting of inputs using a wiring diagram as our composition pattern.

    using AlgebraicDynamics.DWDDynam
    +
    +# Define the primitive systems
    +dotr(u, x, p, t) = [p.α*u[1] - p.β*u[1]*x[1]]
    +dotf(u, x, p, t) = [p.γ*u[1]*x[1] - p.δ*u[1]]
    +
    +rabbit = ContinuousMachine{Float64}(1,1,1, dotr, (u, p, t) -> u)
    +fox    = ContinuousMachine{Float64}(1,1,1, dotf, (u, p, t) -> u)
    +
    +# Define the composition pattern
    +rabbitfox_pattern = WiringDiagram([], [:rabbits, :foxes])
    +rabbit_box = add_box!(rabbitfox_pattern, Box(:rabbit, [:pop], [:pop]))
    +fox_box = add_box!(rabbitfox_pattern, Box(:fox, [:pop], [:pop]))
    +
    +add_wires!(rabbitfox_pattern, Pair[
    +    (rabbit_box, 1) => (fox_box, 1),
    +    (fox_box, 1)    => (rabbit_box, 1),
    +    (rabbit_box, 1) => (output_id(rabbitfox_pattern), 1),
    +    (fox_box, 1)    => (output_id(rabbitfox_pattern), 2)
    +])
    +
    +# Compose
    +rabbitfox_system = oapply(rabbitfox_pattern, [rabbit, fox])
    +
    +# Solve and plot
    +u0 = [10.0, 100.0]
    +params = LVector(α=.3, β=0.015, γ=0.015, δ=0.7)
    +tspan = (0.0, 100.0)
    +
    +prob = ODEProblem(rabbitfox_system, u0, tspan, params)
    +sol = solve(prob, Tsit5())
    +
    +plot(sol, rabbitfox_system, params,
    +    lw=2, title = "Lotka-Volterra Predator-Prey Model",
    +    xlabel = "time", ylabel = "population size"
    +)
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Open CPG

    We next implement the setting of inputs using an open CPG as our composition pattern. We will use a barbell CPG. A barbell has two boxes connected by $n$ wires. In this instance we will set $n$ to $1$ since each machine receives and emits exactly one piece of information.

    using AlgebraicDynamics.CPortGraphDynam
    +using AlgebraicDynamics.CPortGraphDynam: barbell
    +
    +# Define the composition pattern
    +rabbitfox_pattern = barbell(1)
    +
    +# Compose
    +rabbitfox_system = oapply(rabbitfox_pattern, [rabbit, fox])
    +
    +# Solve and plot
    +u0 = [10.0, 100.0]
    +params = LVector(α=.3, β=0.015, γ=0.015, δ=0.7)
    +tspan = (0.0, 100.0)
    +
    +prob = ODEProblem(rabbitfox_system, u0, tspan, params)
    +sol = solve(prob, FRK65(0))
    +
    +plot(sol, lw=2, bottom_margin=10mm, left_margin=10mm, title = "Lotka-Volterra Predator-Prey Model", label=["rabbits" "foxes"])
    +xlabel!("Time")
    +ylabel!("Population size")
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    diff --git a/v0.2.0/examples/Ross-Macdonald.ipynb b/v0.2.0/examples/Ross-Macdonald.ipynb new file mode 100644 index 0000000..cf0d758 --- /dev/null +++ b/v0.2.0/examples/Ross-Macdonald.ipynb @@ -0,0 +1,1071 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "source": [ + "# Ross-Macdonald Malaria Modeling" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "Authors: Sean L. Wu and Sophie Libkind" + ], + "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "using AlgebraicDynamics.DWDDynam\n", + "using Catlab.WiringDiagrams\n", + "using LabelledArrays\n", + "\n", + "using Catlab.Graphics\n", + "using DelayDiffEq, DifferentialEquations\n", + "using Plots" + ], + "metadata": {}, + "execution_count": 1 + }, + { + "cell_type": "markdown", + "source": [ + "The Ross-Macdonald (RM) model is the canonical model of malaria transmission, first expressed by\n", + "Sir Ronald Ross in 1911. The simplest form of the model is given by a system of 2 nonlinear ordinary\n", + "differential equations describing $Z$, parasite prevalence in the mosquito vector population, and $X$,\n", + "parasite prevalence in the vertebrate host population:\n", + "$$ \\dot X = mazbZ(1 - X) - rX, \\quad \\dot Z = acX (e^{-gn} - Z) - gZ \\quad (1)$$" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "The RM model is of supreme importance to modeling of malaria and other mosquito transmitted diseases\n", + "because it is the simplest model that retains the fundamental processes involved in transmission: recovery\n", + "of infected hosts, death of infected mosquitoes, and parasite transmission between discordant pairs of\n", + "vectors and hosts. In this sense it represents the irreducible complexity to modeling mosquito borne\n", + "diseases, such that any simpler model would be insufficient." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "The model assumes that mosquitoes take bloodmeals (bites) on vertebrate hosts with rate $a$.\n", + "Therefore, the per-capita rate at which susceptible mosquitoes become infected is $acX$, where $c$\n", + "is the transmission efficiency from infectious humans to susceptible mosquitoes (probability of\n", + "parasites successfully invading the mosquito given a bite occurs) and $X$ is the probability the\n", + " bite lands on an infectious human. $1-Z$ is the proportion of mosquitoes who are susceptible but\n", + "given an incubation period of $n$ days during which mosquitoes suffer per-capita mortality at rate\n", + "$g$, only a proportion $e^{-gn}$ survive incubation to become infectious. Therefore the classic\n", + "RM model will have statics that are consistent with the incorporation of an incubation period of\n", + "fixed duration, but dynamics will not, as the delay is not incorporated into the equations." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "Susceptible humans acquire infection at a rate $mabZ$, where $m = M/H$, the ratio of mosquitoes to\n", + "humans, $a$ is as before, and $b$ is the transmission efficiency from infectious mosquitoes to\n", + "susceptible humans. Therefore $mabZ$ gives the per-capita rate at which susceptible humans recieve\n", + "parasites from the mosquito population. Infectious humans recover at a rate $r$ (the rate at which the\n", + "immune system clears parasites). Because $m$ is considered a constant parameter, the model ignores\n", + "seasonal fluctuations in mosquito (or host) population sizes. However, because the timescale of host\n", + "dynamcis is typically slow in relation to mosquito dynamics, the approximation is often suitable\n", + "over a transmission season." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "The model's threshold criterion between the trivial equilibrium where both $Z,X$ are equal to zero\n", + "(no disease) and the endemic equilibrium can be expressed by the basic reproductive number, giving\n", + "the expected number of secondary infections arising from the introduction of a single infectious human,\n", + "$$R_0 = \\frac{ma^2bce^{-gn}}{rg}.$$ The endemic equilibrium is therefore:\n", + "$$\\bar{X}= \\frac{R_{0}-1}{R_{0} + \\frac{ac}{g}}, \\quad \\bar{Z} = \\frac{ac\\bar{X}}{g + ac\\bar{X}} e^{-gn}.$$" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "From these equations, the nonlinear relationships that characterize observed malaria transmission can be\n", + "understood. We implement them as follows:" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "## Diagram of Systems\n", + "First we must construct a diagram of systems which describes the interaction between the mosquito and\n", + "host populations. The arrows between the two subsystems represents the bidirectional infection during bloodmeals." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Catlab.Graphics.Graphviz.Graph(\"G\", true, \"dot\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Subgraph(\"\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Node(\"n0out1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"out1\")), Catlab.Graphics.Graphviz.Node(\"n0out2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"out2\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n0out1\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n0out2\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}())], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:rank => \"sink\", :rankdir => \"LR\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:style => \"invis\", :shape => \"none\", :label => \"\", :width => \"0.333\", :height => \"0\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:style => \"invis\")), Catlab.Graphics.Graphviz.Node(\"n1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"mosquitos\", :fillcolor => \"white\", :id => \"n1\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    mosquitos
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Node(\"n2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"humans\", :fillcolor => \"white\", :id => \"n2\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    humans
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n1\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n2\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"z\", :id => \"e1\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n1\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"x\", :id => \"e2\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n1\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n0out1\", \"n\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"z\", :id => \"e3\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n0out2\", \"n\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"x\", :id => \"e4\"))], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :rankdir => \"TB\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :shape => \"none\", :width => \"0\", :height => \"0\", :margin => \"0\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:arrowsize => \"0.5\", :fontname => \"Serif\"))", + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "G\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n1\n", + "\n", + "mosquitos\n", + "\n", + "\n", + "\n", + "\n", + "n1:s->n0out1:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n2\n", + "\n", + "humans\n", + "\n", + "\n", + "\n", + "\n", + "n1:s->n2:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n2:s->n0out2:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n2:s->n1:n\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 2 + } + ], + "cell_type": "code", + "source": [ + "rm = WiringDiagram([], [:mosquitos, :humans])\n", + "mosq_box = add_box!(rm, Box(:mosquitos, [:x], [:z]))\n", + "human_box = add_box!(rm, Box(:humans, [:z], [:x]))\n", + "output_box = output_id(rm)\n", + "\n", + "add_wires!(rm, Pair[\n", + " (mosq_box, 1) => (human_box, 1),\n", + " (human_box, 1) => (mosq_box, 1),\n", + " (mosq_box, 1) => (output_box, 1),\n", + " (human_box, 1) => (output_box, 2)]\n", + ")\n", + "\n", + "\n", + "to_graphviz(rm)" + ], + "metadata": {}, + "execution_count": 2 + }, + { + "cell_type": "markdown", + "source": [ + "## ODE Model\n", + "Next we implement the concrete mosquito and host dynamics given in Equation (1), and apply them to the diagram\n", + "of systems. This composition is the complete Ross-Macdonald model which we can solve and plot." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "#3 (generic function with 1 method)" + }, + "metadata": {}, + "execution_count": 3 + } + ], + "cell_type": "code", + "source": [ + "dZdt = function(u,x,p,t)\n", + " Z = u[1]\n", + " X = x[1]\n", + " [p.a*p.c*X*(exp(-p.g*p.n) - Z) - p.g*Z]\n", + "end\n", + "\n", + "dXdt = function(u,x,p,t)\n", + " X = u[1]\n", + " Z = x[1]\n", + " [p.m*p.a*p.b*Z*(1 - X) - p.r*X]\n", + "end" + ], + "metadata": {}, + "execution_count": 3 + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "" + }, + "metadata": {}, + "execution_count": 4 + } + ], + "cell_type": "code", + "source": [ + "mosquito_model = ContinuousMachine{Float64}(1, 1, 1, dZdt, (u,p,t) -> u)\n", + "human_model = ContinuousMachine{Float64}(1, 1, 1, dXdt, (u,p,t) -> u)\n", + "\n", + "malaria_model = oapply(rm,\n", + " Dict(:humans => human_model, :mosquitos => mosquito_model)\n", + ")" + ], + "metadata": {}, + "execution_count": 4 + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: Using arrays or dicts to store parameters of different types can hurt performance.\n", + "│ Consider using tuples instead.\n", + "└ @ SciMLBase ~/.julia/packages/SciMLBase/s9wrq/src/performance_warnings.jl:32\n" + ] + } + ], + "cell_type": "code", + "source": [ + "params = LVector(a = 0.3, b = 0.55, c = 0.15,\n", + " g = 0.1, n = 10, r = 1.0/200, m = 0.5)\n", + "\n", + "u0 = [0.1, 0.3]\n", + "tspan = (0.0, 365.0*2)\n", + "\n", + "prob = ODEProblem(malaria_model, u0, tspan, params)\n", + "sol = solve(prob, Tsit5());" + ], + "metadata": {}, + "execution_count": 5 + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: To maintain consistency with solution indexing, keyword argument vars will be removed in a future version. Please use keyword argument idxs instead.\n", + "│ caller = ip:0x0\n", + "└ @ Core :-1\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=4}", + "image/png": "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MDAwLy8vPT1dr9fHxsbOmzdPXGfGjBkPPPCAFUslIiJqfeaD8NChQwqFQqFQXL58+fLlywD8/PwAHDhwwLjOsGHDrFMiERGR5ZgPwqNHj1q5DiIiIpu49ZlliIiI2jEGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQny3VdVFS0Z88emUz28MMPy+Xyhivo9foLFy7cvHkzOjraycmClRARETXGUvGTlZXVv3//+++/X6vVLl269MiRIwEBAaYrXLx4sW/fvh4eHhqNpqioSKFQWKgSIiKiJlhq02hCQsKQIUMSExO//fbb3r17f/DBB/VWCAsLu3z58unTpy1UABERUXNYKgh37tw5ceJEcTkmJiYpKaneCu7u7iqVykI/nYiIqJkstWk0Ozs7JCREXA4JCVGr1X+4q+Kc4rGfj/3Q50PxplQqnTp1qpubWytUSRaj1Wr1er1MJrN1IdQCer1eq9VqtVpbF0Itw1Frgkwmk0pvMeWzVBDq9XqJRGKsQ6fT/eGuqiqrBqgHbDu8rcK1AoCrq+sjjzzi7OzcOoWSZegNbF0ItQBHzU5x1JpwyxSE5YJQpVJpNBpxOScnJzg4+A93FRoaKoHk/VnvY2grFUeWJ5PJ9Ho9J+72RXz/ylGzOzqdjqN2Oyy1jzA6Ojo5OVlcTk5Ojo6OFpfz8/P/4OzwVCtVRkREZMJSM8JFixYNGDDAw8NDp9N99dVXx48fF9uDgoLS0tIGDRpUW1v75JNPVlRUAFi4cGGHDh3WrFnTVI/HLVQpERE5NEsFYVRU1PHjx7dt2yaRSE6cOBEeHi62r1+/PjIyEoBEIrnnnnsAPPjggwBu/YH6YxaqlIiIHJpEEARb13ALLzz/wor3VrhWu+ImEGjraqh5xKNGud/Cvuj1+urqag8PD1sXQi1TVlbm6elp6yrsmB2ca1SQCDdCbwDAYVuXQkRE7Y4dBCGArLAsAPje1nUQEVG7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EAThl19+8fb2Xrp06bJlyxQKxc8//yyuv3Dhwh49eiQkJAwcODA2NtamtZMgCML8+fONR41WVVV169btscceW716dWBg4JYtW8T2xMREf3//VatWTZs2LTIyUhxisr7NmzffcccdCQkJCxcuDAgIuHbtmiAIZWVlERERM2bMWLVqlZ+f3zfffCOu/NlnnwUFBa1evXry5MlRUVHiYaXUhLZ+9YmLFy9u27ZNJpNNmzYtPDzc1uXQ786dO3f48GHTlri4OPEAtitXrvz73/8WBGHKlCl33XWXeK8gCImJiSdPnuzatev06dOdnNruZnkHIW4aHThwoHizqKho48aN+fn5I0aMGDRokOlqe/fuVSqVcXFxSqXSRsUSDh06lJyc7OvrO3XqVOOlsvLz8zdt2lRYWDhq1KgBAwYYVz548GBqaqq/v/+sWbNMT49AZrX1ICQiIrKoNr2PkIiIyNIYhERE5NAYhERE5NAYhERE5NAYhERE5NAYhERE5NAYhERt3YEDB/bs2WPrKojaLX6OkKgNKS8v/+KLL4YMGWI8EQGA8ePHazSaeqcvIKLWwrN7ELUhRUVF8+bN27x5s2kQTp8+vaKiwoZVEbVvDEKitm7SpElm28vKyrRarY+Pj7GloKDAy8vL2dm54cqVlZXFxcVKpVI8DR4RGXEfIVFbcf78+aioKADz589XKpVKpfKLL74AMGvWrHHjxonr/Pjjj0qlcvv27WPGjJHL5UqlctiwYfn5+adOnerZs6evr6+np+ezzz5bW1tr7DYjI2Ps2LFyuVylUimVyvj4+JqaGpv8gkRtE4OQqK0ICwtbt24dgKeeeurLL7/88ssvxQvoFBQU5OXlievodLrCwsIFCxb06dPnyJEjGzdu/OGHH+bMmRMbG7tgwYLjx48vWbIkISEhMTFRXD83N/fBBx/MzMzcvn37+fPn33333Y0bNz799NO2+h2J2iBuGiVqKzw9PR988EEAUVFRTV+4eMyYMeLFde+9997//Oc/mzZt+vTTT2fMmAGgb9++iYmJO3bseOyxxwCsXr26tLT0xIkTQUFBALp3715RUbF48eI33njD19fXGr8VUZvHICSyP3/+85+Ny5GRkQBGjBhh2pKZmSkuJycnR0REnDt3TrymOQBXV1edTnfhwoUHHnjAiiUTtV0MQiL7Y3qAjHjwS70W417A3NzcwsLCyZMn13t4fn6+VSolsgMMQqL2TC6X9+jRIzk52daFELVdPFiGqA3x9PQEUFVV1VodDh48+PDhw2q1urU6JGp/GIREbYhCoQgNDf38888PHDhw4sQJ48Gif9jSpUudnJzGjh178ODBsrKynJyctLS0uLi41iiWqJ1gEBK1LZ988klJScmoUaP69u373Xff3WZvd95554EDB1xcXIYMGeLl5RUUFDR69GiNRtMqpRK1DzzXKFFbJ346Xiq9rbetarVarVZ7eXl16tTJ3d29lUojag8YhERE5NC4aZSIiBwag5CIiBwag5CIiBwag5CIiBwag5CIiBwag5CIiBza/wO4YUTblIJ8egAAAABJRU5ErkJggg==", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 6 + } + ], + "cell_type": "code", + "source": [ + "plot(sol, malaria_model,\n", + " lw=2, title = \"Ross-Macdonald Malaria model\",\n", + " xlabel = \"time\", ylabel = \"proportion infectious\",\n", + " color = [\"magenta\" \"blue\"]\n", + ")\n", + "\n", + "# Plot the equilibrium behavior as well\n", + "a, b, c, g, n, r, m = params\n", + "R0 = (m*a^2*b*c*exp(-g*n))/(r*g)\n", + "X̄ = (R0 - 1)/(R0 + (a*c)/g)\n", + "Z̄ = (a*c*X̄)/(g + a*c*X̄)*exp(-g*n)\n", + "\n", + "N = length(sol)\n", + "plot!(sol.t, fill(X̄, N), label = \"human equilibrium\", ls = :dash, lw = 2, color = \"blue\")\n", + "plot!(sol.t, fill(Z̄, N), label = \"mosquito equilibrium\", ls = :dash, lw = 2, color = \"magenta\")" + ], + "metadata": {}, + "execution_count": 6 + }, + { + "cell_type": "markdown", + "source": [ + "## ODE Model using instantaneous machines\n", + "One way to decouple systems or isolate coupling points between different parts of a dynamical system\n", + "is to use instantaneous machines, which allow processing of information to occur without (optionally) storing\n", + "state themselves." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "In this case we seperate the bloodmeal, where pathogen transmission occurs between the two\n", + "species, into a seperate machine. This way, the dynamics of the human and mosquito machines\n", + "do not need the other's state value, all the information has already been computed in\n", + "the bloodmeal machine. For such a simple system, this arrangement may be superfluous, but in\n", + "complex systems it can be beneficial to have seperate components which compute terms which\n", + "are dependent on state variables \"external\" to a particular machine." + ], + "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "rmb = WiringDiagram([], [:mosquitos, :humans, :bloodmeal])\n", + "mosquito_box = add_box!(rmb, Box(:mosquitos, [:κ], [:Z]))\n", + "human_box = add_box!(rmb, Box(:humans, [:EIR], [:X]))\n", + "bloodmeal_box = add_box!(rmb, Box(:bloodmeal, [:X, :Z], [:κ, :EIR]))\n", + "output_box = output_id(rmb)\n", + "\n", + "add_wires!(rmb, Pair[\n", + " (bloodmeal_box, 1) => (mosquito_box, 1),\n", + " (bloodmeal_box, 2) => (human_box, 1),\n", + " (human_box, 1) => (bloodmeal_box, 1),\n", + " (mosquito_box, 1) => (bloodmeal_box, 2),\n", + " (mosquito_box, 1) => (output_box, 1),\n", + " (human_box, 1) => (output_box, 2)]\n", + ")" + ], + "metadata": {}, + "execution_count": 7 + }, + { + "cell_type": "markdown", + "source": [ + "The wiring diagram is below. The bloodmeal machine computes the EIR (entomological inoculation rate)\n", + "which is proportional to the force of infection upon susceptible humans, and the net infectiousness\n", + "of humans to mosquitoes, commonly denoted $\\kappa$. The EIR is $maZ$ where $Z$ is the mosquito\n", + "state variable, and $\\kappa$ is $cX$ where $X$ is the human state variable." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "These two terms are sent from the bloodmeal machine to the mosquito and human machines\n", + "via their input ports. Then the dynamical system filling the mosquito machine is\n", + "$\\dot{Z} = a\\kappa (e^{-gn} - Z) - gZ$ and $\\dot{X} = bEIR(1-X) - rX$ is the dynamical system\n", + "filling the human machine." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Catlab.Graphics.Graphviz.Graph(\"G\", true, \"dot\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Subgraph(\"\", Catlab.Graphics.Graphviz.Statement[Catlab.Graphics.Graphviz.Node(\"n0out1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"out1\")), Catlab.Graphics.Graphviz.Node(\"n0out2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"out2\")), Catlab.Graphics.Graphviz.Node(\"n0out3\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:id => \"out3\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n0out1\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n0out2\", \"\", \"\"), Catlab.Graphics.Graphviz.NodeID(\"n0out3\", \"\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}())], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:rank => \"sink\", :rankdir => \"LR\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:style => \"invis\", :shape => \"none\", :label => \"\", :width => \"0.333\", :height => \"0\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:style => \"invis\")), Catlab.Graphics.Graphviz.Node(\"n1\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"mosquitos\", :fillcolor => \"white\", :id => \"n1\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    mosquitos
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Node(\"n2\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"humans\", :fillcolor => \"white\", :id => \"n2\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    humans
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Node(\"n3\", OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:color => \"black\", :comment => \"bloodmeal\", :fillcolor => \"white\", :id => \"n3\", :label => Catlab.Graphics.Graphviz.Html(\"\\n\\n\\n\\n
    bloodmeal
    \"), :style => \"solid\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n1\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"κ\", :id => \"e1\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n3\", \"out2\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n2\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"EIR\", :id => \"e2\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n3\", \"in1\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"X\", :id => \"e3\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n1\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n3\", \"in2\", \"n\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"Z\", :id => \"e4\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n1\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n0out1\", \"n\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"Z\", :id => \"e5\")), Catlab.Graphics.Graphviz.Edge(Catlab.Graphics.Graphviz.NodeID[Catlab.Graphics.Graphviz.NodeID(\"n2\", \"out1\", \"s\"), Catlab.Graphics.Graphviz.NodeID(\"n0out2\", \"n\", \"\")], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:comment => \"X\", :id => \"e6\"))], OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :rankdir => \"TB\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:fontname => \"Serif\", :shape => \"none\", :width => \"0\", :height => \"0\", :margin => \"0\"), OrderedCollections.OrderedDict{Symbol, Union{String, Catlab.Graphics.Graphviz.Html}}(:arrowsize => \"0.5\", :fontname => \"Serif\"))", + "image/svg+xml": [ + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "G\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n1\n", + "\n", + "mosquitos\n", + "\n", + "\n", + "\n", + "\n", + "n1:s->n0out1:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n3\n", + "\n", + "bloodmeal\n", + "\n", + "\n", + "\n", + "\n", + "n1:s->n3:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n2\n", + "\n", + "humans\n", + "\n", + "\n", + "\n", + "\n", + "n2:s->n0out2:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n2:s->n3:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n3:s->n1:n\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "n3:s->n2:n\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 8 + } + ], + "cell_type": "code", + "source": [ + "to_graphviz(rmb)" + ], + "metadata": {}, + "execution_count": 8 + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "" + }, + "metadata": {}, + "execution_count": 9 + } + ], + "cell_type": "code", + "source": [ + "bloodmeal = function(u,x,p,t)\n", + " X = x[1]\n", + " Z = x[2]\n", + " [p.c*X, p.m*p.a*Z]\n", + "end\n", + "\n", + "dZdt = function(u,x,p,t)\n", + " Z = u[1]\n", + " κ = x[1]\n", + " [p.a*κ*(exp(-p.g*p.n) - Z) - p.g*Z]\n", + "end\n", + "\n", + "dXdt = function(u,x,p,t)\n", + " X = u[1]\n", + " EIR = x[1]\n", + " [p.b*EIR*(1 - X) - p.r*X]\n", + "end\n", + "\n", + "bloodmeal_model = InstantaneousContinuousMachine{Float64}(2, 0, 2, (u,x,p,t)->u, bloodmeal, [1=>1,2=>2])\n", + "mosquito_model = ContinuousMachine{Float64}(1, 1, 1, dZdt, (u,p,t) -> u)\n", + "human_model = ContinuousMachine{Float64}(1, 1, 1, dXdt, (u,p,t) -> u)\n", + "\n", + "instantaneous_mosquito_model = InstantaneousContinuousMachine{Float64}(mosquito_model)\n", + "instantaneous_human_model = InstantaneousContinuousMachine{Float64}(human_model)\n", + "\n", + "malaria_model = oapply(rmb,\n", + " Dict(:mosquitos => instantaneous_mosquito_model, :humans => instantaneous_human_model, :bloodmeal => bloodmeal_model)\n", + ")" + ], + "metadata": {}, + "execution_count": 9 + }, + { + "cell_type": "markdown", + "source": [ + "We use the same parameter values as previously given to solve the composed system, and plot\n", + "the analytic equilibrium. Results are the same as for the previous system." + ], + "metadata": {} + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: Using arrays or dicts to store parameters of different types can hurt performance.\n", + "│ Consider using tuples instead.\n", + "└ @ SciMLBase ~/.julia/packages/SciMLBase/s9wrq/src/performance_warnings.jl:32\n" + ] + } + ], + "cell_type": "code", + "source": [ + "prob = ODEProblem(malaria_model, u0, tspan, params)\n", + "sol = solve(prob, Tsit5());" + ], + "metadata": {}, + "execution_count": 10 + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=4}", + "image/png": "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MDAwLy8vPT1dr9fHxsbOmzdPXGfGjBkPPPCAFUslIiJqfeaD8NChQwqFQqFQXL58+fLlywD8/PwAHDhwwLjOsGHDrFMiERGR5ZgPwqNHj1q5DiIiIpu49ZlliIiI2jEGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQGIREROTQny3VdVFS0Z88emUz28MMPy+Xyhivo9foLFy7cvHkzOjraycmClRARETXGUvGTlZXVv3//+++/X6vVLl269MiRIwEBAaYrXLx4sW/fvh4eHhqNpqioSKFQWKgSIiKiJlhq02hCQsKQIUMSExO//fbb3r17f/DBB/VWCAsLu3z58unTpy1UABERUXNYKgh37tw5ceJEcTkmJiYpKaneCu7u7iqVykI/nYiIqJkstWk0Ozs7JCREXA4JCVGr1X+4q+Kc4rGfj/3Q50PxplQqnTp1qpubWytUSRaj1Wr1er1MJrN1IdQCer1eq9VqtVpbF0Itw1Frgkwmk0pvMeWzVBDq9XqJRGKsQ6fT/eGuqiqrBqgHbDu8rcK1AoCrq+sjjzzi7OzcOoWSZegNbF0ItQBHzU5x1JpwyxSE5YJQpVJpNBpxOScnJzg4+A93FRoaKoHk/VnvY2grFUeWJ5PJ9Ho9J+72RXz/ylGzOzqdjqN2Oyy1jzA6Ojo5OVlcTk5Ojo6OFpfz8/P/4OzwVCtVRkREZMJSM8JFixYNGDDAw8NDp9N99dVXx48fF9uDgoLS0tIGDRpUW1v75JNPVlRUAFi4cGGHDh3WrFnTVI/HLVQpERE5NEsFYVRU1PHjx7dt2yaRSE6cOBEeHi62r1+/PjIyEoBEIrnnnnsAPPjggwBu/YH6YxaqlIiIHJpEEARb13ALLzz/wor3VrhWu+ImEGjraqh5xKNGud/Cvuj1+urqag8PD1sXQi1TVlbm6elp6yrsmB2ca1SQCDdCbwDAYVuXQkRE7Y4dBCGArLAsAPje1nUQEVG7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EAThl19+8fb2Xrp06bJlyxQKxc8//yyuv3Dhwh49eiQkJAwcODA2NtamtZMgCML8+fONR41WVVV169btscceW716dWBg4JYtW8T2xMREf3//VatWTZs2LTIyUhxisr7NmzffcccdCQkJCxcuDAgIuHbtmiAIZWVlERERM2bMWLVqlZ+f3zfffCOu/NlnnwUFBa1evXry5MlRUVHiYaXUhLZ+9YmLFy9u27ZNJpNNmzYtPDzc1uXQ786dO3f48GHTlri4OPEAtitXrvz73/8WBGHKlCl33XWXeK8gCImJiSdPnuzatev06dOdnNruZnkHIW4aHThwoHizqKho48aN+fn5I0aMGDRokOlqe/fuVSqVcXFxSqXSRsUSDh06lJyc7OvrO3XqVOOlsvLz8zdt2lRYWDhq1KgBAwYYVz548GBqaqq/v/+sWbNMT49AZrX1ICQiIrKoNr2PkIiIyNIYhERE5NAYhERE5NAYhERE5NAYhERE5NAYhERE5NAYhERt3YEDB/bs2WPrKojaLX6OkKgNKS8v/+KLL4YMGWI8EQGA8ePHazSaeqcvIKLWwrN7ELUhRUVF8+bN27x5s2kQTp8+vaKiwoZVEbVvDEKitm7SpElm28vKyrRarY+Pj7GloKDAy8vL2dm54cqVlZXFxcVKpVI8DR4RGXEfIVFbcf78+aioKADz589XKpVKpfKLL74AMGvWrHHjxonr/Pjjj0qlcvv27WPGjJHL5UqlctiwYfn5+adOnerZs6evr6+np+ezzz5bW1tr7DYjI2Ps2LFyuVylUimVyvj4+JqaGpv8gkRtE4OQqK0ICwtbt24dgKeeeurLL7/88ssvxQvoFBQU5OXlievodLrCwsIFCxb06dPnyJEjGzdu/OGHH+bMmRMbG7tgwYLjx48vWbIkISEhMTFRXD83N/fBBx/MzMzcvn37+fPn33333Y0bNz799NO2+h2J2iBuGiVqKzw9PR988EEAUVFRTV+4eMyYMeLFde+9997//Oc/mzZt+vTTT2fMmAGgb9++iYmJO3bseOyxxwCsXr26tLT0xIkTQUFBALp3715RUbF48eI33njD19fXGr8VUZvHICSyP3/+85+Ny5GRkQBGjBhh2pKZmSkuJycnR0REnDt3TrymOQBXV1edTnfhwoUHHnjAiiUTtV0MQiL7Y3qAjHjwS70W417A3NzcwsLCyZMn13t4fn6+VSolsgMMQqL2TC6X9+jRIzk52daFELVdPFiGqA3x9PQEUFVV1VodDh48+PDhw2q1urU6JGp/GIREbYhCoQgNDf38888PHDhw4sQJ48Gif9jSpUudnJzGjh178ODBsrKynJyctLS0uLi41iiWqJ1gEBK1LZ988klJScmoUaP69u373Xff3WZvd95554EDB1xcXIYMGeLl5RUUFDR69GiNRtMqpRK1DzzXKFFbJ346Xiq9rbetarVarVZ7eXl16tTJ3d29lUojag8YhERE5NC4aZSIiBwag5CIiBwag5CIiBwag5CIiBwag5CIiBwag5CIiBza/wO4YUTblIJ8egAAAABJRU5ErkJggg==", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 11 + } + ], + "cell_type": "code", + "source": [ + "plot(sol, label = [\"mosquitos\" \"humans\"],\n", + " lw=2, title = \"Ross-Macdonald Malaria model\",\n", + " xlabel = \"time\", ylabel = \"proportion infectious\",\n", + " color = [\"magenta\" \"blue\"]\n", + ")\n", + "N = length(sol)\n", + "plot!(sol.t, fill(X̄, N), label = \"human equilibrium\", ls = :dash, lw = 2, color = \"blue\")\n", + "plot!(sol.t, fill(Z̄, N), label = \"mosquito equilibrium\", ls = :dash, lw = 2, color = \"magenta\")" + ], + "metadata": {}, + "execution_count": 11 + }, + { + "cell_type": "markdown", + "source": [ + "## Delay Model\n", + "The previous models did not capture the incubation period for the disease in the\n", + "mosquito population. To do so we can replace the models with delay differential equations\n", + "and apply them to the same diagram of systems representing the bloodmeal." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "#23 (generic function with 1 method)" + }, + "metadata": {}, + "execution_count": 12 + } + ], + "cell_type": "code", + "source": [ + "dzdt_delay = function(u,x,h,p,t)\n", + " Y, Z = u\n", + " Y_delay, Z_delay = h(p, t - p.n)\n", + " X, X_delay = x[1]\n", + "\n", + " [p.a*p.c*X*(1 - Y - Z) -\n", + " p.a*p.c*X_delay*(1 - Y_delay - Z_delay)*exp(-p.g*p.n) -\n", + " p.g*Y,\n", + " p.a*p.c*X_delay*(1 - Y_delay - Z_delay)*exp(-p.g*p.n) -\n", + " p.g*Z]\n", + "end\n", + "\n", + "dxdt_delay = function(u,x,h,p,t)\n", + " X, = u\n", + " Z, _ = x[1]\n", + " [p.m*p.a*p.b*Z*(1 - X) - p.r*X]\n", + "end" + ], + "metadata": {}, + "execution_count": 12 + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "" + }, + "metadata": {}, + "execution_count": 13 + } + ], + "cell_type": "code", + "source": [ + "mosquito_delay_model = DelayMachine{Float64, 2}(\n", + " 1, 2, 1, dzdt_delay, (u,h,p,t) -> [[u[2], h(p,t - p.n)[2]]])\n", + "\n", + "human_delay_model = DelayMachine{Float64, 2}(\n", + " 1, 1, 1, dxdt_delay, (u,h,p,t) -> [[u[1], h(p, t - p.n)[1]]])\n", + "\n", + "malaria_delay_model = oapply(rm,\n", + " Dict(:humans => human_delay_model, :mosquitos => mosquito_delay_model)\n", + ")" + ], + "metadata": {}, + "execution_count": 13 + }, + { + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "┌ Warning: Using arrays or dicts to store parameters of different types can hurt performance.\n", + "│ Consider using tuples instead.\n", + "└ @ SciMLBase ~/.julia/packages/SciMLBase/s9wrq/src/performance_warnings.jl:32\n", + "┌ Warning: Using arrays or dicts to store parameters of different types can hurt performance.\n", + "│ Consider using tuples instead.\n", + "└ @ SciMLBase ~/.julia/packages/SciMLBase/s9wrq/src/performance_warnings.jl:32\n", + "┌ Warning: Using arrays or dicts to store parameters of different types can hurt performance.\n", + "│ Consider using tuples instead.\n", + "└ @ SciMLBase ~/.julia/packages/SciMLBase/s9wrq/src/performance_warnings.jl:32\n", + "┌ Warning: Using arrays or dicts to store parameters of different types can hurt performance.\n", + "│ Consider using tuples instead.\n", + "└ @ SciMLBase ~/.julia/packages/SciMLBase/s9wrq/src/performance_warnings.jl:32\n" + ] + }, + { + "output_type": "execute_result", + "data": { + "text/plain": "Plot{Plots.GRBackend() n=5}", + "image/png": "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", + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "metadata": {}, + "execution_count": 14 + } + ], + "cell_type": "code", + "source": [ + "params = LVector(a = 0.3, b = 0.55, c = 0.15,\n", + " g = 0.1, n = 10, r = 1.0/200, m = 0.5)\n", + "\n", + "u0_delay = [0.09, .01, 0.3]\n", + "tspan = (0.0, 365.0*3)\n", + "hist(p,t) = u0_delay;\n", + "\n", + "prob = DDEProblem(malaria_delay_model, u0_delay, [], hist, tspan, params)\n", + "alg = MethodOfSteps(Tsit5())\n", + "sol = solve(prob, alg)\n", + "\n", + "plot(sol, label=[\"non-infectious mosquito population\" \"infectious mosquito population\" \"host population\"],\n", + " lw=2, title = \"Ross-Macdonald malaria model\",\n", + " xlabel = \"time\", ylabel = \"proportion infectious\",\n", + " color = [\"magenta\" \"red\" \"blue\"]\n", + ")\n", + "N = length(sol)\n", + "plot!(sol.t, fill(X̄, N), label = \"human equilibrium\", ls = :dash, lw = 2, color = \"blue\")\n", + "plot!(sol.t, fill(Z̄, N), label = \"infectious mosquito equilibrium\", ls = :dash, lw = 2, color = \"red\")" + ], + "metadata": {}, + "execution_count": 14 + }, + { + "cell_type": "markdown", + "source": [ + "While the equilibrium points of the two models are identical, they exhibit different dynamical behavior\n", + "before settling down to equilibrium. Because models are often used to examine how the system may respond\n", + "to intervention, incorporating additional biological realism can produce more plausible results regarding\n", + "the expected time for interventions to affect the system. In any case, such simple models are best used as\n", + "tools to explain basic concepts in malaria epidemiology rather than descriptions of real systems, which are\n", + "likely far from equilibrium and affected by weather, climate, policy, and other external forces." + ], + "metadata": {} + } + ], + "nbformat_minor": 3, + "metadata": { + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.9.1" + }, + "kernelspec": { + "name": "julia-1.9", + "display_name": "Julia 1.9.1", + "language": "julia" + } + }, + "nbformat": 4 +} diff --git a/v0.2.0/examples/Ross-Macdonald/index.html b/v0.2.0/examples/Ross-Macdonald/index.html new file mode 100644 index 0000000..f354c57 --- /dev/null +++ b/v0.2.0/examples/Ross-Macdonald/index.html @@ -0,0 +1,446 @@ + +Ross-Macdonald Malaria Modeling · AlgebraicDynamics.jl

    Ross-Macdonald Malaria Modeling

    Authors: Sean L. Wu and Sophie Libkind

    using AlgebraicDynamics.DWDDynam
    +using Catlab.WiringDiagrams
    +using LabelledArrays
    +
    +using Catlab.Graphics
    +using DelayDiffEq, DifferentialEquations
    +using Plots

    The Ross-Macdonald (RM) model is the canonical model of malaria transmission, first expressed by Sir Ronald Ross in 1911. The simplest form of the model is given by a system of 2 nonlinear ordinary differential equations describing $Z$, parasite prevalence in the mosquito vector population, and $X$, parasite prevalence in the vertebrate host population: $ \dot X = mazbZ(1 - X) - rX, \quad \dot Z = acX (e^{-gn} - Z) - gZ \quad (1)$

    The RM model is of supreme importance to modeling of malaria and other mosquito transmitted diseases because it is the simplest model that retains the fundamental processes involved in transmission: recovery of infected hosts, death of infected mosquitoes, and parasite transmission between discordant pairs of vectors and hosts. In this sense it represents the irreducible complexity to modeling mosquito borne diseases, such that any simpler model would be insufficient.

    The model assumes that mosquitoes take bloodmeals (bites) on vertebrate hosts with rate $a$. Therefore, the per-capita rate at which susceptible mosquitoes become infected is $acX$, where $c$ is the transmission efficiency from infectious humans to susceptible mosquitoes (probability of parasites successfully invading the mosquito given a bite occurs) and $X$ is the probability the bite lands on an infectious human. $1-Z$ is the proportion of mosquitoes who are susceptible but given an incubation period of $n$ days during which mosquitoes suffer per-capita mortality at rate $g$, only a proportion $e^{-gn}$ survive incubation to become infectious. Therefore the classic RM model will have statics that are consistent with the incorporation of an incubation period of fixed duration, but dynamics will not, as the delay is not incorporated into the equations.

    Susceptible humans acquire infection at a rate $mabZ$, where $m = M/H$, the ratio of mosquitoes to humans, $a$ is as before, and $b$ is the transmission efficiency from infectious mosquitoes to susceptible humans. Therefore $mabZ$ gives the per-capita rate at which susceptible humans recieve parasites from the mosquito population. Infectious humans recover at a rate $r$ (the rate at which the immune system clears parasites). Because $m$ is considered a constant parameter, the model ignores seasonal fluctuations in mosquito (or host) population sizes. However, because the timescale of host dynamcis is typically slow in relation to mosquito dynamics, the approximation is often suitable over a transmission season.

    The model's threshold criterion between the trivial equilibrium where both $Z,X$ are equal to zero (no disease) and the endemic equilibrium can be expressed by the basic reproductive number, giving the expected number of secondary infections arising from the introduction of a single infectious human, $R_0 = \frac{ma^2bce^{-gn}}{rg}.$ The endemic equilibrium is therefore: $\bar{X}= \frac{R_{0}-1}{R_{0} + \frac{ac}{g}}, \quad \bar{Z} = \frac{ac\bar{X}}{g + ac\bar{X}} e^{-gn}.$

    From these equations, the nonlinear relationships that characterize observed malaria transmission can be understood. We implement them as follows:

    Diagram of Systems

    First we must construct a diagram of systems which describes the interaction between the mosquito and host populations. The arrows between the two subsystems represents the bidirectional infection during bloodmeals.

    rm = WiringDiagram([], [:mosquitos, :humans])
    +mosq_box   = add_box!(rm, Box(:mosquitos, [:x], [:z]))
    +human_box  = add_box!(rm, Box(:humans, [:z], [:x]))
    +output_box = output_id(rm)
    +
    +add_wires!(rm, Pair[
    +    (mosq_box, 1)  => (human_box, 1),
    +    (human_box, 1) => (mosq_box, 1),
    +    (mosq_box, 1)  => (output_box, 1),
    +    (human_box, 1) => (output_box, 2)]
    +)
    +
    +
    +to_graphviz(rm)

    ODE Model

    Next we implement the concrete mosquito and host dynamics given in Equation (1), and apply them to the diagram of systems. This composition is the complete Ross-Macdonald model which we can solve and plot.

    dZdt = function(u,x,p,t)
    +    Z = u[1]
    +    X = x[1]
    +    [p.a*p.c*X*(exp(-p.g*p.n) - Z) - p.g*Z]
    +end
    +
    +dXdt = function(u,x,p,t)
    +    X = u[1]
    +    Z = x[1]
    +    [p.m*p.a*p.b*Z*(1 - X) - p.r*X]
    +end
    #3 (generic function with 1 method)
    mosquito_model = ContinuousMachine{Float64}(1, 1, 1, dZdt, (u,p,t) -> u)
    +human_model    = ContinuousMachine{Float64}(1, 1, 1, dXdt, (u,p,t) ->  u)
    +
    +malaria_model = oapply(rm,
    +    Dict(:humans => human_model, :mosquitos => mosquito_model)
    +)
    params = LVector(a = 0.3, b = 0.55, c = 0.15,
    +    g = 0.1, n = 10, r = 1.0/200, m = 0.5)
    +
    +u0 = [0.1, 0.3]
    +tspan = (0.0, 365.0*2)
    +
    +prob = ODEProblem(malaria_model, u0, tspan, params)
    +sol = solve(prob, Tsit5());
    ┌ Warning: Using arrays or dicts to store parameters of different types can hurt performance.
    +│ Consider using tuples instead.
    +└ @ SciMLBase ~/.julia/packages/SciMLBase/s9wrq/src/performance_warnings.jl:32
    plot(sol, malaria_model,
    +    lw=2, title = "Ross-Macdonald Malaria model",
    +    xlabel = "time", ylabel = "proportion infectious",
    +    color = ["magenta" "blue"]
    +)
    +
    +# Plot the equilibrium behavior as well
    +a, b, c, g, n, r, m = params
    +R0 = (m*a^2*b*c*exp(-g*n))/(r*g)
    +X̄ = (R0 - 1)/(R0 + (a*c)/g)
    +Z̄ = (a*c*X̄)/(g + a*c*X̄)*exp(-g*n)
    +
    +N = length(sol)
    +plot!(sol.t, fill(X̄, N), label = "human equilibrium", ls = :dash, lw = 2, color = "blue")
    +plot!(sol.t, fill(Z̄, N), label = "mosquito equilibrium", ls = :dash, lw = 2, color = "magenta")
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    ODE Model using instantaneous machines

    One way to decouple systems or isolate coupling points between different parts of a dynamical system is to use instantaneous machines, which allow processing of information to occur without (optionally) storing state themselves.

    In this case we seperate the bloodmeal, where pathogen transmission occurs between the two species, into a seperate machine. This way, the dynamics of the human and mosquito machines do not need the other's state value, all the information has already been computed in the bloodmeal machine. For such a simple system, this arrangement may be superfluous, but in complex systems it can be beneficial to have seperate components which compute terms which are dependent on state variables "external" to a particular machine.

    rmb = WiringDiagram([], [:mosquitos, :humans, :bloodmeal])
    +mosquito_box = add_box!(rmb, Box(:mosquitos, [:κ], [:Z]))
    +human_box = add_box!(rmb, Box(:humans, [:EIR], [:X]))
    +bloodmeal_box = add_box!(rmb, Box(:bloodmeal, [:X, :Z], [:κ, :EIR]))
    +output_box = output_id(rmb)
    +
    +add_wires!(rmb, Pair[
    +    (bloodmeal_box, 1)  => (mosquito_box, 1),
    +    (bloodmeal_box, 2) => (human_box, 1),
    +    (human_box, 1)  => (bloodmeal_box, 1),
    +    (mosquito_box, 1) => (bloodmeal_box, 2),
    +    (mosquito_box, 1)  => (output_box, 1),
    +    (human_box, 1) => (output_box, 2)]
    +)

    The wiring diagram is below. The bloodmeal machine computes the EIR (entomological inoculation rate) which is proportional to the force of infection upon susceptible humans, and the net infectiousness of humans to mosquitoes, commonly denoted $\kappa$. The EIR is $maZ$ where $Z$ is the mosquito state variable, and $\kappa$ is $cX$ where $X$ is the human state variable.

    These two terms are sent from the bloodmeal machine to the mosquito and human machines via their input ports. Then the dynamical system filling the mosquito machine is $\dot{Z} = a\kappa (e^{-gn} - Z) - gZ$ and $\dot{X} = bEIR(1-X) - rX$ is the dynamical system filling the human machine.

    to_graphviz(rmb)
    bloodmeal = function(u,x,p,t)
    +    X = x[1]
    +    Z = x[2]
    +    [p.c*X, p.m*p.a*Z]
    +end
    +
    +dZdt = function(u,x,p,t)
    +    Z = u[1]
    +    κ = x[1]
    +    [p.a*κ*(exp(-p.g*p.n) - Z) - p.g*Z]
    +end
    +
    +dXdt = function(u,x,p,t)
    +    X = u[1]
    +    EIR = x[1]
    +    [p.b*EIR*(1 - X) - p.r*X]
    +end
    +
    +bloodmeal_model = InstantaneousContinuousMachine{Float64}(2, 0, 2, (u,x,p,t)->u, bloodmeal, [1=>1,2=>2])
    +mosquito_model = ContinuousMachine{Float64}(1, 1, 1, dZdt, (u,p,t) -> u)
    +human_model    = ContinuousMachine{Float64}(1, 1, 1, dXdt, (u,p,t) ->  u)
    +
    +instantaneous_mosquito_model = InstantaneousContinuousMachine{Float64}(mosquito_model)
    +instantaneous_human_model = InstantaneousContinuousMachine{Float64}(human_model)
    +
    +malaria_model = oapply(rmb,
    +    Dict(:mosquitos => instantaneous_mosquito_model, :humans => instantaneous_human_model, :bloodmeal => bloodmeal_model)
    +)

    We use the same parameter values as previously given to solve the composed system, and plot the analytic equilibrium. Results are the same as for the previous system.

    prob = ODEProblem(malaria_model, u0, tspan, params)
    +sol = solve(prob, Tsit5());
    ┌ Warning: Using arrays or dicts to store parameters of different types can hurt performance.
    +│ Consider using tuples instead.
    +└ @ SciMLBase ~/.julia/packages/SciMLBase/s9wrq/src/performance_warnings.jl:32
    plot(sol, label = ["mosquitos" "humans"],
    +    lw=2, title = "Ross-Macdonald Malaria model",
    +    xlabel = "time", ylabel = "proportion infectious",
    +    color = ["magenta" "blue"]
    +)
    +N = length(sol)
    +plot!(sol.t, fill(X̄, N), label = "human equilibrium", ls = :dash, lw = 2, color = "blue")
    +plot!(sol.t, fill(Z̄, N), label = "mosquito equilibrium", ls = :dash, lw = 2, color = "magenta")
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    Delay Model

    The previous models did not capture the incubation period for the disease in the mosquito population. To do so we can replace the models with delay differential equations and apply them to the same diagram of systems representing the bloodmeal.

    dzdt_delay = function(u,x,h,p,t)
    +    Y, Z = u
    +    Y_delay, Z_delay = h(p, t - p.n)
    +    X, X_delay = x[1]
    +
    +    [p.a*p.c*X*(1 - Y - Z) -
    +        p.a*p.c*X_delay*(1 - Y_delay - Z_delay)*exp(-p.g*p.n) -
    +        p.g*Y,
    +    p.a*p.c*X_delay*(1 - Y_delay - Z_delay)*exp(-p.g*p.n) -
    +        p.g*Z]
    +end
    +
    +dxdt_delay = function(u,x,h,p,t)
    +    X, = u
    +    Z, _ = x[1]
    +    [p.m*p.a*p.b*Z*(1 - X) - p.r*X]
    +end
    #23 (generic function with 1 method)
    mosquito_delay_model = DelayMachine{Float64, 2}(
    +    1, 2, 1, dzdt_delay, (u,h,p,t) -> [[u[2], h(p,t - p.n)[2]]])
    +
    +human_delay_model = DelayMachine{Float64, 2}(
    +    1, 1, 1, dxdt_delay, (u,h,p,t) -> [[u[1], h(p, t - p.n)[1]]])
    +
    +malaria_delay_model = oapply(rm,
    +    Dict(:humans => human_delay_model, :mosquitos => mosquito_delay_model)
    +)
    params = LVector(a = 0.3, b = 0.55, c = 0.15,
    +    g = 0.1, n = 10, r = 1.0/200, m = 0.5)
    +
    +u0_delay = [0.09, .01, 0.3]
    +tspan = (0.0, 365.0*3)
    +hist(p,t) = u0_delay;
    +
    +prob = DDEProblem(malaria_delay_model, u0_delay, [], hist, tspan, params)
    +alg = MethodOfSteps(Tsit5())
    +sol = solve(prob, alg)
    +
    +plot(sol, label=["non-infectious mosquito population" "infectious mosquito population" "host population"],
    +    lw=2, title = "Ross-Macdonald malaria model",
    +    xlabel = "time", ylabel = "proportion infectious",
    +    color = ["magenta" "red" "blue"]
    +)
    +N = length(sol)
    +plot!(sol.t, fill(X̄, N), label = "human equilibrium", ls = :dash, lw = 2, color = "blue")
    +plot!(sol.t, fill(Z̄, N), label = "infectious mosquito equilibrium", ls = :dash, lw = 2, color = "red")
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    While the equilibrium points of the two models are identical, they exhibit different dynamical behavior before settling down to equilibrium. Because models are often used to examine how the system may respond to intervention, incorporating additional biological realism can produce more plausible results regarding the expected time for interventions to affect the system. In any case, such simple models are best used as tools to explain basic concepts in malaria epidemiology rather than descriptions of real systems, which are likely far from equilibrium and affected by weather, climate, policy, and other external forces.

    diff --git a/v0.2.0/index.html b/v0.2.0/index.html new file mode 100644 index 0000000..cac3ef6 --- /dev/null +++ b/v0.2.0/index.html @@ -0,0 +1,2 @@ + +AlgebraicDynamics.jl · AlgebraicDynamics.jl

    AlgebraicDynamics.jl

    AlgebraicDynamics.jl is a library for compositional dynamical systems. We build on Catlab.jl to provide a software interface for specifying and solving dynamical systems with compositional and hierarchical structure. The implementation of the composition of dynamical systems follows the mathematics of operads and operad algebras.

    Composing Dynamical Systems

    The general process for composing dynamical systems is as follows:

    1. Pick a composition syntax. A composition syntax may be either undirected or directed. In this library, composition is implemented for the following syntaxes:

      • undirected wiring diagrams (an undirected composition syntax)
      • wiring diagrams (a directed composition syntax)
      • open circular port graphs, also called open CPGs (a directed composition syntax)
    2. Define a composition pattern. Implement a specific undirected wiring diagram, wiring diagram, or open CPG that defines how the primitive systems will be composed. The number of boxes in the composition pattern is the number of primitive systems that will be composed.

    3. Define the primitive systems to compose.

      • For an undirected composition pattern, the primitive systems are implemented by resource sharers. A resource sharer has four components:

        • ports
        • states
        • a dynamics function, $f$
        • a port map, $m$

        The dynamics function can be either continuous time $\dot u(t) = f(u(t), p, t)$ or discrete time $u_{n +1} = f(u_n, p, t)$. In both cases, $u$ contains the state and $p$ contains the parameters. Also in both cases, the port map assigns a state to each port. We say the port exposes the state it is assigned. For continuous time use ContinuousResourceSharer{T} and for discrete time use DiscreteResourceSharer{T}. The type T represents the values that the states can take on.

      • For a directed composition pattern, the primitive systems are implemented by machines. A machine has five components:

        • inputs (also called exogenous variables)
        • states
        • outputs
        • a dynamics function, $f$
        • a readout function, $r$

        The dynamics function can be either continuous time $\dot u(t) = f(u(t), x(t), p, t)$ or discrete time $u_{n+1} = f(u_n, x_n, p, t)$. In both cases, $u$ contains the state, $x$ contains the exogenous variables, and $p$ contains the parameters. Also in both cases, the readout function $r(u(t))$ is a function of the state. For continuous time use ContinuousMachine{T} and for discrete time use DiscreteMachine{T}. The type T represents the values that the inputs, states, and outputs can take on.

    4. Compose. The oapply method takes a composition pattern and primitive systems, and it returns the composite system. Each oapply method implements an operad algebra which specifies a regime for composing dynamical systems. See [Schultz et al. 2019] and [Vagner et al. 2015] for definitions of the operad algebras $\mathsf{CDS}$ and $\mathsf{DDS}$ for directed composition. See [Baez and Pollard 2017] for definitions of the operad algebra $\mathsf{Dynam}$ for undirected composition. See [Libkind 2020] for a general overview of these operad algebras.

    Solving Dynamical Systems

    Once you have built the composite system, you can solve it and plot the solution.

    • For continuous machines and resource sharers, you can construct an ODEProblem or a DDEProblem. When the composition pattern is a wiring diagram, we recommend solvers Tsit5() with dtmax specified and FRK65(w=0).
    • For discrete machines and resource sharers, you can construct a DiscreteProblem or explicitly compute a trajectory.

    In either case, be sure to import OrdinaryDiffEq.jl.

    Future Work

    • Add more integrators beyond the simple Euler's method
    • Include higher order polynomial methods and symplectic and implicit methods for physical problems
    • Integrate with AlgebraicPetri.jl
    diff --git a/v0.2.0/search/index.html b/v0.2.0/search/index.html new file mode 100644 index 0000000..32b3b13 --- /dev/null +++ b/v0.2.0/search/index.html @@ -0,0 +1,2 @@ + +Search · AlgebraicDynamics.jl

    Loading search...

      diff --git a/v0.2.0/search_index.js b/v0.2.0/search_index.js new file mode 100644 index 0000000..7ac4b07 --- /dev/null +++ b/v0.2.0/search_index.js @@ -0,0 +1,3 @@ +var documenterSearchIndex = {"docs": +[{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"EditURL = \"https://github.com/AlgebraicJulia/AlgebraicDynamics.jl/blob/main/examples/Cyber-Physical.jl\"","category":"page"},{"location":"examples/Cyber-Physical/#cyberphysical_example","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"","category":"section"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"(Image: )","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"Authors: Georgios Bakirtzis https://bakirtzis.net/ and Raul Gonzalez Garcia (raulg@iastate.edu)","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"The following example is a mechanization from","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"Compositional Cyber-Physical Systems Modeling - http://dx.doi.org/10.4204/EPTCS.333.9\nCategorical Semantics of Cyber-Physical Systems Theory - https://doi.org/10.1145/3461669","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"using AlgebraicDynamics\nusing AlgebraicDynamics.DWDDynam\n\nusing Catlab.WiringDiagrams\nusing Catlab.Graphics\nusing Catlab.Graphics.Graphviz\n\nusing LabelledArrays\nusing DifferentialEquations\nusing Plots","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"We use functorial semantics to model a cyper-physical system, namely an unmanned aerial vehicle (UAV). We define a diagram of systems (the composition syntax) that is the architecture of the composition. Then, we apply behaviors of the individual parts of the system to the architecture. This composition produces a complete UAV model.","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"We first have to define our boxes and specify what the inports and outports are. For example, the sensor box has two inports :e and :s and one outport s_prime.","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"s = Box(:sensor, [:s, :e], [:s′])\nc = Box(:controller, [:d, :s′], [:c])\nd = Box(:dynamics, [:c], [:s]);\nnothing #hide","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"A wiring diagram has outer inports and outports which define the interface of target system. Then we add the boxes and wires to the diagram and visualize the result.","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"UAV = WiringDiagram([:e,:d], [:s])\n\nsensor = add_box!(UAV, s)\ncontroller = add_box!(UAV, c)\ndynamics = add_box!(UAV, d)\n\nadd_wires!(UAV, [\n # net inputs\n (input_id(UAV), 1) => (sensor, 2),\n (input_id(UAV), 2) => (controller, 2),\n\n # connections\n (sensor, 1) => (controller, 1),\n (controller, 1) => (dynamics, 1),\n (dynamics, 1) => (sensor, 1),\n\n # net output\n (dynamics, 1) => (output_id(UAV), 1)\n]);\nnothing #hide","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"to_graphviz(UAV)","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"Then we assign behaviors to inhabit the boxes.","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"function 𝗟(𝐖)\n 𝐿(u, x, p, t) = [ -p.𝓐l * (u[1] - x[1] - x[2]) ] # sc\n 𝐶(u, x, p, t) = [ -p.𝓐c * (u[1] + p.𝓑c*x[1] - x[2]) ] # sl\n 𝐷(u, x, p, t) = LVector(α = -0.313*u[1] + 56.7*u[2] + 0.232*x[1],\n q = -0.013*u[1] - 0.426*u[2] + 0.0203*x[1],\n θ = 56.7*u[2] )\n\n u_𝐿(u,p,t) = [ u[1] ] # outputs sl\n u_𝐶(u,p,t) = [ u[1] ] # outputs sc\n u_𝐷(u,p,t) = [ u[3] ] # outputs θ\n\n return oapply(𝐖,\n Dict(:sensor => ContinuousMachine{Float64}(2, 1, 1, 𝐿, u_𝐿),\n :controller => ContinuousMachine{Float64}(2, 1, 1, 𝐶, u_𝐶),\n :dynamics => ContinuousMachine{Float64}(1, 3, 1, 𝐷, u_𝐷)))\nend\n\n𝑢ᵤₐᵥ = 𝗟(UAV)","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"Lastly, we compute and plot the solution.","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"# initial values\nxₒ = LVector( e = 0.01, # [e, d] -> [θ offset, 𝛿 control input]\n d = 0.05);\n\nuₒ = [0.0, 0, 0, 0, 0]\ntspan = (0, 20.0)\n\nparams = (𝓐l = 100, # decay constant of sensor\n 𝓐c = 100, # decay constant of controller\n 𝓑c = 0) # ratio of velocity to reference velocity\n\nprob = ODEProblem(𝑢ᵤₐᵥ, uₒ, xₒ, tspan, params)\nsol = solve(prob, alg_hints=[:stiff]);\nnothing #hide","category":"page"},{"location":"examples/Cyber-Physical/","page":"Cyber Physical Systems Example","title":"Cyber Physical Systems Example","text":"plot(sol, vars = [1,2, ((t,y) -> (t, y*1e2), 0, 4), 3, 5],\n label = [\"sl\" \"sc\" \"α\" \"q\" \"θ\"],\n lw = 2, title = \"Aircraft pitch behaviour\",\n xlabel = \"time\", ylabel = \"response\"\n)","category":"page"},{"location":"api/#Library-Reference","page":"Library Reference","title":"Library Reference","text":"","category":"section"},{"location":"api/#Types-of-Dynamical-Systems","page":"Library Reference","title":"Types of Dynamical Systems","text":"","category":"section"},{"location":"api/#Machines","page":"Library Reference","title":"Machines","text":"","category":"section"},{"location":"api/","page":"Library Reference","title":"Library Reference","text":"AlgebraicDynamics.DWDDynam.AbstractMachine\nAlgebraicDynamics.DWDDynam.ContinuousMachine\nAlgebraicDynamics.DWDDynam.DelayMachine\nAlgebraicDynamics.DWDDynam.DiscreteMachine","category":"page"},{"location":"api/#AlgebraicDynamics.DWDDynam.AbstractMachine","page":"Library Reference","title":"AlgebraicDynamics.DWDDynam.AbstractMachine","text":"Machine{T}\nMachine{T,N}\n\nA directed open dynamical system operating on information of type T. For type arguments {T,N}, the system operates on arrays of type T and ndims = N. A machine m has type signature (m.ninputs, m.noutputs).\n\n\n\n\n\n","category":"type"},{"location":"api/#AlgebraicDynamics.DWDDynam.ContinuousMachine","page":"Library Reference","title":"AlgebraicDynamics.DWDDynam.ContinuousMachine","text":"ContinuousMachine{T}(ninputs, nstates, noutputs, f, r)\n\nA directed open continuous system. The dynamics function f defines an ODE dot u(t) = f(u(t)x(t)pt), where u is the state and x captures the exogenous variables.\n\nThe readout function r may depend on the state, parameters and time, so it must be of the form r(upt). If it is left out, then r=u.\n\n\n\n\n\n","category":"type"},{"location":"api/#AlgebraicDynamics.DWDDynam.DelayMachine","page":"Library Reference","title":"AlgebraicDynamics.DWDDynam.DelayMachine","text":"DelayMachine{T}(ninputs, nstates, noutputs, f, r)\n\nA delay open continuous system. The dynamics function f defines an ODE dot u(t) = f(u(t) x(t) h(pt) p t), where u is the state, x captures the exogenous variables, and h is a history function.\n\nThe readout function r may depend on the state, history, parameters and time, so it has the signature r(uhpt). If it is left out, then r=u.\n\n\n\n\n\n","category":"type"},{"location":"api/#AlgebraicDynamics.DWDDynam.DiscreteMachine","page":"Library Reference","title":"AlgebraicDynamics.DWDDynam.DiscreteMachine","text":"DiscreteMachine{T}(ninputs, nstates, noutputs, f, r)\n\nA directed open discrete dynamical system. The dynamics function f defines a discrete update rule u_n+1 = f(u_n x_n p t), where u_n is the state and x_n is the value of the exogenous variables at the nth time step.\n\nThe readout function r may depend on the state, parameters and time step, so it must be of the form r(u_npn). If it is left out, then r_n=u_n.\n\n\n\n\n\n","category":"type"},{"location":"api/#Resource-Sharers","page":"Library Reference","title":"Resource Sharers","text":"","category":"section"},{"location":"api/","page":"Library Reference","title":"Library Reference","text":"AlgebraicDynamics.UWDDynam.AbstractResourceSharer\nAlgebraicDynamics.UWDDynam.ContinuousResourceSharer\nAlgebraicDynamics.UWDDynam.DelayResourceSharer\nAlgebraicDynamics.UWDDynam.DiscreteResourceSharer","category":"page"},{"location":"api/#AlgebraicDynamics.UWDDynam.AbstractResourceSharer","page":"Library Reference","title":"AlgebraicDynamics.UWDDynam.AbstractResourceSharer","text":"ResourceSharer{T}\nResourceSharer{T,N}\n\nAn undirected open dynamical system operating on information of type T. For type arguments {T,N}, the system operates on arrays of type T and ndims = N. A resource sharer r has type signature r.nports.\n\n\n\n\n\n","category":"type"},{"location":"api/#AlgebraicDynamics.UWDDynam.ContinuousResourceSharer","page":"Library Reference","title":"AlgebraicDynamics.UWDDynam.ContinuousResourceSharer","text":"ContinuousResourceSharer{T}(nports, nstates, f, portmap)\n\nAn undirected open continuous system. The dynamics function f defines an ODE dot u(t) = f(u(t)pt), where u(t) has length nstates. nports is the number of exposed ports and portmap is a list of exposed states. For example, if portmap = [2,2,3] then there are three ports which expose the state variables 2, 2, and 3 respectively.\n\n\n\n\n\n","category":"type"},{"location":"api/#AlgebraicDynamics.UWDDynam.DelayResourceSharer","page":"Library Reference","title":"AlgebraicDynamics.UWDDynam.DelayResourceSharer","text":"DelayResourceSharer{T}(nports, nstates, f, portmap)\n\nAn undirected open continuous system. The dynamics function f defines a DDE dot u(t) = f(u(t)h(t)pt), where h is a function giving the history of the system's state u before the interval on which the solution will be computed begins (usually for t 0). f should have signature f(uhpt), where h is a function.\n\n\n\n\n\n","category":"type"},{"location":"api/#AlgebraicDynamics.UWDDynam.DiscreteResourceSharer","page":"Library Reference","title":"AlgebraicDynamics.UWDDynam.DiscreteResourceSharer","text":"DiscreteResourceSharer{T}(nports, nstates, f, portmap)\n\nAn undirected open discrete system. The dynamics function f defines a discrete update rule u_n+1 = f(u_n p t).\n\n\n\n\n\n","category":"type"},{"location":"api/#Composition-of-Dynamical-Systems","page":"Library Reference","title":"Composition of Dynamical Systems","text":"","category":"section"},{"location":"api/#Operad-Algebras","page":"Library Reference","title":"Operad Algebras","text":"","category":"section"},{"location":"api/","page":"Library Reference","title":"Library Reference","text":"AlgebraicDynamics.UWDDynam.oapply","category":"page"},{"location":"api/#Catlab.WiringDiagrams.WiringDiagramAlgebras.oapply","page":"Library Reference","title":"Catlab.WiringDiagrams.WiringDiagramAlgebras.oapply","text":"oapply(d::WiringDiagram, ms::Vector{M}) where {M<:AbstractMachine}\n\nImplements the operad algebras for directed composition of dynamical systems, given a composition pattern (implemented by a directed wiring diagram d) and primitive systems (implemented by a collection of machines ms). Returns the composite machine.\n\nEach box of the composition pattern d must be filled by a machine with the appropriate type signature.\n\n\n\n\n\noapply(d::WiringDiagram, m::AbstractMachine)\n\nA version of oapply where each box of d is filled with the same machine m.\n\n\n\n\n\noapply(d::WiringDiagram, generators::AbstractDict{S,M}) where {S,M<:AbstractMachine}\n\nA version of oapply where generators is a dictionary mapping the name of each box to its corresponding machine. \n\n\n\n\n\n oapply(d::AbstractUWD, rs::Vector{R}) where {R<:AbstractResourceSharer}\n\nImplements the operad algebras for undirected composition of dynamical systems, given a composition pattern (implemented by an undirected wiring diagram d) and primitive systems (implemented by a collection of resource sharers rs). Returns the composite resource sharer.\n\nEach box of d must be filled by a resource sharer of the appropriate type signature. \n\n\n\n\n\noapply(d::AbstractUWD, r::AbstractResourceSharer)\n\nA version of oapply where each box of d is filled with the same resource sharer r.\n\n\n\n\n\n oapply(d::AbstractUWD, generators::AbstractDict{S,R}) where {S,R<:AbstractResourceSharer}\n\nA version of oapply where generators is a dictionary mapping the name of each box to its corresponding resource sharer.\n\n\n\n\n\noapply(d::OpenCPortGraph, ms::Vector{M}) where {M<:AbstractMachine}\n\nImplements the operad algebras for directed composition of dynamical systems, given a composition pattern (implemented by an open circular port graph d) and primitive systems (implemented by a collection of machines ms). Returns the composite machine.\n\nEach box of the composition pattern d must be filled by a machine with the appropriate type signature.\n\n\n\n\n\noapply(d::OpenCPortGraph, m::AbstractMachine)\n\nA version of oapply where each box of d is filled with the same machine m.\n\n\n\n\n\n","category":"function"},{"location":"api/#Checks","page":"Library Reference","title":"Checks","text":"","category":"section"},{"location":"api/","page":"Library Reference","title":"Library Reference","text":"AlgebraicDynamics.UWDDynam.fills\nAlgebraicDynamics.DWDDynam.fills","category":"page"},{"location":"api/#AlgebraicDynamics.UWDDynam.fills","page":"Library Reference","title":"AlgebraicDynamics.UWDDynam.fills","text":"fills(r::AbstractResourceSharer, d::AbstractUWD, b::Int)\n\nChecks if r is of the correct signature to fill box b of the undirected wiring diagram d.\n\n\n\n\n\nfills(m::AbstractMachine, d::OpenCPortGraph, b::Int)\n\nChecks if m is of the correct signature to fill box b of the open CPG d.\n\n\n\n\n\n","category":"function"},{"location":"api/#AlgebraicDynamics.DWDDynam.fills","page":"Library Reference","title":"AlgebraicDynamics.DWDDynam.fills","text":"fills(m::AbstractMachine, d::WiringDiagram, b::Int)\n\nChecks if m is of the correct signature to fill box b of the wiring diagram d.\n\n\n\n\n\n","category":"function"},{"location":"api/#Time-Evolution","page":"Library Reference","title":"Time Evolution","text":"","category":"section"},{"location":"api/#Instantaneous-Dynamics","page":"Library Reference","title":"Instantaneous Dynamics","text":"","category":"section"},{"location":"api/","page":"Library Reference","title":"Library Reference","text":"AlgebraicDynamics.UWDDynam.eval_dynamics","category":"page"},{"location":"api/#AlgebraicDynamics.UWDDynam.eval_dynamics","page":"Library Reference","title":"AlgebraicDynamics.UWDDynam.eval_dynamics","text":"eval_dynamics(m::AbstractMachine, u::AbstractVector, x:AbstractVector{F}, p, t) where {F<:Function}\neval_dynamics(m::AbstractMachine{T}, u::AbstractVector, x:AbstractVector{T}, p, t) where T\n\nEvaluates the dynamics of the machine m at state u, parameters p and time t. The exogenous variables are set by x, which may be a collection either of functions x_i(t) or of constant values. In either case, the length of x must equal the number of inputs to m.\n\n\n\n\n\neval_dynamics(r::AbstractResourceSharer, u::AbstractVector, p, t)\n\nEvaluates the dynamics of the resource sharer r at state u, parameters p and time t. Omitting p and t is allowed if the dynamics of r does not depend on them.\n\n\n\n\n\n","category":"function"},{"location":"api/#Time-Discretization","page":"Library Reference","title":"Time Discretization","text":"","category":"section"},{"location":"api/","page":"Library Reference","title":"Library Reference","text":"AlgebraicDynamics.UWDDynam.euler_approx","category":"page"},{"location":"api/#AlgebraicDynamics.UWDDynam.euler_approx","page":"Library Reference","title":"AlgebraicDynamics.UWDDynam.euler_approx","text":"euler_approx(m::ContinuousMachine, h::Float)\n\nTransforms a continuous machine m into a discrete machine via Euler's method with step size h. If the dynamics of m is given by dotu(t) = f(u(t)x(t)pt), then the dynamics of the new discrete system is given by the update rule u_n+1 = u_n + h f(u_n x_n p t).\n\n\n\n\n\neuler_approx(m::ContinuousMachine)\n\nTransforms a continuous machine m into a discrete machine via Euler's method. The step size parameter is appended to the end of the system's parameter list.\n\n\n\n\n\neuler_approx(ms::Vector{M}, args...) where {M<:ContinuousMachine}\neuler_approx(ms::AbstractDict{S, M}, args...) where {S,M<:ContinuousMachine}\n\nMap euler_approx over a collection of machines with identical args.\n\n\n\n\n\neuler_approx(r::ContinuousResourceSharer, h::Float)\n\nTransforms a continuous resource sharer r into a discrete resource sharer via Euler's method with step size h. If the dynamics of r is given by dotu(t) = f(u(t)pt), then the dynamics of the new discrete system is given by the update rule u_n+1 = u_n + h f(u_n p t).\n\n\n\n\n\neuler_approx(r::ContinuousResourceSharer)\n\nTransforms a continuous resource sharer r into a discrete resource sharer via Euler's method. The step size parameter is appended to the end of the system's parameter list.\n\n\n\n\n\neuler_approx(rs::Vector{R}, args...) where {T,R<:ContinuousResourceSharer{T}}\neuler_approx(rs::AbstractDict{S, R}, args...) where {S,T,R<:ContinuousResourceSharer{T}}\n\nMap euler_approx over a collection of resource sharers with identical args.\n\n\n\n\n\n","category":"function"},{"location":"api/#Discrete-Trajectory","page":"Library Reference","title":"Discrete Trajectory","text":"","category":"section"},{"location":"api/","page":"Library Reference","title":"Library Reference","text":"AlgebraicDynamics.UWDDynam.trajectory","category":"page"},{"location":"api/#Integration-with-[DifferentialEquations.jl](https://diffeq.sciml.ai/stable/#Problem-Types)","page":"Library Reference","title":"Integration with DifferentialEquations.jl","text":"","category":"section"},{"location":"api/","page":"Library Reference","title":"Library Reference","text":"AlgebraicDynamics.UWDDynam.ODEProblem\nAlgebraicDynamics.UWDDynam.DDEProblem\nAlgebraicDynamics.UWDDynam.DiscreteProblem","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"EditURL = \"https://github.com/AlgebraicJulia/AlgebraicDynamics.jl/blob/main/examples/Ecosystem.jl\"","category":"page"},{"location":"examples/Ecosystem/#ecosystem_example","page":"Ecosystem Models","title":"Ecosystem Models","text":"","category":"section"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"(Image: )","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"using AlgebraicDynamics\nusing AlgebraicDynamics.DWDDynam\nusing AlgebraicDynamics.UWDDynam\n\nusing Catlab.CategoricalAlgebra\nusing Catlab.WiringDiagrams\nusing Catlab.Graphics\nusing Catlab.Programs\n\nusing LabelledArrays\nusing OrdinaryDiffEq\nusing Plots, Plots.PlotMeasures","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"There will be 16 parameters in to the total ecosystem. With four distinct types:","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"parameters alpha represent the rate at which a species population grows\nparameters beta represent the rate at which a population of prey declines in a predation interaction\nparameters gamma represent the rate at which a population of predators grows in a predation interaction\nparameters delta represent the rate at with a species population declines","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"params = LVector(αr=0.3, βrf=0.015, γrf=0.015, δf=0.7,\n βrh=0.01, γrh=0.01, δh=0.5,\n γfishh=0.001, βfishh=0.003,\n αfish=0.35, βfishF=0.015, γfishF=0.015,\n δF=0.7, βFs=0.017, γFs=0.017, δs=0.35)","category":"page"},{"location":"examples/Ecosystem/#Land-Ecosystem","page":"Ecosystem Models","title":"Land Ecosystem","text":"","category":"section"},{"location":"examples/Ecosystem/#Rabbits-and-foxes","page":"Ecosystem Models","title":"Rabbits and foxes","text":"","category":"section"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"A standard Lotka Volterra predator-prey model is the composition of three primitive resource sharers:","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"a model of rabbit growth: this resource sharer has dynamics dot r(t) = alpha r(t) and one port which exposes the rabbit population.\na model of rabbit/fox predation: this resource sharer has dynamics dot r(t) = -beta r(t) f(t) dot f(t) = gamma r(t)f(t) and two ports which expose the rabbit and fox populations respectively.\na model of fox population decline: this resource sharer has dynamics dot f(t) = -delta f(t) and one port which exposes the fox population.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"However, there are not two independent rabbit populations – one that grows and one that gets eaten by foxes. Likewise, there are not two independent fox populations – one that declines and one that feasts on rabbits. To capture these interactions between the trio of resource sharers, we compose them by identifying the exposed rabbit populations and identifying the exposed fox populations. The syntax for this undirected composition is defined by an undirected wiring diagram.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"# Define the primitive systems\ndotr(u,p,t) = p.αr*u\ndotrf(u,p,t) = [-p.βrf*u[1]*u[2], p.γrf*u[1]*u[2]]\ndotf(u,p,t) = -p.δf*u\n\nrabbit_growth = ContinuousResourceSharer{Float64}(1, dotr)\nrabbitfox_predation = ContinuousResourceSharer{Float64}(2, dotrf)\nfox_decline = ContinuousResourceSharer{Float64}(1, dotf)\n\n# Define the composition pattern\nrabbitfox_pattern = @relation (rabbits, foxes) begin\n rabbit_growth(rabbits)\n rabbitfox_predation(rabbits,foxes)\n fox_decline(foxes)\nend\n\n# Compose\nsubmodels = Dict(\n :rabbit_growth => rabbit_growth,\n :rabbitfox_predation => rabbitfox_predation,\n :fox_decline => fox_decline\n)\nrabbitfox_system = oapply(rabbitfox_pattern, submodels)","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"Previously, when we derived the Lotka-Volterra model via undirected composition, we by-hand defined the undirected wiring diagram that implements the composition pattern. In contrast, here we implement the same composition pattern as before but this time using the @relation macro. This strategy simplifies the definition and explicitly names the boxes and variables. We visualize the composition pattern below.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"to_graphviz(rabbitfox_pattern, box_labels = :name, junction_labels = :variable, edge_attrs=Dict(:len => \".75\"))","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"We can now construct an ODEProblem from the resource sharer rabbitfox_system and plot the solution.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"u0 = [10.0, 100.0]\ntspan = (0.0, 100.0)\n\nprob = ODEProblem(rabbitfox_system, u0, tspan, params)\nsol = solve(prob, Tsit5())\n\nplot(sol, rabbitfox_system,\n lw=2,\n title = \"Lotka-Volterra Predator-Prey Model\",\n xlabel = \"time\", ylabel = \"population size\")","category":"page"},{"location":"examples/Ecosystem/#Rabbits,-foxes,-and-hawks","page":"Ecosystem Models","title":"Rabbits, foxes, and hawks","text":"","category":"section"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"Suppose we now have a three species ecosystem containing rabbits, foxes, and hawks. Foxes and hawks both prey upon rabbits but do not interact with each other. This ecosystem consists of five primitive systems which share variables.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"rabbit growth: dot r(t) = alpha r(t)\nrabbit/fox predation: dot r(t) = -beta r(t) f(t) dot f(t) = delta r(t)f(t)\nfox decline: dot f(t) = -gamma f(t)\nrabbit/hawk predation: dot r(t) = -beta r(t)h(t) dot h(t) = delta r(t)h(t)\nhawk decline: dot h(t) = -gamma h(t)","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"This means the desired composition pattern has five boxes and many ports and wires to keep track of. Instead of implementing this composition pattern by hand, we construct it as a pushout.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"# Define the composition pattern for rabbit growth\nrabbit_pattern = @relation (rabbits,) -> rabbit_growth(rabbits)\n\n# Define the composition pattern for the rabbit/hawk Lotka Volterra model\nrabbithawk_pattern = @relation (rabbits, hawks) begin\n rabbit_growth(rabbits)\n rabbithawk_predation(rabbits,hawks)\n hawk_decline(hawks)\nend\n\n# Define transformations between the composition patterns\nrabbitfox_transform = ACSetTransformation((Box=[1], Junction=[1], Port=[1], OuterPort=[1]), rabbit_pattern, rabbitfox_pattern)\nrabbithawk_transform = ACSetTransformation((Box=[1], Junction=[1], Port=[1], OuterPort=[1]), rabbit_pattern, rabbithawk_pattern)\n\n# Take the pushout to define the composition pattern for the rabbit, fox, hawk system\nrabbitfoxhawk_pattern = ob(pushout(rabbitfox_transform, rabbithawk_transform))\n\n# Visualize the compsition pattern\nto_graphviz(rabbitfoxhawk_pattern, box_labels = :name, junction_labels = :variable, edge_attrs=Dict(:len => \".9\"))","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"# Define the additional primitive systems\ndotrh(u, p, t) = [-p.βrh*u[1]*u[2], p.γrh*u[1]*u[2]]\ndoth(u, p, t) = -p.δh*u\n\nrabbithawk_predation = ContinuousResourceSharer{Float64}(2, dotrh)\nhawk_decline = ContinuousResourceSharer{Float64}(1, doth)\n\n# Compose\nmerge!(submodels, Dict(\n :rabbithawk_predation => rabbithawk_predation,\n :hawk_decline => hawk_decline\n))\n\nland_system = oapply(rabbitfoxhawk_pattern, submodels)\n\n# Solve and plot\nu0 = [10.0, 100.0, 50.0]\ntspan = (0.0, 100.0)\n\nprob = ODEProblem(land_system, u0, tspan, params)\nsol = solve(prob, Tsit5())\n\nplot(sol, land_system,\n lw=2,\n title = \"Land Ecosystem\",\n xlabel = \"time\", ylabel = \"population size\")","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"Unfortunately, the hawks are going extinct in this model. We'll have to give hawks something else to eat!","category":"page"},{"location":"examples/Ecosystem/#Ocean-Ecosystem","page":"Ecosystem Models","title":"Ocean Ecosystem","text":"","category":"section"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"Consider a ocean ecosystem containing three species —- little fish, big fish, and sharks -— with two predation interactions —- sharks eat big fish and big fish eat little fish.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"This ecosystem can be modeled as the composition of 3 machines:","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"Evolution of the little fish population: this machine has one exogenous variable which represents a population of predators h(t) that hunt little fish. This machine has one output which emits the little fish population. The dynamics of this machine is the driven ODE dot f(t) = alpha f(t) - beta f(t)h(t)\nEvolution of the big fish population: this machine has two exogenous variables which represent a population of prey e(t) that are eaten by big fish and a population of predators h(t) which hunt big fish. This machine has one output which emits the big fish population. The dynamics of this machine is the drive ODE dot F(t) = gamma F(t)e(t) - delta F(t) - betaF(t)h(t)\nEvolution of the shark population: this machine has one exogenous variable which represents a population of prey e(t) that are eaten by sharks. This machine has one output which emits the shark population. The dynamics of this machine is the driven ODE dot s(t) = gammas(t)e(t) - deltas(t)","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"# Define the primitive systems\ndotfish(f, x, p, t) = [p.αfish*f[1] - p.βfishF*x[1]*f[1]]\ndotFISH(F, x, p, t) = [p.γfishF*x[1]*F[1] - p.δF*F[1] - p.βFs*x[2]*F[1]]\ndotsharks(s, x, p, t) = [p.γFs*s[1]*x[1]-p.δs*s[1]]\n\nfish = ContinuousMachine{Float64}(1,1,1, dotfish, (f,p,t)->f)\nFISH = ContinuousMachine{Float64}(2,1,1, dotFISH, (F,p,t)->F)\nsharks = ContinuousMachine{Float64}(1,1,1, dotsharks, (s,p,t)->s)","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"We compose these machines by (1) sending the output of the big fish machine as the input to both the little fish and shark machines and (2) sending the output of the little fish and shark machines as the inputs to the big fish machine. The syntax for this directed composition is given by a directed wiring diagram.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"# Define the composition pattern\nocean_pattern = WiringDiagram([], [:fish, :Fish, :shark])\nfish_box = add_box!(ocean_pattern, Box(:fish, [:pop], [:pop]))\nFish_box = add_box!(ocean_pattern, Box(:Fish, [:pop, :pop], [:pop]))\nshark_box = add_box!(ocean_pattern, Box(:shark, [:pop], [:pop]))\n\noutput_box = output_id(ocean_pattern)\nadd_wires!(ocean_pattern, Pair[\n (fish_box, 1) => (Fish_box, 1),\n (shark_box, 1) => (Fish_box, 2),\n (Fish_box, 1) => (fish_box, 1),\n (Fish_box, 1) => (shark_box, 1),\n (fish_box, 1) => (output_box, 1),\n (Fish_box, 1) => (output_box, 2),\n (shark_box, 1) => (output_box, 3)\n])\n\n# Visualize the composition pattern\nto_graphviz(ocean_pattern, orientation=TopToBottom)","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"# Compose\nocean_system = oapply(ocean_pattern, [fish, FISH, sharks])\n\n# Solve and plot\nu0 = [100.0, 10, 2.0]\ntspan = (0.0, 100.0)\n\nprob = ODEProblem(ocean_system, u0, tspan, params)\nsol = solve(prob, Tsit5())\n\nplot(sol, ocean_system,\n lw=2, title = \"Ocean Ecosystem\",\n xlabel = \"time\", ylabel = \"population size\"\n)","category":"page"},{"location":"examples/Ecosystem/#Total-ecosystem","page":"Ecosystem Models","title":"Total ecosystem","text":"","category":"section"},{"location":"examples/Ecosystem/#Another-layer-of-composition","page":"Ecosystem Models","title":"Another layer of composition","text":"","category":"section"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"We will introduce a final predation interaction – hawks eat little fish – which will combine the land and ocean ecosystems. The composition will be as resource shareres so the first thing we will do is use the dynamics of the machine ocean_system to define the dynamics of a resource sharer. We will also define a resource sharer that models hawk/little fish predation.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"# Define the additional primitive systems\nocean_system_rs = ContinuousResourceSharer{Float64}(3, (u,p,t) -> eval_dynamics(ocean_system, u, [], p))\n\ndothf(u,p,t) = [p.γfishh*u[1]*u[2], -p.βfishh*u[1]*u[2]]\nfishhawk_predation = ContinuousResourceSharer{Float64}(2, dothf)\n\n# Define the composition pattern\neco_pattern = @relation (rabbits, foxes, hawks, littlefish, BigFish, sharks) begin\n turf(rabbits,foxes,hawks)\n air(hawks, littlefish)\n surf(littlefish, BigFish, sharks)\nend\n\n# Visualize the composition pattern\nto_graphviz(eco_pattern, box_labels = :name, junction_labels = :variable, edge_attrs=Dict(:len => \".75\"))","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"# Compose\n\necosystem = oapply(eco_pattern, Dict(\n :turf => land_system,\n :air => fishhawk_predation,\n :surf => ocean_system_rs)\n)","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"We can now plot the evolution of the total ecosystem.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"# Solve and plot\nu0 = [100.0, 50.0, 20.0, 100, 10, 2.0]\ntspan = (0.0, 100.0)\n\nprob = ODEProblem(ecosystem, u0, tspan, params)\nsol = solve(prob, Tsit5())\nplot(sol, ecosystem,\n lw=2, title = \"Total Ecosystem\",\n xlabel = \"time\", ylabel = \"population size\"\n)","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"Let's zoom in on a narrower time-window.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"tspan = (0.0, 30.0)\n\nprob = ODEProblem(ecosystem, u0, tspan, params)\nsol = solve(prob, Tsit5())\nplot(sol, ecosystem,\n lw=2, title = \"Total Ecosystem\",\n xlabel = \"time\", ylabel = \"population size\"\n)","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"As a sanity check we can define the rates for the hawk/little fish predation to be 0. This decouples the land and ocean ecosystems. As expected, the plot shows the original evolution of the land ecosystem overlayed with the original evolution of the ocean ecosystem. This shows that they two ecosystems now evolve independently.","category":"page"},{"location":"examples/Ecosystem/","page":"Ecosystem Models","title":"Ecosystem Models","text":"tspan = (0.0, 100.0)\nparams.βfishh = 0; params.γfishh = 0\n\nprob = ODEProblem(ecosystem, u0, tspan, params)\nsol = solve(prob, Tsit5())\nplot(sol, ecosystem,\n lw=2, title = \"Decoupled Ecosystem\",\n xlabel = \"time\", ylabel = \"population size\"\n)","category":"page"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"EditURL = \"https://github.com/AlgebraicJulia/AlgebraicDynamics.jl/blob/main/examples/Lotka-Volterra.jl\"","category":"page"},{"location":"examples/Lotka-Volterra/#lotka_volterra","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"","category":"section"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"(Image: )","category":"page"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"We will give three examples of deriving the Lotka-Volterra equations $ \\dot r(t) = \\alpha r(t) - \\beta r(t)f(t), \\dot f(t) = \\gamma f(t) r(t) - \\delta f(t)$ as a composition of primitive systems. First, we will show it as the composition of resource sharers where the undirected composition pattern is an undirected wiring diagram. Second, we will show it as the composition of machines where the directed composition pattern is a wiring diagram. Lastly, we will show it as the composition of machines where the directed composition pattern is an open circular port graph (open CPG).","category":"page"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"Although these examples are quite small and you can easily work them out by hand, this approach is based on the solid mathematical theory of operad algebras that allows you to scale to larger and more complex problems.","category":"page"},{"location":"examples/Lotka-Volterra/#Undirected-composition","page":"Lotka-Volterra Three Ways","title":"Undirected composition","text":"","category":"section"},{"location":"examples/Lotka-Volterra/#Undirected-wiring-diagrams","page":"Lotka-Volterra Three Ways","title":"Undirected wiring diagrams","text":"","category":"section"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"A standard Lotka-Volterra predator-prey model is the composition of three resource sharers:","category":"page"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"a model of rabbit growth: this resource sharer has dynamics dot r(t) = alpha r(t) and one port which exposes the rabbit population.\na model of rabbit/fox predation: this resource sharer has dynamics dot r(t) = -beta r(t) f(t) dot f(t) = gamma r(t)f(t) and two ports which expose the rabbit and fox populations respectively\na model of fox population decline: this resource sharer has dynamics dot f(t) = -delta f(t) and one port which exposes the fox population.","category":"page"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"However, there are not two independent rabbit populations –- one that grows and one that gets eaten by foxes. Likewise, there are not two independent fox populations –- one that declines and one that feasts on rabbits. To capture these interactions between the trio of resource sharers, we compose them by identifying the exposed rabbit populations and identifying the exposed fox populations.","category":"page"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"using AlgebraicDynamics\nusing AlgebraicDynamics.UWDDynam\nusing Catlab.WiringDiagrams, Catlab.Programs\nusing LabelledArrays\nusing OrdinaryDiffEq, Plots, Plots.PlotMeasures\n\nconst UWD = UndirectedWiringDiagram\n\n# Define the primitive systems\ndotr(u,p,t) = p.α*u\ndotrf(u,p,t) = [-p.β*u[1]*u[2], p.γ*u[1]*u[2]]\ndotf(u,p,t) = -p.δ*u\n\nrabbit_growth = ContinuousResourceSharer{Float64}(1, dotr)\nrabbitfox_predation = ContinuousResourceSharer{Float64}(2, dotrf)\nfox_decline = ContinuousResourceSharer{Float64}(1, dotf)\n\n# Define the composition pattern\nrf = @relation (rabbits,foxes) begin\n growth(rabbits)\n predation(rabbits,foxes)\n decline(foxes)\nend\n\n# Compose\nrabbitfox_system = oapply(rf, [rabbit_growth, rabbitfox_predation, fox_decline])\n\n# Solve and plot\nu0 = [10.0, 100.0]\nparams = LVector(α=.3, β=0.015, γ=0.015, δ=0.7)\ntspan = (0.0, 100.0)\n\nprob = ODEProblem(rabbitfox_system, u0, tspan, params)\nsol = solve(prob, Tsit5())\n\nplot(sol, rabbitfox_system,\n lw=2, title = \"Lotka-Volterra Predator-Prey Model\",\n xlabel = \"time\", ylabel = \"population size\"\n)","category":"page"},{"location":"examples/Lotka-Volterra/#Directed-composition","page":"Lotka-Volterra Three Ways","title":"Directed composition","text":"","category":"section"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"A standard Lotka-Volterra predator-prey model is the composition of two machines:","category":"page"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"Evolution of a rabbit population: this machine has one input which represents a population of predators, h(t), that hunt rabbits. This machine has one output which emits the rabbit population r(t). The dynamics of this machine is the driven ODE dot r(t) = alpha r(t) - beta r(t) h(t)\nEvoluation of a fox population: this machine has one input which represents a population of prey, e(t), that are eaten by foxes. This machine has one output which emits the fox population f(t). The dynamics of this machine is the driven ODE dot f(t) =gamma f(t)e(t) - delta f(t)","category":"page"},{"location":"examples/Lotka-Volterra/#Wiring-diagrams","page":"Lotka-Volterra Three Ways","title":"Wiring diagrams","text":"","category":"section"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"Since foxes hunt rabbit, these machines compose by setting the fox population to be the input for rabbit evolution. Likewise, we set the rabbit population to be the input for fox evolution. We first implement this setting of inputs using a wiring diagram as our composition pattern.","category":"page"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"using AlgebraicDynamics.DWDDynam\n\n# Define the primitive systems\ndotr(u, x, p, t) = [p.α*u[1] - p.β*u[1]*x[1]]\ndotf(u, x, p, t) = [p.γ*u[1]*x[1] - p.δ*u[1]]\n\nrabbit = ContinuousMachine{Float64}(1,1,1, dotr, (u, p, t) -> u)\nfox = ContinuousMachine{Float64}(1,1,1, dotf, (u, p, t) -> u)\n\n# Define the composition pattern\nrabbitfox_pattern = WiringDiagram([], [:rabbits, :foxes])\nrabbit_box = add_box!(rabbitfox_pattern, Box(:rabbit, [:pop], [:pop]))\nfox_box = add_box!(rabbitfox_pattern, Box(:fox, [:pop], [:pop]))\n\nadd_wires!(rabbitfox_pattern, Pair[\n (rabbit_box, 1) => (fox_box, 1),\n (fox_box, 1) => (rabbit_box, 1),\n (rabbit_box, 1) => (output_id(rabbitfox_pattern), 1),\n (fox_box, 1) => (output_id(rabbitfox_pattern), 2)\n])\n\n# Compose\nrabbitfox_system = oapply(rabbitfox_pattern, [rabbit, fox])\n\n# Solve and plot\nu0 = [10.0, 100.0]\nparams = LVector(α=.3, β=0.015, γ=0.015, δ=0.7)\ntspan = (0.0, 100.0)\n\nprob = ODEProblem(rabbitfox_system, u0, tspan, params)\nsol = solve(prob, Tsit5())\n\nplot(sol, rabbitfox_system, params,\n lw=2, title = \"Lotka-Volterra Predator-Prey Model\",\n xlabel = \"time\", ylabel = \"population size\"\n)","category":"page"},{"location":"examples/Lotka-Volterra/#Open-CPG","page":"Lotka-Volterra Three Ways","title":"Open CPG","text":"","category":"section"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"We next implement the setting of inputs using an open CPG as our composition pattern. We will use a barbell CPG. A barbell has two boxes connected by n wires. In this instance we will set n to 1 since each machine receives and emits exactly one piece of information.","category":"page"},{"location":"examples/Lotka-Volterra/","page":"Lotka-Volterra Three Ways","title":"Lotka-Volterra Three Ways","text":"using AlgebraicDynamics.CPortGraphDynam\nusing AlgebraicDynamics.CPortGraphDynam: barbell\n\n# Define the composition pattern\nrabbitfox_pattern = barbell(1)\n\n# Compose\nrabbitfox_system = oapply(rabbitfox_pattern, [rabbit, fox])\n\n# Solve and plot\nu0 = [10.0, 100.0]\nparams = LVector(α=.3, β=0.015, γ=0.015, δ=0.7)\ntspan = (0.0, 100.0)\n\nprob = ODEProblem(rabbitfox_system, u0, tspan, params)\nsol = solve(prob, FRK65(0))\n\nplot(sol, lw=2, bottom_margin=10mm, left_margin=10mm, title = \"Lotka-Volterra Predator-Prey Model\", label=[\"rabbits\" \"foxes\"])\nxlabel!(\"Time\")\nylabel!(\"Population size\")","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"EditURL = \"https://github.com/AlgebraicJulia/AlgebraicDynamics.jl/blob/main/examples/Ross-Macdonald.jl\"","category":"page"},{"location":"examples/Ross-Macdonald/#ross-macdonald","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"","category":"section"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"(Image: )","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"Authors: Sean L. Wu and Sophie Libkind","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"using AlgebraicDynamics.DWDDynam\nusing Catlab.WiringDiagrams\nusing LabelledArrays\n\nusing Catlab.Graphics\nusing DelayDiffEq, DifferentialEquations\nusing Plots","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"The Ross-Macdonald (RM) model is the canonical model of malaria transmission, first expressed by Sir Ronald Ross in 1911. The simplest form of the model is given by a system of 2 nonlinear ordinary differential equations describing Z, parasite prevalence in the mosquito vector population, and X, parasite prevalence in the vertebrate host population: $ \\dot X = mazbZ(1 - X) - rX, \\quad \\dot Z = acX (e^{-gn} - Z) - gZ \\quad (1)$","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"The RM model is of supreme importance to modeling of malaria and other mosquito transmitted diseases because it is the simplest model that retains the fundamental processes involved in transmission: recovery of infected hosts, death of infected mosquitoes, and parasite transmission between discordant pairs of vectors and hosts. In this sense it represents the irreducible complexity to modeling mosquito borne diseases, such that any simpler model would be insufficient.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"The model assumes that mosquitoes take bloodmeals (bites) on vertebrate hosts with rate a. Therefore, the per-capita rate at which susceptible mosquitoes become infected is acX, where c is the transmission efficiency from infectious humans to susceptible mosquitoes (probability of parasites successfully invading the mosquito given a bite occurs) and X is the probability the bite lands on an infectious human. 1-Z is the proportion of mosquitoes who are susceptible but given an incubation period of n days during which mosquitoes suffer per-capita mortality at rate g, only a proportion e^-gn survive incubation to become infectious. Therefore the classic RM model will have statics that are consistent with the incorporation of an incubation period of fixed duration, but dynamics will not, as the delay is not incorporated into the equations.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"Susceptible humans acquire infection at a rate mabZ, where m = MH, the ratio of mosquitoes to humans, a is as before, and b is the transmission efficiency from infectious mosquitoes to susceptible humans. Therefore mabZ gives the per-capita rate at which susceptible humans recieve parasites from the mosquito population. Infectious humans recover at a rate r (the rate at which the immune system clears parasites). Because m is considered a constant parameter, the model ignores seasonal fluctuations in mosquito (or host) population sizes. However, because the timescale of host dynamcis is typically slow in relation to mosquito dynamics, the approximation is often suitable over a transmission season.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"The model's threshold criterion between the trivial equilibrium where both ZX are equal to zero (no disease) and the endemic equilibrium can be expressed by the basic reproductive number, giving the expected number of secondary infections arising from the introduction of a single infectious human, R_0 = fracma^2bce^-gnrg The endemic equilibrium is therefore: barX= fracR_0-1R_0 + fracacg quad barZ = fracacbarXg + acbarX e^-gn","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"From these equations, the nonlinear relationships that characterize observed malaria transmission can be understood. We implement them as follows:","category":"page"},{"location":"examples/Ross-Macdonald/#Diagram-of-Systems","page":"Ross-Macdonald Malaria Modeling","title":"Diagram of Systems","text":"","category":"section"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"First we must construct a diagram of systems which describes the interaction between the mosquito and host populations. The arrows between the two subsystems represents the bidirectional infection during bloodmeals.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"rm = WiringDiagram([], [:mosquitos, :humans])\nmosq_box = add_box!(rm, Box(:mosquitos, [:x], [:z]))\nhuman_box = add_box!(rm, Box(:humans, [:z], [:x]))\noutput_box = output_id(rm)\n\nadd_wires!(rm, Pair[\n (mosq_box, 1) => (human_box, 1),\n (human_box, 1) => (mosq_box, 1),\n (mosq_box, 1) => (output_box, 1),\n (human_box, 1) => (output_box, 2)]\n)\n\n\nto_graphviz(rm)","category":"page"},{"location":"examples/Ross-Macdonald/#ODE-Model","page":"Ross-Macdonald Malaria Modeling","title":"ODE Model","text":"","category":"section"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"Next we implement the concrete mosquito and host dynamics given in Equation (1), and apply them to the diagram of systems. This composition is the complete Ross-Macdonald model which we can solve and plot.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"dZdt = function(u,x,p,t)\n Z = u[1]\n X = x[1]\n [p.a*p.c*X*(exp(-p.g*p.n) - Z) - p.g*Z]\nend\n\ndXdt = function(u,x,p,t)\n X = u[1]\n Z = x[1]\n [p.m*p.a*p.b*Z*(1 - X) - p.r*X]\nend","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"mosquito_model = ContinuousMachine{Float64}(1, 1, 1, dZdt, (u,p,t) -> u)\nhuman_model = ContinuousMachine{Float64}(1, 1, 1, dXdt, (u,p,t) -> u)\n\nmalaria_model = oapply(rm,\n Dict(:humans => human_model, :mosquitos => mosquito_model)\n)","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"params = LVector(a = 0.3, b = 0.55, c = 0.15,\n g = 0.1, n = 10, r = 1.0/200, m = 0.5)\n\nu0 = [0.1, 0.3]\ntspan = (0.0, 365.0*2)\n\nprob = ODEProblem(malaria_model, u0, tspan, params)\nsol = solve(prob, Tsit5());\nnothing #hide","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"plot(sol, malaria_model,\n lw=2, title = \"Ross-Macdonald Malaria model\",\n xlabel = \"time\", ylabel = \"proportion infectious\",\n color = [\"magenta\" \"blue\"]\n)\n\n# Plot the equilibrium behavior as well\na, b, c, g, n, r, m = params\nR0 = (m*a^2*b*c*exp(-g*n))/(r*g)\nX̄ = (R0 - 1)/(R0 + (a*c)/g)\nZ̄ = (a*c*X̄)/(g + a*c*X̄)*exp(-g*n)\n\nN = length(sol)\nplot!(sol.t, fill(X̄, N), label = \"human equilibrium\", ls = :dash, lw = 2, color = \"blue\")\nplot!(sol.t, fill(Z̄, N), label = \"mosquito equilibrium\", ls = :dash, lw = 2, color = \"magenta\")","category":"page"},{"location":"examples/Ross-Macdonald/#ODE-Model-using-instantaneous-machines","page":"Ross-Macdonald Malaria Modeling","title":"ODE Model using instantaneous machines","text":"","category":"section"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"One way to decouple systems or isolate coupling points between different parts of a dynamical system is to use instantaneous machines, which allow processing of information to occur without (optionally) storing state themselves.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"In this case we seperate the bloodmeal, where pathogen transmission occurs between the two species, into a seperate machine. This way, the dynamics of the human and mosquito machines do not need the other's state value, all the information has already been computed in the bloodmeal machine. For such a simple system, this arrangement may be superfluous, but in complex systems it can be beneficial to have seperate components which compute terms which are dependent on state variables \"external\" to a particular machine.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"rmb = WiringDiagram([], [:mosquitos, :humans, :bloodmeal])\nmosquito_box = add_box!(rmb, Box(:mosquitos, [:κ], [:Z]))\nhuman_box = add_box!(rmb, Box(:humans, [:EIR], [:X]))\nbloodmeal_box = add_box!(rmb, Box(:bloodmeal, [:X, :Z], [:κ, :EIR]))\noutput_box = output_id(rmb)\n\nadd_wires!(rmb, Pair[\n (bloodmeal_box, 1) => (mosquito_box, 1),\n (bloodmeal_box, 2) => (human_box, 1),\n (human_box, 1) => (bloodmeal_box, 1),\n (mosquito_box, 1) => (bloodmeal_box, 2),\n (mosquito_box, 1) => (output_box, 1),\n (human_box, 1) => (output_box, 2)]\n)","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"The wiring diagram is below. The bloodmeal machine computes the EIR (entomological inoculation rate) which is proportional to the force of infection upon susceptible humans, and the net infectiousness of humans to mosquitoes, commonly denoted kappa. The EIR is maZ where Z is the mosquito state variable, and kappa is cX where X is the human state variable.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"These two terms are sent from the bloodmeal machine to the mosquito and human machines via their input ports. Then the dynamical system filling the mosquito machine is dotZ = akappa (e^-gn - Z) - gZ and dotX = bEIR(1-X) - rX is the dynamical system filling the human machine.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"to_graphviz(rmb)","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"bloodmeal = function(u,x,p,t)\n X = x[1]\n Z = x[2]\n [p.c*X, p.m*p.a*Z]\nend\n\ndZdt = function(u,x,p,t)\n Z = u[1]\n κ = x[1]\n [p.a*κ*(exp(-p.g*p.n) - Z) - p.g*Z]\nend\n\ndXdt = function(u,x,p,t)\n X = u[1]\n EIR = x[1]\n [p.b*EIR*(1 - X) - p.r*X]\nend\n\nbloodmeal_model = InstantaneousContinuousMachine{Float64}(2, 0, 2, (u,x,p,t)->u, bloodmeal, [1=>1,2=>2])\nmosquito_model = ContinuousMachine{Float64}(1, 1, 1, dZdt, (u,p,t) -> u)\nhuman_model = ContinuousMachine{Float64}(1, 1, 1, dXdt, (u,p,t) -> u)\n\ninstantaneous_mosquito_model = InstantaneousContinuousMachine{Float64}(mosquito_model)\ninstantaneous_human_model = InstantaneousContinuousMachine{Float64}(human_model)\n\nmalaria_model = oapply(rmb,\n Dict(:mosquitos => instantaneous_mosquito_model, :humans => instantaneous_human_model, :bloodmeal => bloodmeal_model)\n)","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"We use the same parameter values as previously given to solve the composed system, and plot the analytic equilibrium. Results are the same as for the previous system.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"prob = ODEProblem(malaria_model, u0, tspan, params)\nsol = solve(prob, Tsit5());\nnothing #hide","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"plot(sol, label = [\"mosquitos\" \"humans\"],\n lw=2, title = \"Ross-Macdonald Malaria model\",\n xlabel = \"time\", ylabel = \"proportion infectious\",\n color = [\"magenta\" \"blue\"]\n)\nN = length(sol)\nplot!(sol.t, fill(X̄, N), label = \"human equilibrium\", ls = :dash, lw = 2, color = \"blue\")\nplot!(sol.t, fill(Z̄, N), label = \"mosquito equilibrium\", ls = :dash, lw = 2, color = \"magenta\")","category":"page"},{"location":"examples/Ross-Macdonald/#Delay-Model","page":"Ross-Macdonald Malaria Modeling","title":"Delay Model","text":"","category":"section"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"The previous models did not capture the incubation period for the disease in the mosquito population. To do so we can replace the models with delay differential equations and apply them to the same diagram of systems representing the bloodmeal.","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"dzdt_delay = function(u,x,h,p,t)\n Y, Z = u\n Y_delay, Z_delay = h(p, t - p.n)\n X, X_delay = x[1]\n\n [p.a*p.c*X*(1 - Y - Z) -\n p.a*p.c*X_delay*(1 - Y_delay - Z_delay)*exp(-p.g*p.n) -\n p.g*Y,\n p.a*p.c*X_delay*(1 - Y_delay - Z_delay)*exp(-p.g*p.n) -\n p.g*Z]\nend\n\ndxdt_delay = function(u,x,h,p,t)\n X, = u\n Z, _ = x[1]\n [p.m*p.a*p.b*Z*(1 - X) - p.r*X]\nend","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"mosquito_delay_model = DelayMachine{Float64, 2}(\n 1, 2, 1, dzdt_delay, (u,h,p,t) -> [[u[2], h(p,t - p.n)[2]]])\n\nhuman_delay_model = DelayMachine{Float64, 2}(\n 1, 1, 1, dxdt_delay, (u,h,p,t) -> [[u[1], h(p, t - p.n)[1]]])\n\nmalaria_delay_model = oapply(rm,\n Dict(:humans => human_delay_model, :mosquitos => mosquito_delay_model)\n)","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"params = LVector(a = 0.3, b = 0.55, c = 0.15,\n g = 0.1, n = 10, r = 1.0/200, m = 0.5)\n\nu0_delay = [0.09, .01, 0.3]\ntspan = (0.0, 365.0*3)\nhist(p,t) = u0_delay;\n\nprob = DDEProblem(malaria_delay_model, u0_delay, [], hist, tspan, params)\nalg = MethodOfSteps(Tsit5())\nsol = solve(prob, alg)\n\nplot(sol, label=[\"non-infectious mosquito population\" \"infectious mosquito population\" \"host population\"],\n lw=2, title = \"Ross-Macdonald malaria model\",\n xlabel = \"time\", ylabel = \"proportion infectious\",\n color = [\"magenta\" \"red\" \"blue\"]\n)\nN = length(sol)\nplot!(sol.t, fill(X̄, N), label = \"human equilibrium\", ls = :dash, lw = 2, color = \"blue\")\nplot!(sol.t, fill(Z̄, N), label = \"infectious mosquito equilibrium\", ls = :dash, lw = 2, color = \"red\")","category":"page"},{"location":"examples/Ross-Macdonald/","page":"Ross-Macdonald Malaria Modeling","title":"Ross-Macdonald Malaria Modeling","text":"While the equilibrium points of the two models are identical, they exhibit different dynamical behavior before settling down to equilibrium. Because models are often used to examine how the system may respond to intervention, incorporating additional biological realism can produce more plausible results regarding the expected time for interventions to affect the system. In any case, such simple models are best used as tools to explain basic concepts in malaria epidemiology rather than descriptions of real systems, which are likely far from equilibrium and affected by weather, climate, policy, and other external forces.","category":"page"},{"location":"#AlgebraicDynamics.jl","page":"AlgebraicDynamics.jl","title":"AlgebraicDynamics.jl","text":"","category":"section"},{"location":"","page":"AlgebraicDynamics.jl","title":"AlgebraicDynamics.jl","text":"AlgebraicDynamics.jl is a library for compositional dynamical systems. We build on Catlab.jl to provide a software interface for specifying and solving dynamical systems with compositional and hierarchical structure. The implementation of the composition of dynamical systems follows the mathematics of operads and operad algebras.","category":"page"},{"location":"#Composing-Dynamical-Systems","page":"AlgebraicDynamics.jl","title":"Composing Dynamical Systems","text":"","category":"section"},{"location":"","page":"AlgebraicDynamics.jl","title":"AlgebraicDynamics.jl","text":"The general process for composing dynamical systems is as follows:","category":"page"},{"location":"","page":"AlgebraicDynamics.jl","title":"AlgebraicDynamics.jl","text":"Pick a composition syntax. A composition syntax may be either undirected or directed. In this library, composition is implemented for the following syntaxes:\nundirected wiring diagrams (an undirected composition syntax)\nwiring diagrams (a directed composition syntax)\nopen circular port graphs, also called open CPGs (a directed composition syntax)\nDefine a composition pattern. Implement a specific undirected wiring diagram, wiring diagram, or open CPG that defines how the primitive systems will be composed. The number of boxes in the composition pattern is the number of primitive systems that will be composed.\nDefine the primitive systems to compose.\nFor an undirected composition pattern, the primitive systems are implemented by resource sharers. A resource sharer has four components:\nports\nstates\na dynamics function, f\na port map, m\nThe dynamics function can be either continuous time dot u(t) = f(u(t) p t) or discrete time u_n +1 = f(u_n p t). In both cases, u contains the state and p contains the parameters. Also in both cases, the port map assigns a state to each port. We say the port exposes the state it is assigned. For continuous time use ContinuousResourceSharer{T} and for discrete time use DiscreteResourceSharer{T}. The type T represents the values that the states can take on.\nFor a directed composition pattern, the primitive systems are implemented by machines. A machine has five components:\ninputs (also called exogenous variables)\nstates\noutputs\na dynamics function, f\na readout function, r\nThe dynamics function can be either continuous time dot u(t) = f(u(t) x(t) p t) or discrete time u_n+1 = f(u_n x_n p t). In both cases, u contains the state, x contains the exogenous variables, and p contains the parameters. Also in both cases, the readout function r(u(t)) is a function of the state. For continuous time use ContinuousMachine{T} and for discrete time use DiscreteMachine{T}. The type T represents the values that the inputs, states, and outputs can take on.\nCompose. The oapply method takes a composition pattern and primitive systems, and it returns the composite system. Each oapply method implements an operad algebra which specifies a regime for composing dynamical systems. See [Schultz et al. 2019] and [Vagner et al. 2015] for definitions of the operad algebras mathsfCDS and mathsfDDS for directed composition. See [Baez and Pollard 2017] for definitions of the operad algebra mathsfDynam for undirected composition. See [Libkind 2020] for a general overview of these operad algebras.","category":"page"},{"location":"#Solving-Dynamical-Systems","page":"AlgebraicDynamics.jl","title":"Solving Dynamical Systems","text":"","category":"section"},{"location":"","page":"AlgebraicDynamics.jl","title":"AlgebraicDynamics.jl","text":"Once you have built the composite system, you can solve it and plot the solution.","category":"page"},{"location":"","page":"AlgebraicDynamics.jl","title":"AlgebraicDynamics.jl","text":"For continuous machines and resource sharers, you can construct an ODEProblem or a DDEProblem. When the composition pattern is a wiring diagram, we recommend solvers Tsit5() with dtmax specified and FRK65(w=0).\nFor discrete machines and resource sharers, you can construct a DiscreteProblem or explicitly compute a trajectory.","category":"page"},{"location":"","page":"AlgebraicDynamics.jl","title":"AlgebraicDynamics.jl","text":"In either case, be sure to import OrdinaryDiffEq.jl.","category":"page"},{"location":"#Future-Work","page":"AlgebraicDynamics.jl","title":"Future Work","text":"","category":"section"},{"location":"","page":"AlgebraicDynamics.jl","title":"AlgebraicDynamics.jl","text":"Add more integrators beyond the simple Euler's method\nInclude higher order polynomial methods and symplectic and implicit methods for physical problems\nIntegrate with AlgebraicPetri.jl","category":"page"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"EditURL = \"https://github.com/AlgebraicJulia/AlgebraicDynamics.jl/blob/main/examples/CPG_examples.jl\"","category":"page"},{"location":"examples/CPG_examples/#cpg_examples","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"","category":"section"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"(Image: )","category":"page"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"using AlgebraicDynamics.DWDDynam\nusing AlgebraicDynamics.CPortGraphDynam\nusing AlgebraicDynamics.CPortGraphDynam: draw, barbell, gridpath, grid, meshpath\n\nusing Catlab\nusing Catlab.WiringDiagrams\nusing Catlab.WiringDiagrams.CPortGraphs\nusing Catlab.Theories\nusing Catlab.CategoricalAlgebra\n\nusing OrdinaryDiffEq\nusing Plots, Plots.PlotMeasures\n\nusing PrettyTables","category":"page"},{"location":"examples/CPG_examples/#SIR-Epidemiology-Model","page":"Open Circular Port Graph Examples","title":"SIR Epidemiology Model","text":"","category":"section"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"An SIR epidemiology model has three types of people: susceptible, infected, and recovered. When a susceptible person interacts with infected person, the susceptible person also becomes infected. Over time infected people recover. Transition rates determine the how frequently susceptible people come into contact with infected people and how fast infected people recover. The system evolves according to the law of mass action.","category":"page"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"In a multi-city SIR model, each city has susceptible, infected, and recovered populations. To see the spread of the disease we will consider both susceptible and infected people moving between cities. To define a multi-city SIR model, we can compose multiple single-city SIR models using the composition syntax of open CPGs. The composition pattern will consist of three boxes each of which will be filled by a single-city SIR model. Ports expose the susceptible and infected populations of each city. One set of wires connect the susceptible and infected populations of cities 1 and 2. A second set of wires connect the susceptible and infected popuation of cities 2 and 3.","category":"page"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"# Define the composition pattern\nd₀ = OpenCPortGraph()\nadd_parts!(d₀, :Box, 1)\nd₁ = barbell(2)\nF = ACSetTransformation((Box=[2],), d₀, d₁)\nG = ACSetTransformation((Box=[1],), d₀, d₁)\nd₂ = apex(pushout(F,G))\n\n# Define the primitive systems\nβ, μ, α₁, α₂ = 0.4, 0.4, 0.01, 0.01\n\nsirfuncb = (u,x,p,t)->[-β*u[1]*u[2] - α₁*(u[1]-x[1]), # Ṡ\n β*u[1]*u[2] - μ*u[2] - α₂*(u[2]-x[2]), #İ\n μ*u[2] # Ṙ\n ]\nsirfuncm = (u,x,p,t)->[-β*u[1]*u[2] - α₁*(u[1]-(x[1]+x[3])/2),\n β*u[1]*u[2] - μ*u[2] - α₂*(u[2]-(x[2]+x[4])/2),\n μ*u[2]\n ]\n\nboundary = ContinuousMachine{Float64}(2,3,sirfuncb, (u,p,t)->u[1:2])\nmiddle = ContinuousMachine{Float64}(4,3, sirfuncm, (u,p,t)->u[[1,2,1,2]])\n\n# Compose\nthreecity = oapply(d₂, [boundary,middle,boundary])","category":"page"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"First, we will approximate the solution to the three city SIR model using Euler's method. The initial condition has 100 susceptible people in each city a single infected person in the first city. We show the infected populations in each city over time.","category":"page"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"u0 = [100,1,0,100,0,0,100,0,0.0]\n\nh = 0.01\ntspan = (0.0, 1.0)\nthreecity_approx = euler_approx(threecity, h)\nprob = DiscreteProblem(threecity_approx, u0, [], tspan, nothing)\nsol = solve(prob, FunctionMap(); dt = h)\n\nmap(sol) do u\n return (i1=u[2], i2=u[5], i3=u[8])\nend |> pretty_table","category":"page"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"Next, we will solve the continuous system and plot the results. Over time the infected populations increase and the susceptible populations decrease. The delays in the plots illustrate how the disease spreads from city 1 to city 2 and then from city 2 to city 3.","category":"page"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"# Solve and plot\nprob = ODEProblem(threecity, u0, tspan)\nsol = solve(prob, Tsit5(); dtmax = 0.01)\n\nplot(sol, lw=2, title = \"SIR Epidemiology Model\", bottom_margin=10mm, left_margin=10mm,\n label=[\"S\" \"I\" \"R\"])","category":"page"},{"location":"examples/CPG_examples/#Cellular-automata","page":"Open Circular Port Graph Examples","title":"Cellular automata","text":"","category":"section"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"Circular port graphs are particularly useful for modeling systems where the composition pattern is given by a grid and where the dynamics are repetative. In the case of cellular automata the composition pattern is a row of n cells each of which is connected to its two neighbors. The primitive systems are identical machines whose discrete dynamics are a specified rule. See here for a complete set of rules and the patterns they generate.","category":"page"},{"location":"examples/CPG_examples/","page":"Open Circular Port Graph Examples","title":"Open Circular Port Graph Examples","text":"function Rule(k::Int)\n (left_neighbor, x, right_neighbor) ->\n Bool(digits(k, base=2, pad=8)[1 + right_neighbor + 2*x + 4*left_neighbor])\nend\n\n# Define the composition pattern\nn = 100\nrow = apex(gridpath(n, 1))\n\n# Define the primitive system which will be repeated for each cell\nrule = DiscreteMachine{Bool}(2, 1, 2,\n (u, x, p, t)->Rule(p)(x[2], u[1], x[1]),\n (u,p,t)->[u[1], u[1]])\n\n# Compose\nautomaton = oapply(row, rule)\n\n# Solve and plot\nu0 = zeros(Int, n); u0[Int(n/2)] = 1\n\nrule_number = 126\ntspan = (0.0, 100.0)\nprob = DiscreteProblem(automaton, u0, [0,0], tspan, rule_number)\nsol = solve(prob, FunctionMap())\nspy(transpose(reduce(hcat, sol.u)))","category":"page"}] +} diff --git a/v0.2.0/siteinfo.js b/v0.2.0/siteinfo.js new file mode 100644 index 0000000..057c824 --- /dev/null +++ b/v0.2.0/siteinfo.js @@ -0,0 +1 @@ +var DOCUMENTER_CURRENT_VERSION = "v0.2.0"; diff --git a/versions.js b/versions.js index 3fcdf59..46870d7 100644 --- a/versions.js +++ b/versions.js @@ -1,7 +1,8 @@ var DOC_VERSIONS = [ "stable", + "v0.2", "v0.1", "dev", ]; -var DOCUMENTER_NEWEST = "v0.1.8"; +var DOCUMENTER_NEWEST = "v0.2.0"; var DOCUMENTER_STABLE = "stable";