From d7a4d957db8528e90aa07308807e203c4e7b4a8e Mon Sep 17 00:00:00 2001 From: Daniel Vedder <daniel.vedder@idiv.de> Date: Wed, 15 Jan 2025 15:16:19 +0100 Subject: [PATCH] Updated docs --- docs/build/.documenter-siteinfo.json | 1 - docs/build/CHANGELOG.html | 2 - docs/build/adapting.html | 2 - docs/build/architecture.html | 2 - docs/build/assets/documenter.js | 889 ------------------ docs/build/assets/preamble.tex | 20 + docs/build/assets/screenshot4.png | Bin 0 -> 475020 bytes docs/build/assets/themes/documenter-dark.css | 7 - docs/build/assets/themes/documenter-light.css | 9 - docs/build/assets/themeswap.js | 84 -- docs/build/assets/warner.js | 52 - docs/build/config.html | 38 - docs/build/crop-models.html | 2 - docs/build/crops.html | 2 - docs/build/developing.html | 9 - docs/build/energy.html | 2 - docs/build/farm.html | 2 - docs/build/gis.html | 29 - docs/build/gui.html | 12 - docs/build/index.html | 2 - docs/build/io.html | 2 - docs/build/management.html | 2 - docs/build/nature.html | 14 - docs/build/odd.html | 2 - docs/build/search_index.js | 3 - docs/build/simulation.html | 4 - docs/build/skylark.html | 29 - docs/build/species-dsl.html | 32 - docs/build/species.html | 2 - docs/builddocs.jl | 12 +- 30 files changed, 25 insertions(+), 1243 deletions(-) delete mode 100644 docs/build/.documenter-siteinfo.json delete mode 100644 docs/build/CHANGELOG.html delete mode 100644 docs/build/adapting.html delete mode 100644 docs/build/architecture.html delete mode 100644 docs/build/assets/documenter.js create mode 100644 docs/build/assets/preamble.tex create mode 100644 docs/build/assets/screenshot4.png delete mode 100644 docs/build/assets/themes/documenter-dark.css delete mode 100644 docs/build/assets/themes/documenter-light.css delete mode 100644 docs/build/assets/themeswap.js delete mode 100644 docs/build/assets/warner.js delete mode 100644 docs/build/config.html delete mode 100644 docs/build/crop-models.html delete mode 100644 docs/build/crops.html delete mode 100644 docs/build/developing.html delete mode 100644 docs/build/energy.html delete mode 100644 docs/build/farm.html delete mode 100644 docs/build/gis.html delete mode 100644 docs/build/gui.html delete mode 100644 docs/build/index.html delete mode 100644 docs/build/io.html delete mode 100644 docs/build/management.html delete mode 100644 docs/build/nature.html delete mode 100644 docs/build/odd.html delete mode 100644 docs/build/search_index.js delete mode 100644 docs/build/simulation.html delete mode 100644 docs/build/skylark.html delete mode 100644 docs/build/species-dsl.html delete mode 100644 docs/build/species.html diff --git a/docs/build/.documenter-siteinfo.json b/docs/build/.documenter-siteinfo.json deleted file mode 100644 index d8c15c3..0000000 --- a/docs/build/.documenter-siteinfo.json +++ /dev/null @@ -1 +0,0 @@ -{"documenter":{"julia_version":"1.10.4","generation_timestamp":"2024-09-11T16:19:26","documenter_version":"1.1.2"}} \ No newline at end of file diff --git a/docs/build/CHANGELOG.html b/docs/build/CHANGELOG.html deleted file mode 100644 index ec8256c..0000000 --- a/docs/build/CHANGELOG.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Changelog · Persefone.jl</title><meta name="title" content="Changelog · Persefone.jl"/><meta property="og:title" content="Changelog · Persefone.jl"/><meta property="twitter:title" content="Changelog · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li class="is-active"><a class="tocitem" href="CHANGELOG.html">Changelog</a><ul class="internal"><li><a class="tocitem" href="#[1.0.0]-in-planning"><span>[1.0.0] - in planning</span></a></li><li><a class="tocitem" href="#[0.6.0]-unreleased"><span>[0.6.0] - unreleased</span></a></li><li><a class="tocitem" href="#[0.5.5]-09-08-2024"><span>[0.5.5] - 09-08-2024</span></a></li><li><a class="tocitem" href="#[0.5.4]-08-08-2024"><span>[0.5.4] - 08-08-2024</span></a></li><li><a class="tocitem" href="#[0.5.3]-31-07-2024"><span>[0.5.3] - 31-07-2024</span></a></li><li><a class="tocitem" href="#[0.5.2]-30-07-2024"><span>[0.5.2] - 30-07-2024</span></a></li><li><a class="tocitem" href="#[0.5.1]-13-06-2024"><span>[0.5.1] - 13-06-2024</span></a></li><li><a class="tocitem" href="#[0.5.0]-07-06-2024"><span>[0.5.0] - 07-06-2024</span></a></li><li><a class="tocitem" href="#[0.4.1]-2023-11-14"><span>[0.4.1] - 2023-11-14</span></a></li><li><a class="tocitem" href="#[0.4.0]-2023-10-28"><span>[0.4.0] - 2023-10-28</span></a></li><li><a class="tocitem" href="#[version]-unreleased"><span>[version] - unreleased</span></a></li></ul></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Developer guide</a></li><li class="is-active"><a href="CHANGELOG.html">Changelog</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="CHANGELOG.html">Changelog</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/CHANGELOG.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Changelog"><a class="docs-heading-anchor" href="#Changelog">Changelog</a><a id="Changelog-1"></a><a class="docs-heading-anchor-permalink" href="#Changelog" title="Permalink"></a></h1><p>All notable changes to this project will be documented in this file.</p><p>The format is based on <a href="https://keepachangelog.com/en/1.1.0/">Keep a Changelog</a>, and this project adheres to <a href="https://semver.org/spec/v2.0.0.html">Semantic Versioning</a>.</p><h2 id="[1.0.0]-in-planning"><a class="docs-heading-anchor" href="#[1.0.0]-in-planning">[1.0.0] - in planning</a><a id="[1.0.0]-in-planning-1"></a><a class="docs-heading-anchor-permalink" href="#[1.0.0]-in-planning" title="Permalink"></a></h2><p><em>Aim: 3 species, 2 crop growth models, farm model, GAEC scenarios, experimental analysis</em></p><h2 id="[0.6.0]-unreleased"><a class="docs-heading-anchor" href="#[0.6.0]-unreleased">[0.6.0] - unreleased</a><a id="[0.6.0]-unreleased-1"></a><a class="docs-heading-anchor-permalink" href="#[0.6.0]-unreleased" title="Permalink"></a></h2><p><em>Plan: decouple CairoMakie (#81), fix & test ALMaSS, set up first experiments</em></p><h3 id="Added"><a class="docs-heading-anchor" href="#Added">Added</a><a id="Added-1"></a><a class="docs-heading-anchor-permalink" href="#Added" title="Permalink"></a></h3><ul><li><code>crop.cropdirectory</code> parameter specifies folder in which all crop data files for the selected crop model can be found.</li></ul><h3 id="Changed"><a class="docs-heading-anchor" href="#Changed">Changed</a><a id="Changed-1"></a><a class="docs-heading-anchor-permalink" href="#Changed" title="Permalink"></a></h3><ul><li><p><code>preprocessparameters()</code> checks whether the map and crop directories are reachable from the current working directory. If not, it checks whether it can be reached from the package directory. This makes running simulations easier when Persefone has been installed as a package.</p></li><li><p><code>simulate()</code> and <code>initialise()</code> now take a <code>params</code> keyword argument that can be used to override parameters from other input sources</p></li></ul><h3 id="Deprecated"><a class="docs-heading-anchor" href="#Deprecated">Deprecated</a><a id="Deprecated-1"></a><a class="docs-heading-anchor-permalink" href="#Deprecated" title="Permalink"></a></h3><h3 id="Removed"><a class="docs-heading-anchor" href="#Removed">Removed</a><a id="Removed-1"></a><a class="docs-heading-anchor-permalink" href="#Removed" title="Permalink"></a></h3><ul><li><code>crop.cropfile</code> and <code>crop.growthfile</code> parameters -> user configuration is now done via <code>crop.cropdirectory</code>, names of ALMaSS input files are specified as constants in <code>almass.jl</code></li></ul><h3 id="Fixed"><a class="docs-heading-anchor" href="#Fixed">Fixed</a><a id="Fixed-1"></a><a class="docs-heading-anchor-permalink" href="#Fixed" title="Permalink"></a></h3><hr/><h2 id="[0.5.5]-09-08-2024"><a class="docs-heading-anchor" href="#[0.5.5]-09-08-2024">[0.5.5] - 09-08-2024</a><a id="[0.5.5]-09-08-2024-1"></a><a class="docs-heading-anchor-permalink" href="#[0.5.5]-09-08-2024" title="Permalink"></a></h2><p><strong>This point release implements the first basic farm model</strong></p><h3 id="Added-2"><a class="docs-heading-anchor" href="#Added-2">Added</a><a class="docs-heading-anchor-permalink" href="#Added-2" title="Permalink"></a></h3><ul><li><p>basic farm model that assigns a crop rotation to each field, sowing and harvesting when appropriate</p></li><li><p>new parameters: <code>farm.farmmodel</code>, <code>farm.setaside</code>, <code>farm.fieldoutfreq</code></p></li><li><p>visualisation of cropped area and crop growth over time</p></li><li><p><code>farm.setaside</code> setting to configure what proportion of land farmers let lie fallow</p></li><li><p><code>isharvestable()</code> function for <code>FarmPlot</code>s</p></li><li><p><code>@areaof</code> macro to calculate the area of a given number of landscape pixels</p></li><li><p><code>data/farm/standard_gross_margins.csv</code> from KTBL data</p></li></ul><h3 id="Changed-2"><a class="docs-heading-anchor" href="#Changed-2">Changed</a><a class="docs-heading-anchor-permalink" href="#Changed-2" title="Permalink"></a></h3><ul><li>expanded & adapted general crop data and crop growth curve tables</li></ul><h3 id="Fixed-2"><a class="docs-heading-anchor" href="#Fixed-2">Fixed</a><a class="docs-heading-anchor-permalink" href="#Fixed-2" title="Permalink"></a></h3><ul><li>bug fixes in the ALMaSS crop model</li></ul><h2 id="[0.5.4]-08-08-2024"><a class="docs-heading-anchor" href="#[0.5.4]-08-08-2024">[0.5.4] - 08-08-2024</a><a id="[0.5.4]-08-08-2024-1"></a><a class="docs-heading-anchor-permalink" href="#[0.5.4]-08-08-2024" title="Permalink"></a></h2><p><strong>Skylark data analysis and new internal utility functions</strong></p><h3 id="Added-3"><a class="docs-heading-anchor" href="#Added-3">Added</a><a class="docs-heading-anchor-permalink" href="#Added-3" title="Permalink"></a></h3><ul><li><p><code>AnnualDate</code> type and associated functions for working with recurring dates (#101)</p><ul><li>can be constructed from two <code>Int64</code>, a <code>Date</code>, or a <code>Tuple{Int64,Int64}</code></li><li>automatic conversion from <code>Date</code> or <code>Tuple{Int64,Int64}</code></li><li>can use operators: <code>==</code>, <code><</code>, <code>+</code>, <code>-</code>, <code>:</code></li><li><code>thisyear()</code>, <code>lastyear()</code>, <code>nextyear()</code> functions and macros</li></ul></li><li><p>new file <code>core/utils.jl</code> for utility functions that fit in no other file</p></li><li><p>irregular data logging using <code>record!()</code>/<code>@record()</code> (#103)</p></li><li><p>data outputs & visualisation for the skylark model (#97)</p></li><li><p><code>randn()</code> function and macro to sample from a vector using a normal distribution</p></li><li><p><code>make install</code> to download and install Julia and package dependencies (on Linux, #67)</p></li><li><p>weather file for the Thüringer Becken</p></li></ul><h3 id="Changed-3"><a class="docs-heading-anchor" href="#Changed-3">Changed</a><a class="docs-heading-anchor-permalink" href="#Changed-3" title="Permalink"></a></h3><ul><li><p>moved random number functions and macros from <code>input.jl</code> to <code>utils.jl</code></p></li><li><p>expanded weather data for Jena to 1990-2023</p></li><li><p>Non-breeding skylarks only search for neighbours to follow once (-> huge performance improvement!)</p></li></ul><h3 id="Fixed-3"><a class="docs-heading-anchor" href="#Fixed-3">Fixed</a><a class="docs-heading-anchor-permalink" href="#Fixed-3" title="Permalink"></a></h3><ul><li>bug fixes in the skylark model</li></ul><h2 id="[0.5.3]-31-07-2024"><a class="docs-heading-anchor" href="#[0.5.3]-31-07-2024">[0.5.3] - 31-07-2024</a><a id="[0.5.3]-31-07-2024-1"></a><a class="docs-heading-anchor-permalink" href="#[0.5.3]-31-07-2024" title="Permalink"></a></h2><p><strong>Switchable crop models</strong></p><h3 id="Added-4"><a class="docs-heading-anchor" href="#Added-4">Added</a><a class="docs-heading-anchor-permalink" href="#Added-4" title="Permalink"></a></h3><ul><li><p>Support for switchable crop models (#70), crop models can be set with the <code>cropmodel</code> setting in the <code>[crop]</code> section of <code>parameters.toml</code>.</p></li><li><p>New submodules <code>ALMaSS</code> for the ALMaSS crop model, and <code>SimpleCrop</code> for testing switchable crop models.</p></li></ul><h3 id="Changed-4"><a class="docs-heading-anchor" href="#Changed-4">Changed</a><a class="docs-heading-anchor-permalink" href="#Changed-4" title="Permalink"></a></h3><ul><li><p>All functionality specific to the ALMaSS crop model has been moved to the submodule <code>ALMaSS</code>.</p></li><li><p>Due to switchable crop models, some types are now parametric: <code>AgricultureModel{Tcroptype,Tcropstate}</code> and <code>FarmPlot{Tcropstate}</code>.</p></li><li><p><code>FarmPlot{Tcropstate}</code> now only stores basic information about which pixels are part of the farm plot, all crop-specific information is now stored in the field <code>cropstate</code>. Many functions acting on a <code>FarmPlot</code> now mostly forward to functions of the same name acting on the <code>cropstate</code> field of a <code>FarmPlot</code>.</p></li><li><p>The type of <code>height</code> in <code>ALMaSS.CropState</code> and <code>ALMaSS.CropCurveParams</code> is now a unitful number <code>::Length{Float64}</code>.</p></li><li><p>Both crop models <code>ALMaSS</code> and <code>SimpleCrop</code> now also support the functions <code>cropcover</code> and <code>cropyield</code> in addition to <code>croptype</code>, <code>cropname</code>, <code>cropheight</code>.</p></li><li><p><code>cropheight</code> now returns a unitful number <code>::Length{Float64}</code>, and returns height <code>0cm</code> if the landscape at that position is not a <code>FarmPlot</code>.</p></li></ul><h2 id="[0.5.2]-30-07-2024"><a class="docs-heading-anchor" href="#[0.5.2]-30-07-2024">[0.5.2] - 30-07-2024</a><a id="[0.5.2]-30-07-2024-1"></a><a class="docs-heading-anchor-permalink" href="#[0.5.2]-30-07-2024" title="Permalink"></a></h2><p><strong>Rewrote the skylark model</strong></p><h3 id="Added-5"><a class="docs-heading-anchor" href="#Added-5">Added</a><a class="docs-heading-anchor-permalink" href="#Added-5" title="Permalink"></a></h3><ul><li><p>Skylark model is largely rewritten to follow a new phase structure (#9)</p></li><li><p>animals can occupy territories (see <code>@occupy</code>, <code>@isoccupied</code>, <code>@vacate</code> macros/functions) (#94)</p></li><li><p><code>@cropcover</code> macro and function</p></li><li><p>ODD documentation for Skylark</p></li></ul><h3 id="Changed-5"><a class="docs-heading-anchor" href="#Changed-5">Changed</a><a class="docs-heading-anchor-permalink" href="#Changed-5" title="Permalink"></a></h3><ul><li><p>input files that are now copied to a separate <code>inputs</code> directory within the output directory</p></li><li><p><code>EventType</code> renamed to <code>Management</code> for clarity</p></li><li><p>documentation website now has a "Scientific Documentation" section</p></li></ul><h3 id="Removed-2"><a class="docs-heading-anchor" href="#Removed-2">Removed</a><a class="docs-heading-anchor-permalink" href="#Removed-2" title="Permalink"></a></h3><ul><li>old skylark model (has been rewritten, see above)</li></ul><h3 id="Fixed-4"><a class="docs-heading-anchor" href="#Fixed-4">Fixed</a><a class="docs-heading-anchor-permalink" href="#Fixed-4" title="Permalink"></a></h3><ul><li><p>all skylarks now migrate (#90)</p></li><li><p><code>insectbiomass()</code> uses units</p></li></ul><h2 id="[0.5.1]-13-06-2024"><a class="docs-heading-anchor" href="#[0.5.1]-13-06-2024">[0.5.1] - 13-06-2024</a><a id="[0.5.1]-13-06-2024-1"></a><a class="docs-heading-anchor-permalink" href="#[0.5.1]-13-06-2024" title="Permalink"></a></h2><p><strong>Added Unitful.jl</strong></p><h3 id="Added-6"><a class="docs-heading-anchor" href="#Added-6">Added</a><a class="docs-heading-anchor-permalink" href="#Added-6" title="Permalink"></a></h3><ul><li><p>Unitful.jl now used to add units to quantities</p></li><li><p><code>world.mapdirectory</code> parameter specifies the path to the directory in which</p></li></ul><p><code>landcovermap</code>, <code>farmfieldsmap</code>, and <code>weatherfile</code> are located</p><ul><li><code>world.mapresolution</code> parameter specifies the input maps' spatial resolution in meters</li></ul><h3 id="Changed-6"><a class="docs-heading-anchor" href="#Changed-6">Changed</a><a class="docs-heading-anchor-permalink" href="#Changed-6" title="Permalink"></a></h3><ul><li><p>spatial functions now work with explicit distances (using Unitful.jl) rather than using the number of pixels</p></li><li><p>all species definitions and tests updated to use units</p></li></ul><hr/><h2 id="[0.5.0]-07-06-2024"><a class="docs-heading-anchor" href="#[0.5.0]-07-06-2024">[0.5.0] - 07-06-2024</a><a id="[0.5.0]-07-06-2024-1"></a><a class="docs-heading-anchor-permalink" href="#[0.5.0]-07-06-2024" title="Permalink"></a></h2><p><strong>This release doesn't add much new functionality, but represents a major restructuring of the code base. Specifically, it removes the Agents.jl dependency and changes the way the species definition macros work and are used.</strong></p><h3 id="Added-7"><a class="docs-heading-anchor" href="#Added-7">Added</a><a class="docs-heading-anchor-permalink" href="#Added-7" title="Permalink"></a></h3><ul><li><p><code>SimulationModel</code> type, extended by <code>AgricultureModel</code> struct</p></li><li><p><code>@create</code> macro defines a special phase function that is called when an individual animal is created (at birth or on model initialisation)</p></li><li><p>functions (and associated macros) to replace Agents.jl functionality:</p><ul><li><code>move!()</code> and <code>walk!()</code> </li><li><code>nearby_ids()</code>, <code>nearby_animals()</code>, <code>countanimals()</code>, <code>neighbours()</code></li><li><code>directionto()</code>, <code>distanceto()</code>, <code>randomdirection()</code></li><li><code>nagents()</code>, <code>killallanimals!()</code></li></ul></li><li><p><code>@here</code> macro to return the pixel currently occupied by the active animal</p></li><li><p><code>core.logoutput</code> parameter to define whether logs are printed to screen, file, none, or both</p></li><li><p>large logo and model structure diagram</p></li><li><p>Changelog</p></li></ul><h3 id="Changed-7"><a class="docs-heading-anchor" href="#Changed-7">Changed</a><a class="docs-heading-anchor-permalink" href="#Changed-7" title="Permalink"></a></h3><ul><li><p><code>SimulationModel</code> replaces <code>AgentBasedModel</code></p></li><li><p>Species definition macros revamped:</p><ul><li><code>@species</code> now only defines parameters and variables and creates a mutable struct</li><li><code>@phase</code> must now be defined in the top-level code and creates a global function</li><li><code>@initialise</code> renamed to <code>@populate</code>, must also be called in the top-level code</li><li><code>initindividual()</code> renamed to <code>create!()</code></li></ul></li><li><p>Skylark, Wolpertinger, and Wyvern updated to match the new macros</p></li><li><p>requires Julia 1.10</p></li></ul><h3 id="Removed-3"><a class="docs-heading-anchor" href="#Removed-3">Removed</a><a class="docs-heading-anchor-permalink" href="#Removed-3" title="Permalink"></a></h3><ul><li>Agents.jl dependency (including <code>AgentBasedModel</code> and functions for adding/moving/removing agents)</li></ul><hr/><h2 id="[0.4.1]-2023-11-14"><a class="docs-heading-anchor" href="#[0.4.1]-2023-11-14">[0.4.1] - 2023-11-14</a><a id="[0.4.1]-2023-11-14-1"></a><a class="docs-heading-anchor-permalink" href="#[0.4.1]-2023-11-14" title="Permalink"></a></h2><p><strong>Initial version of the skylark model</strong></p><h3 id="Added-8"><a class="docs-heading-anchor" href="#Added-8">Added</a><a class="docs-heading-anchor-permalink" href="#Added-8" title="Permalink"></a></h3><ul><li><p>initial version of the Skylark species</p></li><li><p>small Jena map</p></li><li><p>animal individuals keep track of their parents' IDs</p></li><li><p>several new functions and macros for animals</p></li><li><p>installation instructions for Windows</p></li></ul><h3 id="Changed-8"><a class="docs-heading-anchor" href="#Changed-8">Changed</a><a class="docs-heading-anchor-permalink" href="#Changed-8" title="Permalink"></a></h3><ul><li>graphics output is more configurable</li></ul><h2 id="[0.4.0]-2023-10-28"><a class="docs-heading-anchor" href="#[0.4.0]-2023-10-28">[0.4.0] - 2023-10-28</a><a id="[0.4.0]-2023-10-28-1"></a><a class="docs-heading-anchor-permalink" href="#[0.4.0]-2023-10-28" title="Permalink"></a></h2><p><strong>Functions for animal populations</strong></p><h3 id="Added-9"><a class="docs-heading-anchor" href="#Added-9">Added</a><a class="docs-heading-anchor-permalink" href="#Added-9" title="Permalink"></a></h3><ul><li><p>initialisation functions for individuals (not just species)</p></li><li><p>migration function / migrant pool for animals that disappear from the landscape during winter</p></li><li><p>skylark migration</p></li></ul><h3 id="Changed-9"><a class="docs-heading-anchor" href="#Changed-9">Changed</a><a class="docs-heading-anchor-permalink" href="#Changed-9" title="Permalink"></a></h3><ul><li><p>online documentation was expanded and restructured</p></li><li><p>nature macros moved to a separate file</p></li></ul><p><em>Started changelog at this point, earlier versions are not included.</em></p><p><!– Template</p><h2 id="[version]-unreleased"><a class="docs-heading-anchor" href="#[version]-unreleased">[version] - unreleased</a><a id="[version]-unreleased-1"></a><a class="docs-heading-anchor-permalink" href="#[version]-unreleased" title="Permalink"></a></h2><p><comments></p><h3 id="*PLANNED*"><a class="docs-heading-anchor" href="#*PLANNED*"><em>PLANNED</em></a><a id="*PLANNED*-1"></a><a class="docs-heading-anchor-permalink" href="#*PLANNED*" title="Permalink"></a></h3><h3 id="Added-10"><a class="docs-heading-anchor" href="#Added-10">Added</a><a class="docs-heading-anchor-permalink" href="#Added-10" title="Permalink"></a></h3><h3 id="Changed-10"><a class="docs-heading-anchor" href="#Changed-10">Changed</a><a class="docs-heading-anchor-permalink" href="#Changed-10" title="Permalink"></a></h3><h3 id="Deprecated-2"><a class="docs-heading-anchor" href="#Deprecated-2">Deprecated</a><a class="docs-heading-anchor-permalink" href="#Deprecated-2" title="Permalink"></a></h3><h3 id="Removed-4"><a class="docs-heading-anchor" href="#Removed-4">Removed</a><a class="docs-heading-anchor-permalink" href="#Removed-4" title="Permalink"></a></h3><h3 id="Fixed-5"><a class="docs-heading-anchor" href="#Fixed-5">Fixed</a><a class="docs-heading-anchor-permalink" href="#Fixed-5" title="Permalink"></a></h3><p>–></p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="species-dsl.html">« Defining new species</a><a class="docs-footer-nextpage" href="simulation.html">Simulation »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/adapting.html b/docs/build/adapting.html deleted file mode 100644 index ad2322f..0000000 --- a/docs/build/adapting.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Adapting Persefone · Persefone.jl</title><meta name="title" content="Adapting Persefone · Persefone.jl"/><meta property="og:title" content="Adapting Persefone · Persefone.jl"/><meta property="twitter:title" content="Adapting Persefone · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li class="is-active"><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Developer guide</a></li><li class="is-active"><a href="adapting.html">Adapting Persefone</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="adapting.html">Adapting Persefone</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/adapting.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Adapting-Persefone"><a class="docs-heading-anchor" href="#Adapting-Persefone">Adapting Persefone</a><a id="Adapting-Persefone-1"></a><a class="docs-heading-anchor-permalink" href="#Adapting-Persefone" title="Permalink"></a></h1><p>A key development goal of Persefone is to be <a href="https://doi.org/10.1515/itit-2019-0040">FAIR</a>: <em>findable, accessible, interoperable, and reusable</em>. We aim to build a model that is both easy to use and easy to adapt to new situations.</p><p>There are multiple ways to adapt Persefone for a new modelling study:</p><h3 id="Changing-the-parameters"><a class="docs-heading-anchor" href="#Changing-the-parameters">Changing the parameters</a><a id="Changing-the-parameters-1"></a><a class="docs-heading-anchor-permalink" href="#Changing-the-parameters" title="Permalink"></a></h3><p>The simplest way to adapt Persefone is simply by changing the parameters. Copy <code>src/parameters.toml</code> to a new location, adjust it to your needs, and run the model using <code>julia run.jl -c <configfile></code>.</p><h3 id="Changing-the-region"><a class="docs-heading-anchor" href="#Changing-the-region">Changing the region</a><a id="Changing-the-region-1"></a><a class="docs-heading-anchor-permalink" href="#Changing-the-region" title="Permalink"></a></h3><p>To apply Persefone to a new region, you need to create new input maps of land cover and farmplots. How to do so is described <a href="gis.html">here</a>.</p><p><em>You may also need to change aspects of the <code>farm</code> submodel. This is not yet implemented.</em></p><h3 id="Adding-new-animal-species"><a class="docs-heading-anchor" href="#Adding-new-animal-species">Adding new animal species</a><a id="Adding-new-animal-species-1"></a><a class="docs-heading-anchor-permalink" href="#Adding-new-animal-species" title="Permalink"></a></h3><p>To implement a new species to the <code>nature</code> submodel, add a new file to the <code>src/nature/species</code> directory and <code>include</code> it in <code>src/Persefone.jl</code>, as well as adding the name of the species to the <code>nature.targetspecies</code> parameter. In the new file, implement the species using the <a href="nature.html#Persefone.@species-Tuple{Any, Any}"><code>@species</code></a> syntax as described <a href="species-dsl.html">here</a>.</p><h3 id="Adding-new-crop-species"><a class="docs-heading-anchor" href="#Adding-new-crop-species">Adding new crop species</a><a id="Adding-new-crop-species-1"></a><a class="docs-heading-anchor-permalink" href="#Adding-new-crop-species" title="Permalink"></a></h3><p><em>Crop growth is not yet implemented.</em></p><h3 id="Adding-new-farmer-behaviour"><a class="docs-heading-anchor" href="#Adding-new-farmer-behaviour">Adding new farmer behaviour</a><a id="Adding-new-farmer-behaviour-1"></a><a class="docs-heading-anchor-permalink" href="#Adding-new-farmer-behaviour" title="Permalink"></a></h3><p><em>Farmer behaviour is not yet implemented.</em></p><h3 id="Adding-a-new-submodel"><a class="docs-heading-anchor" href="#Adding-a-new-submodel">Adding a new submodel</a><a id="Adding-a-new-submodel-1"></a><a class="docs-heading-anchor-permalink" href="#Adding-a-new-submodel" title="Permalink"></a></h3><p>To add a new submodel in addition to the existing ones (<code>nature</code>, <code>crop</code>, and <code>farm</code>), you need to familiarise yourself with the <a href="architecture.html">software architecture</a>. In particular, you need to understand how initialisation and scheduling works in <a href="https://git.idiv.de/xo30xoqa/persephone/-/blob/master/src/core/simulation.jl"><code>src/core/simulation.jl</code></a>, and what information is stored in the <code>model</code> object.</p><p>If you want to add a new agent type, create a subtype of <a href="simulation.html#Persefone.ModelAgent"><code>ModelAgent</code></a>, implement a <a href="@ref"><code>stepagent!</code></a> function for it and add it to <a href="simulation.html#Persefone.initmodel-Tuple{Dict{String, Any}}"><code>Persefone.initmodel</code></a>.</p><h3 id="Linking-to-another-model"><a class="docs-heading-anchor" href="#Linking-to-another-model">Linking to another model</a><a id="Linking-to-another-model-1"></a><a class="docs-heading-anchor-permalink" href="#Linking-to-another-model" title="Permalink"></a></h3><p>Persefone can also be used as a software library and be called from another application. For this purpose, it is set up as a <a href="https://pkgdocs.julialang.org/v1/">Julia package</a>, with a <a href="https://docs.julialang.org/en/v1/manual/modules/">module</a> exporting various model functions, types, and macros (see <a href="https://git.idiv.de/xo30xoqa/persephone/-/blob/master/src/Persephone.jl"><code>src/Persefone.jl</code></a>). Of particular interest are the functions <a href="simulation.html#Persefone.simulate-Tuple{}"><code>simulate</code></a> (set up and run a complete simulation based on a config file), <a href="simulation.html#Persefone.initialise-Tuple{}"><code>initialise</code></a> (create one or more <code>model</code> objects from a config file), <a href="simulation.html#Persefone.simulate!-Tuple{SimulationModel}"><code>simulate!</code></a> (do a simulation run with an existing <code>model</code> object), and <a href="simulation.html#Persefone.stepsimulation!-Tuple{SimulationModel}"><code>stepsimulation!</code></a> (update a <code>model</code> object by one time step).</p><p>To interface with Julia from another language, see the Julia docs <a href="https://docs.julialang.org/en/v1/manual/calling-c-and-fortran-code/">here</a> and <a href="https://docs.julialang.org/en/v1/manual/embedding/">here</a>.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="developing.html">« Developing Persefone</a><a class="docs-footer-nextpage" href="architecture.html">Source code architecture »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/architecture.html b/docs/build/architecture.html deleted file mode 100644 index c05b668..0000000 --- a/docs/build/architecture.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Source code architecture · Persefone.jl</title><meta name="title" content="Source code architecture · Persefone.jl"/><meta property="og:title" content="Source code architecture · Persefone.jl"/><meta property="twitter:title" content="Source code architecture · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li class="is-active"><a class="tocitem" href="architecture.html">Source code architecture</a><ul class="internal"><li class="toplevel"><a class="tocitem" href="#Model-components"><span>Model components</span></a></li><li class="toplevel"><a class="tocitem" href="#Important-implementation-details"><span>Important implementation details</span></a></li></ul></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Developer guide</a></li><li class="is-active"><a href="architecture.html">Source code architecture</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="architecture.html">Source code architecture</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/architecture.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Source-code-architecture"><a class="docs-heading-anchor" href="#Source-code-architecture">Source code architecture</a><a id="Source-code-architecture-1"></a><a class="docs-heading-anchor-permalink" href="#Source-code-architecture" title="Permalink"></a></h1><h1 id="Model-components"><a class="docs-heading-anchor" href="#Model-components">Model components</a><a id="Model-components-1"></a><a class="docs-heading-anchor-permalink" href="#Model-components" title="Permalink"></a></h1><p><img src="assets/architecture.png" alt=""model architecture""/></p><p>Persefone is divided into four components, three of which are semi-independent submodels:</p><ol><li><p><code>core</code> and <code>world</code>: These two directories provide the foundation of the model software, which sets up and executes simulation runs. It also reads all input files (the configuration file, landscape maps, and weather data), and provides data output functionality.</p></li><li><p><code>nature</code>: This is an individual-based model of species in agricultural landscapes. It defines the <a href="nature.html#Persefone.Animal"><code>Animal</code></a> agent type, and a set of macros that can be used to rapidly create new species. It also includes ecological process functions that are useful for all species.</p></li><li><p><code>farm</code>: This is an agent-based model of farmer decision making. It is not yet implemented, but will provide the <a href="farm.html#Persefone.Farmer"><code>Farmer</code></a> agent type.</p></li><li><p><code>crop</code>: This is a mathematical growth model for various crops. It is not yet implemented, but already provides the agent type <a href="crops.html#Persefone.FarmPlot"><code>FarmPlot</code></a>, representing one field and its associated extent and crop type.</p></li></ol><p>Conceptually, <code>core</code> provides functionality that is needed by all of the submodels. Decisions made by <code>Farmer</code>s affect the <code>FarmPlot</code>s they own, and (directly or indirectly) the <code>Animal</code>s in the model landscape.</p><h1 id="Important-implementation-details"><a class="docs-heading-anchor" href="#Important-implementation-details">Important implementation details</a><a id="Important-implementation-details-1"></a><a class="docs-heading-anchor-permalink" href="#Important-implementation-details" title="Permalink"></a></h1><p><img src="assets/model_object.png" alt=""the model object""/></p><h3 id="The-model-object"><a class="docs-heading-anchor" href="#The-model-object">The <code>model</code> object</a><a id="The-model-object-1"></a><a class="docs-heading-anchor-permalink" href="#The-model-object" title="Permalink"></a></h3><p>A cursory reading of the source code will quickly show that most functions take an <code>SimulationModel</code> object as one of their arguments. The concrete type for this is <a href="simulation.html#Persefone.AgricultureModel"><code>AgricultureModel</code></a>, a struct that holds all state that is in any way relevant to a simulation run. (Persefone has a strict "no global state" policy to avoid state-dependent bugs and allow parallelisation.) The model object gives access to all agent instances. It also stores the configuration (<code>model.settings</code>), the landscape (<code>model.landscape</code>, a matrix of <a href="simulation.html#Persefone.Pixel"><code>Pixel</code></a> objects that store the local land cover, amongst other things), and the current simulation date (<code>model.date</code>). (See <a href="simulation.html#Persefone.initmodel-Tuple{Dict{String, Any}}"><code>Persefone.initmodel</code></a> for details.)</p><h3 id="Model-configuration/the-@param-macro"><a class="docs-heading-anchor" href="#Model-configuration/the-@param-macro">Model configuration/the <code>@param</code> macro</a><a id="Model-configuration/the-@param-macro-1"></a><a class="docs-heading-anchor-permalink" href="#Model-configuration/the-@param-macro" title="Permalink"></a></h3><p>The model is configured via a <a href="https://toml.io/en/">TOML</a> file, the default version of which is at <a href="https://git.idiv.de/xo30xoqa/persephone/-/blob/master/src/parameters.toml"><code>src/parameters.toml</code></a>. An individual run can be configured using a user-defined configuration file, commandline arguments, or function calls (when Persefone is used as a package rather than an application). During a model run, the <a href="io.html#Persefone.@param-Tuple{Any}"><code>@param</code></a> macro can be used to access parameter values. Note that parameter names are prepended with the name of the component they are associated with. For example, the <code>outdir</code> parameter belongs to the <code>[core]</code> section of the TOML file, and must therefore be referenced as <code>@param(core.outdir)</code>. (See <a href="https://git.idiv.de/xo30xoqa/persephone/-/blob/master/src/core/input.jl"><code>src/core/input.jl</code></a> for details.)</p><div class="admonition is-info"><header class="admonition-header">@param and other macros</header><div class="admonition-body"><p>As <code>@param(parameter)</code> expands to <code>model.settings["parameter"]</code>, it can obviously only be used in a context where the <code>model</code> object is actually available. (This is the case for most functions in Persefone, but not for all.) Similarly, many of the <code>nature</code> macros depend on specific variables being available where they are called, and can therefore only be used in specific contexts (this is indicated in their documentation).</p></div></div><h3 id="Output-data"><a class="docs-heading-anchor" href="#Output-data">Output data</a><a id="Output-data-1"></a><a class="docs-heading-anchor-permalink" href="#Output-data" title="Permalink"></a></h3><p>Persefone can output model data into text files with a specified frequency (daily, monthly, yearly, or at the simulation end). Submodels can use <a href="io.html#Persefone.newdataoutput!"><code>Persefone.newdataoutput!</code></a> to plug into this system. For an example of how to use this, see <a href="https://git.idiv.de/xo30xoqa/persephone/-/blob/master/src/nature/ecologicaldata.jl"><code>src/nature/ecologicaldata.jl</code></a>. (See <a href="https://git.idiv.de/xo30xoqa/persephone/-/blob/master/src/core/output.jl"><code>src/core/output.jl</code></a> for details.)</p><h3 id="Farm-events"><a class="docs-heading-anchor" href="#Farm-events">Farm events</a><a id="Farm-events-1"></a><a class="docs-heading-anchor-permalink" href="#Farm-events" title="Permalink"></a></h3><p>The <a href="simulation.html#Persefone.FarmEvent"><code>FarmEvent</code></a> struct is used to communicate farming-related events between submodels. An event can be triggered with <a href="simulation.html#Persefone.createevent!"><code>createevent!</code></a> and affects all pixels within a <a href="crops.html#Persefone.FarmPlot"><code>FarmPlot</code></a>. (See <a href="https://git.idiv.de/xo30xoqa/persephone/-/blob/master/src/core/landscape.jl"><code>src/core/landscape.jl</code></a> for details.)</p><h3 id="Random-numbers-and-logging"><a class="docs-heading-anchor" href="#Random-numbers-and-logging">Random numbers and logging</a><a id="Random-numbers-and-logging-1"></a><a class="docs-heading-anchor-permalink" href="#Random-numbers-and-logging" title="Permalink"></a></h3><p>By default in Julia, the <a href="https://docs.julialang.org/en/v1/stdlib/Random/">random number generator</a> (RNG) and the <a href="https://docs.julialang.org/en/v1/stdlib/Logging/#Logging.global_logger">system logger</a> are two globally accessible variables. As Persefone needs to avoid all global data (since this would interfere with reproducibility in parallel runs), the <code>model</code> object stores a local logger and a local RNG. The local logger generally does not change the way the model uses <a href="https://docs.julialang.org/en/v1/stdlib/Logging/">log statements</a>, it is only relevant for some functions in <a href="https://git.idiv.de/xo30xoqa/persephone/-/blob/master/src/core/simulation.jl"><code>src/core/simulation.jl</code></a>.</p><div class="admonition is-info"><header class="admonition-header">Using the model RNG</header><div class="admonition-body"><p>Whenever you need to use a <a href="https://docs.julialang.org/en/v1/stdlib/Random/#Base.rand">random number</a>, you must use the <code>model.rng</code>. The easiest way to do this is with the <a href="simulation.html#Persefone.@rand-Tuple"><code>@rand</code></a> and <a href="simulation.html#Persefone.@shuffle!-Tuple{Any}"><code>@shuffle!</code></a> macros. (Note that these, too, require access to the <code>model</code> object.)</p></div></div></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="adapting.html">« Adapting Persefone</a><a class="docs-footer-nextpage" href="gis.html">Maps and weather data »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/assets/documenter.js b/docs/build/assets/documenter.js deleted file mode 100644 index f531160..0000000 --- a/docs/build/assets/documenter.js +++ /dev/null @@ -1,889 +0,0 @@ -// Generated by Documenter.jl -requirejs.config({ - paths: { - 'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/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.13.2/jquery-ui.min', - 'minisearch': 'https://cdn.jsdelivr.net/npm/minisearch@6.1.0/dist/umd/index.min', - 'katex-auto-render': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/contrib/auto-render.min', - 'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.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.16.8/katex.min', - 'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min', - 'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/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(['jquery'], function($) { - -let timer = 0; -var isExpanded = true; - -$(document).on("click", ".docstring header", function () { - let articleToggleTitle = "Expand docstring"; - - debounce(() => { - if ($(this).siblings("section").is(":visible")) { - $(this) - .find(".docstring-article-toggle-button") - .removeClass("fa-chevron-down") - .addClass("fa-chevron-right"); - } else { - $(this) - .find(".docstring-article-toggle-button") - .removeClass("fa-chevron-right") - .addClass("fa-chevron-down"); - - articleToggleTitle = "Collapse docstring"; - } - - $(this) - .find(".docstring-article-toggle-button") - .prop("title", articleToggleTitle); - $(this).siblings("section").slideToggle(); - }); -}); - -$(document).on("click", ".docs-article-toggle-button", function () { - let articleToggleTitle = "Expand docstring"; - let navArticleToggleTitle = "Expand all docstrings"; - - debounce(() => { - if (isExpanded) { - $(this).removeClass("fa-chevron-up").addClass("fa-chevron-down"); - $(".docstring-article-toggle-button") - .removeClass("fa-chevron-down") - .addClass("fa-chevron-right"); - - isExpanded = false; - - $(".docstring section").slideUp(); - } else { - $(this).removeClass("fa-chevron-down").addClass("fa-chevron-up"); - $(".docstring-article-toggle-button") - .removeClass("fa-chevron-right") - .addClass("fa-chevron-down"); - - isExpanded = true; - articleToggleTitle = "Collapse docstring"; - navArticleToggleTitle = "Collapse all docstrings"; - - $(".docstring section").slideDown(); - } - - $(this).prop("title", navArticleToggleTitle); - $(".docstring-article-toggle-button").prop("title", articleToggleTitle); - }); -}); - -function debounce(callback, timeout = 300) { - if (Date.now() - timer > timeout) { - callback(); - } - - clearTimeout(timer); - - timer = Date.now(); -} - -}) -//////////////////////////////////////////////////////////////////////////////// -require([], function() { -function addCopyButtonCallbacks() { - for (const el of document.getElementsByTagName("pre")) { - const button = document.createElement("button"); - button.classList.add("copy-button", "fa-solid", "fa-copy"); - button.setAttribute("aria-label", "Copy this code block"); - button.setAttribute("title", "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-xmark"); - 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-xmark"); - }, 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', 'minisearch'], function($, minisearch) { - -// In general, most search related things will have "search" as a prefix. -// To get an in-depth about the thought process you can refer: https://hetarth02.hashnode.dev/series/gsoc - -let results = []; -let timer = undefined; - -let data = documenterSearchIndex["docs"].map((x, key) => { - x["id"] = key; // minisearch requires a unique for each object - return x; -}); - -// 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 -const stopWords = new Set([ - "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", -]); - -let index = new minisearch({ - fields: ["title", "text"], // fields to index for full-text search - storeFields: ["location", "title", "text", "category", "page"], // fields to return with search results - processTerm: (term) => { - let word = stopWords.has(term) ? null : term; - if (word) { - // custom trimmer that doesn't strip @ and !, which are used in julia macro and function names - word = word - .replace(/^[^a-zA-Z0-9@!]+/, "") - .replace(/[^a-zA-Z0-9@!]+$/, ""); - } - - return word ?? null; - }, - // add . as a separator, because otherwise "title": "Documenter.Anchors.add!", would not find anything if searching for "add!", only for the entire qualification - tokenize: (string) => string.split(/[\s\-\.]+/), - // options which will be applied during the search - searchOptions: { - boost: { title: 100 }, - fuzzy: 2, - processTerm: (term) => { - let word = stopWords.has(term) ? null : term; - if (word) { - word = word - .replace(/^[^a-zA-Z0-9@!]+/, "") - .replace(/[^a-zA-Z0-9@!]+$/, ""); - } - - return word ?? null; - }, - tokenize: (string) => string.split(/[\s\-\.]+/), - }, -}); - -index.addAll(data); - -let filters = [...new Set(data.map((x) => x.category))]; -var modal_filters = make_modal_body_filters(filters); -var filter_results = []; - -$(document).on("keyup", ".documenter-search-input", function (event) { - // Adding a debounce to prevent disruptions from super-speed typing! - debounce(() => update_search(filter_results), 300); -}); - -$(document).on("click", ".search-filter", function () { - if ($(this).hasClass("search-filter-selected")) { - $(this).removeClass("search-filter-selected"); - } else { - $(this).addClass("search-filter-selected"); - } - - // Adding a debounce to prevent disruptions from crazy clicking! - debounce(() => get_filters(), 300); -}); - -/** - * A debounce function, takes a function and an optional timeout in milliseconds - * - * @function callback - * @param {number} timeout - */ -function debounce(callback, timeout = 300) { - clearTimeout(timer); - timer = setTimeout(callback, timeout); -} - -/** - * Make/Update the search component - * - * @param {string[]} selected_filters - */ -function update_search(selected_filters = []) { - let initial_search_body = ` - <div class="has-text-centered my-5 py-5">Type something to get started!</div> - `; - - let querystring = $(".documenter-search-input").val(); - - if (querystring.trim()) { - results = index.search(querystring, { - filter: (result) => { - // Filtering results - if (selected_filters.length === 0) { - return result.score >= 1; - } else { - return ( - result.score >= 1 && selected_filters.includes(result.category) - ); - } - }, - }); - - let search_result_container = ``; - let search_divider = `<div class="search-divider w-100"></div>`; - - if (results.length) { - let links = []; - let count = 0; - let search_results = ""; - - results.forEach(function (result) { - if (result.location) { - // Checking for duplication of results for the same page - if (!links.includes(result.location)) { - search_results += make_search_result(result, querystring); - count++; - } - - links.push(result.location); - } - }); - - let result_count = `<div class="is-size-6">${count} result(s)</div>`; - - search_result_container = ` - <div class="is-flex is-flex-direction-column gap-2 is-align-items-flex-start"> - ${modal_filters} - ${search_divider} - ${result_count} - <div class="is-clipped w-100 is-flex is-flex-direction-column gap-2 is-align-items-flex-start has-text-justified mt-1"> - ${search_results} - </div> - </div> - `; - } else { - search_result_container = ` - <div class="is-flex is-flex-direction-column gap-2 is-align-items-flex-start"> - ${modal_filters} - ${search_divider} - <div class="is-size-6">0 result(s)</div> - </div> - <div class="has-text-centered my-5 py-5">No result found!</div> - `; - } - - if ($(".search-modal-card-body").hasClass("is-justify-content-center")) { - $(".search-modal-card-body").removeClass("is-justify-content-center"); - } - - $(".search-modal-card-body").html(search_result_container); - } else { - filter_results = []; - modal_filters = make_modal_body_filters(filters, filter_results); - - if (!$(".search-modal-card-body").hasClass("is-justify-content-center")) { - $(".search-modal-card-body").addClass("is-justify-content-center"); - } - - $(".search-modal-card-body").html(initial_search_body); - } -} - -/** - * Make the modal filter html - * - * @param {string[]} filters - * @param {string[]} selected_filters - * @returns string - */ -function make_modal_body_filters(filters, selected_filters = []) { - let str = ``; - - filters.forEach((val) => { - if (selected_filters.includes(val)) { - str += `<a href="javascript:;" class="search-filter search-filter-selected"><span>${val}</span></a>`; - } else { - str += `<a href="javascript:;" class="search-filter"><span>${val}</span></a>`; - } - }); - - let filter_html = ` - <div class="is-flex gap-2 is-flex-wrap-wrap is-justify-content-flex-start is-align-items-center search-filters"> - <span class="is-size-6">Filters:</span> - ${str} - </div> - `; - - return filter_html; -} - -/** - * Make the result component given a minisearch result data object and the value of the search input as queryString. - * To view the result object structure, refer: https://lucaong.github.io/minisearch/modules/_minisearch_.html#searchresult - * - * @param {object} result - * @param {string} querystring - * @returns string - */ -function make_search_result(result, querystring) { - let search_divider = `<div class="search-divider w-100"></div>`; - let display_link = - result.location.slice(Math.max(0), Math.min(50, result.location.length)) + - (result.location.length > 30 ? "..." : ""); // To cut-off the link because it messes with the overflow of the whole div - - if (result.page !== "") { - display_link += ` (${result.page})`; - } - - let textindex = new RegExp(`\\b${querystring}\\b`, "i").exec(result.text); - let text = - textindex !== null - ? result.text.slice( - Math.max(textindex.index - 100, 0), - Math.min( - textindex.index + querystring.length + 100, - result.text.length - ) - ) - : ""; // cut-off text before and after from the match - - let display_result = text.length - ? "..." + - text.replace( - new RegExp(`\\b${querystring}\\b`, "i"), // For first occurrence - '<span class="search-result-highlight p-1">$&</span>' - ) + - "..." - : ""; // highlights the match - - let in_code = false; - if (!["page", "section"].includes(result.category.toLowerCase())) { - in_code = true; - } - - // We encode the full url to escape some special characters which can lead to broken links - let result_div = ` - <a href="${encodeURI( - documenterBaseURL + "/" + result.location - )}" class="search-result-link w-100 is-flex is-flex-direction-column gap-2 px-4 py-2"> - <div class="w-100 is-flex is-flex-wrap-wrap is-justify-content-space-between is-align-items-flex-start"> - <div class="search-result-title has-text-weight-bold ${ - in_code ? "search-result-code-title" : "" - }">${result.title}</div> - <div class="property-search-result-badge">${result.category}</div> - </div> - <p> - ${display_result} - </p> - <div - class="has-text-left" - style="font-size: smaller;" - title="${result.location}" - > - <i class="fas fa-link"></i> ${display_link} - </div> - </a> - ${search_divider} - `; - - return result_div; -} - -/** - * Get selected filters, remake the filter html and lastly update the search modal - */ -function get_filters() { - let ele = $(".search-filters .search-filter-selected").get(); - filter_results = ele.map((x) => $(x).text().toLowerCase()); - modal_filters = make_modal_body_filters(filters, filter_results); - update_search(filter_results); -} - -}) -//////////////////////////////////////////////////////////////////////////////// -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($) { - -let search_modal_header = ` - <header class="modal-card-head gap-2 is-align-items-center is-justify-content-space-between w-100 px-3"> - <div class="field mb-0 w-100"> - <p class="control has-icons-right"> - <input class="input documenter-search-input" type="text" placeholder="Search" /> - <span class="icon is-small is-right has-text-primary-dark"> - <i class="fas fa-magnifying-glass"></i> - </span> - </p> - </div> - <div class="icon is-size-4 is-clickable close-search-modal"> - <i class="fas fa-times"></i> - </div> - </header> -`; - -let initial_search_body = ` - <div class="has-text-centered my-5 py-5">Type something to get started!</div> -`; - -let search_modal_footer = ` - <footer class="modal-card-foot"> - <span> - <kbd class="search-modal-key-hints">Ctrl</kbd> + - <kbd class="search-modal-key-hints">/</kbd> to search - </span> - <span class="ml-3"> <kbd class="search-modal-key-hints">esc</kbd> to close </span> - </footer> -`; - -$(document.body).append( - ` - <div class="modal" id="search-modal"> - <div class="modal-background"></div> - <div class="modal-card search-min-width-50 search-min-height-100 is-justify-content-center"> - ${search_modal_header} - <section class="modal-card-body is-flex is-flex-direction-column is-justify-content-center gap-4 search-modal-card-body"> - ${initial_search_body} - </section> - ${search_modal_footer} - </div> - </div> - ` -); - -document.querySelector(".docs-search-query").addEventListener("click", () => { - openModal(); -}); - -document.querySelector(".close-search-modal").addEventListener("click", () => { - closeModal(); -}); - -$(document).on("click", ".search-result-link", function () { - closeModal(); -}); - -document.addEventListener("keydown", (event) => { - if ((event.ctrlKey || event.metaKey) && event.key === "/") { - openModal(); - } else if (event.key === "Escape") { - closeModal(); - } - - return false; -}); - -// Functions to open and close a modal -function openModal() { - let searchModal = document.querySelector("#search-modal"); - - searchModal.classList.add("is-active"); - document.querySelector(".documenter-search-input").focus(); -} - -function closeModal() { - let searchModal = document.querySelector("#search-modal"); - let initial_search_body = ` - <div class="has-text-centered my-5 py-5">Type something to get started!</div> - `; - - searchModal.classList.remove("is-active"); - document.querySelector(".documenter-search-input").blur(); - - if (!$(".search-modal-card-body").hasClass("is-justify-content-center")) { - $(".search-modal-card-body").addClass("is-justify-content-center"); - } - - $(".documenter-search-input").val(""); - $(".search-modal-card-body").html(initial_search_body); -} - -document - .querySelector("#search-modal .modal-background") - .addEventListener("click", () => { - closeModal(); - }); - -}) -//////////////////////////////////////////////////////////////////////////////// -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($) { - -// Theme picker setup -$(document).ready(function () { - // onchange callback - $("#documenter-themepicker").change(function themepick_callback(ev) { - var themename = $("#documenter-themepicker option:selected").attr("value"); - if (themename === "auto") { - // set_theme(window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'); - window.localStorage.removeItem("documenter-theme"); - } else { - // set_theme(themename); - window.localStorage.setItem("documenter-theme", themename); - } - // We re-use the global function from themeswap.js to actually do the swapping. - set_theme_from_local_storage(); - }); - - // 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; - }); - } - } -}); - -}) -//////////////////////////////////////////////////////////////////////////////// -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 = $( - "<option value='#' selected='selected'>" + - DOCUMENTER_CURRENT_VERSION + - "</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 = $( - "<option value='" + version_url + "'>" + each + "</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/docs/build/assets/preamble.tex b/docs/build/assets/preamble.tex new file mode 100644 index 0000000..0030d63 --- /dev/null +++ b/docs/build/assets/preamble.tex @@ -0,0 +1,20 @@ +% See documentation here: https://documenter.juliadocs.org/stable/man/other-formats/ +% Copied from https://github.com/JuliaDocs/Documenter.jl/blob/master/test/examples/src.cover_page/assets/preamble.tex + + +\documentclass[oneside]{memoir} + +\usepackage{./documenter} +\usepackage{./custom} + +%% Main document begin +\begin{document} + +\input{assets/titlepage.tex} + +\frontmatter +% \maketitle +\clearpage +\tableofcontents + +\mainmatter diff --git a/docs/build/assets/screenshot4.png b/docs/build/assets/screenshot4.png new file mode 100644 index 0000000000000000000000000000000000000000..f618d715130df61d90ff89cc1391e24694825f1e GIT binary patch literal 475020 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	+e)W+!pBIbP9Bc3AciEh_FJ14I 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�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	^TdGX`d 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%0A|`aEx%KVoh{-#W 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 literal 0 HcmV?d00001 diff --git a/docs/build/assets/themes/documenter-dark.css b/docs/build/assets/themes/documenter-dark.css deleted file mode 100644 index ec054ec..0000000 --- a/docs/build/assets/themes/documenter-dark.css +++ /dev/null @@ -1,7 +0,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:.4em;box-shadow:none;display:inline-flex;font-size:1rem;height:2.5em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.5em - 1px);padding-left:calc(0.75em - 1px);padding-right:calc(0.75em - 1px);padding-top:calc(0.5em - 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}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{-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 rgba(0,0,0,0);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 .pagination:not(:last-child),html.theme--documenter-dark .message:not(:last-child),html.theme--documenter-dark .level:not(:last-child),html.theme--documenter-dark .breadcrumb: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{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:9999px;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:#fff;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:9999px;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 .navbar-burger{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0}/*! minireset.css v0.0.6 | 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,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:inherit}.has-text-white{color:#fff !important}a.has-text-white:hover,a.has-text-white:focus{color:#e6e6e6 !important}.has-background-white{background-color:#fff !important}.has-text-black{color:#0a0a0a !important}a.has-text-black:hover,a.has-text-black:focus{color:#000 !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-primary-light{color:#f1f5f9 !important}a.has-text-primary-light:hover,a.has-text-primary-light:focus{color:#cddbe9 !important}.has-background-primary-light{background-color:#f1f5f9 !important}.has-text-primary-dark{color:#4d7eb2 !important}a.has-text-primary-dark:hover,a.has-text-primary-dark:focus{color:#7198c1 !important}.has-background-primary-dark{background-color:#4d7eb2 !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-link-light{color:#edfdf9 !important}a.has-text-link-light:hover,a.has-text-link-light:focus{color:#c0f6ec !important}.has-background-link-light{background-color:#edfdf9 !important}.has-text-link-dark{color:#15987e !important}a.has-text-link-dark:hover,a.has-text-link-dark:focus{color:#1bc5a4 !important}.has-background-link-dark{background-color:#15987e !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-info-light{color:#ebf7ff !important}a.has-text-info-light:hover,a.has-text-info-light:focus{color:#b9e2fe !important}.has-background-info-light{background-color:#ebf7ff !important}.has-text-info-dark{color:#0e9dfb !important}a.has-text-info-dark:hover,a.has-text-info-dark:focus{color:#40b1fc !important}.has-background-info-dark{background-color:#0e9dfb !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-success-light{color:#ebfff3 !important}a.has-text-success-light:hover,a.has-text-success-light:focus{color:#b8ffd6 !important}.has-background-success-light{background-color:#ebfff3 !important}.has-text-success-dark{color:#00eb64 !important}a.has-text-success-dark:hover,a.has-text-success-dark:focus{color:#1fff7e !important}.has-background-success-dark{background-color:#00eb64 !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-warning-light{color:#fffaeb !important}a.has-text-warning-light:hover,a.has-text-warning-light:focus{color:#ffedb8 !important}.has-background-warning-light{background-color:#fffaeb !important}.has-text-warning-dark{color:#d19c00 !important}a.has-text-warning-dark:hover,a.has-text-warning-dark:focus{color:#ffbf05 !important}.has-background-warning-dark{background-color:#d19c00 !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-danger-light{color:#fdeeec !important}a.has-text-danger-light:hover,a.has-text-danger-light:focus{color:#fac3bd !important}.has-background-danger-light{background-color:#fdeeec !important}.has-text-danger-dark{color:#ec311d !important}a.has-text-danger-dark:hover,a.has-text-danger-dark:focus{color:#f05c4c !important}.has-background-danger-dark{background-color:#ec311d !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}.is-flex-direction-row{flex-direction:row !important}.is-flex-direction-row-reverse{flex-direction:row-reverse !important}.is-flex-direction-column{flex-direction:column !important}.is-flex-direction-column-reverse{flex-direction:column-reverse !important}.is-flex-wrap-nowrap{flex-wrap:nowrap !important}.is-flex-wrap-wrap{flex-wrap:wrap !important}.is-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse !important}.is-justify-content-flex-start{justify-content:flex-start !important}.is-justify-content-flex-end{justify-content:flex-end !important}.is-justify-content-center{justify-content:center !important}.is-justify-content-space-between{justify-content:space-between !important}.is-justify-content-space-around{justify-content:space-around !important}.is-justify-content-space-evenly{justify-content:space-evenly !important}.is-justify-content-start{justify-content:start !important}.is-justify-content-end{justify-content:end !important}.is-justify-content-left{justify-content:left !important}.is-justify-content-right{justify-content:right !important}.is-align-content-flex-start{align-content:flex-start !important}.is-align-content-flex-end{align-content:flex-end !important}.is-align-content-center{align-content:center !important}.is-align-content-space-between{align-content:space-between !important}.is-align-content-space-around{align-content:space-around !important}.is-align-content-space-evenly{align-content:space-evenly !important}.is-align-content-stretch{align-content:stretch !important}.is-align-content-start{align-content:start !important}.is-align-content-end{align-content:end !important}.is-align-content-baseline{align-content:baseline !important}.is-align-items-stretch{align-items:stretch !important}.is-align-items-flex-start{align-items:flex-start !important}.is-align-items-flex-end{align-items:flex-end !important}.is-align-items-center{align-items:center !important}.is-align-items-baseline{align-items:baseline !important}.is-align-items-start{align-items:start !important}.is-align-items-end{align-items:end !important}.is-align-items-self-start{align-items:self-start !important}.is-align-items-self-end{align-items:self-end !important}.is-align-self-auto{align-self:auto !important}.is-align-self-flex-start{align-self:flex-start !important}.is-align-self-flex-end{align-self:flex-end !important}.is-align-self-center{align-self:center !important}.is-align-self-baseline{align-self:baseline !important}.is-align-self-stretch{align-self:stretch !important}.is-flex-grow-0{flex-grow:0 !important}.is-flex-grow-1{flex-grow:1 !important}.is-flex-grow-2{flex-grow:2 !important}.is-flex-grow-3{flex-grow:3 !important}.is-flex-grow-4{flex-grow:4 !important}.is-flex-grow-5{flex-grow:5 !important}.is-flex-shrink-0{flex-shrink:0 !important}.is-flex-shrink-1{flex-shrink:1 !important}.is-flex-shrink-2{flex-shrink:2 !important}.is-flex-shrink-3{flex-shrink:3 !important}.is-flex-shrink-4{flex-shrink:4 !important}.is-flex-shrink-5{flex-shrink:5 !important}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-clickable{cursor:pointer !important;pointer-events:all !important}.is-clipped{overflow:hidden !important}.is-relative{position:relative !important}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.m-0{margin:0 !important}.mt-0{margin-top:0 !important}.mr-0{margin-right:0 !important}.mb-0{margin-bottom:0 !important}.ml-0{margin-left:0 !important}.mx-0{margin-left:0 !important;margin-right:0 !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.m-1{margin:.25rem !important}.mt-1{margin-top:.25rem !important}.mr-1{margin-right:.25rem !important}.mb-1{margin-bottom:.25rem !important}.ml-1{margin-left:.25rem !important}.mx-1{margin-left:.25rem !important;margin-right:.25rem !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-2{margin:.5rem !important}.mt-2{margin-top:.5rem !important}.mr-2{margin-right:.5rem !important}.mb-2{margin-bottom:.5rem !important}.ml-2{margin-left:.5rem !important}.mx-2{margin-left:.5rem !important;margin-right:.5rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-3{margin:.75rem !important}.mt-3{margin-top:.75rem !important}.mr-3{margin-right:.75rem !important}.mb-3{margin-bottom:.75rem !important}.ml-3{margin-left:.75rem !important}.mx-3{margin-left:.75rem !important;margin-right:.75rem !important}.my-3{margin-top:.75rem !important;margin-bottom:.75rem !important}.m-4{margin:1rem !important}.mt-4{margin-top:1rem !important}.mr-4{margin-right:1rem !important}.mb-4{margin-bottom:1rem !important}.ml-4{margin-left:1rem !important}.mx-4{margin-left:1rem !important;margin-right:1rem !important}.my-4{margin-top:1rem !important;margin-bottom:1rem !important}.m-5{margin:1.5rem !important}.mt-5{margin-top:1.5rem !important}.mr-5{margin-right:1.5rem !important}.mb-5{margin-bottom:1.5rem !important}.ml-5{margin-left:1.5rem !important}.mx-5{margin-left:1.5rem !important;margin-right:1.5rem !important}.my-5{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-6{margin:3rem !important}.mt-6{margin-top:3rem !important}.mr-6{margin-right:3rem !important}.mb-6{margin-bottom:3rem !important}.ml-6{margin-left:3rem !important}.mx-6{margin-left:3rem !important;margin-right:3rem !important}.my-6{margin-top:3rem !important;margin-bottom:3rem !important}.m-auto{margin:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-right:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-left:auto !important}.mx-auto{margin-left:auto !important;margin-right:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.p-0{padding:0 !important}.pt-0{padding-top:0 !important}.pr-0{padding-right:0 !important}.pb-0{padding-bottom:0 !important}.pl-0{padding-left:0 !important}.px-0{padding-left:0 !important;padding-right:0 !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.p-1{padding:.25rem !important}.pt-1{padding-top:.25rem !important}.pr-1{padding-right:.25rem !important}.pb-1{padding-bottom:.25rem !important}.pl-1{padding-left:.25rem !important}.px-1{padding-left:.25rem !important;padding-right:.25rem !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-2{padding:.5rem !important}.pt-2{padding-top:.5rem !important}.pr-2{padding-right:.5rem !important}.pb-2{padding-bottom:.5rem !important}.pl-2{padding-left:.5rem !important}.px-2{padding-left:.5rem !important;padding-right:.5rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-3{padding:.75rem !important}.pt-3{padding-top:.75rem !important}.pr-3{padding-right:.75rem !important}.pb-3{padding-bottom:.75rem !important}.pl-3{padding-left:.75rem !important}.px-3{padding-left:.75rem !important;padding-right:.75rem !important}.py-3{padding-top:.75rem !important;padding-bottom:.75rem !important}.p-4{padding:1rem !important}.pt-4{padding-top:1rem !important}.pr-4{padding-right:1rem !important}.pb-4{padding-bottom:1rem !important}.pl-4{padding-left:1rem !important}.px-4{padding-left:1rem !important;padding-right:1rem !important}.py-4{padding-top:1rem !important;padding-bottom:1rem !important}.p-5{padding:1.5rem !important}.pt-5{padding-top:1.5rem !important}.pr-5{padding-right:1.5rem !important}.pb-5{padding-bottom:1.5rem !important}.pl-5{padding-left:1.5rem !important}.px-5{padding-left:1.5rem !important;padding-right:1.5rem !important}.py-5{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-6{padding:3rem !important}.pt-6{padding-top:3rem !important}.pr-6{padding-right:3rem !important}.pb-6{padding-bottom:3rem !important}.pl-6{padding-left:3rem !important}.px-6{padding-left:3rem !important;padding-right:3rem !important}.py-6{padding-top:3rem !important;padding-bottom:3rem !important}.p-auto{padding:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-right:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-left:auto !important}.px-auto{padding-left:auto !important;padding-right:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !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,html.theme--documenter-dark .docstring>section>a.docs-sourcelink{font-size:.75rem !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:1rem !important}.is-size-7-mobile{font-size:.75rem !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:1rem !important}.is-size-7-tablet{font-size:.75rem !important}}@media screen and (max-width: 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:.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:.75rem !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:1rem !important}.is-size-7-widescreen{font-size:.75rem !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:1rem !important}.is-size-7-fullhd{font-size:.75rem !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 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}.is-underlined{text-decoration:underline !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}}html.theme--documenter-dark{/*! - 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 -*/}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 optgroup,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:.875em;font-weight:normal;padding:.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:.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:.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:inherit}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 0.5em 1em -0.125em 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.5em - 1px);padding-left:1em;padding-right:1em;padding-top:calc(0.5em - 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.5em - 1px);margin-right:.25em}html.theme--documenter-dark .button .icon:last-child:not(:first-child){margin-left:.25em;margin-right:calc(-0.5em - 1px)}html.theme--documenter-dark .button .icon:first-child:last-child{margin-left:calc(-0.5em - 1px);margin-right:calc(-0.5em - 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-ghost{background:none;border-color:rgba(0,0,0,0);color:#1abc9c;text-decoration:none}html.theme--documenter-dark .button.is-ghost:hover,html.theme--documenter-dark .button.is-ghost.is-hovered{color:#1abc9c;text-decoration:underline}html.theme--documenter-dark .button.is-white{background-color:#fff;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:#fff;border-color:#fff;box-shadow:none}html.theme--documenter-dark .button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .button.is-white.is-inverted:hover,html.theme--documenter-dark .button.is-white.is-inverted.is-hovered{background-color:#000}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:#fff}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:#fff;color:#fff}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:#fff;border-color:#fff;color:#0a0a0a}html.theme--documenter-dark .button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff !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:#fff;box-shadow:none;color:#fff}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:#fff}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 #fff #fff !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:#fff}html.theme--documenter-dark .button.is-black:hover,html.theme--documenter-dark .button.is-black.is-hovered{background-color:#040404;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-black:focus,html.theme--documenter-dark .button.is-black.is-focused{border-color:transparent;color:#fff}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:#000;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-black[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-black{background-color:#0a0a0a;border-color:#0a0a0a;box-shadow:none}html.theme--documenter-dark .button.is-black.is-inverted{background-color:#fff;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:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-loading::after{border-color:transparent transparent #fff #fff !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:#fff}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 #fff #fff !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:#fff;color:#fff}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:#fff;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:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-light{background-color:#ecf0f1;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light:hover,html.theme--documenter-dark .button.is-light.is-hovered{background-color:#e5eaec;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light:focus,html.theme--documenter-dark .button.is-light.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light{background-color:#ecf0f1;border-color:#ecf0f1;box-shadow:none}html.theme--documenter-dark .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);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:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !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:rgba(0,0,0,0.7)}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 rgba(0,0,0,0.7) rgba(0,0,0,0.7) !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:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7);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:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-dark,html.theme--documenter-dark .content kbd.button{background-color:#282f2f;border-color:transparent;color:#fff}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:#fff}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:#fff}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:#fff}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:#282f2f;box-shadow:none}html.theme--documenter-dark .button.is-dark.is-inverted,html.theme--documenter-dark .content kbd.button.is-inverted{background-color:#fff;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:#f2f2f2}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:#fff;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 #fff #fff !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:#fff}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 #fff #fff !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:#fff;color:#fff}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:#fff;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:#fff;box-shadow:none;color:#fff}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:#375a7f;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-primary.is-light,html.theme--documenter-dark .docstring>section>a.button.is-light.docs-sourcelink{background-color:#f1f5f9;color:#4d7eb2}html.theme--documenter-dark .button.is-primary.is-light:hover,html.theme--documenter-dark .docstring>section>a.button.is-light.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-light.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-light.is-hovered.docs-sourcelink{background-color:#e8eef5;border-color:transparent;color:#4d7eb2}html.theme--documenter-dark .button.is-primary.is-light:active,html.theme--documenter-dark .docstring>section>a.button.is-light.docs-sourcelink:active,html.theme--documenter-dark .button.is-primary.is-light.is-active,html.theme--documenter-dark .docstring>section>a.button.is-light.is-active.docs-sourcelink{background-color:#dfe8f1;border-color:transparent;color:#4d7eb2}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:#1abc9c;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-link.is-light{background-color:#edfdf9;color:#15987e}html.theme--documenter-dark .button.is-link.is-light:hover,html.theme--documenter-dark .button.is-link.is-light.is-hovered{background-color:#e2fbf6;border-color:transparent;color:#15987e}html.theme--documenter-dark .button.is-link.is-light:active,html.theme--documenter-dark .button.is-link.is-light.is-active{background-color:#d7f9f3;border-color:transparent;color:#15987e}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:#024c7d;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-info.is-light{background-color:#ebf7ff;color:#0e9dfb}html.theme--documenter-dark .button.is-info.is-light:hover,html.theme--documenter-dark .button.is-info.is-light.is-hovered{background-color:#def2fe;border-color:transparent;color:#0e9dfb}html.theme--documenter-dark .button.is-info.is-light:active,html.theme--documenter-dark .button.is-info.is-light.is-active{background-color:#d2edfe;border-color:transparent;color:#0e9dfb}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:#073;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:#008438;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-success.is-light{background-color:#ebfff3;color:#00eb64}html.theme--documenter-dark .button.is-success.is-light:hover,html.theme--documenter-dark .button.is-success.is-light.is-hovered{background-color:#deffec;border-color:transparent;color:#00eb64}html.theme--documenter-dark .button.is-success.is-light:active,html.theme--documenter-dark .button.is-success.is-light.is-active{background-color:#d1ffe5;border-color:transparent;color:#00eb64}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:#ad8100;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-warning.is-light{background-color:#fffaeb;color:#d19c00}html.theme--documenter-dark .button.is-warning.is-light:hover,html.theme--documenter-dark .button.is-warning.is-light.is-hovered{background-color:#fff7de;border-color:transparent;color:#d19c00}html.theme--documenter-dark .button.is-warning.is-light:active,html.theme--documenter-dark .button.is-warning.is-light.is-active{background-color:#fff3d1;border-color:transparent;color:#d19c00}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:#9e1b0d;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-danger.is-light{background-color:#fdeeec;color:#ec311d}html.theme--documenter-dark .button.is-danger.is-light:hover,html.theme--documenter-dark .button.is-danger.is-light.is-hovered{background-color:#fce3e0;border-color:transparent;color:#ec311d}html.theme--documenter-dark .button.is-danger.is-light:active,html.theme--documenter-dark .button.is-danger.is-light.is-active{background-color:#fcd8d5;border-color:transparent;color:#ec311d}html.theme--documenter-dark .button.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.button{font-size:.75rem}html.theme--documenter-dark .button.is-small:not(.is-rounded),html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.button:not(.is-rounded){border-radius:3px}html.theme--documenter-dark .button.is-normal{font-size:1rem}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:#5e6d6f;box-shadow:none;opacity:.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 * 0.5));top:calc(50% - (1em * 0.5));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:9999px;padding-left:calc(1em + 0.25em);padding-right:calc(1em + 0.25em)}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:.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){font-size:.75rem}html.theme--documenter-dark .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large):not(.is-rounded){border-radius:3px}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}@media screen and (max-width: 768px){html.theme--documenter-dark .button.is-responsive.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.5625rem}html.theme--documenter-dark .button.is-responsive,html.theme--documenter-dark .button.is-responsive.is-normal{font-size:.65625rem}html.theme--documenter-dark .button.is-responsive.is-medium{font-size:.75rem}html.theme--documenter-dark .button.is-responsive.is-large{font-size:1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .button.is-responsive.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.65625rem}html.theme--documenter-dark .button.is-responsive,html.theme--documenter-dark .button.is-responsive.is-normal{font-size:.75rem}html.theme--documenter-dark .button.is-responsive.is-medium{font-size:1rem}html.theme--documenter-dark .button.is-responsive.is-large{font-size:1.25rem}}html.theme--documenter-dark .container{flex-grow:1;margin:0 auto;position:relative;width:auto}html.theme--documenter-dark .container.is-fluid{max-width:none !important;padding-left:32px;padding-right:32px;width:100%}@media screen and (min-width: 1056px){html.theme--documenter-dark .container{max-width:992px}}@media screen and (max-width: 1215px){html.theme--documenter-dark .container.is-widescreen:not(.is-max-desktop){max-width:1152px}}@media screen and (max-width: 1407px){html.theme--documenter-dark .container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}@media screen and (min-width: 1216px){html.theme--documenter-dark .container:not(.is-max-desktop){max-width:1152px}}@media screen and (min-width: 1408px){html.theme--documenter-dark .container:not(.is-max-desktop):not(.is-max-widescreen){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:inherit}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:.75rem}html.theme--documenter-dark .content.is-normal{font-size:1rem}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 .icon-text{align-items:flex-start;color:inherit;display:inline-flex;flex-wrap:wrap;line-height:1.5rem;vertical-align:top}html.theme--documenter-dark .icon-text .icon{flex-grow:0;flex-shrink:0}html.theme--documenter-dark .icon-text .icon:not(:last-child){margin-right:.25em}html.theme--documenter-dark .icon-text .icon:not(:first-child){margin-left:.25em}html.theme--documenter-dark div.icon-text{display:flex}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:9999px}html.theme--documenter-dark .image.is-fullwidth,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-fullwidth{width:100%}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:.4em;position:relative;padding:1.25rem 2.5rem 1.25rem 1.5rem}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:#fff}html.theme--documenter-dark .notification pre code{background:transparent}html.theme--documenter-dark .notification>.delete{right:.5rem;position:absolute;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:#fff;color:#0a0a0a}html.theme--documenter-dark .notification.is-black{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .notification.is-light{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .notification.is-dark,html.theme--documenter-dark .content kbd.notification{background-color:#282f2f;color:#fff}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-primary.is-light,html.theme--documenter-dark .docstring>section>a.notification.is-light.docs-sourcelink{background-color:#f1f5f9;color:#4d7eb2}html.theme--documenter-dark .notification.is-link{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .notification.is-link.is-light{background-color:#edfdf9;color:#15987e}html.theme--documenter-dark .notification.is-info{background-color:#024c7d;color:#fff}html.theme--documenter-dark .notification.is-info.is-light{background-color:#ebf7ff;color:#0e9dfb}html.theme--documenter-dark .notification.is-success{background-color:#008438;color:#fff}html.theme--documenter-dark .notification.is-success.is-light{background-color:#ebfff3;color:#00eb64}html.theme--documenter-dark .notification.is-warning{background-color:#ad8100;color:#fff}html.theme--documenter-dark .notification.is-warning.is-light{background-color:#fffaeb;color:#d19c00}html.theme--documenter-dark .notification.is-danger{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .notification.is-danger.is-light{background-color:#fdeeec;color:#ec311d}html.theme--documenter-dark .progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:9999px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}html.theme--documenter-dark .progress::-webkit-progress-bar{background-color:#343c3d}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:#fff}html.theme--documenter-dark .progress.is-white::-moz-progress-bar{background-color:#fff}html.theme--documenter-dark .progress.is-white::-ms-fill{background-color:#fff}html.theme--documenter-dark .progress.is-white:indeterminate{background-image:linear-gradient(to right, #fff 30%, #343c3d 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%, #343c3d 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%, #343c3d 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%, #343c3d 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%, #343c3d 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%, #343c3d 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%, #343c3d 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%, #343c3d 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%, #343c3d 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%, #343c3d 30%)}html.theme--documenter-dark .progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#343c3d;background-image:linear-gradient(to right, #fff 30%, #343c3d 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:indeterminate::-ms-fill{animation-name:none}html.theme--documenter-dark .progress.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.progress{height:.75rem}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:#fff;border-color:#fff;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:#fff}html.theme--documenter-dark .table td.is-light,html.theme--documenter-dark .table th.is-light{background-color:#ecf0f1;border-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .table td.is-dark,html.theme--documenter-dark .table th.is-dark{background-color:#282f2f;border-color:#282f2f;color:#fff}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 td.is-vcentered,html.theme--documenter-dark .table th.is-vcentered{vertical-align:middle}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:rgba(0,0,0,0)}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:rgba(0,0,0,0)}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:rgba(0,0,0,0)}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:.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:1rem}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-top-left-radius:0;border-bottom-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-top-right-radius:0;border-bottom-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:.4em;color:#fff;display:inline-flex;font-size:.75rem;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:.25rem;margin-right:-.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:#fff;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:#fff}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:rgba(0,0,0,0.7)}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:#fff}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-primary.is-light:not(body),html.theme--documenter-dark .content kbd.is-primary.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#f1f5f9;color:#4d7eb2}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-link.is-light:not(body),html.theme--documenter-dark .content kbd.is-link.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-link.is-light:not(body){background-color:#edfdf9;color:#15987e}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-info.is-light:not(body),html.theme--documenter-dark .content kbd.is-info.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-info.is-light:not(body){background-color:#ebf7ff;color:#0e9dfb}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-success.is-light:not(body),html.theme--documenter-dark .content kbd.is-success.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-success.is-light:not(body){background-color:#ebfff3;color:#00eb64}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-warning.is-light:not(body),html.theme--documenter-dark .content kbd.is-warning.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-warning.is-light:not(body){background-color:#fffaeb;color:#d19c00}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-danger.is-light:not(body),html.theme--documenter-dark .content kbd.is-danger.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-danger.is-light:not(body){background-color:#fdeeec;color:#ec311d}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:.75rem}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:1rem}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:-.375em;margin-right:.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:.1875em;margin-right:-.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:-.375em;margin-right:-.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:9999px}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:.75em}html.theme--documenter-dark .title sup,html.theme--documenter-dark .subtitle sup{font-size:.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: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:1rem}html.theme--documenter-dark .title.is-7{font-size:.75rem}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:1rem}html.theme--documenter-dark .subtitle.is-7{font-size:.75rem}html.theme--documenter-dark .heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}html.theme--documenter-dark .number{align-items:center;background-color:#282f2f;border-radius:9999px;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:.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:#868c98}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:#868c98}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:#868c98}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:#868c98}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:#fff}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 0.0625em 0.125em rgba(10,10,10,0.05);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:#fff}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:.75rem}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:9999px;padding-left:calc(calc(0.75em - 1px) + 0.375em);padding-right:calc(calc(0.75em - 1px) + 0.375em)}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:calc(0.75em - 1px);resize:vertical}html.theme--documenter-dark .textarea:not([rows]){max-height:40em;min-height:8em}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,html.theme--documenter-dark .radio input[disabled],html.theme--documenter-dark .checkbox input[disabled]{color:#fff;cursor:not-allowed}html.theme--documenter-dark .radio+.radio{margin-left:.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.5em}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:9999px;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:#fff}html.theme--documenter-dark .select.is-white select{border-color:#fff}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:#000}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:.75rem}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:#fff !important;opacity:0.5}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:.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:.75rem}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:#fff;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:#fff}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:#fff}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:#fff}html.theme--documenter-dark .file.is-black:active .file-cta,html.theme--documenter-dark .file.is-black.is-active .file-cta{background-color:#000;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-light .file-cta{background-color:#ecf0f1;border-color:transparent;color:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}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:#fff}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:#fff}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:#fff}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:#fff}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:#073;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:.75rem}html.theme--documenter-dark .file.is-normal{font-size:1rem}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:.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:.4em .4em 0 0}html.theme--documenter-dark .file.is-boxed.has-name .file-name{border-radius:0 0 .4em .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 .4em .4em 0}html.theme--documenter-dark .file.is-right .file-name{border-radius:.4em 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:#232829;color:#f2f2f2}html.theme--documenter-dark .file-label:hover .file-name{border-color:#596668}html.theme--documenter-dark .file-label:active .file-cta{background-color:#1d2122;color:#f2f2f2}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:.4em;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}html.theme--documenter-dark .file-cta{background-color:#282f2f;color:#fff}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:inherit;text-overflow:ellipsis}html.theme--documenter-dark .file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:.5em;width:1em}html.theme--documenter-dark .file-icon .fa{font-size:14px}html.theme--documenter-dark .label{color:#f2f2f2;display:block;font-size:1rem;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:.75rem}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:.75rem;margin-top:0.25rem}html.theme--documenter-dark .help.is-white{color:#fff}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:.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:.75rem;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:.75rem}}html.theme--documenter-dark .control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:inherit}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:#282f2f}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:.75rem}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:#5e6d6f;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;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.5em}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.5em}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:.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:.75rem}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:1rem;white-space:nowrap}html.theme--documenter-dark .breadcrumb a{align-items:center;color:#1abc9c;display:flex;justify-content:center;padding: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:.5em}html.theme--documenter-dark .breadcrumb .icon:last-child{margin-left:.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:.75rem}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:#fff;border-radius:.25rem;box-shadow:#171717;color:#fff;max-width:100%;position:relative}html.theme--documenter-dark .card-footer:first-child,html.theme--documenter-dark .card-content:first-child,html.theme--documenter-dark .card-header:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--documenter-dark .card-footer:last-child,html.theme--documenter-dark .card-content:last-child,html.theme--documenter-dark .card-header:last-child{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--documenter-dark .card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 0.125em 0.25em 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 1rem}html.theme--documenter-dark .card-header-title.is-centered{justify-content:center}html.theme--documenter-dark .card-header-icon{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0;align-items:center;cursor:pointer;display:flex;justify-content:center;padding:0.75rem 1rem}html.theme--documenter-dark .card-image{display:block;position:relative}html.theme--documenter-dark .card-image:first-child img{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--documenter-dark .card-image:last-child img{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--documenter-dark .card-content{background-color:rgba(0,0,0,0);padding:1.5rem}html.theme--documenter-dark .card-footer{background-color:rgba(0,0,0,0);border-top:1px solid #ededed;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:.75rem}html.theme--documenter-dark .card-footer-item:not(:last-child){border-right:1px solid #ededed}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:.4em;box-shadow:#171717;padding-bottom:.5rem;padding-top:.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:inherit;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:#ededed;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:.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:.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:.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:.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 .media{align-items:flex-start;display:flex;text-align:inherit}html.theme--documenter-dark .media .content:not(:last-child){margin-bottom:.75rem}html.theme--documenter-dark .media .media{border-top:1px solid rgba(94,109,111,0.5);display:flex;padding-top:.75rem}html.theme--documenter-dark .media .media .content:not(:last-child),html.theme--documenter-dark .media .media .control:not(:last-child){margin-bottom:.5rem}html.theme--documenter-dark .media .media .media{padding-top:.5rem}html.theme--documenter-dark .media .media .media+.media{margin-top:.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:inherit}@media screen and (max-width: 768px){html.theme--documenter-dark .media-content{overflow-x:auto}}html.theme--documenter-dark .menu{font-size:1rem}html.theme--documenter-dark .menu.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.menu{font-size:.75rem}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:.75em;padding-left:.75em}html.theme--documenter-dark .menu-label{color:#fff;font-size:.75em;letter-spacing:.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:.4em;font-size:1rem}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:.75rem}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:#fff}html.theme--documenter-dark .message.is-white .message-header{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .message.is-white .message-body{border-color:#fff}html.theme--documenter-dark .message.is-black{background-color:#fafafa}html.theme--documenter-dark .message.is-black .message-header{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .message.is-black .message-body{border-color:#0a0a0a}html.theme--documenter-dark .message.is-light{background-color:#f9fafb}html.theme--documenter-dark .message.is-light .message-header{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .message.is-light .message-body{border-color:#ecf0f1}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:#fff}html.theme--documenter-dark .message.is-dark .message-body,html.theme--documenter-dark .content kbd.message .message-body{border-color:#282f2f}html.theme--documenter-dark .message.is-primary,html.theme--documenter-dark .docstring>section>a.message.docs-sourcelink{background-color:#f1f5f9}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:#4d7eb2}html.theme--documenter-dark .message.is-link{background-color:#edfdf9}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:#15987e}html.theme--documenter-dark .message.is-info{background-color:#ebf7ff}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:#0e9dfb}html.theme--documenter-dark .message.is-success{background-color:#ebfff3}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:#00eb64}html.theme--documenter-dark .message.is-warning{background-color:#fffaeb}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:#d19c00}html.theme--documenter-dark .message.is-danger{background-color:#fdeeec}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:#ec311d}html.theme--documenter-dark .message-header{align-items:center;background-color:#fff;border-radius:.4em .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:.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:.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:#fff}html.theme--documenter-dark .message-body pre code{background-color:rgba(0,0,0,0)}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){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:.5em}html.theme--documenter-dark .modal-card-body{-webkit-overflow-scrolling:touch;background-color:#fff;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:#fff;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:#fff;color:#0a0a0a}}html.theme--documenter-dark .navbar.is-black{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link{color:#fff}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:#000;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-burger{color:#fff}@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:#fff}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:#000;color:#fff}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:#fff}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:#000;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}html.theme--documenter-dark .navbar.is-light{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-burger{color:rgba(0,0,0,0.7)}@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:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}}html.theme--documenter-dark .navbar.is-dark,html.theme--documenter-dark .content kbd.navbar{background-color:#282f2f;color:#fff}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:#fff}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:#fff}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:#fff}html.theme--documenter-dark .navbar.is-dark .navbar-burger,html.theme--documenter-dark .content kbd.navbar .navbar-burger{color:#fff}@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:#fff}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:#fff}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:#fff}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:#fff}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:#fff}}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;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;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:rgba(0,0,0,0);color:#1abc9c}html.theme--documenter-dark .navbar-item{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:rgba(0,0,0,0);border-bottom-color:#1abc9c}html.theme--documenter-dark .navbar-item.is-tab.is-active{background-color:rgba(0,0,0,0);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:.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:rgba(0,0,0,0);color:#dbdee0}html.theme--documenter-dark .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);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.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:rgba(0,0,0,0);color:#dbdee0}html.theme--documenter-dark .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);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:rgba(0,0,0,0)}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:rgba(0,0,0,0)}}html.theme--documenter-dark .hero.is-fullheight-with-navbar{min-height:calc(100vh - 4rem)}html.theme--documenter-dark .pagination{font-size:1rem;margin:-.25rem}html.theme--documenter-dark .pagination.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination{font-size:.75rem}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:9999px}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:9999px}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:.25rem;padding-left:.5em;padding-right:.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.5em}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-previous.is-disabled,html.theme--documenter-dark .pagination-next[disabled],html.theme--documenter-dark .pagination-next.is-disabled,html.theme--documenter-dark .pagination-link[disabled],html.theme--documenter-dark .pagination-link.is-disabled{background-color:#5e6d6f;border-color:#5e6d6f;box-shadow:none;color:#fff;opacity:0.5}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next{padding-left:.75em;padding-right:.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}html.theme--documenter-dark .pagination-list li{list-style:none}@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,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis{margin-bottom:0;margin-top:0}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;margin-bottom:0;margin-top:0}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{border-radius:8px;box-shadow:#171717;font-size:1rem}html.theme--documenter-dark .panel:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .panel.is-white .panel-heading{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .panel.is-white .panel-tabs a.is-active{border-bottom-color:#fff}html.theme--documenter-dark .panel.is-white .panel-block.is-active .panel-icon{color:#fff}html.theme--documenter-dark .panel.is-black .panel-heading{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .panel.is-black .panel-tabs a.is-active{border-bottom-color:#0a0a0a}html.theme--documenter-dark .panel.is-black .panel-block.is-active .panel-icon{color:#0a0a0a}html.theme--documenter-dark .panel.is-light .panel-heading{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .panel.is-light .panel-tabs a.is-active{border-bottom-color:#ecf0f1}html.theme--documenter-dark .panel.is-light .panel-block.is-active .panel-icon{color:#ecf0f1}html.theme--documenter-dark .panel.is-dark .panel-heading,html.theme--documenter-dark .content kbd.panel .panel-heading{background-color:#282f2f;color:#fff}html.theme--documenter-dark .panel.is-dark .panel-tabs a.is-active,html.theme--documenter-dark .content kbd.panel .panel-tabs a.is-active{border-bottom-color:#282f2f}html.theme--documenter-dark .panel.is-dark .panel-block.is-active .panel-icon,html.theme--documenter-dark .content kbd.panel .panel-block.is-active .panel-icon{color:#282f2f}html.theme--documenter-dark .panel.is-primary .panel-heading,html.theme--documenter-dark .docstring>section>a.panel.docs-sourcelink .panel-heading{background-color:#375a7f;color:#fff}html.theme--documenter-dark .panel.is-primary .panel-tabs a.is-active,html.theme--documenter-dark .docstring>section>a.panel.docs-sourcelink .panel-tabs a.is-active{border-bottom-color:#375a7f}html.theme--documenter-dark .panel.is-primary .panel-block.is-active .panel-icon,html.theme--documenter-dark .docstring>section>a.panel.docs-sourcelink .panel-block.is-active .panel-icon{color:#375a7f}html.theme--documenter-dark .panel.is-link .panel-heading{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .panel.is-link .panel-tabs a.is-active{border-bottom-color:#1abc9c}html.theme--documenter-dark .panel.is-link .panel-block.is-active .panel-icon{color:#1abc9c}html.theme--documenter-dark .panel.is-info .panel-heading{background-color:#024c7d;color:#fff}html.theme--documenter-dark .panel.is-info .panel-tabs a.is-active{border-bottom-color:#024c7d}html.theme--documenter-dark .panel.is-info .panel-block.is-active .panel-icon{color:#024c7d}html.theme--documenter-dark .panel.is-success .panel-heading{background-color:#008438;color:#fff}html.theme--documenter-dark .panel.is-success .panel-tabs a.is-active{border-bottom-color:#008438}html.theme--documenter-dark .panel.is-success .panel-block.is-active .panel-icon{color:#008438}html.theme--documenter-dark .panel.is-warning .panel-heading{background-color:#ad8100;color:#fff}html.theme--documenter-dark .panel.is-warning .panel-tabs a.is-active{border-bottom-color:#ad8100}html.theme--documenter-dark .panel.is-warning .panel-block.is-active .panel-icon{color:#ad8100}html.theme--documenter-dark .panel.is-danger .panel-heading{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .panel.is-danger .panel-tabs a.is-active{border-bottom-color:#9e1b0d}html.theme--documenter-dark .panel.is-danger .panel-block.is-active .panel-icon{color:#9e1b0d}html.theme--documenter-dark .panel-tabs:not(:last-child),html.theme--documenter-dark .panel-block:not(:last-child){border-bottom:1px solid #ededed}html.theme--documenter-dark .panel-heading{background-color:#343c3d;border-radius:8px 8px 0 0;color:#f2f2f2;font-size:1.25em;font-weight:700;line-height:1.25;padding:0.75em 1em}html.theme--documenter-dark .panel-tabs{align-items:flex-end;display:flex;font-size:.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:.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 .panel-block:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}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:#fff;margin-right:.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:1rem;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:.5em}html.theme--documenter-dark .tabs .icon:last-child{margin-left:.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:.4em .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:#fff;border-color:#5e6d6f;border-bottom-color:rgba(0,0,0,0) !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-top-left-radius:.4em;border-bottom-left-radius:.4em}html.theme--documenter-dark .tabs.is-toggle li:last-child a{border-top-right-radius:.4em;border-bottom-right-radius:.4em}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:9999px;border-top-left-radius:9999px;padding-left:1.25em}html.theme--documenter-dark .tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:9999px;border-top-right-radius:9999px;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:.75rem}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:.75rem}.columns.is-mobile>html.theme--documenter-dark .column.is-narrow{flex:none;width:unset}.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.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-1{margin-left:8.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-2{flex:none;width:16.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-2{margin-left:16.66666674%}.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.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-4{margin-left:33.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-5{flex:none;width:41.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-5{margin-left:41.66666674%}.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.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-7{margin-left:58.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-8{flex:none;width:66.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-8{margin-left:66.66666674%}.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.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-10{margin-left:83.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-11{flex:none;width:91.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-11{margin-left:91.66666674%}.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;width:unset}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.33333337%}html.theme--documenter-dark .column.is-offset-1-mobile{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2-mobile{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2-mobile{margin-left:16.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-4-mobile{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5-mobile{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5-mobile{margin-left:41.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-7-mobile{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8-mobile{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8-mobile{margin-left:66.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-10-mobile{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11-mobile{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11-mobile{margin-left:91.66666674%}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;width:unset}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.33333337%}html.theme--documenter-dark .column.is-offset-1,html.theme--documenter-dark .column.is-offset-1-tablet{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2,html.theme--documenter-dark .column.is-2-tablet{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2,html.theme--documenter-dark .column.is-offset-2-tablet{margin-left:16.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-4,html.theme--documenter-dark .column.is-offset-4-tablet{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5,html.theme--documenter-dark .column.is-5-tablet{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5,html.theme--documenter-dark .column.is-offset-5-tablet{margin-left:41.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-7,html.theme--documenter-dark .column.is-offset-7-tablet{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8,html.theme--documenter-dark .column.is-8-tablet{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8,html.theme--documenter-dark .column.is-offset-8-tablet{margin-left:66.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-10,html.theme--documenter-dark .column.is-offset-10-tablet{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11,html.theme--documenter-dark .column.is-11-tablet{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11,html.theme--documenter-dark .column.is-offset-11-tablet{margin-left:91.66666674%}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;width:unset}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.33333337%}html.theme--documenter-dark .column.is-offset-1-touch{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2-touch{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2-touch{margin-left:16.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-4-touch{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5-touch{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5-touch{margin-left:41.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-7-touch{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8-touch{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8-touch{margin-left:66.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-10-touch{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11-touch{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11-touch{margin-left:91.66666674%}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;width:unset}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.33333337%}html.theme--documenter-dark .column.is-offset-1-desktop{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2-desktop{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2-desktop{margin-left:16.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-4-desktop{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5-desktop{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5-desktop{margin-left:41.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-7-desktop{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8-desktop{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8-desktop{margin-left:66.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-10-desktop{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11-desktop{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11-desktop{margin-left:91.66666674%}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;width:unset}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.33333337%}html.theme--documenter-dark .column.is-offset-1-widescreen{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2-widescreen{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2-widescreen{margin-left:16.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-4-widescreen{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5-widescreen{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5-widescreen{margin-left:41.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-7-widescreen{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8-widescreen{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8-widescreen{margin-left:66.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-10-widescreen{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11-widescreen{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11-widescreen{margin-left:91.66666674%}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;width:unset}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.33333337%}html.theme--documenter-dark .column.is-offset-1-fullhd{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2-fullhd{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2-fullhd{margin-left:16.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-4-fullhd{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5-fullhd{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5-fullhd{margin-left:41.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-7-fullhd{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8-fullhd{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8-fullhd{margin-left:66.66666674%}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.33333337%}html.theme--documenter-dark .column.is-offset-10-fullhd{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11-fullhd{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11-fullhd{margin-left:91.66666674%}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:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--documenter-dark .columns:last-child{margin-bottom:-.75rem}html.theme--documenter-dark .columns:not(:last-child){margin-bottom:calc(1.5rem - .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: .25rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-1-mobile{--columnGap: .25rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-1-tablet{--columnGap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-1-tablet-only{--columnGap: .25rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-1-touch{--columnGap: .25rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-1-desktop{--columnGap: .25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-1-desktop-only{--columnGap: .25rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-1-widescreen{--columnGap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-1-widescreen-only{--columnGap: .25rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-1-fullhd{--columnGap: .25rem}}html.theme--documenter-dark .columns.is-variable.is-2{--columnGap: .5rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-2-mobile{--columnGap: .5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-2-tablet{--columnGap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-2-tablet-only{--columnGap: .5rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-2-touch{--columnGap: .5rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-2-desktop{--columnGap: .5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-2-desktop-only{--columnGap: .5rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-2-widescreen{--columnGap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-2-widescreen-only{--columnGap: .5rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-2-fullhd{--columnGap: .5rem}}html.theme--documenter-dark .columns.is-variable.is-3{--columnGap: .75rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-3-mobile{--columnGap: .75rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-3-tablet{--columnGap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-3-tablet-only{--columnGap: .75rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-3-touch{--columnGap: .75rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-3-desktop{--columnGap: .75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-3-desktop-only{--columnGap: .75rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-3-widescreen{--columnGap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-3-widescreen-only{--columnGap: .75rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-3-fullhd{--columnGap: .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:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--documenter-dark .tile.is-ancestor:last-child{margin-bottom:-.75rem}html.theme--documenter-dark .tile.is-ancestor:not(:last-child){margin-bottom:.75rem}html.theme--documenter-dark .tile.is-child{margin:0 !important}html.theme--documenter-dark .tile.is-parent{padding:.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.33333337%}html.theme--documenter-dark .tile.is-2{flex:none;width:16.66666674%}html.theme--documenter-dark .tile.is-3{flex:none;width:25%}html.theme--documenter-dark .tile.is-4{flex:none;width:33.33333337%}html.theme--documenter-dark .tile.is-5{flex:none;width:41.66666674%}html.theme--documenter-dark .tile.is-6{flex:none;width:50%}html.theme--documenter-dark .tile.is-7{flex:none;width:58.33333337%}html.theme--documenter-dark .tile.is-8{flex:none;width:66.66666674%}html.theme--documenter-dark .tile.is-9{flex:none;width:75%}html.theme--documenter-dark .tile.is-10{flex:none;width:83.33333337%}html.theme--documenter-dark .tile.is-11{flex:none;width:91.66666674%}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:#fff;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:#fff}}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{color:#fff !important;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:#fff}html.theme--documenter-dark .hero.is-white.is-bold{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 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%, #fff 71%, #fff 100%)}}html.theme--documenter-dark .hero.is-black{background-color:#0a0a0a;color:#fff}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:#fff}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:#fff}@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:#000;color:#fff}html.theme--documenter-dark .hero.is-black .tabs a{color:#fff;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{color:#0a0a0a !important;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:#fff}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:#fff;border-color:#fff;color:#0a0a0a}html.theme--documenter-dark .hero.is-black.is-bold{background-image:linear-gradient(141deg, #000 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, #000 0%, #0a0a0a 71%, #181616 100%)}}html.theme--documenter-dark .hero.is-light{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}html.theme--documenter-dark .hero.is-light .subtitle{color:rgba(0,0,0,0.9)}html.theme--documenter-dark .hero.is-light .subtitle a:not(.button),html.theme--documenter-dark .hero.is-light .subtitle strong{color:rgba(0,0,0,0.7)}@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(0,0,0,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:rgba(0,0,0,0.7)}html.theme--documenter-dark .hero.is-light .tabs a{color:rgba(0,0,0,0.7);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{color:#ecf0f1 !important;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:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);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:#fff}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:#fff}html.theme--documenter-dark .hero.is-dark .subtitle,html.theme--documenter-dark .content kbd.hero .subtitle{color:rgba(255,255,255,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:#fff}@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(255,255,255,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:#fff}html.theme--documenter-dark .hero.is-dark .tabs a,html.theme--documenter-dark .content kbd.hero .tabs a{color:#fff;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{color:#282f2f !important;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:#fff}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:#fff;border-color:#fff;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{color:#375a7f !important;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{color:#1abc9c !important;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{color:#024c7d !important;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{color:#008438 !important;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{color:#ad8100 !important;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{color:#9e1b0d !important;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:1.5rem}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero.is-medium .hero-body{padding:9rem 4.5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero.is-large .hero-body{padding:18rem 6rem}}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}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero-body{padding:3rem 3rem}}html.theme--documenter-dark .section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){html.theme--documenter-dark .section{padding:3rem 3rem}html.theme--documenter-dark .section.is-medium{padding:9rem 4.5rem}html.theme--documenter-dark .section.is-large{padding:18rem 6rem}}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:#fff}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:#fff}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:#fff;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:#fff}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:.4em}html.theme--documenter-dark .card .card-image img{border-radius:.4em .4em 0 0}html.theme--documenter-dark .card .card-header{box-shadow:none;background-color:rgba(18,18,18,0.2);border-radius:.4em .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:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-light a:not(.button){color:rgba(0,0,0,0.7);text-decoration:underline}html.theme--documenter-dark .notification.is-dark a:not(.button),html.theme--documenter-dark .content kbd.notification a:not(.button){color:#fff;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:.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:#fff}html.theme--documenter-dark .message-body{border-width:1px;border-color:#343c3d}html.theme--documenter-dark .navbar{border-radius:.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 .4em .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:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-black .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-light .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}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:rgba(0,0,0,0)}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:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-link .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-info .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-success .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-warning .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-danger .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}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 6 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 .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 6 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:.4em;font-size:1rem}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:.75rem}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;color:#fff}html.theme--documenter-dark .admonition.is-default>.admonition-body{color:#fff}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;color:#fff}html.theme--documenter-dark .admonition.is-info>.admonition-body{color:#fff}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;color:#fff}html.theme--documenter-dark .admonition.is-success>.admonition-body{color:#fff}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;color:#fff}html.theme--documenter-dark .admonition.is-warning>.admonition-body{color:#fff}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;color:#fff}html.theme--documenter-dark .admonition.is-danger>.admonition-body{color:#fff}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;color:#fff}html.theme--documenter-dark .admonition.is-compat>.admonition-body{color:#fff}html.theme--documenter-dark .admonition-header{color:#fff;background-color:#5e6d6f;align-items:center;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.5rem .75rem;position:relative}html.theme--documenter-dark .admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}html.theme--documenter-dark details.admonition.is-details>.admonition-header{list-style:none}html.theme--documenter-dark details.admonition.is-details>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f055"}html.theme--documenter-dark details.admonition.is-details[open]>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f056"}html.theme--documenter-dark .admonition-body{color:#fff;padding:0.5rem .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:rgba(0,0,0,0);border:1px solid #5e6d6f;box-shadow:none;max-width:100%}html.theme--documenter-dark .docstring>header{cursor:pointer;display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#282f2f;box-shadow:0 0.125em 0.25em 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-article-toggle-button{min-width:1.1rem;padding:0.2rem 0.2rem 0.2rem 0}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:.75rem .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:.375rem;bottom:.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;color:#fff;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-sidebar-button{display:block;font-size:1.5rem;padding-bottom:0.1rem;margin-right:1rem}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap;gap:1rem;align-items:center}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{display:inline-block}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-navbar-link{margin-left:0.4rem;margin-right:0.4rem}}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;transition-property:top, box-shadow;-webkit-transition-property:top, box-shadow;transition-duration:0.3s;-webkit-transition-duration:0.3s}html.theme--documenter-dark #documenter .docs-main header.docs-navbar.headroom--not-top{box-shadow:.2rem 0rem .4rem #171717;transition-duration:0.7s;-webkit-transition-duration:0.7s}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}}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:1rem;position:fixed;left:-18rem;width:18rem;height:100%;transition:left 0.3s}html.theme--documenter-dark #documenter .docs-sidebar.visible{left:0;box-shadow:.4rem 0rem .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}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:.95rem;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:.75rem;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 6 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:.85rem;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}html.theme--documenter-dark #documenter .docs-sidebar #documenter-search-query{color:#868c98;width:14.4rem;box-shadow:inset 0 1px 2px rgba(10,10,10,0.1)}@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 kbd.search-modal-key-hints{border-radius:0.25rem;border:1px solid rgba(245,245,245,0.6);box-shadow:0 2px 0 1px rgba(245,245,245,0.6);cursor:default;font-size:0.9rem;line-height:1.5;min-width:0.75rem;text-align:center;padding:0.1rem 0.3rem;position:relative;top:-1px}html.theme--documenter-dark .search-min-width-50{min-width:50%}html.theme--documenter-dark .search-min-height-100{min-height:100%}html.theme--documenter-dark .search-modal-card-body{max-height:calc(100vh - 15rem)}html.theme--documenter-dark .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--documenter-dark .search-result-link:hover,html.theme--documenter-dark .search-result-link:focus{background-color:rgba(0,128,128,0.1)}html.theme--documenter-dark .search-result-link .property-search-result-badge,html.theme--documenter-dark .search-result-link .search-filter{transition:all 300ms}html.theme--documenter-dark .property-search-result-badge,html.theme--documenter-dark .search-filter{padding:0.15em 0.5em;font-size:0.8em;font-style:italic;text-transform:none !important;line-height:1.5;color:#f5f5f5;background-color:rgba(51,65,85,0.501961);border-radius:0.6rem}html.theme--documenter-dark .search-result-link:hover .property-search-result-badge,html.theme--documenter-dark .search-result-link:hover .search-filter,html.theme--documenter-dark .search-result-link:focus .property-search-result-badge,html.theme--documenter-dark .search-result-link:focus .search-filter{color:#333;background-color:#f1f5f9}html.theme--documenter-dark .search-filter{color:#333;background-color:#f5f5f5;transition:all 300ms}html.theme--documenter-dark .search-filter:hover,html.theme--documenter-dark .search-filter:focus{color:#333}html.theme--documenter-dark .search-filter-selected{color:#f5f5f5;background-color:rgba(139,0,139,0.5)}html.theme--documenter-dark .search-filter-selected:hover,html.theme--documenter-dark .search-filter-selected:focus{color:#f5f5f5}html.theme--documenter-dark .search-result-highlight{background-color:#ffdd57;color:black}html.theme--documenter-dark .search-divider{border-bottom:1px solid #5e6d6f}html.theme--documenter-dark .search-result-title{width:85%;color:#f5f5f5}html.theme--documenter-dark .search-result-code-title{font-size:0.875rem;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}html.theme--documenter-dark #search-modal .modal-card-body::-webkit-scrollbar,html.theme--documenter-dark #search-modal .filter-tabs::-webkit-scrollbar{height:10px;width:10px;background-color:transparent}html.theme--documenter-dark #search-modal .modal-card-body::-webkit-scrollbar-thumb,html.theme--documenter-dark #search-modal .filter-tabs::-webkit-scrollbar-thumb{background-color:gray;border-radius:1rem}html.theme--documenter-dark #search-modal .modal-card-body::-webkit-scrollbar-track,html.theme--documenter-dark #search-modal .filter-tabs::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.6);background-color:transparent}html.theme--documenter-dark .w-100{width:100%}html.theme--documenter-dark .gap-2{gap:0.5rem}html.theme--documenter-dark .gap-4{gap:1rem}html.theme--documenter-dark .gap-8{gap:2rem}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}html.theme--documenter-dark .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--documenter-dark .search-result-link:hover,html.theme--documenter-dark .search-result-link:focus{background-color:rgba(0,128,128,0.1)}html.theme--documenter-dark .search-result-link .property-search-result-badge,html.theme--documenter-dark .search-result-link .search-filter{transition:all 300ms}html.theme--documenter-dark .search-result-link:hover .property-search-result-badge,html.theme--documenter-dark .search-result-link:hover .search-filter,html.theme--documenter-dark .search-result-link:focus .property-search-result-badge,html.theme--documenter-dark .search-result-link:focus .search-filter{color:#333 !important;background-color:#f1f5f9 !important}html.theme--documenter-dark .property-search-result-badge,html.theme--documenter-dark .search-filter{padding:0.15em 0.5em;font-size:0.8em;font-style:italic;text-transform:none !important;line-height:1.5;color:whitesmoke;background-color:#33415580;border-radius:0.6rem}html.theme--documenter-dark .search-result-title{color:whitesmoke}html.theme--documenter-dark .search-result-highlight{background-color:greenyellow;color:black}html.theme--documenter-dark .search-divider{border-bottom:1px solid #5e6d6f50}html.theme--documenter-dark .w-100{width:100%}html.theme--documenter-dark .gap-2{gap:0.5rem}html.theme--documenter-dark .gap-4{gap:1rem} diff --git a/docs/build/assets/themes/documenter-light.css b/docs/build/assets/themes/documenter-light.css deleted file mode 100644 index 1262ec5..0000000 --- a/docs/build/assets/themes/documenter-light.css +++ /dev/null @@ -1,9 +0,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.5em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.5em - 1px);padding-left:calc(0.75em - 1px);padding-right:calc(0.75em - 1px);padding-top:calc(0.5em - 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}.tabs,.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis,.breadcrumb,.file,.button,.is-unselectable{-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 rgba(0,0,0,0);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),.pagination:not(:last-child),.message:not(:last-child),.level:not(:last-child),.breadcrumb: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{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:9999px;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:#fff;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:9999px;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}.navbar-burger{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0}.has-text-white{color:#fff !important}a.has-text-white:hover,a.has-text-white:focus{color:#e6e6e6 !important}.has-background-white{background-color:#fff !important}.has-text-black{color:#0a0a0a !important}a.has-text-black:hover,a.has-text-black:focus{color:#000 !important}.has-background-black{background-color:#0a0a0a !important}.has-text-light{color:#f5f5f5 !important}a.has-text-light:hover,a.has-text-light:focus{color:#dbdbdb !important}.has-background-light{background-color:#f5f5f5 !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-primary-light{color:#eef8fc !important}a.has-text-primary-light:hover,a.has-text-primary-light:focus{color:#c3e6f4 !important}.has-background-primary-light{background-color:#eef8fc !important}.has-text-primary-dark{color:#1a6d8e !important}a.has-text-primary-dark:hover,a.has-text-primary-dark:focus{color:#228eb9 !important}.has-background-primary-dark{background-color:#1a6d8e !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-link-light{color:#eff3fb !important}a.has-text-link-light:hover,a.has-text-link-light:focus{color:#c6d6f1 !important}.has-background-link-light{background-color:#eff3fb !important}.has-text-link-dark{color:#3169c4 !important}a.has-text-link-dark:hover,a.has-text-link-dark:focus{color:#5485d4 !important}.has-background-link-dark{background-color:#3169c4 !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-info-light{color:#ecf7fe !important}a.has-text-info-light:hover,a.has-text-info-light:focus{color:#bde2fa !important}.has-background-info-light{background-color:#ecf7fe !important}.has-text-info-dark{color:#0e72b4 !important}a.has-text-info-dark:hover,a.has-text-info-dark:focus{color:#1190e3 !important}.has-background-info-dark{background-color:#0e72b4 !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-success-light{color:#eefcf3 !important}a.has-text-success-light:hover,a.has-text-success-light:focus{color:#c2f4d4 !important}.has-background-success-light{background-color:#eefcf3 !important}.has-text-success-dark{color:#198f43 !important}a.has-text-success-dark:hover,a.has-text-success-dark:focus{color:#21bb57 !important}.has-background-success-dark{background-color:#198f43 !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-warning-light{color:#fffbeb !important}a.has-text-warning-light:hover,a.has-text-warning-light:focus{color:#fff1b8 !important}.has-background-warning-light{background-color:#fffbeb !important}.has-text-warning-dark{color:#947600 !important}a.has-text-warning-dark:hover,a.has-text-warning-dark:focus{color:#c79f00 !important}.has-background-warning-dark{background-color:#947600 !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-danger-light{color:#ffeceb !important}a.has-text-danger-light:hover,a.has-text-danger-light:focus{color:#ffbbb8 !important}.has-background-danger-light{background-color:#ffeceb !important}.has-text-danger-dark{color:#f50c00 !important}a.has-text-danger-dark:hover,a.has-text-danger-dark:focus{color:#ff3429 !important}.has-background-danger-dark{background-color:#f50c00 !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:#f5f5f5 !important}.has-background-white-ter{background-color:#f5f5f5 !important}.has-text-white-bis{color:#fafafa !important}.has-background-white-bis{background-color:#fafafa !important}.is-flex-direction-row{flex-direction:row !important}.is-flex-direction-row-reverse{flex-direction:row-reverse !important}.is-flex-direction-column{flex-direction:column !important}.is-flex-direction-column-reverse{flex-direction:column-reverse !important}.is-flex-wrap-nowrap{flex-wrap:nowrap !important}.is-flex-wrap-wrap{flex-wrap:wrap !important}.is-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse !important}.is-justify-content-flex-start{justify-content:flex-start !important}.is-justify-content-flex-end{justify-content:flex-end !important}.is-justify-content-center{justify-content:center !important}.is-justify-content-space-between{justify-content:space-between !important}.is-justify-content-space-around{justify-content:space-around !important}.is-justify-content-space-evenly{justify-content:space-evenly !important}.is-justify-content-start{justify-content:start !important}.is-justify-content-end{justify-content:end !important}.is-justify-content-left{justify-content:left !important}.is-justify-content-right{justify-content:right !important}.is-align-content-flex-start{align-content:flex-start !important}.is-align-content-flex-end{align-content:flex-end !important}.is-align-content-center{align-content:center !important}.is-align-content-space-between{align-content:space-between !important}.is-align-content-space-around{align-content:space-around !important}.is-align-content-space-evenly{align-content:space-evenly !important}.is-align-content-stretch{align-content:stretch !important}.is-align-content-start{align-content:start !important}.is-align-content-end{align-content:end !important}.is-align-content-baseline{align-content:baseline !important}.is-align-items-stretch{align-items:stretch !important}.is-align-items-flex-start{align-items:flex-start !important}.is-align-items-flex-end{align-items:flex-end !important}.is-align-items-center{align-items:center !important}.is-align-items-baseline{align-items:baseline !important}.is-align-items-start{align-items:start !important}.is-align-items-end{align-items:end !important}.is-align-items-self-start{align-items:self-start !important}.is-align-items-self-end{align-items:self-end !important}.is-align-self-auto{align-self:auto !important}.is-align-self-flex-start{align-self:flex-start !important}.is-align-self-flex-end{align-self:flex-end !important}.is-align-self-center{align-self:center !important}.is-align-self-baseline{align-self:baseline !important}.is-align-self-stretch{align-self:stretch !important}.is-flex-grow-0{flex-grow:0 !important}.is-flex-grow-1{flex-grow:1 !important}.is-flex-grow-2{flex-grow:2 !important}.is-flex-grow-3{flex-grow:3 !important}.is-flex-grow-4{flex-grow:4 !important}.is-flex-grow-5{flex-grow:5 !important}.is-flex-shrink-0{flex-shrink:0 !important}.is-flex-shrink-1{flex-shrink:1 !important}.is-flex-shrink-2{flex-shrink:2 !important}.is-flex-shrink-3{flex-shrink:3 !important}.is-flex-shrink-4{flex-shrink:4 !important}.is-flex-shrink-5{flex-shrink:5 !important}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-clickable{cursor:pointer !important;pointer-events:all !important}.is-clipped{overflow:hidden !important}.is-relative{position:relative !important}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.m-0{margin:0 !important}.mt-0{margin-top:0 !important}.mr-0{margin-right:0 !important}.mb-0{margin-bottom:0 !important}.ml-0{margin-left:0 !important}.mx-0{margin-left:0 !important;margin-right:0 !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.m-1{margin:.25rem !important}.mt-1{margin-top:.25rem !important}.mr-1{margin-right:.25rem !important}.mb-1{margin-bottom:.25rem !important}.ml-1{margin-left:.25rem !important}.mx-1{margin-left:.25rem !important;margin-right:.25rem !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-2{margin:.5rem !important}.mt-2{margin-top:.5rem !important}.mr-2{margin-right:.5rem !important}.mb-2{margin-bottom:.5rem !important}.ml-2{margin-left:.5rem !important}.mx-2{margin-left:.5rem !important;margin-right:.5rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-3{margin:.75rem !important}.mt-3{margin-top:.75rem !important}.mr-3{margin-right:.75rem !important}.mb-3{margin-bottom:.75rem !important}.ml-3{margin-left:.75rem !important}.mx-3{margin-left:.75rem !important;margin-right:.75rem !important}.my-3{margin-top:.75rem !important;margin-bottom:.75rem !important}.m-4{margin:1rem !important}.mt-4{margin-top:1rem !important}.mr-4{margin-right:1rem !important}.mb-4{margin-bottom:1rem !important}.ml-4{margin-left:1rem !important}.mx-4{margin-left:1rem !important;margin-right:1rem !important}.my-4{margin-top:1rem !important;margin-bottom:1rem !important}.m-5{margin:1.5rem !important}.mt-5{margin-top:1.5rem !important}.mr-5{margin-right:1.5rem !important}.mb-5{margin-bottom:1.5rem !important}.ml-5{margin-left:1.5rem !important}.mx-5{margin-left:1.5rem !important;margin-right:1.5rem !important}.my-5{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-6{margin:3rem !important}.mt-6{margin-top:3rem !important}.mr-6{margin-right:3rem !important}.mb-6{margin-bottom:3rem !important}.ml-6{margin-left:3rem !important}.mx-6{margin-left:3rem !important;margin-right:3rem !important}.my-6{margin-top:3rem !important;margin-bottom:3rem !important}.m-auto{margin:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-right:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-left:auto !important}.mx-auto{margin-left:auto !important;margin-right:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.p-0{padding:0 !important}.pt-0{padding-top:0 !important}.pr-0{padding-right:0 !important}.pb-0{padding-bottom:0 !important}.pl-0{padding-left:0 !important}.px-0{padding-left:0 !important;padding-right:0 !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.p-1{padding:.25rem !important}.pt-1{padding-top:.25rem !important}.pr-1{padding-right:.25rem !important}.pb-1{padding-bottom:.25rem !important}.pl-1{padding-left:.25rem !important}.px-1{padding-left:.25rem !important;padding-right:.25rem !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-2{padding:.5rem !important}.pt-2{padding-top:.5rem !important}.pr-2{padding-right:.5rem !important}.pb-2{padding-bottom:.5rem !important}.pl-2{padding-left:.5rem !important}.px-2{padding-left:.5rem !important;padding-right:.5rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-3{padding:.75rem !important}.pt-3{padding-top:.75rem !important}.pr-3{padding-right:.75rem !important}.pb-3{padding-bottom:.75rem !important}.pl-3{padding-left:.75rem !important}.px-3{padding-left:.75rem !important;padding-right:.75rem !important}.py-3{padding-top:.75rem !important;padding-bottom:.75rem !important}.p-4{padding:1rem !important}.pt-4{padding-top:1rem !important}.pr-4{padding-right:1rem !important}.pb-4{padding-bottom:1rem !important}.pl-4{padding-left:1rem !important}.px-4{padding-left:1rem !important;padding-right:1rem !important}.py-4{padding-top:1rem !important;padding-bottom:1rem !important}.p-5{padding:1.5rem !important}.pt-5{padding-top:1.5rem !important}.pr-5{padding-right:1.5rem !important}.pb-5{padding-bottom:1.5rem !important}.pl-5{padding-left:1.5rem !important}.px-5{padding-left:1.5rem !important;padding-right:1.5rem !important}.py-5{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-6{padding:3rem !important}.pt-6{padding-top:3rem !important}.pr-6{padding-right:3rem !important}.pb-6{padding-bottom:3rem !important}.pl-6{padding-left:3rem !important}.px-6{padding-left:3rem !important;padding-right:3rem !important}.py-6{padding-top:3rem !important;padding-bottom:3rem !important}.p-auto{padding:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-right:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-left:auto !important}.px-auto{padding-left:auto !important;padding-right:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !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:.75rem !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:1rem !important}.is-size-7-mobile{font-size:.75rem !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:1rem !important}.is-size-7-tablet{font-size:.75rem !important}}@media screen and (max-width: 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:.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:.75rem !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:1rem !important}.is-size-7-widescreen{font-size:.75rem !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:1rem !important}.is-size-7-fullhd{font-size:.75rem !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 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}.is-underlined{text-decoration:underline !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}}/*! minireset.css v0.0.6 | 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,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:inherit}html{background-color:#fff;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,optgroup,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:#222;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:#000;font-size:.875em;font-weight:normal;padding:.1em}hr{background-color:#f5f5f5;border:none;display:block;height:2px;margin:1.5rem 0}img{height:auto;max-width:100%}input[type="checkbox"],input[type="radio"]{vertical-align:baseline}small{font-size:.875em}span{font-style:inherit;font-weight:inherit}strong{color:#222;font-weight:700}fieldset{border:none}pre{-webkit-overflow-scrolling:touch;background-color:#f5f5f5;color:#222;font-size:.875em;overflow-x:auto;padding:1.25rem 1.5rem;white-space:pre;word-wrap:normal}pre code{background-color:transparent;color:currentColor;font-size:1em;padding:0}table td,table th{vertical-align:top}table td:not([align]),table th:not([align]){text-align:inherit}table th{color:#222}@keyframes spinAround{from{transform:rotate(0deg)}to{transform:rotate(359deg)}}.box{background-color:#fff;border-radius:6px;box-shadow:#bbb;color:#222;display:block;padding:1.25rem}a.box:hover,a.box:focus{box-shadow:0 0.5em 1em -0.125em 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:#fff;border-color:#dbdbdb;border-width:1px;color:#222;cursor:pointer;justify-content:center;padding-bottom:calc(0.5em - 1px);padding-left:1em;padding-right:1em;padding-top:calc(0.5em - 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.5em - 1px);margin-right:.25em}.button .icon:last-child:not(:first-child){margin-left:.25em;margin-right:calc(-0.5em - 1px)}.button .icon:first-child:last-child{margin-left:calc(-0.5em - 1px);margin-right:calc(-0.5em - 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:#222;text-decoration:underline}.button.is-text:hover,.button.is-text.is-hovered,.button.is-text:focus,.button.is-text.is-focused{background-color:#f5f5f5;color:#222}.button.is-text:active,.button.is-text.is-active{background-color:#e8e8e8;color:#222}.button.is-text[disabled],fieldset[disabled] .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}.button.is-ghost{background:none;border-color:rgba(0,0,0,0);color:#2e63b8;text-decoration:none}.button.is-ghost:hover,.button.is-ghost.is-hovered{color:#2e63b8;text-decoration:underline}.button.is-white{background-color:#fff;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:#fff;border-color:#fff;box-shadow:none}.button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}.button.is-white.is-inverted:hover,.button.is-white.is-inverted.is-hovered{background-color:#000}.button.is-white.is-inverted[disabled],fieldset[disabled] .button.is-white.is-inverted{background-color:#0a0a0a;border-color:transparent;box-shadow:none;color:#fff}.button.is-white.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}.button.is-white.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-white.is-outlined:hover,.button.is-white.is-outlined.is-hovered,.button.is-white.is-outlined:focus,.button.is-white.is-outlined.is-focused{background-color:#fff;border-color:#fff;color:#0a0a0a}.button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-white.is-outlined.is-loading: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:#fff;box-shadow:none;color:#fff}.button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}.button.is-white.is-inverted.is-outlined: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:#fff}.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 #fff #fff !important}.button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}.button.is-black{background-color:#0a0a0a;border-color:transparent;color:#fff}.button.is-black:hover,.button.is-black.is-hovered{background-color:#040404;border-color:transparent;color:#fff}.button.is-black:focus,.button.is-black.is-focused{border-color:transparent;color:#fff}.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:#000;border-color:transparent;color:#fff}.button.is-black[disabled],fieldset[disabled] .button.is-black{background-color:#0a0a0a;border-color:#0a0a0a;box-shadow:none}.button.is-black.is-inverted{background-color:#fff;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:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}.button.is-black.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}.button.is-black.is-outlined: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:#fff}.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 #fff #fff !important}.button.is-black.is-outlined[disabled],fieldset[disabled] .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}.button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-black.is-inverted.is-outlined: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:#fff;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:#fff;box-shadow:none;color:#fff}.button.is-light{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-light:hover,.button.is-light.is-hovered{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-light:focus,.button.is-light.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}.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:rgba(0,0,0,0.7)}.button.is-light[disabled],fieldset[disabled] .button.is-light{background-color:#f5f5f5;border-color:#f5f5f5;box-shadow:none}.button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);color:#f5f5f5}.button.is-light.is-inverted:hover,.button.is-light.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}.button.is-light.is-inverted[disabled],fieldset[disabled] .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#f5f5f5}.button.is-light.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}.button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;color:#f5f5f5}.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:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}.button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}.button.is-light.is-outlined.is-loading: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 rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}.button.is-light.is-outlined[disabled],fieldset[disabled] .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;box-shadow:none;color:#f5f5f5}.button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}.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:rgba(0,0,0,0.7);color:#f5f5f5}.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 #f5f5f5 #f5f5f5 !important}.button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}.button.is-dark,.content kbd.button{background-color:#363636;border-color:transparent;color:#fff}.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:#fff}.button.is-dark:focus,.content kbd.button:focus,.button.is-dark.is-focused,.content kbd.button.is-focused{border-color:transparent;color:#fff}.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:#fff}.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:#363636;box-shadow:none}.button.is-dark.is-inverted,.content kbd.button.is-inverted{background-color:#fff;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:#f2f2f2}.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:#fff;border-color:transparent;box-shadow:none;color:#363636}.button.is-dark.is-loading::after,.content kbd.button.is-loading::after{border-color:transparent transparent #fff #fff !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:#fff}.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 #fff #fff !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:#fff;color:#fff}.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:#fff;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:#fff;box-shadow:none;color:#fff}.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:#4eb5de;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-primary.is-light,.docstring>section>a.button.is-light.docs-sourcelink{background-color:#eef8fc;color:#1a6d8e}.button.is-primary.is-light:hover,.docstring>section>a.button.is-light.docs-sourcelink:hover,.button.is-primary.is-light.is-hovered,.docstring>section>a.button.is-light.is-hovered.docs-sourcelink{background-color:#e3f3fa;border-color:transparent;color:#1a6d8e}.button.is-primary.is-light:active,.docstring>section>a.button.is-light.docs-sourcelink:active,.button.is-primary.is-light.is-active,.docstring>section>a.button.is-light.is-active.docs-sourcelink{background-color:#d8eff8;border-color:transparent;color:#1a6d8e}.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:#2e63b8;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-link.is-light{background-color:#eff3fb;color:#3169c4}.button.is-link.is-light:hover,.button.is-link.is-light.is-hovered{background-color:#e4ecf8;border-color:transparent;color:#3169c4}.button.is-link.is-light:active,.button.is-link.is-light.is-active{background-color:#dae5f6;border-color:transparent;color:#3169c4}.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:#209cee;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-info.is-light{background-color:#ecf7fe;color:#0e72b4}.button.is-info.is-light:hover,.button.is-info.is-light.is-hovered{background-color:#e0f1fd;border-color:transparent;color:#0e72b4}.button.is-info.is-light:active,.button.is-info.is-light.is-active{background-color:#d4ecfc;border-color:transparent;color:#0e72b4}.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:#22c35b;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-success.is-light{background-color:#eefcf3;color:#198f43}.button.is-success.is-light:hover,.button.is-success.is-light.is-hovered{background-color:#e3faeb;border-color:transparent;color:#198f43}.button.is-success.is-light:active,.button.is-success.is-light.is-active{background-color:#d8f8e3;border-color:transparent;color:#198f43}.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:#ffdd57;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-warning.is-light{background-color:#fffbeb;color:#947600}.button.is-warning.is-light:hover,.button.is-warning.is-light.is-hovered{background-color:#fff8de;border-color:transparent;color:#947600}.button.is-warning.is-light:active,.button.is-warning.is-light.is-active{background-color:#fff6d1;border-color:transparent;color:#947600}.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:#da0b00;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-danger.is-light{background-color:#ffeceb;color:#f50c00}.button.is-danger.is-light:hover,.button.is-danger.is-light.is-hovered{background-color:#ffe0de;border-color:transparent;color:#f50c00}.button.is-danger.is-light:active,.button.is-danger.is-light.is-active{background-color:#ffd3d1;border-color:transparent;color:#f50c00}.button.is-small,#documenter .docs-sidebar form.docs-search>input.button{font-size:.75rem}.button.is-small:not(.is-rounded),#documenter .docs-sidebar form.docs-search>input.button:not(.is-rounded){border-radius:2px}.button.is-normal{font-size:1rem}.button.is-medium{font-size:1.25rem}.button.is-large{font-size:1.5rem}.button[disabled],fieldset[disabled] .button{background-color:#fff;border-color:#dbdbdb;box-shadow:none;opacity:.5}.button.is-fullwidth{display:flex;width:100%}.button.is-loading{color:transparent !important;pointer-events:none}.button.is-loading::after{position:absolute;left:calc(50% - (1em * 0.5));top:calc(50% - (1em * 0.5));position:absolute !important}.button.is-static{background-color:#f5f5f5;border-color:#dbdbdb;color:#6b6b6b;box-shadow:none;pointer-events:none}.button.is-rounded,#documenter .docs-sidebar form.docs-search>input.button{border-radius:9999px;padding-left:calc(1em + 0.25em);padding-right:calc(1em + 0.25em)}.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:.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){font-size:.75rem}.buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large):not(.is-rounded){border-radius:2px}.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}@media screen and (max-width: 768px){.button.is-responsive.is-small,#documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.5625rem}.button.is-responsive,.button.is-responsive.is-normal{font-size:.65625rem}.button.is-responsive.is-medium{font-size:.75rem}.button.is-responsive.is-large{font-size:1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.button.is-responsive.is-small,#documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.65625rem}.button.is-responsive,.button.is-responsive.is-normal{font-size:.75rem}.button.is-responsive.is-medium{font-size:1rem}.button.is-responsive.is-large{font-size:1.25rem}}.container{flex-grow:1;margin:0 auto;position:relative;width:auto}.container.is-fluid{max-width:none !important;padding-left:32px;padding-right:32px;width:100%}@media screen and (min-width: 1056px){.container{max-width:992px}}@media screen and (max-width: 1215px){.container.is-widescreen:not(.is-max-desktop){max-width:1152px}}@media screen and (max-width: 1407px){.container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}@media screen and (min-width: 1216px){.container:not(.is-max-desktop){max-width:1152px}}@media screen and (min-width: 1408px){.container:not(.is-max-desktop):not(.is-max-widescreen){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:#222;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:#f5f5f5;border-left:5px solid #dbdbdb;padding:1.25em 1.5em}.content ol{list-style-position:outside;margin-left:2em;margin-top:1em}.content ol:not([type]){list-style-type:decimal}.content ol.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:#222}.content table th:not([align]){text-align:inherit}.content table thead td,.content table thead th{border-width:0 0 2px;color:#222}.content table tfoot td,.content table tfoot th{border-width:2px 0 0;color:#222}.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:.75rem}.content.is-normal{font-size:1rem}.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}.icon-text{align-items:flex-start;color:inherit;display:inline-flex;flex-wrap:wrap;line-height:1.5rem;vertical-align:top}.icon-text .icon{flex-grow:0;flex-shrink:0}.icon-text .icon:not(:last-child){margin-right:.25em}.icon-text .icon:not(:first-child){margin-left:.25em}div.icon-text{display:flex}.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:9999px}.image.is-fullwidth,#documenter .docs-sidebar .docs-logo>img.is-fullwidth{width:100%}.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:#f5f5f5;border-radius:4px;position:relative;padding:1.25rem 2.5rem 1.25rem 1.5rem}.notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}.notification strong{color:currentColor}.notification code,.notification pre{background:#fff}.notification pre code{background:transparent}.notification>.delete{right:.5rem;position:absolute;top:0.5rem}.notification .title,.notification .subtitle,.notification .content{color:currentColor}.notification.is-white{background-color:#fff;color:#0a0a0a}.notification.is-black{background-color:#0a0a0a;color:#fff}.notification.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.notification.is-dark,.content kbd.notification{background-color:#363636;color:#fff}.notification.is-primary,.docstring>section>a.notification.docs-sourcelink{background-color:#4eb5de;color:#fff}.notification.is-primary.is-light,.docstring>section>a.notification.is-light.docs-sourcelink{background-color:#eef8fc;color:#1a6d8e}.notification.is-link{background-color:#2e63b8;color:#fff}.notification.is-link.is-light{background-color:#eff3fb;color:#3169c4}.notification.is-info{background-color:#209cee;color:#fff}.notification.is-info.is-light{background-color:#ecf7fe;color:#0e72b4}.notification.is-success{background-color:#22c35b;color:#fff}.notification.is-success.is-light{background-color:#eefcf3;color:#198f43}.notification.is-warning{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.notification.is-warning.is-light{background-color:#fffbeb;color:#947600}.notification.is-danger{background-color:#da0b00;color:#fff}.notification.is-danger.is-light{background-color:#ffeceb;color:#f50c00}.progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:9999px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}.progress::-webkit-progress-bar{background-color:#ededed}.progress::-webkit-progress-value{background-color:#222}.progress::-moz-progress-bar{background-color:#222}.progress::-ms-fill{background-color:#222;border:none}.progress.is-white::-webkit-progress-value{background-color:#fff}.progress.is-white::-moz-progress-bar{background-color:#fff}.progress.is-white::-ms-fill{background-color:#fff}.progress.is-white:indeterminate{background-image:linear-gradient(to right, #fff 30%, #ededed 30%)}.progress.is-black::-webkit-progress-value{background-color:#0a0a0a}.progress.is-black::-moz-progress-bar{background-color:#0a0a0a}.progress.is-black::-ms-fill{background-color:#0a0a0a}.progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #ededed 30%)}.progress.is-light::-webkit-progress-value{background-color:#f5f5f5}.progress.is-light::-moz-progress-bar{background-color:#f5f5f5}.progress.is-light::-ms-fill{background-color:#f5f5f5}.progress.is-light:indeterminate{background-image:linear-gradient(to right, #f5f5f5 30%, #ededed 30%)}.progress.is-dark::-webkit-progress-value,.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%, #ededed 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%, #ededed 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%, #ededed 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%, #ededed 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%, #ededed 30%)}.progress.is-warning::-webkit-progress-value{background-color:#ffdd57}.progress.is-warning::-moz-progress-bar{background-color:#ffdd57}.progress.is-warning::-ms-fill{background-color:#ffdd57}.progress.is-warning:indeterminate{background-image:linear-gradient(to right, #ffdd57 30%, #ededed 30%)}.progress.is-danger::-webkit-progress-value{background-color:#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%, #ededed 30%)}.progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#ededed;background-image:linear-gradient(to right, #222 30%, #ededed 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}.progress:indeterminate::-webkit-progress-bar{background-color:transparent}.progress:indeterminate::-moz-progress-bar{background-color:transparent}.progress:indeterminate::-ms-fill{animation-name:none}.progress.is-small,#documenter .docs-sidebar form.docs-search>input.progress{height:.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:#fff;color:#222}.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:#fff;border-color:#fff;color:#0a0a0a}.table td.is-black,.table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}.table td.is-light,.table th.is-light{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}.table td.is-dark,.table th.is-dark{background-color:#363636;border-color:#363636;color:#fff}.table td.is-primary,.table th.is-primary{background-color:#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 td.is-vcentered,.table th.is-vcentered{vertical-align:middle}.table th{color:#222}.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:rgba(0,0,0,0)}.table thead td,.table thead th{border-width:0 0 2px;color:#222}.table tfoot{background-color:rgba(0,0,0,0)}.table tfoot td,.table tfoot th{border-width:2px 0 0;color:#222}.table tbody{background-color:rgba(0,0,0,0)}.table tbody tr:last-child td,.table tbody tr:last-child th{border-bottom-width:0}.table.is-bordered td,.table.is-bordered th{border-width:1px}.table.is-bordered tr:last-child td,.table.is-bordered tr:last-child th{border-bottom-width:1px}.table.is-fullwidth{width:100%}.table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#fafafa}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#fafafa}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:#f5f5f5}.table.is-narrow td,.table.is-narrow th{padding: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:.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-top-left-radius:0;border-bottom-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-top-right-radius:0;border-bottom-right-radius:0}.tag:not(body),.content kbd:not(body),.docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#f5f5f5;border-radius:4px;color:#222;display:inline-flex;font-size:.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:.25rem;margin-right:-.375rem}.tag.is-white:not(body),.content kbd.is-white:not(body),.docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#fff;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:#fff}.tag.is-light:not(body),.content kbd.is-light:not(body),.docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.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:#fff}.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-primary.is-light:not(body),.content kbd.is-primary.is-light:not(body),.docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#eef8fc;color:#1a6d8e}.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-link.is-light:not(body),.content kbd.is-link.is-light:not(body),.docstring>section>a.docs-sourcelink.is-link.is-light:not(body){background-color:#eff3fb;color:#3169c4}.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-info.is-light:not(body),.content kbd.is-info.is-light:not(body),.docstring>section>a.docs-sourcelink.is-info.is-light:not(body){background-color:#ecf7fe;color:#0e72b4}.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-success.is-light:not(body),.content kbd.is-success.is-light:not(body),.docstring>section>a.docs-sourcelink.is-success.is-light:not(body){background-color:#eefcf3;color:#198f43}.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-warning.is-light:not(body),.content kbd.is-warning.is-light:not(body),.docstring>section>a.docs-sourcelink.is-warning.is-light:not(body){background-color:#fffbeb;color:#947600}.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-danger.is-light:not(body),.content kbd.is-danger.is-light:not(body),.docstring>section>a.docs-sourcelink.is-danger.is-light:not(body){background-color:#ffeceb;color:#f50c00}.tag.is-normal:not(body),.content kbd.is-normal:not(body),.docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.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:-.375em;margin-right:.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:.1875em;margin-right:-.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:-.375em;margin-right:-.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:9999px}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:.75em}.title sup,.subtitle sup{font-size:.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:#222;font-size:2rem;font-weight:600;line-height:1.125}.title strong{color:inherit;font-weight:inherit}.title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}.title.is-1{font-size:3rem}.title.is-2{font-size:2.5rem}.title.is-3{font-size:2rem}.title.is-4{font-size:1.5rem}.title.is-5{font-size:1.25rem}.title.is-6{font-size:1rem}.title.is-7{font-size:.75rem}.subtitle{color:#222;font-size:1.25rem;font-weight:400;line-height:1.25}.subtitle strong{color:#222;font-weight:600}.subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}.subtitle.is-1{font-size:3rem}.subtitle.is-2{font-size:2.5rem}.subtitle.is-3{font-size:2rem}.subtitle.is-4{font-size:1.5rem}.subtitle.is-5{font-size:1.25rem}.subtitle.is-6{font-size:1rem}.subtitle.is-7{font-size:.75rem}.heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}.number{align-items:center;background-color:#f5f5f5;border-radius:9999px;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:#fff;border-color:#dbdbdb;border-radius:4px;color:#222}.select select::-moz-placeholder,.textarea::-moz-placeholder,.input::-moz-placeholder,#documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:#707070}.select select::-webkit-input-placeholder,.textarea::-webkit-input-placeholder,.input::-webkit-input-placeholder,#documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:#707070}.select select:-moz-placeholder,.textarea:-moz-placeholder,.input:-moz-placeholder,#documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:#707070}.select select:-ms-input-placeholder,.textarea:-ms-input-placeholder,.input:-ms-input-placeholder,#documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:#707070}.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:#f5f5f5;border-color:#f5f5f5;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 0.0625em 0.125em rgba(10,10,10,0.05);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:#fff}.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:#f5f5f5}.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:.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:9999px;padding-left:calc(calc(0.75em - 1px) + 0.375em);padding-right:calc(calc(0.75em - 1px) + 0.375em)}.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:calc(0.75em - 1px);resize:vertical}.textarea:not([rows]){max-height:40em;min-height:8em}.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:#222}.radio[disabled],.checkbox[disabled],fieldset[disabled] .radio,fieldset[disabled] .checkbox,.radio input[disabled],.checkbox input[disabled]{color:#6b6b6b;cursor:not-allowed}.radio+.radio{margin-left:.5em}.select{display:inline-block;max-width:100%;position:relative;vertical-align:top}.select:not(.is-multiple){height:2.5em}.select:not(.is-multiple):not(.is-loading)::after{border-color:#2e63b8;right:1.125em;z-index:4}.select.is-rounded select,#documenter .docs-sidebar form.docs-search>input.select select{border-radius:9999px;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:#f5f5f5}.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:#222}.select.is-white:not(:hover)::after{border-color:#fff}.select.is-white select{border-color:#fff}.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:#000}.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:#f5f5f5}.select.is-light select{border-color:#f5f5f5}.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:.75rem}.select.is-medium{font-size:1.25rem}.select.is-large{font-size:1.5rem}.select.is-disabled::after{border-color:#6b6b6b !important;opacity:0.5}.select.is-fullwidth{width:100%}.select.is-fullwidth select{width:100%}.select.is-loading::after{margin-top:0;position:absolute;right:.625em;top:0.625em;transform:none}.select.is-loading.is-small:after,#documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}.select.is-loading.is-medium:after{font-size:1.25rem}.select.is-loading.is-large:after{font-size:1.5rem}.file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}.file.is-white .file-cta{background-color:#fff;border-color:transparent;color:#0a0a0a}.file.is-white: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:#fff}.file.is-black:hover .file-cta,.file.is-black.is-hovered .file-cta{background-color:#040404;border-color:transparent;color:#fff}.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:#fff}.file.is-black:active .file-cta,.file.is-black.is-active .file-cta{background-color:#000;border-color:transparent;color:#fff}.file.is-light .file-cta{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}.file.is-light:hover .file-cta,.file.is-light.is-hovered .file-cta{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}.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:rgba(0,0,0,0.7)}.file.is-light:active .file-cta,.file.is-light.is-active .file-cta{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}.file.is-dark .file-cta,.content kbd.file .file-cta{background-color:#363636;border-color:transparent;color:#fff}.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:#fff}.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:#fff}.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:#fff}.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:.75rem}.file.is-normal{font-size:1rem}.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:#eee;color:#222}.file-label:hover .file-name{border-color:#d5d5d5}.file-label:active .file-cta{background-color:#e8e8e8;color:#222}.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:#f5f5f5;color:#222}.file-name{border-color:#dbdbdb;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:inherit;text-overflow:ellipsis}.file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:.5em;width:1em}.file-icon .fa{font-size:14px}.label{color:#222;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:.75rem}.label.is-medium{font-size:1.25rem}.label.is-large{font-size:1.5rem}.help{display:block;font-size:.75rem;margin-top:0.25rem}.help.is-white{color:#fff}.help.is-black{color:#0a0a0a}.help.is-light{color:#f5f5f5}.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:.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:.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:.75rem}}.control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:inherit}.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:#222}.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:.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.5em;pointer-events:none;position:absolute;top:0;width:2.5em;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.5em}.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.5em}.control.has-icons-right .icon.is-right{right:0}.control.is-loading::after{position:absolute !important;right:.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:.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 .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:#222;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:.5em}.breadcrumb .icon:last-child{margin-left:.5em}.breadcrumb.is-centered ol,.breadcrumb.is-centered ul{justify-content:center}.breadcrumb.is-right ol,.breadcrumb.is-right ul{justify-content:flex-end}.breadcrumb.is-small,#documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.75rem}.breadcrumb.is-medium{font-size:1.25rem}.breadcrumb.is-large{font-size:1.5rem}.breadcrumb.has-arrow-separator li+li::before{content:"\02192"}.breadcrumb.has-bullet-separator li+li::before{content:"\02022"}.breadcrumb.has-dot-separator li+li::before{content:"\000b7"}.breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}.card{background-color:#fff;border-radius:.25rem;box-shadow:#bbb;color:#222;max-width:100%;position:relative}.card-footer:first-child,.card-content:first-child,.card-header:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card-footer:last-child,.card-content:last-child,.card-header:last-child{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);display:flex}.card-header-title{align-items:center;color:#222;display:flex;flex-grow:1;font-weight:700;padding:0.75rem 1rem}.card-header-title.is-centered{justify-content:center}.card-header-icon{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0;align-items:center;cursor:pointer;display:flex;justify-content:center;padding:0.75rem 1rem}.card-image{display:block;position:relative}.card-image:first-child img{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card-image:last-child img{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.card-content{background-color:rgba(0,0,0,0);padding:1.5rem}.card-footer{background-color:rgba(0,0,0,0);border-top:1px solid #ededed;align-items:stretch;display:flex}.card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}.card-footer-item:not(:last-child){border-right:1px solid #ededed}.card .media:not(:last-child){margin-bottom:1.5rem}.dropdown{display:inline-flex;position:relative;vertical-align:top}.dropdown.is-active .dropdown-menu,.dropdown.is-hoverable:hover .dropdown-menu{display:block}.dropdown.is-right .dropdown-menu{left:auto;right:0}.dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}.dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}.dropdown-content{background-color:#fff;border-radius:4px;box-shadow:#bbb;padding-bottom:.5rem;padding-top:.5rem}.dropdown-item{color:#222;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:inherit;white-space:nowrap;width:100%}a.dropdown-item:hover,button.dropdown-item:hover{background-color:#f5f5f5;color:#0a0a0a}a.dropdown-item.is-active,button.dropdown-item.is-active{background-color:#2e63b8;color:#fff}.dropdown-divider{background-color:#ededed;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:.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:.75rem}}.level-left,.level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}.level-left .level-item.is-flexible,.level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width: 769px),print{.level-left .level-item:not(:last-child),.level-right .level-item:not(:last-child){margin-right:.75rem}}.level-left{align-items:center;justify-content:flex-start}@media screen and (max-width: 768px){.level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width: 769px),print{.level-left{display:flex}}.level-right{align-items:center;justify-content:flex-end}@media screen and (min-width: 769px),print{.level-right{display:flex}}.media{align-items:flex-start;display:flex;text-align:inherit}.media .content:not(:last-child){margin-bottom:.75rem}.media .media{border-top:1px solid rgba(219,219,219,0.5);display:flex;padding-top:.75rem}.media .media .content:not(:last-child),.media .media .control:not(:last-child){margin-bottom:.5rem}.media .media .media{padding-top:.5rem}.media .media .media+.media{margin-top:.5rem}.media+.media{border-top:1px solid rgba(219,219,219,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:inherit}@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:.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:#222;display:block;padding:0.5em 0.75em}.menu-list a:hover{background-color:#f5f5f5;color:#222}.menu-list a.is-active{background-color:#2e63b8;color:#fff}.menu-list li ul{border-left:1px solid #dbdbdb;margin:.75em;padding-left:.75em}.menu-label{color:#6b6b6b;font-size:.75em;letter-spacing:.1em;text-transform:uppercase}.menu-label:not(:first-child){margin-top:1em}.menu-label:not(:last-child){margin-bottom:1em}.message{background-color:#f5f5f5;border-radius:4px;font-size:1rem}.message strong{color:currentColor}.message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}.message.is-small,#documenter .docs-sidebar form.docs-search>input.message{font-size:.75rem}.message.is-medium{font-size:1.25rem}.message.is-large{font-size:1.5rem}.message.is-white{background-color:#fff}.message.is-white .message-header{background-color:#fff;color:#0a0a0a}.message.is-white .message-body{border-color:#fff}.message.is-black{background-color:#fafafa}.message.is-black .message-header{background-color:#0a0a0a;color:#fff}.message.is-black .message-body{border-color:#0a0a0a}.message.is-light{background-color:#fafafa}.message.is-light .message-header{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.message.is-light .message-body{border-color:#f5f5f5}.message.is-dark,.content kbd.message{background-color:#fafafa}.message.is-dark .message-header,.content kbd.message .message-header{background-color:#363636;color:#fff}.message.is-dark .message-body,.content kbd.message .message-body{border-color:#363636}.message.is-primary,.docstring>section>a.message.docs-sourcelink{background-color:#eef8fc}.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:#1a6d8e}.message.is-link{background-color:#eff3fb}.message.is-link .message-header{background-color:#2e63b8;color:#fff}.message.is-link .message-body{border-color:#2e63b8;color:#3169c4}.message.is-info{background-color:#ecf7fe}.message.is-info .message-header{background-color:#209cee;color:#fff}.message.is-info .message-body{border-color:#209cee;color:#0e72b4}.message.is-success{background-color:#eefcf3}.message.is-success .message-header{background-color:#22c35b;color:#fff}.message.is-success .message-body{border-color:#22c35b;color:#198f43}.message.is-warning{background-color:#fffbeb}.message.is-warning .message-header{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.message.is-warning .message-body{border-color:#ffdd57;color:#947600}.message.is-danger{background-color:#ffeceb}.message.is-danger .message-header{background-color:#da0b00;color:#fff}.message.is-danger .message-body{border-color:#da0b00;color:#f50c00}.message-header{align-items:center;background-color:#222;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:.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:#222;padding:1.25em 1.5em}.message-body code,.message-body pre{background-color:#fff}.message-body pre code{background-color:rgba(0,0,0,0)}.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){.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:#f5f5f5;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}.modal-card-head{border-bottom:1px solid #dbdbdb;border-top-left-radius:6px;border-top-right-radius:6px}.modal-card-title{color:#222;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}.modal-card-foot{border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top:1px solid #dbdbdb}.modal-card-foot .button:not(:last-child){margin-right:.5em}.modal-card-body{-webkit-overflow-scrolling:touch;background-color:#fff;flex-grow:1;flex-shrink:1;overflow:auto;padding:20px}.navbar{background-color:#fff;min-height:3.25rem;position:relative;z-index:30}.navbar.is-white{background-color:#fff;color:#0a0a0a}.navbar.is-white .navbar-brand>.navbar-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:#fff;color:#0a0a0a}}.navbar.is-black{background-color:#0a0a0a;color:#fff}.navbar.is-black .navbar-brand>.navbar-item,.navbar.is-black .navbar-brand .navbar-link{color:#fff}.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:#000;color:#fff}.navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-black .navbar-burger{color:#fff}@media screen and (min-width: 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:#fff}.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:#000;color:#fff}.navbar.is-black .navbar-start .navbar-link::after,.navbar.is-black .navbar-end .navbar-link::after{border-color:#fff}.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:#000;color:#fff}.navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}.navbar.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.navbar.is-light .navbar-brand>.navbar-item,.navbar.is-light .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}.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:rgba(0,0,0,0.7)}.navbar.is-light .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}.navbar.is-light .navbar-burger{color:rgba(0,0,0,0.7)}@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:rgba(0,0,0,0.7)}.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:rgba(0,0,0,0.7)}.navbar.is-light .navbar-start .navbar-link::after,.navbar.is-light .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}.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:rgba(0,0,0,0.7)}.navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}}.navbar.is-dark,.content kbd.navbar{background-color:#363636;color:#fff}.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:#fff}.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:#fff}.navbar.is-dark .navbar-brand .navbar-link::after,.content kbd.navbar .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-dark .navbar-burger,.content kbd.navbar .navbar-burger{color:#fff}@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:#fff}.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:#fff}.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:#fff}.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:#fff}.navbar.is-dark .navbar-dropdown a.navbar-item.is-active,.content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#363636;color:#fff}}.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 #f5f5f5}.navbar.is-fixed-bottom,.navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}.navbar.is-fixed-bottom{bottom:0}.navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #f5f5f5}.navbar.is-fixed-top{top:0}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:#222;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;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:#222;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{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:rgba(0,0,0,0);border-bottom-color:#2e63b8}.navbar-item.is-tab.is-active{background-color:rgba(0,0,0,0);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:#f5f5f5;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:#fff;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:#f5f5f5;color:#0a0a0a}.navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:#2e63b8}.navbar-burger{display:none}.navbar-item,.navbar-link{align-items:center;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:#fff;border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top:2px solid #dbdbdb;box-shadow:0 8px 8px rgba(10,10,10,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:#f5f5f5;color:#0a0a0a}.navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;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:rgba(0,0,0,0)}.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:-.25rem}.pagination.is-small,#documenter .docs-sidebar form.docs-search>input.pagination{font-size:.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:9999px}.pagination.is-rounded .pagination-link,#documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:9999px}.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:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}.pagination-previous,.pagination-next,.pagination-link{border-color:#dbdbdb;color:#222;min-width:2.5em}.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-previous.is-disabled,.pagination-next[disabled],.pagination-next.is-disabled,.pagination-link[disabled],.pagination-link.is-disabled{background-color:#dbdbdb;border-color:#dbdbdb;box-shadow:none;color:#6b6b6b;opacity:0.5}.pagination-previous,.pagination-next{padding-left:.75em;padding-right:.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}.pagination-list li{list-style:none}@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,.pagination-next,.pagination-link,.pagination-ellipsis{margin-bottom:0;margin-top:0}.pagination-previous{order:2}.pagination-next{order:3}.pagination{justify-content:space-between;margin-bottom:0;margin-top:0}.pagination.is-centered .pagination-previous{order:1}.pagination.is-centered .pagination-list{justify-content:center;order:2}.pagination.is-centered .pagination-next{order:3}.pagination.is-right .pagination-previous{order:1}.pagination.is-right .pagination-next{order:2}.pagination.is-right .pagination-list{justify-content:flex-end;order:3}}.panel{border-radius:6px;box-shadow:#bbb;font-size:1rem}.panel:not(:last-child){margin-bottom:1.5rem}.panel.is-white .panel-heading{background-color:#fff;color:#0a0a0a}.panel.is-white .panel-tabs a.is-active{border-bottom-color:#fff}.panel.is-white .panel-block.is-active .panel-icon{color:#fff}.panel.is-black .panel-heading{background-color:#0a0a0a;color:#fff}.panel.is-black .panel-tabs a.is-active{border-bottom-color:#0a0a0a}.panel.is-black .panel-block.is-active .panel-icon{color:#0a0a0a}.panel.is-light .panel-heading{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.panel.is-light .panel-tabs a.is-active{border-bottom-color:#f5f5f5}.panel.is-light .panel-block.is-active .panel-icon{color:#f5f5f5}.panel.is-dark .panel-heading,.content kbd.panel .panel-heading{background-color:#363636;color:#fff}.panel.is-dark .panel-tabs a.is-active,.content kbd.panel .panel-tabs a.is-active{border-bottom-color:#363636}.panel.is-dark .panel-block.is-active .panel-icon,.content kbd.panel .panel-block.is-active .panel-icon{color:#363636}.panel.is-primary .panel-heading,.docstring>section>a.panel.docs-sourcelink .panel-heading{background-color:#4eb5de;color:#fff}.panel.is-primary .panel-tabs a.is-active,.docstring>section>a.panel.docs-sourcelink .panel-tabs a.is-active{border-bottom-color:#4eb5de}.panel.is-primary .panel-block.is-active .panel-icon,.docstring>section>a.panel.docs-sourcelink .panel-block.is-active .panel-icon{color:#4eb5de}.panel.is-link .panel-heading{background-color:#2e63b8;color:#fff}.panel.is-link .panel-tabs a.is-active{border-bottom-color:#2e63b8}.panel.is-link .panel-block.is-active .panel-icon{color:#2e63b8}.panel.is-info .panel-heading{background-color:#209cee;color:#fff}.panel.is-info .panel-tabs a.is-active{border-bottom-color:#209cee}.panel.is-info .panel-block.is-active .panel-icon{color:#209cee}.panel.is-success .panel-heading{background-color:#22c35b;color:#fff}.panel.is-success .panel-tabs a.is-active{border-bottom-color:#22c35b}.panel.is-success .panel-block.is-active .panel-icon{color:#22c35b}.panel.is-warning .panel-heading{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.panel.is-warning .panel-tabs a.is-active{border-bottom-color:#ffdd57}.panel.is-warning .panel-block.is-active .panel-icon{color:#ffdd57}.panel.is-danger .panel-heading{background-color:#da0b00;color:#fff}.panel.is-danger .panel-tabs a.is-active{border-bottom-color:#da0b00}.panel.is-danger .panel-block.is-active .panel-icon{color:#da0b00}.panel-tabs:not(:last-child),.panel-block:not(:last-child){border-bottom:1px solid #ededed}.panel-heading{background-color:#ededed;border-radius:6px 6px 0 0;color:#222;font-size:1.25em;font-weight:700;line-height:1.25;padding:0.75em 1em}.panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}.panel-tabs a{border-bottom:1px solid #dbdbdb;margin-bottom:-1px;padding:0.5em}.panel-tabs a.is-active{border-bottom-color:#4a4a4a;color:#363636}.panel-list a{color:#222}.panel-list a:hover{color:#2e63b8}.panel-block{align-items:center;color:#222;display:flex;justify-content:flex-start;padding:0.5em 0.75em}.panel-block input[type="checkbox"]{margin-right:.75em}.panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}.panel-block.is-wrapped{flex-wrap:wrap}.panel-block.is-active{border-left-color:#2e63b8;color:#363636}.panel-block.is-active .panel-icon{color:#2e63b8}.panel-block:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}a.panel-block,label.panel-block{cursor:pointer}a.panel-block:hover,label.panel-block:hover{background-color:#f5f5f5}.panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#6b6b6b;margin-right:.75em}.panel-icon .fa{font-size:inherit;line-height:inherit}.tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:1rem;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}.tabs a{align-items:center;border-bottom-color:#dbdbdb;border-bottom-style:solid;border-bottom-width:1px;color:#222;display:flex;justify-content:center;margin-bottom:-1px;padding:0.5em 1em;vertical-align:top}.tabs a:hover{border-bottom-color:#222;color:#222}.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:.5em}.tabs .icon:last-child{margin-left:.5em}.tabs.is-centered ul{justify-content:center}.tabs.is-right ul{justify-content:flex-end}.tabs.is-boxed a{border:1px solid transparent;border-radius:4px 4px 0 0}.tabs.is-boxed a:hover{background-color:#f5f5f5;border-bottom-color:#dbdbdb}.tabs.is-boxed li.is-active a{background-color:#fff;border-color:#dbdbdb;border-bottom-color:rgba(0,0,0,0) !important}.tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}.tabs.is-toggle a{border-color:#dbdbdb;border-style:solid;border-width:1px;margin-bottom:0;position:relative}.tabs.is-toggle a:hover{background-color:#f5f5f5;border-color:#b5b5b5;z-index:2}.tabs.is-toggle li+li{margin-left:-1px}.tabs.is-toggle li:first-child a{border-top-left-radius:4px;border-bottom-left-radius:4px}.tabs.is-toggle li:last-child a{border-top-right-radius:4px;border-bottom-right-radius:4px}.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:9999px;border-top-left-radius:9999px;padding-left:1.25em}.tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:9999px;border-top-right-radius:9999px;padding-right:1.25em}.tabs.is-small,#documenter .docs-sidebar form.docs-search>input.tabs{font-size:.75rem}.tabs.is-medium{font-size:1.25rem}.tabs.is-large{font-size:1.5rem}.column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>.column.is-narrow{flex:none;width:unset}.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.33333337%}.columns.is-mobile>.column.is-offset-1{margin-left:8.33333337%}.columns.is-mobile>.column.is-2{flex:none;width:16.66666674%}.columns.is-mobile>.column.is-offset-2{margin-left:16.66666674%}.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.33333337%}.columns.is-mobile>.column.is-offset-4{margin-left:33.33333337%}.columns.is-mobile>.column.is-5{flex:none;width:41.66666674%}.columns.is-mobile>.column.is-offset-5{margin-left:41.66666674%}.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.33333337%}.columns.is-mobile>.column.is-offset-7{margin-left:58.33333337%}.columns.is-mobile>.column.is-8{flex:none;width:66.66666674%}.columns.is-mobile>.column.is-offset-8{margin-left:66.66666674%}.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.33333337%}.columns.is-mobile>.column.is-offset-10{margin-left:83.33333337%}.columns.is-mobile>.column.is-11{flex:none;width:91.66666674%}.columns.is-mobile>.column.is-offset-11{margin-left:91.66666674%}.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;width:unset}.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.33333337%}.column.is-offset-1-mobile{margin-left:8.33333337%}.column.is-2-mobile{flex:none;width:16.66666674%}.column.is-offset-2-mobile{margin-left:16.66666674%}.column.is-3-mobile{flex:none;width:25%}.column.is-offset-3-mobile{margin-left:25%}.column.is-4-mobile{flex:none;width:33.33333337%}.column.is-offset-4-mobile{margin-left:33.33333337%}.column.is-5-mobile{flex:none;width:41.66666674%}.column.is-offset-5-mobile{margin-left:41.66666674%}.column.is-6-mobile{flex:none;width:50%}.column.is-offset-6-mobile{margin-left:50%}.column.is-7-mobile{flex:none;width:58.33333337%}.column.is-offset-7-mobile{margin-left:58.33333337%}.column.is-8-mobile{flex:none;width:66.66666674%}.column.is-offset-8-mobile{margin-left:66.66666674%}.column.is-9-mobile{flex:none;width:75%}.column.is-offset-9-mobile{margin-left:75%}.column.is-10-mobile{flex:none;width:83.33333337%}.column.is-offset-10-mobile{margin-left:83.33333337%}.column.is-11-mobile{flex:none;width:91.66666674%}.column.is-offset-11-mobile{margin-left:91.66666674%}.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;width:unset}.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.33333337%}.column.is-offset-1,.column.is-offset-1-tablet{margin-left:8.33333337%}.column.is-2,.column.is-2-tablet{flex:none;width:16.66666674%}.column.is-offset-2,.column.is-offset-2-tablet{margin-left:16.66666674%}.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.33333337%}.column.is-offset-4,.column.is-offset-4-tablet{margin-left:33.33333337%}.column.is-5,.column.is-5-tablet{flex:none;width:41.66666674%}.column.is-offset-5,.column.is-offset-5-tablet{margin-left:41.66666674%}.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.33333337%}.column.is-offset-7,.column.is-offset-7-tablet{margin-left:58.33333337%}.column.is-8,.column.is-8-tablet{flex:none;width:66.66666674%}.column.is-offset-8,.column.is-offset-8-tablet{margin-left:66.66666674%}.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.33333337%}.column.is-offset-10,.column.is-offset-10-tablet{margin-left:83.33333337%}.column.is-11,.column.is-11-tablet{flex:none;width:91.66666674%}.column.is-offset-11,.column.is-offset-11-tablet{margin-left:91.66666674%}.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;width:unset}.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.33333337%}.column.is-offset-1-touch{margin-left:8.33333337%}.column.is-2-touch{flex:none;width:16.66666674%}.column.is-offset-2-touch{margin-left:16.66666674%}.column.is-3-touch{flex:none;width:25%}.column.is-offset-3-touch{margin-left:25%}.column.is-4-touch{flex:none;width:33.33333337%}.column.is-offset-4-touch{margin-left:33.33333337%}.column.is-5-touch{flex:none;width:41.66666674%}.column.is-offset-5-touch{margin-left:41.66666674%}.column.is-6-touch{flex:none;width:50%}.column.is-offset-6-touch{margin-left:50%}.column.is-7-touch{flex:none;width:58.33333337%}.column.is-offset-7-touch{margin-left:58.33333337%}.column.is-8-touch{flex:none;width:66.66666674%}.column.is-offset-8-touch{margin-left:66.66666674%}.column.is-9-touch{flex:none;width:75%}.column.is-offset-9-touch{margin-left:75%}.column.is-10-touch{flex:none;width:83.33333337%}.column.is-offset-10-touch{margin-left:83.33333337%}.column.is-11-touch{flex:none;width:91.66666674%}.column.is-offset-11-touch{margin-left:91.66666674%}.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;width:unset}.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.33333337%}.column.is-offset-1-desktop{margin-left:8.33333337%}.column.is-2-desktop{flex:none;width:16.66666674%}.column.is-offset-2-desktop{margin-left:16.66666674%}.column.is-3-desktop{flex:none;width:25%}.column.is-offset-3-desktop{margin-left:25%}.column.is-4-desktop{flex:none;width:33.33333337%}.column.is-offset-4-desktop{margin-left:33.33333337%}.column.is-5-desktop{flex:none;width:41.66666674%}.column.is-offset-5-desktop{margin-left:41.66666674%}.column.is-6-desktop{flex:none;width:50%}.column.is-offset-6-desktop{margin-left:50%}.column.is-7-desktop{flex:none;width:58.33333337%}.column.is-offset-7-desktop{margin-left:58.33333337%}.column.is-8-desktop{flex:none;width:66.66666674%}.column.is-offset-8-desktop{margin-left:66.66666674%}.column.is-9-desktop{flex:none;width:75%}.column.is-offset-9-desktop{margin-left:75%}.column.is-10-desktop{flex:none;width:83.33333337%}.column.is-offset-10-desktop{margin-left:83.33333337%}.column.is-11-desktop{flex:none;width:91.66666674%}.column.is-offset-11-desktop{margin-left:91.66666674%}.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;width:unset}.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.33333337%}.column.is-offset-1-widescreen{margin-left:8.33333337%}.column.is-2-widescreen{flex:none;width:16.66666674%}.column.is-offset-2-widescreen{margin-left:16.66666674%}.column.is-3-widescreen{flex:none;width:25%}.column.is-offset-3-widescreen{margin-left:25%}.column.is-4-widescreen{flex:none;width:33.33333337%}.column.is-offset-4-widescreen{margin-left:33.33333337%}.column.is-5-widescreen{flex:none;width:41.66666674%}.column.is-offset-5-widescreen{margin-left:41.66666674%}.column.is-6-widescreen{flex:none;width:50%}.column.is-offset-6-widescreen{margin-left:50%}.column.is-7-widescreen{flex:none;width:58.33333337%}.column.is-offset-7-widescreen{margin-left:58.33333337%}.column.is-8-widescreen{flex:none;width:66.66666674%}.column.is-offset-8-widescreen{margin-left:66.66666674%}.column.is-9-widescreen{flex:none;width:75%}.column.is-offset-9-widescreen{margin-left:75%}.column.is-10-widescreen{flex:none;width:83.33333337%}.column.is-offset-10-widescreen{margin-left:83.33333337%}.column.is-11-widescreen{flex:none;width:91.66666674%}.column.is-offset-11-widescreen{margin-left:91.66666674%}.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;width:unset}.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.33333337%}.column.is-offset-1-fullhd{margin-left:8.33333337%}.column.is-2-fullhd{flex:none;width:16.66666674%}.column.is-offset-2-fullhd{margin-left:16.66666674%}.column.is-3-fullhd{flex:none;width:25%}.column.is-offset-3-fullhd{margin-left:25%}.column.is-4-fullhd{flex:none;width:33.33333337%}.column.is-offset-4-fullhd{margin-left:33.33333337%}.column.is-5-fullhd{flex:none;width:41.66666674%}.column.is-offset-5-fullhd{margin-left:41.66666674%}.column.is-6-fullhd{flex:none;width:50%}.column.is-offset-6-fullhd{margin-left:50%}.column.is-7-fullhd{flex:none;width:58.33333337%}.column.is-offset-7-fullhd{margin-left:58.33333337%}.column.is-8-fullhd{flex:none;width:66.66666674%}.column.is-offset-8-fullhd{margin-left:66.66666674%}.column.is-9-fullhd{flex:none;width:75%}.column.is-offset-9-fullhd{margin-left:75%}.column.is-10-fullhd{flex:none;width:83.33333337%}.column.is-offset-10-fullhd{margin-left:83.33333337%}.column.is-11-fullhd{flex:none;width:91.66666674%}.column.is-offset-11-fullhd{margin-left:91.66666674%}.column.is-12-fullhd{flex:none;width:100%}.column.is-offset-12-fullhd{margin-left:100%}}.columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.columns:last-child{margin-bottom:-.75rem}.columns:not(:last-child){margin-bottom:calc(1.5rem - .75rem)}.columns.is-centered{justify-content:center}.columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}.columns.is-gapless>.column{margin:0;padding:0 !important}.columns.is-gapless:not(:last-child){margin-bottom:1.5rem}.columns.is-gapless:last-child{margin-bottom:0}.columns.is-mobile{display:flex}.columns.is-multiline{flex-wrap:wrap}.columns.is-vcentered{align-items:center}@media screen and (min-width: 769px),print{.columns:not(.is-desktop){display:flex}}@media screen and (min-width: 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: .25rem}@media screen and (max-width: 768px){.columns.is-variable.is-1-mobile{--columnGap: .25rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-1-tablet{--columnGap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-1-tablet-only{--columnGap: .25rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-1-touch{--columnGap: .25rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-1-desktop{--columnGap: .25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-1-desktop-only{--columnGap: .25rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-1-widescreen{--columnGap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-1-widescreen-only{--columnGap: .25rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-1-fullhd{--columnGap: .25rem}}.columns.is-variable.is-2{--columnGap: .5rem}@media screen and (max-width: 768px){.columns.is-variable.is-2-mobile{--columnGap: .5rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-2-tablet{--columnGap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-2-tablet-only{--columnGap: .5rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-2-touch{--columnGap: .5rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-2-desktop{--columnGap: .5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-2-desktop-only{--columnGap: .5rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-2-widescreen{--columnGap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-2-widescreen-only{--columnGap: .5rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-2-fullhd{--columnGap: .5rem}}.columns.is-variable.is-3{--columnGap: .75rem}@media screen and (max-width: 768px){.columns.is-variable.is-3-mobile{--columnGap: .75rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-3-tablet{--columnGap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-3-tablet-only{--columnGap: .75rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-3-touch{--columnGap: .75rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-3-desktop{--columnGap: .75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-3-desktop-only{--columnGap: .75rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-3-widescreen{--columnGap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-3-widescreen-only{--columnGap: .75rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-3-fullhd{--columnGap: .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:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.tile.is-ancestor:last-child{margin-bottom:-.75rem}.tile.is-ancestor:not(:last-child){margin-bottom:.75rem}.tile.is-child{margin:0 !important}.tile.is-parent{padding:.75rem}.tile.is-vertical{flex-direction:column}.tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem !important}@media screen and (min-width: 769px),print{.tile:not(.is-child){display:flex}.tile.is-1{flex:none;width:8.33333337%}.tile.is-2{flex:none;width:16.66666674%}.tile.is-3{flex:none;width:25%}.tile.is-4{flex:none;width:33.33333337%}.tile.is-5{flex:none;width:41.66666674%}.tile.is-6{flex:none;width:50%}.tile.is-7{flex:none;width:58.33333337%}.tile.is-8{flex:none;width:66.66666674%}.tile.is-9{flex:none;width:75%}.tile.is-10{flex:none;width:83.33333337%}.tile.is-11{flex:none;width:91.66666674%}.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:#fff;color:#0a0a0a}.hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-white strong{color:inherit}.hero.is-white .title{color:#0a0a0a}.hero.is-white .subtitle{color:rgba(10,10,10,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:#fff}}.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{color:#fff !important;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:#fff}.hero.is-white.is-bold{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}@media screen and (max-width: 768px){.hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}}.hero.is-black{background-color:#0a0a0a;color:#fff}.hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-black strong{color:inherit}.hero.is-black .title{color:#fff}.hero.is-black .subtitle{color:rgba(255,255,255,0.9)}.hero.is-black .subtitle a:not(.button),.hero.is-black .subtitle strong{color:#fff}@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:#000;color:#fff}.hero.is-black .tabs a{color:#fff;opacity:0.9}.hero.is-black .tabs a:hover{opacity:1}.hero.is-black .tabs li.is-active a{color:#0a0a0a !important;opacity:1}.hero.is-black .tabs.is-boxed a,.hero.is-black .tabs.is-toggle a{color:#fff}.hero.is-black .tabs.is-boxed a:hover,.hero.is-black .tabs.is-toggle a:hover{background-color:rgba(10,10,10,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:#fff;border-color:#fff;color:#0a0a0a}.hero.is-black.is-bold{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}@media screen and (max-width: 768px){.hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}}.hero.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-light strong{color:inherit}.hero.is-light .title{color:rgba(0,0,0,0.7)}.hero.is-light .subtitle{color:rgba(0,0,0,0.9)}.hero.is-light .subtitle a:not(.button),.hero.is-light .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){.hero.is-light .navbar-menu{background-color:#f5f5f5}}.hero.is-light .navbar-item,.hero.is-light .navbar-link{color:rgba(0,0,0,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:rgba(0,0,0,0.7)}.hero.is-light .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}.hero.is-light .tabs a:hover{opacity:1}.hero.is-light .tabs li.is-active a{color:#f5f5f5 !important;opacity:1}.hero.is-light .tabs.is-boxed a,.hero.is-light .tabs.is-toggle a{color:rgba(0,0,0,0.7)}.hero.is-light .tabs.is-boxed a:hover,.hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,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:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);color:#f5f5f5}.hero.is-light.is-bold{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}@media screen and (max-width: 768px){.hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}}.hero.is-dark,.content kbd.hero{background-color:#363636;color:#fff}.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:#fff}.hero.is-dark .subtitle,.content kbd.hero .subtitle{color:rgba(255,255,255,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:#fff}@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(255,255,255,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:#fff}.hero.is-dark .tabs a,.content kbd.hero .tabs a{color:#fff;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{color:#363636 !important;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:#fff}.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:#fff;border-color:#fff;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{color:#4eb5de !important;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{color:#2e63b8 !important;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{color:#209cee !important;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{color:#22c35b !important;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{color:#ffdd57 !important;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{color:#da0b00 !important;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:1.5rem}@media screen and (min-width: 769px),print{.hero.is-medium .hero-body{padding:9rem 4.5rem}}@media screen and (min-width: 769px),print{.hero.is-large .hero-body{padding:18rem 6rem}}.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}@media screen and (min-width: 769px),print{.hero-body{padding:3rem 3rem}}.section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){.section{padding:3rem 3rem}.section.is-medium{padding:9rem 4.5rem}.section.is-large{padding:18rem 6rem}}.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:#222}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 6 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 .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 6 Free";color:#222;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:.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 .75rem;position:relative}.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}details.admonition.is-details>.admonition-header{list-style:none}details.admonition.is-details>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f055"}details.admonition.is-details[open]>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f056"}.admonition-body{color:#222;padding:0.5rem .75rem}.admonition-body pre{background-color:#f5f5f5}.admonition-body code{background-color:rgba(0,0,0,0.05)}.docstring{margin-bottom:1em;background-color:rgba(0,0,0,0);border:1px solid #dbdbdb;box-shadow:2px 2px 3px rgba(10,10,10,0.1);max-width:100%}.docstring>header{cursor:pointer;display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#f5f5f5;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #dbdbdb}.docstring>header code{background-color:transparent}.docstring>header .docstring-article-toggle-button{min-width:1.1rem;padding:0.2rem 0.2rem 0.2rem 0}.docstring>header .docstring-binding{margin-right:0.3em}.docstring>header .docstring-category{margin-left:0.3em}.docstring>section{position:relative;padding:.75rem .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:.375rem;bottom:.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:#fff}.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:#222}.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:#222}.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}#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:#fff;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-sidebar-button{display:block;font-size:1.5rem;padding-bottom:0.1rem;margin-right:1rem}#documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap;gap:1rem;align-items:center}#documenter .docs-main header.docs-navbar .docs-right .docs-icon,#documenter .docs-main header.docs-navbar .docs-right .docs-label{display:inline-block}#documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}@media screen and (max-width: 1055px){#documenter .docs-main header.docs-navbar .docs-right .docs-navbar-link{margin-left:0.4rem;margin-right:0.4rem}}#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;transition-property:top, box-shadow;-webkit-transition-property:top, box-shadow;transition-duration:0.3s;-webkit-transition-duration:0.3s}#documenter .docs-main header.docs-navbar.headroom--not-top{box-shadow:.2rem 0rem .4rem #bbb;transition-duration:0.7s;-webkit-transition-duration:0.7s}#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}}#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:#f5f5f5;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}#documenter .docs-sidebar.visible{left:0;box-shadow:.4rem 0rem .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}#documenter .docs-sidebar ul.docs-menu>li>.tocitem{font-weight:bold}#documenter .docs-sidebar ul.docs-menu>li li{font-size:.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:.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 6 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:#f5f5f5}#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:#fff}#documenter .docs-sidebar ul.docs-menu li.is-active .tocitem,#documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover{background-color:#fff;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:.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}#documenter .docs-sidebar #documenter-search-query{color:#707070;width:14.4rem;box-shadow:inset 0 1px 2px rgba(10,10,10,0.1)}@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:#ccc}}@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:#ccc}}kbd.search-modal-key-hints{border-radius:0.25rem;border:1px solid rgba(0,0,0,0.6);box-shadow:0 2px 0 1px rgba(0,0,0,0.6);cursor:default;font-size:0.9rem;line-height:1.5;min-width:0.75rem;text-align:center;padding:0.1rem 0.3rem;position:relative;top:-1px}.search-min-width-50{min-width:50%}.search-min-height-100{min-height:100%}.search-modal-card-body{max-height:calc(100vh - 15rem)}.search-result-link{border-radius:0.7em;transition:all 300ms}.search-result-link:hover,.search-result-link:focus{background-color:rgba(0,128,128,0.1)}.search-result-link .property-search-result-badge,.search-result-link .search-filter{transition:all 300ms}.property-search-result-badge,.search-filter{padding:0.15em 0.5em;font-size:0.8em;font-style:italic;text-transform:none !important;line-height:1.5;color:#f5f5f5;background-color:rgba(51,65,85,0.501961);border-radius:0.6rem}.search-result-link:hover .property-search-result-badge,.search-result-link:hover .search-filter,.search-result-link:focus .property-search-result-badge,.search-result-link:focus .search-filter{color:#f1f5f9;background-color:#333}.search-filter{color:#333;background-color:#f5f5f5;transition:all 300ms}.search-filter:hover,.search-filter:focus{color:#333}.search-filter-selected{color:#f5f5f5;background-color:rgba(139,0,139,0.5)}.search-filter-selected:hover,.search-filter-selected:focus{color:#f5f5f5}.search-result-highlight{background-color:#ffdd57;color:black}.search-divider{border-bottom:1px solid #dbdbdb}.search-result-title{width:85%;color:#333}.search-result-code-title{font-size:0.875rem;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}#search-modal .modal-card-body::-webkit-scrollbar,#search-modal .filter-tabs::-webkit-scrollbar{height:10px;width:10px;background-color:transparent}#search-modal .modal-card-body::-webkit-scrollbar-thumb,#search-modal .filter-tabs::-webkit-scrollbar-thumb{background-color:gray;border-radius:1rem}#search-modal .modal-card-body::-webkit-scrollbar-track,#search-modal .filter-tabs::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.6);background-color:transparent}.w-100{width:100%}.gap-2{gap:0.5rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.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:#fff;background-color:#222}.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:#f5f5f5}.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:#f5f5f5}code.language-julia-repl>span.hljs-meta{color:#066f00;font-weight:bolder}/*! - Theme: Default - Description: Original highlight.js style - Author: (c) Ivan Sagalaev <maniac@softwaremaniacs.org> - Maintainer: @highlightjs/core-team - Website: https://highlightjs.org/ - License: see project LICENSE - Touched: 2021 -*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#F3F3F3;color:#444}.hljs-comment{color:#697070}.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}.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:#ab5656}.hljs-literal{color:#695}.hljs-built_in,.hljs-bullet,.hljs-code,.hljs-addition{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#38a}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:bold}.gap-4{gap:1rem} diff --git a/docs/build/assets/themeswap.js b/docs/build/assets/themeswap.js deleted file mode 100644 index 9f5eebe..0000000 --- a/docs/build/assets/themeswap.js +++ /dev/null @@ -1,84 +0,0 @@ -// Small function to quickly swap out themes. Gets put into the <head> tag.. -function set_theme_from_local_storage() { - // Initialize 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 users preference is for dark color scheme - var darkPreference = - window.matchMedia("(prefers-color-scheme: dark)").matches === 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 primaryLightTheme = null; - var primaryDarkTheme = null; - for (var i = 0; i < document.styleSheets.length; i++) { - var ss = document.styleSheets[i]; - // The <link> 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. - if (ss.ownerNode.getAttribute("data-theme-primary") !== null) { - primaryLightTheme = themename; - } - // Check if the theme is primary dark theme so that we could store its name in darkTheme - if (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null) { - primaryDarkTheme = 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); - } - var activeTheme = null; - if (active !== null) { - // If we did find an active theme, we'll (1) add the theme--$(theme) class to <html> - document.getElementsByTagName("html")[0].className = "theme--" + theme; - activeTheme = theme; - } else { - // If we did _not_ find an active theme, then we need to fall back to the primary theme - // which can either be dark or light, depending on the user's OS preference. - var activeTheme = darkPreference ? primaryDarkTheme : primaryLightTheme; - // In case it somehow happens that the relevant primary theme was not found in the - // preceding loop, we abort without doing anything. - if (activeTheme === null) { - console.error("Unable to determine primary theme."); - return; - } - // When switching to the primary light theme, then we must not have a class name - // for the <html> tag. That's only for non-primary or the primary dark theme. - if (darkPreference) { - document.getElementsByTagName("html")[0].className = - "theme--" + activeTheme; - } else { - document.getElementsByTagName("html")[0].className = ""; - } - } - for (var i = 0; i < document.styleSheets.length; i++) { - var ss = document.styleSheets[i]; - // The <link> 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; - // we'll disable all the stylesheets, except for the active one - ss.disabled = !(themename == activeTheme); - } -} -set_theme_from_local_storage(); diff --git a/docs/build/assets/warner.js b/docs/build/assets/warner.js deleted file mode 100644 index 3f6f5d0..0000000 --- a/docs/build/assets/warner.js +++ /dev/null @@ -1,52 +0,0 @@ -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.<br><a href="' + - href + - '">Click here to go to the documentation for the latest stable release.</a>'; - div.appendChild(closer); - document.body.appendChild(div); -} - -if (document.readyState === "loading") { - document.addEventListener("DOMContentLoaded", maybeAddWarning); -} else { - maybeAddWarning(); -} diff --git a/docs/build/config.html b/docs/build/config.html deleted file mode 100644 index 4e8c245..0000000 --- a/docs/build/config.html +++ /dev/null @@ -1,38 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Configuration · Persefone.jl</title><meta name="title" content="Configuration · Persefone.jl"/><meta property="og:title" content="Configuration · Persefone.jl"/><meta property="twitter:title" content="Configuration · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li class="is-active"><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">User guide</a></li><li class="is-active"><a href="config.html">Configuration</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="config.html">Configuration</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/config.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Configuration"><a class="docs-heading-anchor" href="#Configuration">Configuration</a><a id="Configuration-1"></a><a class="docs-heading-anchor-permalink" href="#Configuration" title="Permalink"></a></h1><p>Persefone requires three <a href="io.html">input</a> files: a configuration file and two map files. How to generate the map files is documented <a href="gis.html">elsewhere</a>. The configuration file defines parameter values and looks like this (see <code>src/parameters.toml</code> for the default):</p><pre><code class="language-TOML hljs">### Persefone.jl - a model of agricultural landscapes and ecosystems in Europe. -### -### This is the default configuration file for Persefone, containing all model parameters. -### The syntax is described here: https://toml.io/en/ - -[core] -configfile = "src/parameters.toml" # location of the configuration file -outdir = "results" # location and name of the output folder -overwrite = "ask" # overwrite the output directory? (true/false/"ask") -logoutput = "both" # log output to screen/file/both -csvoutput = true # save collected data in CSV files -visualise = true # generate result graphs -storedata = true # keep collected data in memory -loglevel = "debug" # verbosity level: "debug", "info", "warn" -processors = 2 # number of processors to use on parallel runs -seed = 2 # seed value for the RNG (0 -> random value) -startdate = 2022-01-01 # first day of the simulation -enddate = 2022-12-31 # last day of the simulation - -[world] -landcovermap = "data/regions/jena/landcover.tif" # location of the landcover map -farmfieldsmap = "data/regions/jena/fields.tif" # location of the field geometry map -weatherfile = "data/regions/jena/weather.csv" # location of the weather data file - -[farm] -farmmodel = "FieldManager" # which version of the farm model to use (not yet implemented) - -[nature] -targetspecies = ["Wolpertinger", "Wyvern"] # list of target species to simulate -popoutfreq = "daily" # output frequency population-level data, daily/monthly/yearly/end/never -indoutfreq = "end" # output frequency individual-level data, daily/monthly/yearly/end/never -insectmodel = ["season", "habitat", "pesticides", "weather"] # factors affecting insect growth - -[crop] -cropmodel = "almass" # crop growth model to use, "almass" or "aquacrop" -cropfile = "data/crops/almass/crop_data_general.csv" # file with general crop parameters -growthfile = "data/crops/almass/almass_crop_growth_curves.csv" # file with crop growth parameters </code></pre><div class="admonition is-info"><header class="admonition-header">Parameter scanning</header><div class="admonition-body"><p>You can set any parameter to a list of different values, e.g. <code>seed = [1,2,3]</code>. Persefone will then set up and run multiple simulations, one for every possible combination of parameters that you entered (i.e. do a full-factorial simulation experiment).</p></div></div></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="gui.html">« Graphical User Interface</a><a class="docs-footer-nextpage" href="management.html">Farm management »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/crop-models.html b/docs/build/crop-models.html deleted file mode 100644 index 2948f30..0000000 --- a/docs/build/crop-models.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Crop models · Persefone.jl</title><meta name="title" content="Crop models · Persefone.jl"/><meta property="og:title" content="Crop models · Persefone.jl"/><meta property="twitter:title" content="Crop models · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li class="is-active"><a class="tocitem" href="crop-models.html">Crop models</a><ul class="internal"><li><a class="tocitem" href="#ALMaSS"><span>ALMaSS</span></a></li><li><a class="tocitem" href="#AquaCrop"><span>AquaCrop</span></a></li></ul></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Scientific documentation</a></li><li class="is-active"><a href="crop-models.html">Crop models</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="crop-models.html">Crop models</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/crop-models.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Crop-models"><a class="docs-heading-anchor" href="#Crop-models">Crop models</a><a id="Crop-models-1"></a><a class="docs-heading-anchor-permalink" href="#Crop-models" title="Permalink"></a></h1><p><em>TODO</em></p><h2 id="ALMaSS"><a class="docs-heading-anchor" href="#ALMaSS">ALMaSS</a><a id="ALMaSS-1"></a><a class="docs-heading-anchor-permalink" href="#ALMaSS" title="Permalink"></a></h2><h2 id="AquaCrop"><a class="docs-heading-anchor" href="#AquaCrop">AquaCrop</a><a id="AquaCrop-1"></a><a class="docs-heading-anchor-permalink" href="#AquaCrop" title="Permalink"></a></h2></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="management.html">« Farm management</a><a class="docs-footer-nextpage" href="skylark.html">Skylark »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/crops.html b/docs/build/crops.html deleted file mode 100644 index c68388b..0000000 --- a/docs/build/crops.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Crop submodel · Persefone.jl</title><meta name="title" content="Crop submodel · Persefone.jl"/><meta property="og:title" content="Crop submodel · Persefone.jl"/><meta property="twitter:title" content="Crop submodel · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li class="is-active"><a class="tocitem" href="crops.html">Crop submodel</a><ul class="internal"><li><a class="tocitem" href="#farmplot.jl"><span>farmplot.jl</span></a></li><li><a class="tocitem" href="#crops.jl"><span>crops.jl</span></a></li></ul></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Software API</a></li><li class="is-active"><a href="crops.html">Crop submodel</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="crops.html">Crop submodel</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/crops.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Crop-submodel"><a class="docs-heading-anchor" href="#Crop-submodel">Crop submodel</a><a id="Crop-submodel-1"></a><a class="docs-heading-anchor-permalink" href="#Crop-submodel" title="Permalink"></a></h1><p>Eventually, the plan is to have Persefone include a reimplementation of the AquaCrop model, a well-established crop growth model developed by the FAO. Until then, we are using the crop growth submodel used in <a href="https://doi.org/10.1016/S0304-3800(03)00173-X">ALMaSS</a>.</p><h2 id="farmplot.jl"><a class="docs-heading-anchor" href="#farmplot.jl">farmplot.jl</a><a id="farmplot.jl-1"></a><a class="docs-heading-anchor-permalink" href="#farmplot.jl" title="Permalink"></a></h2><p>This file is responsible for the farm plots, i.e. the indidivual fields that farmers manage.</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.FarmPlot" href="#Persefone.FarmPlot"><code>Persefone.FarmPlot</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">FarmPlot</code></pre><p>A struct representing a single field, on which a crop can be grown.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L6-L10">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.averagefieldsize-Tuple{SimulationModel}" href="#Persefone.averagefieldsize-Tuple{SimulationModel}"><code>Persefone.averagefieldsize</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">averagefieldsize(model)</code></pre><p>Calculate the average field size in hectares for the model landscape.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L93-L97">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.cropcover-Tuple{Tuple{Int64, Int64}, SimulationModel}" href="#Persefone.cropcover-Tuple{Tuple{Int64, Int64}, SimulationModel}"><code>Persefone.cropcover</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">cropcover(model, position)</code></pre><p>Return the crop cover of the crop at this position, or nothing if there is no crop here (utility wrapper).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L136-L141">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.cropheight-Tuple{Tuple{Int64, Int64}, SimulationModel}" href="#Persefone.cropheight-Tuple{Tuple{Int64, Int64}, SimulationModel}"><code>Persefone.cropheight</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">cropheight(model, position)</code></pre><p>Return the height of the crop at this position, or nothing if there is no crop here (utility wrapper).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L125-L130">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.cropname-Tuple{Tuple{Int64, Int64}, SimulationModel}" href="#Persefone.cropname-Tuple{Tuple{Int64, Int64}, SimulationModel}"><code>Persefone.cropname</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">cropname(model, position)</code></pre><p>Return the name of the crop at this position, or an empty string if there is no crop here (utility wrapper).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L114-L119">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.croptype-Tuple{Tuple{Int64, Int64}, SimulationModel}" href="#Persefone.croptype-Tuple{Tuple{Int64, Int64}, SimulationModel}"><code>Persefone.croptype</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">croptype(model, position)</code></pre><p>Return the crop at this position, or nothing if there is no crop here (utility wrapper).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L104-L108">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.harvest!-Union{Tuple{T}, Tuple{FarmPlot{T}, SimulationModel}} where T" href="#Persefone.harvest!-Union{Tuple{T}, Tuple{FarmPlot{T}, SimulationModel}} where T"><code>Persefone.harvest!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">harvest!(farmplot, model)</code></pre><p>Harvest the crop of this farmplot.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L45-L49">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.isgrassland-Tuple{FarmPlot, SimulationModel}" href="#Persefone.isgrassland-Tuple{FarmPlot, SimulationModel}"><code>Persefone.isgrassland</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">isgrassland(farmplot, model)</code></pre><p>Classify a farmplot as grassland or not (i.e., is the landcover of >80% of its pixels grass?)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L76-L80">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.sow!-Tuple{FarmPlot, SimulationModel, String}" href="#Persefone.sow!-Tuple{FarmPlot, SimulationModel, String}"><code>Persefone.sow!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">sow!(farmplot, model, cropname)</code></pre><p>Sow the specified crop on the farmplot.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L34-L38">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.stepagent!-Union{Tuple{T}, Tuple{FarmPlot{T}, SimulationModel}} where T" href="#Persefone.stepagent!-Union{Tuple{T}, Tuple{FarmPlot{T}, SimulationModel}} where T"><code>Persefone.stepagent!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">stepagent!(farmplot, model)</code></pre><p>Update a farm plot by one day.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L25-L29">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@harvest-Tuple{}" href="#Persefone.@harvest-Tuple{}"><code>Persefone.@harvest</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@harvest()</code></pre><p>Harvest the current field. Requires the variables <code>field</code> and <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L65-L69">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@sow-Tuple{Any}" href="#Persefone.@sow-Tuple{Any}"><code>Persefone.@sow</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@sow(cropname)</code></pre><p>Sow the named crop on the current field. Requires the variables <code>field</code> and <code>model</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/crop/farmplot.jl#L56-L60">source</a></section></article><h2 id="crops.jl"><a class="docs-heading-anchor" href="#crops.jl">crops.jl</a><a id="crops.jl-1"></a><a class="docs-heading-anchor-permalink" href="#crops.jl" title="Permalink"></a></h2><p>This includes the types and functions needed for all crop growth model, which are also referenced by the other submodels.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="species.html">« Species models</a><a class="docs-footer-nextpage" href="farm.html">Farm submodel »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/developing.html b/docs/build/developing.html deleted file mode 100644 index 522946b..0000000 --- a/docs/build/developing.html +++ /dev/null @@ -1,9 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Developing Persefone · Persefone.jl</title><meta name="title" content="Developing Persefone · Persefone.jl"/><meta property="og:title" content="Developing Persefone · Persefone.jl"/><meta property="twitter:title" content="Developing Persefone · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li class="is-active"><a class="tocitem" href="developing.html">Developing Persefone</a><ul class="internal"><li><a class="tocitem" href="#Setting-up"><span>Setting up</span></a></li><li><a class="tocitem" href="#Development-workflow"><span>Development workflow</span></a></li><li><a class="tocitem" href="#Important-libraries"><span>Important libraries</span></a></li></ul></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Developer guide</a></li><li class="is-active"><a href="developing.html">Developing Persefone</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="developing.html">Developing Persefone</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/developing.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Developing-Persefone"><a class="docs-heading-anchor" href="#Developing-Persefone">Developing Persefone</a><a id="Developing-Persefone-1"></a><a class="docs-heading-anchor-permalink" href="#Developing-Persefone" title="Permalink"></a></h1><h2 id="Setting-up"><a class="docs-heading-anchor" href="#Setting-up">Setting up</a><a id="Setting-up-1"></a><a class="docs-heading-anchor-permalink" href="#Setting-up" title="Permalink"></a></h2><p>If you haven't worked with Julia before, here are detailed instructions for how to set up your development environment. The main development is currently done on Linux (and as the primary execution platform will be an HPC, Linux compatibility is important), but developing on Windows works too.</p><h3 id="Visual-Studio-Code-on-Windows"><a class="docs-heading-anchor" href="#Visual-Studio-Code-on-Windows">Visual Studio Code on Windows</a><a id="Visual-Studio-Code-on-Windows-1"></a><a class="docs-heading-anchor-permalink" href="#Visual-Studio-Code-on-Windows" title="Permalink"></a></h3><ol><li><p>Download and install <a href="https://julialang.org/downloads/">Julia</a>, <a href="https://git-scm.com/download/win">git</a> and <a href="https://code.visualstudio.com/">Visual Studio Code</a>.</p></li><li><p>Install the <a href="https://www.julia-vscode.org/">Julia extension for VS Code</a>: In VS Code, open the extensions pane (<code>Ctrl+Shift+X</code>). Search for and install Julia Language Support.</p></li><li><p>Clone the <a href="https://git.idiv.de/persefone/persefone-model.git">Gitlab repository</a>: In VS Code, open the source control pane (<code>Ctrl+Shift+G</code>). Click on <code>Clone</code> and enter the repo URL. Then select a folder on your computer to download the files into, and let VS Code open the project once it has been cloned.</p></li><li><p>Start a Julia REPL: In VS Code, bring up the command palette (<code>Ctrl+Shift+P</code>). Execute the command <code>Julia: Start REPL</code>. Then install all dependencies of Persefone by running <code>using Pkg; Pkg.activate("."); Pkg.instantiate()</code>. (This will take some time.)</p></li><li><p>Open the file <code>run.jl</code> and click <code>Execute</code> (triangular button in the top right). The source code will compile (this can take a lot of time the first time you do it) and run a default simulation.</p></li><li><p>Further steps: You may want to familiarise yourself with how to use <a href="https://code.visualstudio.com/docs/sourcecontrol/overview">git with VS Code</a>. You may also want to clone the Persefone Desktop <a href="https://git.idiv.de/persefone/persefone-desktop.git">repository</a> (repeat steps 3 to 5).</p></li></ol><h3 id="Emacs-on-Linux"><a class="docs-heading-anchor" href="#Emacs-on-Linux">Emacs on Linux</a><a id="Emacs-on-Linux-1"></a><a class="docs-heading-anchor-permalink" href="#Emacs-on-Linux" title="Permalink"></a></h3><p><em>You can of course also use VS Code on Linux. In that case, follow the instructions above.</em></p><p>Make sure you have git and Julia installed. Git should be in your distro's repos (e.g. <code>sudo apt install git</code>). To install Julia, <a href="https://julialang.org/downloads/">download</a> the binary and unpack it. For greater ease of use, copy the unpacked files to <code>/usr/local/lib/julia</code> (or similar) and create a symlink to the executable: <code>sudo ln -s /usr/local/lib/julia/bin/julia /usr/local/bin/julia</code>. Then go the to folder that you want to use for development and run <code>git clone https://git.idiv.de/persefone/persefone-model.git .</code> in your terminal.</p><p>There are a couple of addons that make working with Julia much nicer in Emacs:</p><ol><li><p><code>julia-mode</code> gives syntax highlighting. Install with <code>M-x package-install julia-mode</code>.</p></li><li><p><a href="https://github.com/gcv/julia-snail"><code>julia-snail</code></a> provides IDE-like features, especially a fully-functional REPL and the ability to evaluate code straight from inside a buffer. Note that the installation can be somewhat tricky. You first need to manually install all the dependencies of its dependency <a href="https://github.com/akermu/emacs-libvterm">vterm</a>, then install vterm itself with <code>M-x package-install vterm</code>, <em>before</em> you can do <code>M-x package-install julia-snail</code>. Then add it to your <code>init.el</code> with <code>(require 'julia-snail)</code> and <code>(add-hook 'julia-mode-hook #'julia-snail-mode)</code>.</p></li><li><p><a href="http://company-mode.github.io/"><code>company-mode</code></a> integrates with Snail to give code completion. Install with <code>M-x package-install company</code>, then add <code>(add-hook 'julia-mode-hook #'company-mode)</code> and <code>(global-set-key (kbd "C-<tab>") 'company-complete)</code> to your <code>init.el</code>.</p></li><li><p><a href="https://magit.vc/"><code>magit</code></a> is a great git interface for Emacs. Install with <code>M-x package-install magit</code> and add <code>(global-set-key (kbd "C-x g") 'magit-status)</code> to your <code>init.el</code>.</p></li></ol><h2 id="Development-workflow"><a class="docs-heading-anchor" href="#Development-workflow">Development workflow</a><a id="Development-workflow-1"></a><a class="docs-heading-anchor-permalink" href="#Development-workflow" title="Permalink"></a></h2><ol><li><p>Pull the current version from the master branch on Gitlab: <a href="https://git.idiv.de/persefone/persefone-model">https://git.idiv.de/persefone/persefone-model</a>.</p></li><li><p>If you are working on a new feature, create a new branch to avoid breaking the <code>master</code> branch. (The <code>master</code> branch on Github should always be in a runnable and error-free state.)</p></li><li><p>Implement your changes.</p></li><li><p>Run an example simulation and the test suite to make sure everything works without crashing (<code>make run</code> and <code>make test</code> on Linux, or execute <code>run.jl</code> and <code>test/runtests.jl</code> manually.)</p></li><li><p>Commit your work frequently, and try to keep each commit small. Don't forget to add relevant tests to the test suite.</p></li><li><p>Once your satisfied with your work, do another pull/merge from the <code>master</code> branch in case somebody else changed the branch in the meantime. Then merge your work into <code>master</code> and push to the Gitlab server.</p></li><li><p>Repeat :-)</p></li></ol><p>The Gitlab <a href="https://git.idiv.de/persefone/persefone-model/-/boards/373">issue tracker</a> can be used to create, discuss, and assign tasks, as well as to monitor progress towards milestones/releases. Once we have a first release, we will start using <a href="https://semver.org/">semantic versioning</a> and a <a href="https://keepachangelog.com/en/1.0.0/">changelog</a>.</p><h2 id="Important-libraries"><a class="docs-heading-anchor" href="#Important-libraries">Important libraries</a><a id="Important-libraries-1"></a><a class="docs-heading-anchor-permalink" href="#Important-libraries" title="Permalink"></a></h2><h3 id="Revise.jl"><a class="docs-heading-anchor" href="#Revise.jl">Revise.jl</a><a id="Revise.jl-1"></a><a class="docs-heading-anchor-permalink" href="#Revise.jl" title="Permalink"></a></h3><p><a href="https://timholy.github.io/Revise.jl/stable/"><code>Revise.jl</code></a> allows one to reload code without restarting the Julia interpreter. Get it with <code>Pkg.add("Revise")</code>, then add <code>using Revise</code> to <code>.julia/config/startup.jl</code> to have it automatically available.</p><h3 id="Test"><a class="docs-heading-anchor" href="#Test">Test</a><a id="Test-1"></a><a class="docs-heading-anchor-permalink" href="#Test" title="Permalink"></a></h3><p>Persefone uses the inbuilt Julia <a href="https://docs.julialang.org/en/v1/stdlib/Test/">testing framework</a>. All new functions should have appropriate tests written for them in the appropriate file in the <code>test</code> directory. (See <a href="https://git.idiv.de/xo30xoqa/persephone/-/blob/master/test/runtests.jl"><code>test/runtests.jl</code></a> for details.) There are three ways to run the test suite: in the terminal, executing <code>make test</code> or <code>cd test; julia runtests.jl</code>; or in the Julia REPL, <code>Pkg.activate("."); Pkg.test()</code>.</p><h3 id="Documenter.jl"><a class="docs-heading-anchor" href="#Documenter.jl">Documenter.jl</a><a id="Documenter.jl-1"></a><a class="docs-heading-anchor-permalink" href="#Documenter.jl" title="Permalink"></a></h3><p>The HTML documentation is generated using <a href="https://documenter.juliadocs.org">Documenter.jl</a>. Therefore, all new functions should have docstrings attached. New files need to be integrated into the relevant documentation source files in <code>docs/src</code>, and if necessary into <a href="https://git.idiv.de/xo30xoqa/persephone/-/blob/master/docs/builddocs.jl"><code>docs/builddocs.jl</code></a>. To build the documentation, run <code>make docs</code>, or <code>cd docs; julia builddocs.jl</code> (if using the latter, don't forget to update the date and commit in <code>docs/src/index.md</code>).</p><h3 id="Graphics-and-user-interface"><a class="docs-heading-anchor" href="#Graphics-and-user-interface">Graphics and user interface</a><a id="Graphics-and-user-interface-1"></a><a class="docs-heading-anchor-permalink" href="#Graphics-and-user-interface" title="Permalink"></a></h3><p>Persefone uses <a href="https://makie.org/">Makie</a> as a plotting library to generate its output graphics. Additionally, Persefone Desktop uses <a href="https://github.com/JuliaGraphics/QML.jl">QML.jl</a> to create its graphical user interface.</p><h3 id="Unitful.jl"><a class="docs-heading-anchor" href="#Unitful.jl">Unitful.jl</a><a id="Unitful.jl-1"></a><a class="docs-heading-anchor-permalink" href="#Unitful.jl" title="Permalink"></a></h3><p>Throughout the source code, variables can be tagged with their appropriate units using the <a href="https://painterqubits.github.io/Unitful.jl/stable/">Unitful.jl</a> library. This makes the code easier to understand, and also allows automatic unit conversion:</p><pre><code class="language-julia hljs">julia> 1ha == 10000m² -true - -julia> 2km |> m -2000 m - -julia> 2km / 10m -200.0</code></pre><p>Within Persefone, the following units and dimensions have been imported for direct usage: <code>cm</code>, <code>m</code>, <code>km</code>, <code>m²</code>, <code>ha</code>, <code>km²</code>, <code>mg</code>, <code>g</code>, <code>kg</code>, <code>Length</code>, <code>Area</code>, <code>Mass</code>.</p><h3 id="Dates"><a class="docs-heading-anchor" href="#Dates">Dates</a><a id="Dates-1"></a><a class="docs-heading-anchor-permalink" href="#Dates" title="Permalink"></a></h3><p>Persefone expands the default <a href="https://docs.julialang.org/en/v1/stdlib/Dates/">Dates</a> library with the <a href="simulation.html#Persefone.AnnualDate"><code>AnnualDate</code></a> type, which can be used to store dates that recur every year (e.g. migration or harvest). <code>AnnualDates</code> can be compared and added/subtracted just as normal dates. Use <a href="@ref"><code>thisyear()</code></a> to convert an <code>AnnualDate</code> to a <code>Date</code>.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="skylark.html">« Skylark</a><a class="docs-footer-nextpage" href="adapting.html">Adapting Persefone »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/energy.html b/docs/build/energy.html deleted file mode 100644 index 583a07f..0000000 --- a/docs/build/energy.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Dynamic Energy Budgets · Persefone.jl</title><meta name="title" content="Dynamic Energy Budgets · Persefone.jl"/><meta property="og:title" content="Dynamic Energy Budgets · Persefone.jl"/><meta property="twitter:title" content="Dynamic Energy Budgets · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href="energy.html">Dynamic Energy Budgets</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="energy.html">Dynamic Energy Budgets</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/energy.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Dynamic-Energy-Budgets"><a class="docs-heading-anchor" href="#Dynamic-Energy-Budgets">Dynamic Energy Budgets</a><a id="Dynamic-Energy-Budgets-1"></a><a class="docs-heading-anchor-permalink" href="#Dynamic-Energy-Budgets" title="Permalink"></a></h1><p><strong>NOTE: currently not used.</strong></p><p>Persefone's nature module uses Kooijman's Dynamic Energy Budget theory to model energy flows within individuals.</p><p><img src="assets/deb.png" alt=""The standard model of the Dynamic Energy Budget theory""/></p><p><em>The standard model of the Dynamic Energy Budget theory. (Fig. 1 from Sousa et al. (2010).)</em></p><ul><li><p><a href="https://doi.org/10.1098/rstb.2010.0166">Sousa et al. (2010)</a>. Dynamic energy budget theory restores coherence in biology. Philosophical Transactions of the Royal Society B: Biological Sciences, 365(1557), 3413–3428.</p></li><li><p><a href="https://www.researchgate.net/profile/Edgar-Meza-3/post/Is_there_a_toxicokinetic_model_for_daphnia_magna_or_other_zooplankton/attachment/59d62cf579197b807798b396/AS%3A348547653357569%401460111644286/download/Dynamic+Energy+Budget+theory+-+Kooijman.pdf">Kooijman, S. A. L. M. (2009)</a>. Dynamic energy and mass budgets in biological systems (3rd ed). Cambridge University Press.</p></li><li><p><a href="https://doi.org/10.1111/2041-210x.12002">Sibly et al. (2013)</a>. Representing the acquisition and use of energy by individuals in agent-based models of animal populations. Methods in Ecology and Evolution, 4(2), 151–161.</p></li></ul><h2 id="energy.jl"><a class="docs-heading-anchor" href="#energy.jl">energy.jl</a><a id="energy.jl-1"></a><a class="docs-heading-anchor-permalink" href="#energy.jl" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.DEBparameters" href="#Persefone.DEBparameters"><code>Persefone.DEBparameters</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">DEBparameters</code></pre><p>An immutable struct to save the parameter list for a species' Dynamic Energy Budget model. (See Sousa et al., 2010.)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L13-L18">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.EnergyBudget" href="#Persefone.EnergyBudget"><code>Persefone.EnergyBudget</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">EnergyBudget</code></pre><p>This struct represents an individual's energy balance, as conceptualised by the Dynamic Energy Budget theory. Upon assimilation, energy is first stored as biomass in a reserve buffer, before being used for maintenance, growth, and reproduction. (Note that this is a simplified model form which ignores maturity as a separate buffer.)</p><p><strong>Sources:</strong></p><ul><li>Malishev & Kramer-Schadt (2021). Movement, models, and metabolism: Individual-based energy budget models as next-generation extensions for predicting animal movement outcomes across scales. Ecological Modelling, 441, 109413. https://doi.org/10.1016/j.ecolmodel.2020.109413</li><li>Marques et al. (2018). The AmP project: Comparing species on the basis of dynamic energy budget parameters. PLOS Computational Biology,14(5), e1006100. https://doi.org/10.1371/journal.pcbi.1006100</li><li>Sibly et al. (2013). Representing the acquisition and use of energy by individuals in agent-based models of animal populations. Methods in Ecology and Evolution, 4(2), 151–161. https://doi.org/10.1111/2041-210x.12002</li><li>Sousa et al. (2010). Dynamic energy budget theory restores coherence in biology. Philosophical Transactions of the Royal Society B: Biological Sciences, 365(1557), 3413–3428. https://doi.org/10.1098/rstb.2010.0166</li><li>Kooijman, S. A. L. M. (2009). Dynamic energy and mass budgets in biological systems (3rd ed). Cambridge University Press. https://www.researchgate.net/profile/Edgar-Meza-3/post/Is<em>there</em>a<em>toxicokinetic</em>model<em>for</em>daphnia<em>magna</em>or<em>other</em>zooplankton/attachment/59d62cf579197b807798b396/AS%3A348547653357569%401460111644286/download/Dynamic+Energy+Budget+theory+-+Kooijman.pdf</li><li><em>compare with:</em> Brown et al. (2004). Toward a metabolic theory of ecology. Ecology, 85(7), 1771–1789. https://doi.org/10.1890/03-9000</li></ul></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L34-L50">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.feed!-Tuple{Float64, Persefone.EnergyBudget}" href="#Persefone.feed!-Tuple{Float64, Persefone.EnergyBudget}"><code>Persefone.feed!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">feed!(quantity, energybudget)</code></pre><p>Consume a given quantity of food. Expands the energy reserve by an amount determined by the assimilation rate. Returns <code>true</code> if successful, <code>false</code> if the reserve is already full.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L211-L217">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.growthrate-Tuple{Persefone.EnergyBudget}" href="#Persefone.growthrate-Tuple{Persefone.EnergyBudget}"><code>Persefone.growthrate</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">growthrate(energybudget)</code></pre><p>Calculate the specific growth rate r. (Internal function.)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L119-L124">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.investmentratio-Tuple{Persefone.EnergyBudget}" href="#Persefone.investmentratio-Tuple{Persefone.EnergyBudget}"><code>Persefone.investmentratio</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">investmentratio(energybudget)</code></pre><p>Calculate the investment ratio g. (Internal function.)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L103-L108">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.maturitymaintenance-Tuple{Persefone.EnergyBudget}" href="#Persefone.maturitymaintenance-Tuple{Persefone.EnergyBudget}"><code>Persefone.maturitymaintenance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">maturitymaintenance(energybudget)</code></pre><p>Calculate the specific maturity maintenance k_J. (Internal function.)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L75-L80">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.mobilisation-Tuple{Persefone.EnergyBudget}" href="#Persefone.mobilisation-Tuple{Persefone.EnergyBudget}"><code>Persefone.mobilisation</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">mobilisation(energybudget)</code></pre><p>Calculate the mobilisation rate J_EC. (Internal function.)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L140-L145">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.reproduce!-Tuple{Persefone.EnergyBudget}" href="#Persefone.reproduce!-Tuple{Persefone.EnergyBudget}"><code>Persefone.reproduce!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">reproduce!(energybudget)</code></pre><p>If there is sufficient energy in the <code>offspring</code> buffer of an adult, produce an embryo/egg, reducing the parent energy in the process. Returns the embryo's energy budget, or <code>nothing</code> if the conditions are not met.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L238-L244">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.scaledreservedensity-Tuple{Persefone.EnergyBudget}" href="#Persefone.scaledreservedensity-Tuple{Persefone.EnergyBudget}"><code>Persefone.scaledreservedensity</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">scaledreservedensity(energybudget)</code></pre><p>Calculate the scaled reserve density e. (Internal function.)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L89-L94">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.update!-Tuple{Persefone.EnergyBudget}" href="#Persefone.update!-Tuple{Persefone.EnergyBudget}"><code>Persefone.update!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">update!(energybudget)</code></pre><p>Carry out a daily update of the energy budget. Mobilises reserves and allocates these to maintenance (prioritised), growth, and reproduction.</p><p>Return <code>true</code> if the individual has enough energy to survive, or <code>false</code> if the reserve is empty and it starves.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L158-L166">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.volumetriclength-Tuple{Persefone.EnergyBudget}" href="#Persefone.volumetriclength-Tuple{Persefone.EnergyBudget}"><code>Persefone.volumetriclength</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">volumetriclength(energybudget)</code></pre><p>Calculate the structural length in cm based on an individual's weight (assuming a density of 1 g/cm³ to calculate volume, see Kooijman 2009).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/energy.jl#L62-L67">source</a></section></article></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/farm.html b/docs/build/farm.html deleted file mode 100644 index f03016b..0000000 --- a/docs/build/farm.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Farm submodel · Persefone.jl</title><meta name="title" content="Farm submodel · Persefone.jl"/><meta property="og:title" content="Farm submodel · Persefone.jl"/><meta property="twitter:title" content="Farm submodel · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li class="is-active"><a class="tocitem" href="farm.html">Farm submodel</a><ul class="internal"><li><a class="tocitem" href="#farm.jl"><span>farm.jl</span></a></li></ul></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Software API</a></li><li class="is-active"><a href="farm.html">Farm submodel</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="farm.html">Farm submodel</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/farm.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Farm-submodel"><a class="docs-heading-anchor" href="#Farm-submodel">Farm submodel</a><a id="Farm-submodel-1"></a><a class="docs-heading-anchor-permalink" href="#Farm-submodel" title="Permalink"></a></h1><p>Eventually, the aim is to create a full socio-economic farm decision model for Persefone. However, for the time being, we will restrict ourselves to a simple model that executes typical farm operations and crop rotations.</p><h2 id="farm.jl"><a class="docs-heading-anchor" href="#farm.jl">farm.jl</a><a id="farm.jl-1"></a><a class="docs-heading-anchor-permalink" href="#farm.jl" title="Permalink"></a></h2><p>This file is responsible for managing the farm module(s).</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.BasicFarmer" href="#Persefone.BasicFarmer"><code>Persefone.BasicFarmer</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">BasicFarmer</code></pre><p>The BasicFarmer type simply applies a set crop rotation to his fields and keeps track of income.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/farm/farm.jl#L37-L41">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.Farmer" href="#Persefone.Farmer"><code>Persefone.Farmer</code></a> — <span class="docstring-category">Type</span></header><section><div><p>This is the agent type for the farm ABM.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/farm/farm.jl#L9">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.findsetasides-Tuple{Persefone.BasicFarmer, SimulationModel}" href="#Persefone.findsetasides-Tuple{Persefone.BasicFarmer, SimulationModel}"><code>Persefone.findsetasides</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">findsetasides(farmer, model)</code></pre><p>Return a vector of field IDs that this farmer should keep fallow to satisfy the configured set-aside rules.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/farm/farm.jl#L108-L113">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initbasicfarms!-Tuple{SimulationModel}" href="#Persefone.initbasicfarms!-Tuple{SimulationModel}"><code>Persefone.initbasicfarms!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initbasicfarms!(model)</code></pre><p>Initialise the basic farm model. All fields are controlled by a single farmer actor and are assigned as grassland, set-aside, or arable land with a crop rotation.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/farm/farm.jl#L80-L85">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initfarms!-Tuple{SimulationModel}" href="#Persefone.initfarms!-Tuple{SimulationModel}"><code>Persefone.initfarms!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initfarms!(model)</code></pre><p>Initialise the model with a set of farm agents, depending on the configured farm model.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/farm/farm.jl#L15-L19">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.stepagent!-Tuple{Persefone.BasicFarmer, SimulationModel}" href="#Persefone.stepagent!-Tuple{Persefone.BasicFarmer, SimulationModel}"><code>Persefone.stepagent!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">stepagent!(farmer, model)</code></pre><p>Update a farmer by one day. Cycle through all fields and see what management is needed.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/farm/farm.jl#L51-L55">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="crops.html">« Crop submodel</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/gis.html b/docs/build/gis.html deleted file mode 100644 index 944accf..0000000 --- a/docs/build/gis.html +++ /dev/null @@ -1,29 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Maps and weather data · Persefone.jl</title><meta name="title" content="Maps and weather data · Persefone.jl"/><meta property="og:title" content="Maps and weather data · Persefone.jl"/><meta property="twitter:title" content="Maps and weather data · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li class="is-active"><a class="tocitem" href="gis.html">Maps and weather data</a><ul class="internal"><li><a class="tocitem" href="#Land-cover-maps"><span>Land cover maps</span></a></li><li><a class="tocitem" href="#Field-ID-maps"><span>Field ID maps</span></a></li><li><a class="tocitem" href="#Weather-data"><span>Weather data</span></a></li></ul></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Developer guide</a></li><li class="is-active"><a href="gis.html">Maps and weather data</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="gis.html">Maps and weather data</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/gis.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Maps-and-weather-data"><a class="docs-heading-anchor" href="#Maps-and-weather-data">Maps and weather data</a><a id="Maps-and-weather-data-1"></a><a class="docs-heading-anchor-permalink" href="#Maps-and-weather-data" title="Permalink"></a></h1><p>Persefone currently requires two separate map input files: one for land cover, the other for field geometry. Additionally, a weather input file is needed. This documents describe how to obtain and process the data needed for each of these.</p><h2 id="Land-cover-maps"><a class="docs-heading-anchor" href="#Land-cover-maps">Land cover maps</a><a id="Land-cover-maps-1"></a><a class="docs-heading-anchor-permalink" href="#Land-cover-maps" title="Permalink"></a></h2><p>Land cover maps for Germany at 10m resolution can be obtained from <a href="https://data.mundialis.de/geonetwork/srv/eng/catalog.search#/metadata/9246503f-6adf-460b-a31e-73a649182d07">Mundialis</a>. These are generated annually from Sentinel data and comprise the following land cover classes:</p><pre><code class="nohighlight hljs">10: forest -20: low vegetation -30: water -40: built-up -50: bare soil -60: agriculture</code></pre><p>To create a Persefone map input file, you need to crop the national Mundialis map to the extent that you want to simulate (suggestion: approx. 10x10km is a reasonable size).</p><p>To do so, download the Mundialis map and import it into QGIS. Then create a new vector layer and create a rectangle feature to delimit the extent of your region. Then go to <code>Raster -> Extraction -> Clip Raster by Extent</code>. Select the Mundialis map as the input layer, set the clipping extent by choosing your region vector layer under <code>Calculate from Layer</code> and specify the output file name before clicking <code>Run</code>. This will generate a TIF file that you can pass to Persefone as the <code>landcovermap</code> parameter.</p><h2 id="Field-ID-maps"><a class="docs-heading-anchor" href="#Field-ID-maps">Field ID maps</a><a id="Field-ID-maps-1"></a><a class="docs-heading-anchor-permalink" href="#Field-ID-maps" title="Permalink"></a></h2><p>In addition to the land cover data explained above, Persefone also needs information about agricultural field boundaries in order to assign these to the farming agents. Unfortunately, getting this is rather more complicated.</p><p>In the EU, every country runs a Land Parcel Information System (LPIS) to administer CAP payments. In Germany, this is called InVeKoS and is run by the Länder. For example, you can view and download the InVeKoS data for Thüringen <a href="https://thueringenviewer.thueringen.de/thviewer/invekos.html">here</a>. This gives you a vector layer which can be loaded into QGIS. However, it needs to be converted to a raster layer and cropped to your region extent before it can be used in Persefone.</p><p>The first thing to do is to make sure that the vector layer has a numeric (!) field with a unique identifier for each field block (check the attribute table). The Thüringen data has the FBI ("Feldblockident") field, but this is a string value and therefore not usable by the rasteriser. So, we set the vector layer to edit mode, open the field calculator, enter the information for a new field (call it "FID" and set it to a 32-bit integer), and enter <code>@row_number</code> in the expression field. Then save the layer and close the calculator.</p><p>Secondly, you need to filter out all non-field/non-grassland plot types. (LPIS also has data on forests and various landscape elements that are not relevant to our use case.) Assuming you're working with the Thüringen InVeKoS data (other data sets may have a different structure), right-click on the layer name in QGIS' layer overview and click on "Filter...". Then, enter this expression in the query builder: <code>"BNK" = 'AL' OR "BNK" = 'GL'</code> and click "OK". This will select only field and grassland plots.</p><p>Next, open the rasteriser (<code>Raster -> Conversion -> Rasterize</code>). Select your FID field as the "Field to use for a burn-in value", and your land cover map (as created above - this ensures the two layers match) as the output extent. Make sure the "fixed value to burn" is "Not set". Then choose "Georeferenced units" as the "Out raster size units" and set horizontal and vertical resolution to 10.0. In the advanced parameters, set the output data type to <code>UInt32</code>. Finally, enter an output file name and run. The resulting TIF file can be passed to Persefone as the <code>farmfieldmap</code> parameter.</p><h2 id="Weather-data"><a class="docs-heading-anchor" href="#Weather-data">Weather data</a><a id="Weather-data-1"></a><a class="docs-heading-anchor-permalink" href="#Weather-data" title="Permalink"></a></h2><p>Currently, Persefone uses historical weather data from the closes weather station as its weather input. (In future, this may be changed to a more detailed raster input, which could then also provide future weather predictions under climate change.) Weather data can be downloaded from the <a href="https://www.dwd.de/DE/leistungen/cdc/cdc_ueberblick-klimadaten.html?nn=16102">German weather service (DWD)</a>. The relevant data are in the folder <a href="https://opendata.dwd.de/climate_environment/CDC/observations_germany/climate/daily/kl/historical/"><code>daily/kl/historical</code></a>.</p><p>The description of this data set and the list of weather stations can be found in the Persefone repository, in the <code>docs</code> folder (or downloaded from the link above). Using the list of weather stations, select the one closest to the area of study. Note that not all stations were continuously in operation; make sure that the selected station covers the years of interest.</p><ul><li><strong>Region Jena:</strong> station number 02444 ("Jena (Sternwarte)")</li><li><strong>Region Eichsfeld:</strong></li><li><strong>Region Thüringer Becken:</strong> station number 00896 ("Dachwig")</li><li><strong>Region Hohenlohe:</strong></li><li><strong>Region Bodensee:</strong></li><li><strong>Region Nördlicher Oberrhein:</strong></li></ul><p>From the link above, download the ZIP file associated with the station number. Check the included meta-data if there is any important missing data, or other relevant information (e.g. the station moved position).</p><p>Then use <code>data/extract_weather_data.R</code> to process the data into the format needed by Persefone:</p><pre><code class="language-R hljs">library(tidyverse) - -## replace this with the correct file name -weatherfile = "produkt_klima_tag_18210101_20221231_02444.txt" - -data = read.table(weatherfile, sep=";", header=T) - -weather = data %>% - ## drop values before 2000 to save space - filter(MESS_DATUM>=20000101) %>% - ## select relevant variables and convert place-holder values to NA - select(MESS_DATUM, FM, RSK, SDK, VPM, TMK, TXK, TNK) %>% - mutate(date=MESS_DATUM, MESS_DATUM=NULL, - mean_windspeed=na_if(FM, -999), FM=NULL, - precipitation=na_if(RSK, -999), RSK=NULL, - sunshine_hours=na_if(SDK, -999), SDK=NULL, - mean_vapour_pressure=na_if(VPM, -999), VPM=NULL, - mean_temperature=na_if(TMK, -999), TMK=NULL, - max_temperature=na_if(TXK, -999), TXK=NULL, - min_temperature=na_if(TNK, -999), TNK=NULL) - -## replace with the desired file name -write.csv(weather, file="weather_jena.csv", row.names=FALSE)</code></pre><p><em>Note: for calculating the reference evapotranspiration ET_0 (needed for the AquaCrop model), use the <a href="https://www.fao.org/3/X0490E/x0490e06.htm#equation">FAO Penman-Monteith equation</a>.</em></p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="architecture.html">« Source code architecture</a><a class="docs-footer-nextpage" href="species-dsl.html">Defining new species »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/gui.html b/docs/build/gui.html deleted file mode 100644 index ecfd743..0000000 --- a/docs/build/gui.html +++ /dev/null @@ -1,12 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Graphical User Interface · Persefone.jl</title><meta name="title" content="Graphical User Interface · Persefone.jl"/><meta property="og:title" content="Graphical User Interface · Persefone.jl"/><meta property="twitter:title" content="Graphical User Interface · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li class="is-active"><a class="tocitem" href="gui.html">Graphical User Interface</a><ul class="internal"><li><a class="tocitem" href="#Quick-start"><span>Quick start</span></a></li><li><a class="tocitem" href="#Running-from-the-repo"><span>Running from the repo</span></a></li><li><a class="tocitem" href="#User-interface"><span>User interface</span></a></li></ul></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">User guide</a></li><li class="is-active"><a href="gui.html">Graphical User Interface</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="gui.html">Graphical User Interface</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/gui.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Graphical-User-Interface"><a class="docs-heading-anchor" href="#Graphical-User-Interface">Graphical User Interface</a><a id="Graphical-User-Interface-1"></a><a class="docs-heading-anchor-permalink" href="#Graphical-User-Interface" title="Permalink"></a></h1><p>Due to the computational demands of simulating many individuals at high temporal and spatial resolution, Persefone.jl is primarily designed to be run non-interactively on an HPC. However, to allow interactive exploratory simulations to be conducted while learning or developing the model, a graphical user interface is available as an additional package: <a href="https://git.idiv.de/persefone/persefone-desktop">Persefone Desktop</a>.</p><h2 id="Quick-start"><a class="docs-heading-anchor" href="#Quick-start">Quick start</a><a id="Quick-start-1"></a><a class="docs-heading-anchor-permalink" href="#Quick-start" title="Permalink"></a></h2><p><em>Follow these instructions if you simply want to try out the software as a user. If you want to play around with the source code, see the next section.</em></p><ol><li>Download the <a href="https://julialang.org/downloads/">Julia programming language</a> and install it on </li></ol><p>your computer.</p><ol><li>Start Julia. This should launch a commandline interface/REPL.</li><li>Execute the following commands (copy-and-paste should work):</li></ol><pre><code class="language-julia hljs">using Pkg -Pkg.add(url="https://git.idiv.de/persefone/persefone-model.git") -Pkg.add(url="https://git.idiv.de/persefone/persefone-desktop.git") -using PersefoneDesktop -ENV["QSG_RENDER_LOOP"] = "basic" # only needed on Windows -launch()</code></pre><h2 id="Running-from-the-repo"><a class="docs-heading-anchor" href="#Running-from-the-repo">Running from the repo</a><a id="Running-from-the-repo-1"></a><a class="docs-heading-anchor-permalink" href="#Running-from-the-repo" title="Permalink"></a></h2><p><em>Follow these instructions if you want to get to grips with the source code. For more detailed installation instructions, see <a href="developing.html">here</a>.</em></p><p><strong>To install:</strong> Install <a href="https://julialang.org/downloads/">Julia</a> and download/clone the <a href="https://git.idiv.de/persefone/persefone-desktop">repository</a>. Open a Julia REPL in the downloaded folder and execute the following to install all dependencies:</p><pre><code class="language-julia hljs">using Pkg -Pkg.activate(".") -Pkg.instantiate()</code></pre><p><strong>To run:</strong> Run <code>desktop.jl</code>. Alternatively, open a Julia REPL in this folder and run:</p><pre><code class="language-julia hljs">using Pkg -Pkg.activate(".") -using PersefoneDesktop -launch()</code></pre><p><em>Note:</em> Due to the necessary pre-compilation done by Julia, installing and launching the application can take quite a long time. (Start-up time with <code>desktop.jl</code> is currently about 2 minutes.) We will reduce this as much as possible in future releases.</p><h2 id="User-interface"><a class="docs-heading-anchor" href="#User-interface">User interface</a><a id="User-interface-1"></a><a class="docs-heading-anchor-permalink" href="#User-interface" title="Permalink"></a></h2><p><img src="assets/screenshot.png" alt="Persefone.jl Desktop screenshot"/></p><p>The main window component is the <strong>map view</strong>. This displays a land cover map of the simulated region: dark green are forests, light green grassland, yellow fields, red built-up areas and blue water. On it, little circles show the position of individual animals, with different species denoted by different colours.</p><h3 id="Control-bar"><a class="docs-heading-anchor" href="#Control-bar">Control bar</a><a id="Control-bar-1"></a><a class="docs-heading-anchor-permalink" href="#Control-bar" title="Permalink"></a></h3><ul><li><p><strong>Back button:</strong> Rewind the simulation by one day.</p></li><li><p><strong>Step button:</strong> Advance the simulation by one day.</p></li><li><p><strong>Run button:</strong> Run the simulation until the button is pressed again or the end date is reached.</p></li><li><p><strong>Progress bar:</strong> Shows the percentage of time elapsed between the start and end dates of the simulation.</p></li><li><p><strong>Speed slider:</strong> Set the time delay between each simulation step when running.</p></li><li><p><strong>Date:</strong> Shows the simulation date currently displayed on the map.</p></li></ul><h3 id="Menu-bar"><a class="docs-heading-anchor" href="#Menu-bar">Menu bar</a><a id="Menu-bar-1"></a><a class="docs-heading-anchor-permalink" href="#Menu-bar" title="Permalink"></a></h3><p><strong>Simulation:</strong></p><ul><li><p><strong>New simulation:</strong> Reset the model and start over.</p></li><li><p><strong>Configure simulation:</strong> Change the model settings (<em>not yet implemented</em>).</p></li><li><p><strong>Load saved state:</strong> Load a model object file saved by a previous simulation run.</p></li><li><p><strong>Save current state:</strong> Save a model object file for later use.</p></li><li><p><strong>Quit:</strong> Close the application.</p></li></ul><p><strong>Data:</strong></p><ul><li><p><strong>Show population graph:</strong> Show a window with a graph of population sizes over time in the current model run.</p></li><li><p><strong>Save simulation output:</strong> Save the model output data to file (saves both raw CSV data and generated graphics).</p></li></ul><p><strong>Help:</strong></p><ul><li><p><strong>Documentation:</strong> Open the Persefone.jl online documentation in a browser.</p></li><li><p><strong>Website:</strong> Open the main Persefone.jl website in a browser.</p></li><li><p><strong>About:</strong> Show a window with core information about the application.</p></li></ul></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="using.html">« The Persefone.jl Package</a><a class="docs-footer-nextpage" href="config.html">Configuration »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/index.html b/docs/build/index.html deleted file mode 100644 index 912bace..0000000 --- a/docs/build/index.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Introduction · Persefone.jl</title><meta name="title" content="Introduction · Persefone.jl"/><meta property="og:title" content="Introduction · Persefone.jl"/><meta property="twitter:title" content="Introduction · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li class="is-active"><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href="index.html">Introduction</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="index.html">Introduction</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/index.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><p><a href="https://persefone-model.eu"><img src="assets/persefonejl_logo_v3_splash.png" alt="Persefone.jl splash screen"/></a></p><h1 id="Introduction"><a class="docs-heading-anchor" href="#Introduction">Introduction</a><a id="Introduction-1"></a><a class="docs-heading-anchor-permalink" href="#Introduction" title="Permalink"></a></h1><p><a href="https://persefone-model.eu">Persefone.jl</a> models agricultural practice and how it impacts animal species at a landscape scale. It includes a farm submodel, a crop growth submodel, and individual-based models of multiple indicator species. Its aim is to investigate how changes in farm operations (e.g. through policy changes in the CAP) influence biodiversity.</p><p>The model is open-source software available on <a href="https://git.idiv.de/persefone/persefone-model">Gitlab</a>.</p><p><em>This documentation was last updated on 2024-09-11 for <strong>Persefone.jl v0.5.5</strong> (commit <a href="https://git.idiv.de/persefone/persefone-model/-/commit/6b3aee6">6b3aee6</a>).</em></p></article><nav class="docs-footer"><a class="docs-footer-nextpage" href="using.html">The Persefone.jl Package »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/io.html b/docs/build/io.html deleted file mode 100644 index 67c388f..0000000 --- a/docs/build/io.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Input and Output · Persefone.jl</title><meta name="title" content="Input and Output · Persefone.jl"/><meta property="og:title" content="Input and Output · Persefone.jl"/><meta property="twitter:title" content="Input and Output · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li class="is-active"><a class="tocitem" href="io.html">Input and Output</a><ul class="internal"><li><a class="tocitem" href="#input.jl"><span>input.jl</span></a></li><li><a class="tocitem" href="#output.jl"><span>output.jl</span></a></li><li><a class="tocitem" href="#makieplots.jl"><span>makieplots.jl</span></a></li></ul></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Software API</a></li><li class="is-active"><a href="io.html">Input and Output</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="io.html">Input and Output</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/io.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Input-and-Output"><a class="docs-heading-anchor" href="#Input-and-Output">Input and Output</a><a id="Input-and-Output-1"></a><a class="docs-heading-anchor-permalink" href="#Input-and-Output" title="Permalink"></a></h1><p>These functions are responsible for reading in all model configurations (passed by config file or commandline), administrating them during a run, and printing or plotting any output.</p><h2 id="input.jl"><a class="docs-heading-anchor" href="#input.jl">input.jl</a><a id="input.jl-1"></a><a class="docs-heading-anchor-permalink" href="#input.jl" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.AVAILABLE_CROPMODELS" href="#Persefone.AVAILABLE_CROPMODELS"><code>Persefone.AVAILABLE_CROPMODELS</code></a> — <span class="docstring-category">Constant</span></header><section><div><p>The crop models that can be used in the simulation.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/input.jl#L20-L22">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.PARAMFILE" href="#Persefone.PARAMFILE"><code>Persefone.PARAMFILE</code></a> — <span class="docstring-category">Constant</span></header><section><div><p>The file that stores all default parameters: <code>src/parameters.toml</code></p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/input.jl#L10-L12">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.flattenTOML-Tuple{Any}" href="#Persefone.flattenTOML-Tuple{Any}"><code>Persefone.flattenTOML</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">flattenTOML(dict)</code></pre><p>An internal utility function to convert the two-dimensional dict returned by <code>TOML.parsefile()</code> into a one-dimensional dict, so that instead of writing <code>settings["domain"]["param"]</code> one can use <code>settings["domain.param"]</code>. Can be reversed with <a href="io.html#Persefone.prepareTOML-Tuple{Any}"><code>prepareTOML</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/input.jl#L132-L139">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.getsettings" href="#Persefone.getsettings"><code>Persefone.getsettings</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">getsettings(configfile, userparams=Dict())</code></pre><p>Combines all configuration options to produce a single settings dict. Precedence: function arguments - commandline parameters - user config file - default values</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/input.jl#L43-L48">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.loadmodelobject-Tuple{String}" href="#Persefone.loadmodelobject-Tuple{String}"><code>Persefone.loadmodelobject</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">loadmodelobject(fullfilename)</code></pre><p>Deserialise a model object that was previously saved with <code>[savemodelobject](@ref)</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/input.jl#L187-L191">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.parsecommandline-Tuple{}" href="#Persefone.parsecommandline-Tuple{}"><code>Persefone.parsecommandline</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">parsecommandline()</code></pre><p>Certain software parameters can be set via the commandline.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/input.jl#L150-L154">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.preprocessparameters-Tuple{Dict{String, Any}, String}" href="#Persefone.preprocessparameters-Tuple{Dict{String, Any}, String}"><code>Persefone.preprocessparameters</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">preprocessparameters(settings)</code></pre><p>Take the raw input parameters and process them where necessary (e.g. convert types or perform checks). This is a helper function for <a href="io.html#Persefone.getsettings"><code>getsettings</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/input.jl#L82-L87">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@param-Tuple{Any}" href="#Persefone.@param-Tuple{Any}"><code>Persefone.@param</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@param(domainparam)</code></pre><p>Return a configuration parameter from the global settings. The argument should be in the form <code><domain>.<parameter></code>, for example <code>@param(core.outdir)</code>. Possible values for <code><domain></code> are <code>core</code>, <code>nature</code>, <code>farm</code>, or <code>crop</code>. For a full list of parameters, see <code>src/parameters.toml</code>.</p><p>Note: this macro only works in a context where the <code>model</code> object is available!</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/input.jl#L25-L36">source</a></section></article><h2 id="output.jl"><a class="docs-heading-anchor" href="#output.jl">output.jl</a><a id="output.jl-1"></a><a class="docs-heading-anchor-permalink" href="#output.jl" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.LOGFILE" href="#Persefone.LOGFILE"><code>Persefone.LOGFILE</code></a> — <span class="docstring-category">Constant</span></header><section><div><p>Log output is saved to <code>simulation.log</code> in the output directory</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L8">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.RECORDDIR" href="#Persefone.RECORDDIR"><code>Persefone.RECORDDIR</code></a> — <span class="docstring-category">Constant</span></header><section><div><p>All input data are copied to the <code>inputs</code> folder within the output directory</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L11">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.DataOutput" href="#Persefone.DataOutput"><code>Persefone.DataOutput</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">DataOutput</code></pre><p>A struct for organising model output. This is used to collect model data in an in-memory dataframe or for CSV output. Submodels can register their own output functions using <a href="io.html#Persefone.newdataoutput!"><code>newdataoutput!</code></a>.</p><p>Struct fields: - frequency: how often to call the output function (daily/monthly/yearly/end/never) - databuffer: a vector of vectors that temporarily saves data before it is stored permanently or written to file - datastore: a data frame that stores data until the end of the run - outputfunction: a function that takes a model object and returns data values to record (formatted as a vector of vectors) - plotfunction: a function that takes a model object and returns a Makie figure object (optional)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L150-L163">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.createdatadir-Tuple{String, Union{Bool, String}}" href="#Persefone.createdatadir-Tuple{String, Union{Bool, String}}"><code>Persefone.createdatadir</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">createdatadir(outdir, overwrite)</code></pre><p>Creates the output directory, dealing with possible conflicts.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L17-L21">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.data-Tuple{DataOutput}" href="#Persefone.data-Tuple{DataOutput}"><code>Persefone.data</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Retrieve the data stored in a DataOutput (assumes <code>core.storedata</code> is true).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L172">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.modellogger" href="#Persefone.modellogger"><code>Persefone.modellogger</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">modellogger(loglevel, outdir, output="both")</code></pre><p>Create a logger object that writes output to screen and/or a logfile. This object is stored as <code>model.logger</code> and can then be used with <code>with_logger()</code>. Note: requires <a href="io.html#Persefone.createdatadir-Tuple{String, Union{Bool, String}}"><code>createdatadir</code></a> to be run first.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L39-L45">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.newdataoutput!" href="#Persefone.newdataoutput!"><code>Persefone.newdataoutput!</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">newdataoutput!(model, name, header, frequency, outputfunction, plotfunction)</code></pre><p>Create and register a new data output. This function must be called by all submodels that want to have their output functions called regularly.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L178-L183">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.outputdata" href="#Persefone.outputdata"><code>Persefone.outputdata</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">outputdata(model, force=false)</code></pre><p>Cycle through all registered data outputs and activate them according to their configured frequency. If <code>force</code> is <code>true</code>, activate all outputs regardless of their configuration.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L206-L212">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.prepareTOML-Tuple{Any}" href="#Persefone.prepareTOML-Tuple{Any}"><code>Persefone.prepareTOML</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">prepareTOML(dict)</code></pre><p>An internal utility function to re-convert the one-dimensional dict created by <a href="io.html#Persefone.flattenTOML-Tuple{Any}"><code>flattenTOML</code></a> into the two-dimensional dict needed by <code>TOML.print</code>, and convert any data types into TOML-compatible types where necessary.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L127-L133">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.record!-Tuple{SimulationModel, String, Vector}" href="#Persefone.record!-Tuple{SimulationModel, String, Vector}"><code>Persefone.record!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">record!(model, outputname, data)</code></pre><p>Append an observation vector to the given output.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L247-L251">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.saveinputfiles-Tuple{SimulationModel}" href="#Persefone.saveinputfiles-Tuple{SimulationModel}"><code>Persefone.saveinputfiles</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">saveinputfiles(model)</code></pre><p>Copy all input files into the output directory, including the actual parameter settings used. This allows replicating a run in future.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L82-L87">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.savemodelobject-Tuple{SimulationModel, String}" href="#Persefone.savemodelobject-Tuple{SimulationModel, String}"><code>Persefone.savemodelobject</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">savemodelobject(model, filename)</code></pre><p>Serialise a model object and save it to file for later reference. Includes the current model and Julia versions for compatibility checking.</p><p>WARNING: produces large files (>100 MB) and takes a while to execute.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L294-L301">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.visualiseoutput-Tuple{SimulationModel}" href="#Persefone.visualiseoutput-Tuple{SimulationModel}"><code>Persefone.visualiseoutput</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">visualiseoutput(model)</code></pre><p>Cycle through all data outputs and call their respective plot functions, saving each figure to file.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L276-L281">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.withtestlogger-Tuple{SimulationModel}" href="#Persefone.withtestlogger-Tuple{SimulationModel}"><code>Persefone.withtestlogger</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">withtestlogger(model)</code></pre><p>Replace the model logger with the currently active logger. This is intended to be used in the testsuite to circumvent a <a href="https://github.com/JuliaLang/julia/issues/48456">Julia issue</a>, where <code>@test_logs</code> doesn't work with local loggers.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L68-L74">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@data-Tuple{Any}" href="#Persefone.@data-Tuple{Any}"><code>Persefone.@data</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@data(outputname)</code></pre><p>Return the data stored in the given output (assumes <code>core.storedata</code> is true). Only use in scopes where <code>model</code> is available.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L266-L271">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@record-Tuple" href="#Persefone.@record-Tuple"><code>Persefone.@record</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@record(outputname, data)</code></pre><p>Record an observation / data point. Only use in scopes where <code>model</code> is available.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/output.jl#L257-L261">source</a></section></article><h2 id="makieplots.jl"><a class="docs-heading-anchor" href="#makieplots.jl">makieplots.jl</a><a id="makieplots.jl-1"></a><a class="docs-heading-anchor-permalink" href="#makieplots.jl" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.croptrends-Tuple{SimulationModel}" href="#Persefone.croptrends-Tuple{SimulationModel}"><code>Persefone.croptrends</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">croptrends(model)</code></pre><p>Plot a dual line graph of cropped area and average plant height per crop over time. Returns a Makie figure object.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/analysis/makieplots.jl#L128-L133">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.datetickmarks-Tuple{Any}" href="#Persefone.datetickmarks-Tuple{Any}"><code>Persefone.datetickmarks</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">datetickmarks(dates)</code></pre><p>Given a vector of dates, construct a selection to use as tick mark locations. Helper function for <code>[populationtrends](@ref)</code></p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/analysis/makieplots.jl#L161-L166">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.populationtrends-Tuple{SimulationModel}" href="#Persefone.populationtrends-Tuple{SimulationModel}"><code>Persefone.populationtrends</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">populationtrends(model)</code></pre><p>Plot a line graph of population sizes of each species over time. Returns a Makie figure object.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/analysis/makieplots.jl#L50-L55">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.skylarkpopulation-Tuple{SimulationModel}" href="#Persefone.skylarkpopulation-Tuple{SimulationModel}"><code>Persefone.skylarkpopulation</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">skylarkpopulation(model)</code></pre><p>Plot a line graph of total population size and individual demographics of skylarks over time. Returns a Makie figure object.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/analysis/makieplots.jl#L74-L79">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.skylarkstats-Tuple{SimulationModel}" href="#Persefone.skylarkstats-Tuple{SimulationModel}"><code>Persefone.skylarkstats</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">skylarkstats(model)</code></pre><p>Plot various statistics from the skylark model: nesting habitat, territory size, mortality.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/analysis/makieplots.jl#L98-L102">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.visualisemap" href="#Persefone.visualisemap"><code>Persefone.visualisemap</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">visualisemap(model, date, landcover)</code></pre><p>Draw the model's land cover map and plot all individuals as points on it at the specified date. If no date is passed, use the last date for which data are available. Optionally, you can pass a landcover map image (this is needed to reduce the frequency of disk I/O for Persefone Desktop). Returns a Makie figure object.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/analysis/makieplots.jl#L6-L14">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="simulation.html">« Simulation</a><a class="docs-footer-nextpage" href="nature.html">Nature submodel »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/management.html b/docs/build/management.html deleted file mode 100644 index 994a8e1..0000000 --- a/docs/build/management.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Farm management · Persefone.jl</title><meta name="title" content="Farm management · Persefone.jl"/><meta property="og:title" content="Farm management · Persefone.jl"/><meta property="twitter:title" content="Farm management · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li class="is-active"><a class="tocitem" href="management.html">Farm management</a><ul class="internal"><li><a class="tocitem" href="#Crop-rotations-and-management"><span>Crop rotations and management</span></a></li><li><a class="tocitem" href="#Environmental-regulations"><span>Environmental regulations</span></a></li></ul></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Scientific documentation</a></li><li class="is-active"><a href="management.html">Farm management</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="management.html">Farm management</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/management.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Farm-management"><a class="docs-heading-anchor" href="#Farm-management">Farm management</a><a id="Farm-management-1"></a><a class="docs-heading-anchor-permalink" href="#Farm-management" title="Permalink"></a></h1><p><em>TODO</em></p><h2 id="Crop-rotations-and-management"><a class="docs-heading-anchor" href="#Crop-rotations-and-management">Crop rotations and management</a><a id="Crop-rotations-and-management-1"></a><a class="docs-heading-anchor-permalink" href="#Crop-rotations-and-management" title="Permalink"></a></h2><h2 id="Environmental-regulations"><a class="docs-heading-anchor" href="#Environmental-regulations">Environmental regulations</a><a id="Environmental-regulations-1"></a><a class="docs-heading-anchor-permalink" href="#Environmental-regulations" title="Permalink"></a></h2></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="config.html">« Configuration</a><a class="docs-footer-nextpage" href="crop-models.html">Crop models »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/nature.html b/docs/build/nature.html deleted file mode 100644 index 11f1e24..0000000 --- a/docs/build/nature.html +++ /dev/null @@ -1,14 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Nature submodel · Persefone.jl</title><meta name="title" content="Nature submodel · Persefone.jl"/><meta property="og:title" content="Nature submodel · Persefone.jl"/><meta property="twitter:title" content="Nature submodel · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li class="is-active"><a class="tocitem" href="nature.html">Nature submodel</a><ul class="internal"><li><a class="tocitem" href="#nature.jl"><span>nature.jl</span></a></li><li><a class="tocitem" href="#macros.jl"><span>macros.jl</span></a></li><li><a class="tocitem" href="#individuals.jl"><span>individuals.jl</span></a></li><li><a class="tocitem" href="#populations.jl"><span>populations.jl</span></a></li><li><a class="tocitem" href="#ecologicaldata.jl"><span>ecologicaldata.jl</span></a></li></ul></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Software API</a></li><li class="is-active"><a href="nature.html">Nature submodel</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="nature.html">Nature submodel</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/nature.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Nature-submodel"><a class="docs-heading-anchor" href="#Nature-submodel">Nature submodel</a><a id="Nature-submodel-1"></a><a class="docs-heading-anchor-permalink" href="#Nature-submodel" title="Permalink"></a></h1><h2 id="nature.jl"><a class="docs-heading-anchor" href="#nature.jl">nature.jl</a><a id="nature.jl-1"></a><a class="docs-heading-anchor-permalink" href="#nature.jl" title="Permalink"></a></h2><p>This file is responsible for managing the animal modules.</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.Animal" href="#Persefone.Animal"><code>Persefone.Animal</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">Animal</code></pre><p>This is the generic agent type for all animals. Individual species are created using the <a href="nature.html#Persefone.@species-Tuple{Any, Any}"><code>@species</code></a> macro. In addition to user-defined, species-specific fields, all species contain the following fields:</p><ul><li><code>id</code> An integer unique identifier for this individual.</li><li><code>sex</code> male, female, or hermaphrodite.</li><li><code>parents</code> The IDs of the individual's parents.</li><li><code>pos</code> An (x, y) coordinate tuple.</li><li><code>age</code> The age of the individual in days.</li><li><code>phase</code> The update function to be called during the individual's current life phase.</li><li><code>energy</code> A <a href="@ref">DEBparameters</a> struct for calculating energy budgets.</li><li><code>offspring</code> A vector containing the IDs of an individual's children.</li><li><code>territory</code> A vector of coordinates that comprise the individual's territory.</li></ul></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/nature.jl#L12-L28">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.animalid-Tuple{Animal}" href="#Persefone.animalid-Tuple{Animal}"><code>Persefone.animalid</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">animalid(animal)</code></pre><p>A small utility function to return a string with the species name and ID of an animal.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/nature.jl#L61-L65">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.create!-Tuple{Animal, SimulationModel}" href="#Persefone.create!-Tuple{Animal, SimulationModel}"><code>Persefone.create!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">create!(animal, model)</code></pre><p>The <code>create!</code> function is called for every individual at birth or at model initialisation. Species must use <a href="nature.html#Persefone.@create-Tuple{Any, Any}"><code>@create</code></a> to define a species-specific method. This is the fall- back method, in case none is implemented for a species.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/nature.jl#L70-L76">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initnature!-Tuple{SimulationModel}" href="#Persefone.initnature!-Tuple{SimulationModel}"><code>Persefone.initnature!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initnature!(model)</code></pre><p>Initialise the model with all simulated animal populations.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/nature.jl#L91-L95">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.killallanimals!-Tuple{Any}" href="#Persefone.killallanimals!-Tuple{Any}"><code>Persefone.killallanimals!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">killallanimals!(model)</code></pre><p>Remove all animal individuals from the simulation.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/nature.jl#L128-L132">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.speciesof-Tuple{Union{Animal, Type}}" href="#Persefone.speciesof-Tuple{Union{Animal, Type}}"><code>Persefone.speciesof</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">speciesof(animal)</code></pre><p>Return the species name of this animal as a string.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/nature.jl#L31-L35">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.speciestype-Tuple{String}" href="#Persefone.speciestype-Tuple{String}"><code>Persefone.speciestype</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">speciestype(name)</code></pre><p>Return the Type of this species.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/nature.jl#L43-L47">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.stepagent!-Tuple{Animal, SimulationModel}" href="#Persefone.stepagent!-Tuple{Animal, SimulationModel}"><code>Persefone.stepagent!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">stepagent!(animal, model)</code></pre><p>Update an animal by one day, executing it's currently active phase function.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/nature.jl#L81-L85">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.updatenature!-Tuple{SimulationModel}" href="#Persefone.updatenature!-Tuple{SimulationModel}"><code>Persefone.updatenature!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">updatenature!(model)</code></pre><p>Run processes that affect all animals.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/nature.jl#L106-L110">source</a></section></article><h2 id="macros.jl"><a class="docs-heading-anchor" href="#macros.jl">macros.jl</a><a id="macros.jl-1"></a><a class="docs-heading-anchor-permalink" href="#macros.jl" title="Permalink"></a></h2><p>This file contains all the macros that can be used in the species DSL.</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@animal-Tuple{Any}" href="#Persefone.@animal-Tuple{Any}"><code>Persefone.@animal</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@animal(id)</code></pre><p>Return the animal object associated with this ID number. This can only be used in a context where the <code>model</code> object is available (e.g. nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L143-L149">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@countanimals-Tuple" href="#Persefone.@countanimals-Tuple"><code>Persefone.@countanimals</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@countanimals(radius=0, species="")</code></pre><p>Count the number of animals at or near this location, optionally filtering by species. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a> or <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L438-L443">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@create-Tuple{Any, Any}" href="#Persefone.@create-Tuple{Any, Any}"><code>Persefone.@create</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@create(species, body)</code></pre><p>Define a special phase function (<a href="nature.html#Persefone.create!-Tuple{Animal, SimulationModel}"><code>create!</code></a>()) that will be called when an individual of this species is created, at the initialisation of the simulation or at birth.</p><p>As for <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>, the body of this macro has access to the variables <code>self</code> (the individual being created) and <code>model</code> (the simulation world), and can thus use all macros available in <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L122-L132">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@cropcover-Tuple{}" href="#Persefone.@cropcover-Tuple{}"><code>Persefone.@cropcover</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@cropcover</code></pre><p>Return the percentage ground cover of the crop at this position, or nothing if there is no crop here. This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a> or <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L359-L365">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@cropheight-Tuple{}" href="#Persefone.@cropheight-Tuple{}"><code>Persefone.@cropheight</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@cropheight</code></pre><p>Return the height of the crop at this position, or nothing if there is no crop here. This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a> or <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L348-L354">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@cropname-Tuple{}" href="#Persefone.@cropname-Tuple{}"><code>Persefone.@cropname</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@cropname</code></pre><p>Return the name of the local croptype, or an empty string if there is no crop here. This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a> or <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L337-L343">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@destroynest-Tuple{Any}" href="#Persefone.@destroynest-Tuple{Any}"><code>Persefone.@destroynest</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@destroynest(reason)</code></pre><p>Utility wrapper for <code>destroynest!()</code> in the Skylark model.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L525-L529">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@directionto-Tuple{Any}" href="#Persefone.@directionto-Tuple{Any}"><code>Persefone.@directionto</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@directionto</code></pre><p>Calculate the direction to an animal or the closest habitat of the specified type or descriptor. This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a> or <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L370-L376">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@distanceto-Tuple{Any}" href="#Persefone.@distanceto-Tuple{Any}"><code>Persefone.@distanceto</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@distanceto</code></pre><p>Calculate the distance to an animal or the closest habitat of the specified type or descriptor. This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a> or <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L381-L387">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@distancetoedge-Tuple{}" href="#Persefone.@distancetoedge-Tuple{}"><code>Persefone.@distancetoedge</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@distancetoedge</code></pre><p>Calculate the distance to the closest neighbouring habitat. This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a> or <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L392-L398">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@follow-Tuple{Any, Any}" href="#Persefone.@follow-Tuple{Any, Any}"><code>Persefone.@follow</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@follow(leader, distance)</code></pre><p>Move to a location within the given distance of the leading animal. This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L485-L490">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@habitat-Tuple{Any}" href="#Persefone.@habitat-Tuple{Any}"><code>Persefone.@habitat</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@habitat</code></pre><p>Specify habitat suitability for spatial ecological processes.</p><p>This macro works by creating an anonymous function that takes in a model object and a position, and returns <code>true</code> or <code>false</code> depending on the conditions specified in the macro body.</p><p>Several utility macros can be used within the body of <code>@habitat</code> as a short-hand for common expressions: <a href="nature.html#Persefone.@landcover-Tuple{}"><code>@landcover</code></a>, <a href="nature.html#Persefone.@cropname-Tuple{}"><code>@cropname</code></a>, <a href="nature.html#Persefone.@cropheight-Tuple{}"><code>@cropheight</code></a>, <a href="nature.html#Persefone.@distanceto-Tuple{Any}"><code>@distanceto</code></a>, <a href="nature.html#Persefone.@distancetoedge-Tuple{}"><code>@distancetoedge</code></a>, <a href="nature.html#Persefone.@countanimals-Tuple"><code>@countanimals</code></a>. The variables <code>model</code> and <code>pos</code> can be used for checks that don't have a macro available.</p><p>Two example uses of <code>@habitat</code> might look like this:</p><pre><code class="language-julia hljs">movementhabitat = @habitat(@landcover() in (grass agriculture soil)) - -nestinghabitat = @habitat((@landcover() == grass || - (@landcover() == agriculture && @cropname() != "maize" && - @cropheight() < 10)) && - @distanceto(forest) > 20)</code></pre><p>For more complex habitat suitability checks, the use of this macro can be circumvented by directly creating an equivalent function.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L281-L308">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@here-Tuple{}" href="#Persefone.@here-Tuple{}"><code>Persefone.@here</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@here()</code></pre><p>Return the landscape pixel of this animal's current location. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L165-L170">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@isalive-Tuple{Any}" href="#Persefone.@isalive-Tuple{Any}"><code>Persefone.@isalive</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@isalive(id)</code></pre><p>Test whether the animal with the given ID is still alive. This can only be used in a context where the <code>model</code> object is available (e.g. nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L154-L160">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@isoccupied-Tuple{Any}" href="#Persefone.@isoccupied-Tuple{Any}"><code>Persefone.@isoccupied</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@isoccupied(position)</code></pre><p>Test whether this position is already occupied by an animal of this species. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L251-L256">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@kill-Tuple" href="#Persefone.@kill-Tuple"><code>Persefone.@kill</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@kill</code></pre><p>Kill this animal (and immediately abort its current update if it dies). This is a thin wrapper around <a href="nature.html#Persefone.kill!"><code>kill!</code></a>, and passes on any arguments. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L199-L205">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@killother-Tuple{Any, Vararg{Any}}" href="#Persefone.@killother-Tuple{Any, Vararg{Any}}"><code>Persefone.@killother</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@killother</code></pre><p>Kill another animal. This is a thin wrapper around <a href="nature.html#Persefone.kill!"><code>kill!</code></a>, and passes on any arguments. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L210-L215">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@landcover-Tuple{}" href="#Persefone.@landcover-Tuple{}"><code>Persefone.@landcover</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@landcover</code></pre><p>Returns the local landcover. This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a> or <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L327-L332">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@lastyear-Tuple{Any}" href="#Persefone.@lastyear-Tuple{Any}"><code>Persefone.@lastyear</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@lastyear(annualdate)</code></pre><p>Construct a date object referring to the last year in the model from an AnnualDate. Only use in scopes where <code>model</code> is available.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L515-L520">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@migrate-Tuple{Any}" href="#Persefone.@migrate-Tuple{Any}"><code>Persefone.@migrate</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@migrate(arrival)</code></pre><p>Remove this animal from the map and add it to the migrant species pool. It will be returned to its current location at the specified <code>arrival</code> date. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L230-L236">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@move-Tuple{Any}" href="#Persefone.@move-Tuple{Any}"><code>Persefone.@move</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@move(position)</code></pre><p>Move the current individual to a new position. This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L461-L466">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@nearby_animals-Tuple" href="#Persefone.@nearby_animals-Tuple"><code>Persefone.@nearby_animals</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@nearby_animals(radius=0, species="")</code></pre><p>Return an iterator over all animals in the given radius around the current position. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a> or <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L425-L430">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@neighbours-Tuple" href="#Persefone.@neighbours-Tuple"><code>Persefone.@neighbours</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@neighbours(radius=0, conspecifics=true)</code></pre><p>Return an iterator over all (by default conspecific) animals in the given radius around this animal, excluding itself. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L449-L454">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@nextyear-Tuple{Any}" href="#Persefone.@nextyear-Tuple{Any}"><code>Persefone.@nextyear</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@nextyear(annualdate)</code></pre><p>Construct a date object referring to the next year in the model from an AnnualDate. Only use in scopes where <code>model</code> is available.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L505-L510">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@occupy-Tuple{Any}" href="#Persefone.@occupy-Tuple{Any}"><code>Persefone.@occupy</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@occupy(position)</code></pre><p>Add the given position to this animal's territory. Use <a href="nature.html#Persefone.@vacate-Tuple{Any}"><code>@vacate</code></a> to remove positions from the territory again. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L241-L246">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@phase-Tuple{Any, Any, Any}" href="#Persefone.@phase-Tuple{Any, Any, Any}"><code>Persefone.@phase</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@phase(name, body)</code></pre><p>Use this macro to describe a species' behaviour during a given phase of its life. The idea behind this is that species show very different behaviour at different times of their lives. Therefore, <code>@phase</code> can be used define the behaviour for one such phase, and the conditions under which the animal transitions to another phase.</p><p><code>@phase</code> works by creating a function that will be called by the model if the animal is in the relevant phase. When it is called, it has access to the following variables:</p><ul><li><code>self</code> a reference to the animal itself. This provides access to all the variables defined in the <a href="nature.html#Persefone.@species-Tuple{Any, Any}"><code>@species</code></a> definition, as well as all standard <a href="nature.html#Persefone.Animal"><code>Animal</code></a> variables (e.g. <code>self.age</code>, <code>self.sex</code>, <code>self.offspring</code>).</li><li><code>pos</code> gives the animal's current position as a coordinate tuple.</li><li><code>model</code> a reference to the model world (an object of type <a href="simulation.html#Persefone.SimulationModel"><code>SimulationModel</code></a>). This allows access, amongst others, to <code>model.date</code> (the current simulation date) and <code>model.landscape</code> (a two-dimensional array of pixels containing geographic information).</li></ul><p>Many macros are available to make the code within the body of <code>@phase</code> more succinct. Some of the most important of these are: <a href="nature.html#Persefone.@setphase-Tuple{Any}"><code>@setphase</code></a>, <a href="nature.html#Persefone.@respond-Tuple{Any, Any}"><code>@respond</code></a>, <a href="nature.html#Persefone.@kill-Tuple"><code>@kill</code></a>, <a href="nature.html#Persefone.@reproduce-Tuple"><code>@reproduce</code></a>, <a href="nature.html#Persefone.@neighbours-Tuple"><code>@neighbours</code></a>, <a href="nature.html#Persefone.@migrate-Tuple{Any}"><code>@migrate</code></a>, <a href="nature.html#Persefone.@move-Tuple{Any}"><code>@move</code></a>, <a href="nature.html#Persefone.@occupy-Tuple{Any}"><code>@occupy</code></a>, <a href="simulation.html#Persefone.@rand-Tuple"><code>@rand</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L87-L111">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@populate-Tuple{Any, Any}" href="#Persefone.@populate-Tuple{Any, Any}"><code>Persefone.@populate</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@populate(species, params)</code></pre><p>Set the parameters that are used to initialise this species' population. For parameter options, see <a href="nature.html#Persefone.PopInitParams"><code>PopInitParams</code></a>.</p><pre><code class="language-julia hljs">@populate <species> begin - <parameter> = <value> - ... -end </code></pre></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L61-L73">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@randomdirection-Tuple" href="#Persefone.@randomdirection-Tuple"><code>Persefone.@randomdirection</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@randomdirection(range=1)</code></pre><p>Return a random direction tuple that can be passed to <a href="nature.html#Persefone.@walk-Tuple"><code>@walk</code></a>. This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L415-L420">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@randompixel-Tuple" href="#Persefone.@randompixel-Tuple"><code>Persefone.@randompixel</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@randompixel(range, habitatdescriptor)</code></pre><p>Find a random pixel within a given <code>range</code> of the animal's location that matches the habitatdescriptor (create this using <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>). This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L403-L410">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@reproduce-Tuple" href="#Persefone.@reproduce-Tuple"><code>Persefone.@reproduce</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@reproduce</code></pre><p>Let this animal reproduce. This is a thin wrapper around <a href="energy.html#Persefone.reproduce!-Tuple{Persefone.EnergyBudget}"><code>reproduce!</code></a>, and passes on any arguments. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L220-L225">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@respond-Tuple{Any, Any}" href="#Persefone.@respond-Tuple{Any, Any}"><code>Persefone.@respond</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@respond(eventname, body)</code></pre><p>Define how an animal responds to a landscape event that affects its current position. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L185-L190">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@setphase-Tuple{Any}" href="#Persefone.@setphase-Tuple{Any}"><code>Persefone.@setphase</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@setphase(newphase)</code></pre><p>Switch this animal over to a different phase. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L175-L180">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@species-Tuple{Any, Any}" href="#Persefone.@species-Tuple{Any, Any}"><code>Persefone.@species</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@species(name, body)</code></pre><p>A macro used to add new species types to the nature model. Use this to define species-specific variables and parameters.</p><p>The macro works by creating a keyword-defined mutable struct that contains the standard fields described for the <a href="nature.html#Persefone.Animal"><code>Animal</code></a> type, as well as any new fields that the user adds:</p><pre><code class="language-julia hljs">@species <name> begin - <var1> = <value> - <var2> = <value> - ... -end</code></pre><p>To complete the species definition, the <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>, <a href="nature.html#Persefone.@create-Tuple{Any, Any}"><code>@create</code></a>, and <a href="nature.html#Persefone.@populate-Tuple{Any, Any}"><code>@populate</code></a> macros also need to be used.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L16-L36">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@thisyear-Tuple{Any}" href="#Persefone.@thisyear-Tuple{Any}"><code>Persefone.@thisyear</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@thisyear(annualdate)</code></pre><p>Construct a date object referring to the current model year from an AnnualDate. Only use in scopes where <code>model</code> is available.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L495-L500">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@vacate-Tuple{Any}" href="#Persefone.@vacate-Tuple{Any}"><code>Persefone.@vacate</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@vacate(position)</code></pre><p>Remove the given position from this animal's territory. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L261-L266">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@vacate-Tuple{}" href="#Persefone.@vacate-Tuple{}"><code>Persefone.@vacate</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@vacate()</code></pre><p>Remove this animal's complete territory. This can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L271-L276">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@walk-Tuple" href="#Persefone.@walk-Tuple"><code>Persefone.@walk</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@walk(direction, speed)</code></pre><p>Walk the animal in a given direction, which is specified by a tuple of coordinates relative to the animal's current position (i.e. <code>(2, -3)</code> increments the X coordinate by 2 and decrements the Y coordinate by 3.) This is a utility wrapper that can only be used nested within <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/macros.jl#L471-L478">source</a></section></article><h2 id="individuals.jl"><a class="docs-heading-anchor" href="#individuals.jl">individuals.jl</a><a id="individuals.jl-1"></a><a class="docs-heading-anchor-permalink" href="#individuals.jl" title="Permalink"></a></h2><p>This file contains life-history and other ecological functions that apply to all animal individuals, such reproduction, death, and movement.</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.followanimal!" href="#Persefone.followanimal!"><code>Persefone.followanimal!</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">followanimal!(follower, leader, model, distance=0)</code></pre><p>Move the follower animal to a location near the leading animal.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/individuals.jl#L116-L120">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.kill!" href="#Persefone.kill!"><code>Persefone.kill!</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">kill!(animal, model, probability=1.0, cause="")</code></pre><p>Kill this animal, optionally with a given percentage probability. Returns true if the animal dies, false if not.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/individuals.jl#L33-L38">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.migrate!-Tuple{Animal, SimulationModel, AnnualDate}" href="#Persefone.migrate!-Tuple{Animal, SimulationModel, AnnualDate}"><code>Persefone.migrate!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">migrate!(animal, model, arrival)</code></pre><p>Remove this animal from the map and add it to the migrant species pool. It will be returned to its current location at the specified <code>arrival</code> date.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/individuals.jl#L57-L62">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.move!-Tuple{Animal, SimulationModel, Tuple{Int64, Int64}}" href="#Persefone.move!-Tuple{Animal, SimulationModel, Tuple{Int64, Int64}}"><code>Persefone.move!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">move!(animal, model, position)</code></pre><p>Move the animal to the given position, making sure that this is in-bounds. If the position is out of bounds, the animal stops at the map edge.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/individuals.jl#L130-L135">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.occupy!-Tuple{Animal, SimulationModel, Tuple{Int64, Int64}}" href="#Persefone.occupy!-Tuple{Animal, SimulationModel, Tuple{Int64, Int64}}"><code>Persefone.occupy!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">occupy!(animal, model, position)</code></pre><p>Add the given location to the animal's territory. Returns <code>true</code> if successful (i.e. if the location was not already occupied by a conspecific), <code>false</code> if not.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/individuals.jl#L77-L82">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.reproduce!" href="#Persefone.reproduce!"><code>Persefone.reproduce!</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">reproduce!(animal, model, mate, n=1)</code></pre><p>Produce one or more offspring for the given animal at its current location. The <code>mate</code> argument gives the ID of the reproductive partner.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/individuals.jl#L7-L12">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.vacate!-Tuple{Animal, SimulationModel, Tuple{Int64, Int64}}" href="#Persefone.vacate!-Tuple{Animal, SimulationModel, Tuple{Int64, Int64}}"><code>Persefone.vacate!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">vacate!(animal, model, position)</code></pre><p>Remove this position from the animal's territory.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/individuals.jl#L94-L98">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.vacate!-Tuple{Animal, SimulationModel}" href="#Persefone.vacate!-Tuple{Animal, SimulationModel}"><code>Persefone.vacate!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">vacate!(animal, model)</code></pre><p>Remove the animal's complete territory.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/individuals.jl#L104-L108">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.walk!" href="#Persefone.walk!"><code>Persefone.walk!</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">walk!(animal, model, direction, distance=-1)</code></pre><p>Let the animal move in the given direction, where the direction is defined by an (x, y) tuple to specify the shift in coordinates. If maxdist >= 0, move no further than the specified distance.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/individuals.jl#L179-L185">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.walk!" href="#Persefone.walk!"><code>Persefone.walk!</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">walk!(animal, model, direction, distance=1pixel)</code></pre><p>Let the animal move a given number of steps in the given direction ("north", "northeast", "east", "southeast", "south", "southwest", "west", "northwest", "random").</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/individuals.jl#L144-L149">source</a></section></article><h2 id="populations.jl"><a class="docs-heading-anchor" href="#populations.jl">populations.jl</a><a id="populations.jl-1"></a><a class="docs-heading-anchor-permalink" href="#populations.jl" title="Permalink"></a></h2><p>This file contains functions that apply to all animal populations, such as for initialisation, or querying for neighbours.</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.PopInitParams" href="#Persefone.PopInitParams"><code>Persefone.PopInitParams</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">PopInitParams</code></pre><p>A set of parameters used by <a href="nature.html#Persefone.initpopulation!-Tuple{String, SimulationModel}"><code>initpopulation!</code></a> to initialise the population of a species at the start of a simulation. Define these parameters for each species using <a href="nature.html#Persefone.@populate-Tuple{Any, Any}"><code>@populate</code></a>.</p><ul><li><p><code>initphase</code> determines which life phase individuals will be assigned to at model initialisation (required).</p></li><li><p><code>birthphase</code> determines which life phase individuals will be assigned to at birth (required).</p></li><li><p><code>habitat</code> is a function that determines whether a given location is suitable or not (create this using <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>). By default, every cell will be occupied.</p></li><li><p><code>popsize</code> determines the number of individuals that will be created, dispersed over the suitable locations in the landscape. If this is zero or negative, one individual will be created in every suitable location. If it is greater than the number of suitable locations, multiple individuals will be created per location. Alternately, use <code>indarea</code>.</p></li><li><p><code>indarea</code>: if this is greater than zero, it determines the habitat area allocated to each individual or pair. To be precise, the chance of creating an individual (or pair of individuals) at a suitable location is 1/indarea. Use this as an alternative to <code>popsize</code>.</p></li><li><p>If <code>pairs</code> is true, a male and a female individual will be created in each selected location, otherwise, only one individual will be created at a time. (default: false)</p></li><li><p>If <code>asexual</code> is true, all created individuals are assigned the sex <code>hermaphrodite</code>, otherwise, they are randomly assigned <code>male</code> or <code>female</code>. If <code>pairs</code> is true, <code>asexual</code> is ignored. (default: false)</p></li></ul></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L7-L37">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.countanimals-Tuple{Tuple{Int64, Int64}, SimulationModel}" href="#Persefone.countanimals-Tuple{Tuple{Int64, Int64}, SimulationModel}"><code>Persefone.countanimals</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">countanimals(pos, model; radius=0, species="")</code></pre><p>Return the number of animals in the given radius around this position, optionally filtering by species.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L211-L216">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.directionto-Tuple{Tuple{Int64, Int64}, SimulationModel, Animal}" href="#Persefone.directionto-Tuple{Tuple{Int64, Int64}, SimulationModel, Animal}"><code>Persefone.directionto</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">directionto(pos, model, animal)</code></pre><p>Calculate the direction from the given position to the animal.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L235-L239">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.distanceto-Tuple{Tuple{Int64, Int64}, SimulationModel, Animal}" href="#Persefone.distanceto-Tuple{Tuple{Int64, Int64}, SimulationModel, Animal}"><code>Persefone.distanceto</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">distanceto(pos, model, animal)</code></pre><p>Calculate the distance from the given position to the animal.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L245-L249">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initindividuals!-Tuple{Type, Tuple{Int64, Int64}, Persefone.PopInitParams, SimulationModel}" href="#Persefone.initindividuals!-Tuple{Type, Tuple{Int64, Int64}, Persefone.PopInitParams, SimulationModel}"><code>Persefone.initindividuals!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initindividuals!(species, pos, popinitparams, model)</code></pre><p>Initialise one or two individuals (depending on the <code>pairs</code> parameter) in the given location. Returns the number of created individuals. (Internal helper function for <code>initpopulation!()</code>.)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L113-L119">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initpopulation!-Tuple{String, SimulationModel}" href="#Persefone.initpopulation!-Tuple{String, SimulationModel}"><code>Persefone.initpopulation!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initpopulation!(speciesname, model)</code></pre><p>Initialise the population of the given species, based on the parameters stored in <a href="nature.html#Persefone.PopInitParams"><code>PopInitParams</code></a>. Define these using <a href="nature.html#Persefone.@populate-Tuple{Any, Any}"><code>@populate</code></a>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L57-L62">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initpopulation!-Tuple{Type, Persefone.PopInitParams, SimulationModel}" href="#Persefone.initpopulation!-Tuple{Type, Persefone.PopInitParams, SimulationModel}"><code>Persefone.initpopulation!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initpopulation!(speciestype, popinitparams, model)</code></pre><p>Initialise the population of the given species, based on the given initialisation parameters. This is an internal function called by <code>initpopulation!()</code>, and was split off from it to allow better testing.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L69-L75">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.isalive-Tuple{Int64, SimulationModel}" href="#Persefone.isalive-Tuple{Int64, SimulationModel}"><code>Persefone.isalive</code></a> — <span class="docstring-category">Method</span></header><section><div><p>isalive(id, model)</p><p>Test whether the animal with the given ID is still alive.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L167-L171">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.isoccupied-Tuple{SimulationModel, String, Tuple{Int64, Int64}}" href="#Persefone.isoccupied-Tuple{SimulationModel, String, Tuple{Int64, Int64}}"><code>Persefone.isoccupied</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">isoccupied(model, position, species)</code></pre><p>Test whether this location is part of the territory of an animal of the given species.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L142-L146">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.nearby_animals-Tuple{Tuple{Int64, Int64}, SimulationModel}" href="#Persefone.nearby_animals-Tuple{Tuple{Int64, Int64}, SimulationModel}"><code>Persefone.nearby_animals</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">nearby_animals(pos, model; radius= 0, species="")</code></pre><p>Return a list of animals in the given radius around this position, optionally filtering by species.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L195-L199">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.nearby_ids-Tuple{Tuple{Int64, Int64}, SimulationModel, Union{Unitful.Quantity{T, 𝐋, U}, Unitful.Level{L, S, Unitful.Quantity{T, 𝐋, U}} where {L, S}} where {T, U}}" href="#Persefone.nearby_ids-Tuple{Tuple{Int64, Int64}, SimulationModel, Union{Unitful.Quantity{T, 𝐋, U}, Unitful.Level{L, S, Unitful.Quantity{T, 𝐋, U}} where {L, S}} where {T, U}}"><code>Persefone.nearby_ids</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">nearby_ids(pos, model, radius)</code></pre><p>Return a list of IDs of the animals within a given radius of the position.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L176-L180">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.neighbours" href="#Persefone.neighbours"><code>Persefone.neighbours</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">neighbours(animal, model, radius=0, conspecifics=true)</code></pre><p>Return a list of animals in the given radius around this animal, excluding itself. By default, only return conspecific animals.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L222-L227">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.populationparameters-Tuple{Type}" href="#Persefone.populationparameters-Tuple{Type}"><code>Persefone.populationparameters</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">populationparameters(type)</code></pre><p>A function that returns a <a href="nature.html#Persefone.PopInitParams"><code>PopInitParams</code></a> object for the given species type. Parametric methods for each species are defined with <a href="nature.html#Persefone.@populate-Tuple{Any, Any}"><code>@populate</code></a>. This is the catch-all method, which throws an error if no species-specific function is defined.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L48-L54">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.territorysize" href="#Persefone.territorysize"><code>Persefone.territorysize</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">territorysize(animal, model, stripunits=false)</code></pre><p>Calculate the size of this animal's territory in the given unit. If <code>stripunits</code> is true, return the size as a plain number.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/populations.jl#L154-L159">source</a></section></article><h2 id="ecologicaldata.jl"><a class="docs-heading-anchor" href="#ecologicaldata.jl">ecologicaldata.jl</a><a id="ecologicaldata.jl-1"></a><a class="docs-heading-anchor-permalink" href="#ecologicaldata.jl" title="Permalink"></a></h2><p>This file contains a set of life-history related utility functions needed by species.</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initecologicaldata-Tuple{SimulationModel}" href="#Persefone.initecologicaldata-Tuple{SimulationModel}"><code>Persefone.initecologicaldata</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initecologicaldata()</code></pre><p>Create output files for each data group collected by the nature model.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/ecologicaldata.jl#L7-L11">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.saveindividualdata-Tuple{SimulationModel}" href="#Persefone.saveindividualdata-Tuple{SimulationModel}"><code>Persefone.saveindividualdata</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">saveindividualdata(model)</code></pre><p>Return a data table (to be printed to <code>individuals.csv</code>), listing all properties of all animal individuals in the model. May be called never, daily, monthly, yearly, or at the end of a simulation, depending on the parameter <code>nature.indoutfreq</code>. WARNING: Produces very big files!</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/ecologicaldata.jl#L45-L52">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.savepopulationdata-Tuple{SimulationModel}" href="#Persefone.savepopulationdata-Tuple{SimulationModel}"><code>Persefone.savepopulationdata</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">savepopulationdata(model)</code></pre><p>Return a data table (to be printed to <code>populations.csv</code>), giving the current date and population size for each animal species. May be called never, daily, monthly, yearly, or at the end of a simulation, depending on the parameter <code>nature.popoutfreq</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/ecologicaldata.jl#L21-L28">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.skylarkabundance-Tuple{SimulationModel}" href="#Persefone.skylarkabundance-Tuple{SimulationModel}"><code>Persefone.skylarkabundance</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">skylarkabundance(model)</code></pre><p>Save skylark abundance data, including total abundance and demographic data (abundances of breeding/non-breeding/juvenile/migrated individuals).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/ecologicaldata.jl#L80-L85">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.skylarkterritories-Tuple{SimulationModel}" href="#Persefone.skylarkterritories-Tuple{SimulationModel}"><code>Persefone.skylarkterritories</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">skylarkterritories(model)</code></pre><p>Return a list of all coordinates occupied by a skylark territory, and the ID of the individual holding the territory. WARNING: produces very big files.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/ecologicaldata.jl#L114-L119">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="io.html">« Input and Output</a><a class="docs-footer-nextpage" href="species.html">Species models »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/odd.html b/docs/build/odd.html deleted file mode 100644 index d053f93..0000000 --- a/docs/build/odd.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Overview, Design, Details (ODD) · Persefone.jl</title><meta name="title" content="Overview, Design, Details (ODD) · Persefone.jl"/><meta property="og:title" content="Overview, Design, Details (ODD) · Persefone.jl"/><meta property="twitter:title" content="Overview, Design, Details (ODD) · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li class="is-active"><a href="odd.html">Overview, Design, Details (ODD)</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="odd.html">Overview, Design, Details (ODD)</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/odd.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Overview,-Design,-Details-(ODD)"><a class="docs-heading-anchor" href="#Overview,-Design,-Details-(ODD)">Overview, Design, Details (ODD)</a><a id="Overview,-Design,-Details-(ODD)-1"></a><a class="docs-heading-anchor-permalink" href="#Overview,-Design,-Details-(ODD)" title="Permalink"></a></h1><p>The model description follows the ODD (Overview, Design concepts, Details) protocol (Grimm et al., <a href="https://doi.org/10.1016/j.ecolmodel.2006.04.023">2006</a>; <a href="https://doi.org/10.1016/j.ecolmodel.2010.08.019">2010</a>; <a href="https://doi.org/10.18564/jasss.4259">2020</a>):</p><h2 id=".-Purpose"><a class="docs-heading-anchor" href="#.-Purpose">1. Purpose</a><a id=".-Purpose-1"></a><a class="docs-heading-anchor-permalink" href="#.-Purpose" title="Permalink"></a></h2><h2 id=".-Entities,-state-variables,-and-scales"><a class="docs-heading-anchor" href="#.-Entities,-state-variables,-and-scales">2. Entities, state variables, and scales</a><a id=".-Entities,-state-variables,-and-scales-1"></a><a class="docs-heading-anchor-permalink" href="#.-Entities,-state-variables,-and-scales" title="Permalink"></a></h2><h2 id=".-Process-overview-and-scheduling"><a class="docs-heading-anchor" href="#.-Process-overview-and-scheduling">3. Process overview and scheduling</a><a id=".-Process-overview-and-scheduling-1"></a><a class="docs-heading-anchor-permalink" href="#.-Process-overview-and-scheduling" title="Permalink"></a></h2><h2 id=".-Design-concepts"><a class="docs-heading-anchor" href="#.-Design-concepts">4. Design concepts</a><a id=".-Design-concepts-1"></a><a class="docs-heading-anchor-permalink" href="#.-Design-concepts" title="Permalink"></a></h2><h3 id=".1-Basic-principles"><a class="docs-heading-anchor" href="#.1-Basic-principles">4.1 Basic principles</a><a id=".1-Basic-principles-1"></a><a class="docs-heading-anchor-permalink" href="#.1-Basic-principles" title="Permalink"></a></h3><h3 id=".2-Emergence"><a class="docs-heading-anchor" href="#.2-Emergence">4.2 Emergence</a><a id=".2-Emergence-1"></a><a class="docs-heading-anchor-permalink" href="#.2-Emergence" title="Permalink"></a></h3><h3 id=".3-Adaptation"><a class="docs-heading-anchor" href="#.3-Adaptation">4.3 Adaptation</a><a id=".3-Adaptation-1"></a><a class="docs-heading-anchor-permalink" href="#.3-Adaptation" title="Permalink"></a></h3><h3 id=".4-Objectives"><a class="docs-heading-anchor" href="#.4-Objectives">4.4 Objectives</a><a id=".4-Objectives-1"></a><a class="docs-heading-anchor-permalink" href="#.4-Objectives" title="Permalink"></a></h3><h3 id=".5-Learning"><a class="docs-heading-anchor" href="#.5-Learning">4.5 Learning</a><a id=".5-Learning-1"></a><a class="docs-heading-anchor-permalink" href="#.5-Learning" title="Permalink"></a></h3><h3 id=".6-Prediction"><a class="docs-heading-anchor" href="#.6-Prediction">4.6 Prediction</a><a id=".6-Prediction-1"></a><a class="docs-heading-anchor-permalink" href="#.6-Prediction" title="Permalink"></a></h3><h3 id=".7-Sensing"><a class="docs-heading-anchor" href="#.7-Sensing">4.7 Sensing</a><a id=".7-Sensing-1"></a><a class="docs-heading-anchor-permalink" href="#.7-Sensing" title="Permalink"></a></h3><h3 id=".8-Interaction"><a class="docs-heading-anchor" href="#.8-Interaction">4.8 Interaction</a><a id=".8-Interaction-1"></a><a class="docs-heading-anchor-permalink" href="#.8-Interaction" title="Permalink"></a></h3><h3 id=".9-Stochasticity"><a class="docs-heading-anchor" href="#.9-Stochasticity">4.9 Stochasticity</a><a id=".9-Stochasticity-1"></a><a class="docs-heading-anchor-permalink" href="#.9-Stochasticity" title="Permalink"></a></h3><h3 id=".10-Collectives"><a class="docs-heading-anchor" href="#.10-Collectives">4.10 Collectives</a><a id=".10-Collectives-1"></a><a class="docs-heading-anchor-permalink" href="#.10-Collectives" title="Permalink"></a></h3><h3 id=".11-Observation"><a class="docs-heading-anchor" href="#.11-Observation">4.11 Observation</a><a id=".11-Observation-1"></a><a class="docs-heading-anchor-permalink" href="#.11-Observation" title="Permalink"></a></h3><h2 id=".-Initialisation"><a class="docs-heading-anchor" href="#.-Initialisation">5. Initialisation</a><a id=".-Initialisation-1"></a><a class="docs-heading-anchor-permalink" href="#.-Initialisation" title="Permalink"></a></h2><h2 id=".-Input-data"><a class="docs-heading-anchor" href="#.-Input-data">6. Input data</a><a id=".-Input-data-1"></a><a class="docs-heading-anchor-permalink" href="#.-Input-data" title="Permalink"></a></h2><h2 id=".-Submodels"><a class="docs-heading-anchor" href="#.-Submodels">7. Submodels</a><a id=".-Submodels-1"></a><a class="docs-heading-anchor-permalink" href="#.-Submodels" title="Permalink"></a></h2><h2 id=".-References"><a class="docs-heading-anchor" href="#.-References">8. References</a><a id=".-References-1"></a><a class="docs-heading-anchor-permalink" href="#.-References" title="Permalink"></a></h2></article><nav class="docs-footer"><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/search_index.js b/docs/build/search_index.js deleted file mode 100644 index ea480b1..0000000 --- a/docs/build/search_index.js +++ /dev/null @@ -1,3 +0,0 @@ -var documenterSearchIndex = {"docs": -[{"location":"energy.html#Dynamic-Energy-Budgets","page":"Dynamic Energy Budgets","title":"Dynamic Energy Budgets","text":"","category":"section"},{"location":"energy.html","page":"Dynamic Energy Budgets","title":"Dynamic Energy Budgets","text":"NOTE: currently not used.","category":"page"},{"location":"energy.html","page":"Dynamic Energy Budgets","title":"Dynamic Energy Budgets","text":"Persefone's nature module uses Kooijman's Dynamic Energy Budget theory to model energy flows within individuals.","category":"page"},{"location":"energy.html","page":"Dynamic Energy Budgets","title":"Dynamic Energy Budgets","text":"(Image: \"The standard model of the Dynamic Energy Budget theory\")","category":"page"},{"location":"energy.html","page":"Dynamic Energy Budgets","title":"Dynamic Energy Budgets","text":"The standard model of the Dynamic Energy Budget theory. (Fig. 1 from Sousa et al. (2010).)","category":"page"},{"location":"energy.html","page":"Dynamic Energy Budgets","title":"Dynamic Energy Budgets","text":"Sousa et al. (2010). Dynamic energy budget theory restores coherence in biology. Philosophical Transactions of the Royal Society B: Biological Sciences, 365(1557), 3413–3428.\nKooijman, S. A. L. M. (2009). Dynamic energy and mass budgets in biological systems (3rd ed). Cambridge University Press.\nSibly et al. (2013). Representing the acquisition and use of energy by individuals in agent-based models of animal populations. Methods in Ecology and Evolution, 4(2), 151–161.","category":"page"},{"location":"energy.html#energy.jl","page":"Dynamic Energy Budgets","title":"energy.jl","text":"","category":"section"},{"location":"energy.html","page":"Dynamic Energy Budgets","title":"Dynamic Energy Budgets","text":"Modules = [Persefone]\nPages = [\"nature/energy.jl\"]","category":"page"},{"location":"energy.html#Persefone.DEBparameters","page":"Dynamic Energy Budgets","title":"Persefone.DEBparameters","text":"DEBparameters\n\nAn immutable struct to save the parameter list for a species' Dynamic Energy Budget model. (See Sousa et al., 2010.)\n\n\n\n\n\n","category":"type"},{"location":"energy.html#Persefone.EnergyBudget","page":"Dynamic Energy Budgets","title":"Persefone.EnergyBudget","text":"EnergyBudget\n\nThis struct represents an individual's energy balance, as conceptualised by the Dynamic Energy Budget theory. Upon assimilation, energy is first stored as biomass in a reserve buffer, before being used for maintenance, growth, and reproduction. (Note that this is a simplified model form which ignores maturity as a separate buffer.)\n\nSources:\n\nMalishev & Kramer-Schadt (2021). Movement, models, and metabolism: Individual-based energy budget models as next-generation extensions for predicting animal movement outcomes across scales. Ecological Modelling, 441, 109413. https://doi.org/10.1016/j.ecolmodel.2020.109413\nMarques et al. (2018). The AmP project: Comparing species on the basis of dynamic energy budget parameters. PLOS Computational Biology,14(5), e1006100. https://doi.org/10.1371/journal.pcbi.1006100\nSibly et al. (2013). Representing the acquisition and use of energy by individuals in agent-based models of animal populations. Methods in Ecology and Evolution, 4(2), 151–161. https://doi.org/10.1111/2041-210x.12002\nSousa et al. (2010). Dynamic energy budget theory restores coherence in biology. Philosophical Transactions of the Royal Society B: Biological Sciences, 365(1557), 3413–3428. https://doi.org/10.1098/rstb.2010.0166\nKooijman, S. A. L. M. (2009). Dynamic energy and mass budgets in biological systems (3rd ed). Cambridge University Press. https://www.researchgate.net/profile/Edgar-Meza-3/post/Isthereatoxicokineticmodelfordaphniamagnaorotherzooplankton/attachment/59d62cf579197b807798b396/AS%3A348547653357569%401460111644286/download/Dynamic+Energy+Budget+theory+-+Kooijman.pdf\ncompare with: Brown et al. (2004). Toward a metabolic theory of ecology. Ecology, 85(7), 1771–1789. https://doi.org/10.1890/03-9000\n\n\n\n\n\n","category":"type"},{"location":"energy.html#Persefone.feed!-Tuple{Float64, Persefone.EnergyBudget}","page":"Dynamic Energy Budgets","title":"Persefone.feed!","text":"feed!(quantity, energybudget)\n\nConsume a given quantity of food. Expands the energy reserve by an amount determined by the assimilation rate. Returns true if successful, false if the reserve is already full.\n\n\n\n\n\n","category":"method"},{"location":"energy.html#Persefone.growthrate-Tuple{Persefone.EnergyBudget}","page":"Dynamic Energy Budgets","title":"Persefone.growthrate","text":"growthrate(energybudget)\n\nCalculate the specific growth rate r. (Internal function.)\n\n\n\n\n\n","category":"method"},{"location":"energy.html#Persefone.investmentratio-Tuple{Persefone.EnergyBudget}","page":"Dynamic Energy Budgets","title":"Persefone.investmentratio","text":"investmentratio(energybudget)\n\nCalculate the investment ratio g. (Internal function.)\n\n\n\n\n\n","category":"method"},{"location":"energy.html#Persefone.maturitymaintenance-Tuple{Persefone.EnergyBudget}","page":"Dynamic Energy Budgets","title":"Persefone.maturitymaintenance","text":"maturitymaintenance(energybudget)\n\nCalculate the specific maturity maintenance k_J. (Internal function.)\n\n\n\n\n\n","category":"method"},{"location":"energy.html#Persefone.mobilisation-Tuple{Persefone.EnergyBudget}","page":"Dynamic Energy Budgets","title":"Persefone.mobilisation","text":"mobilisation(energybudget)\n\nCalculate the mobilisation rate J_EC. (Internal function.)\n\n\n\n\n\n","category":"method"},{"location":"energy.html#Persefone.reproduce!-Tuple{Persefone.EnergyBudget}","page":"Dynamic Energy Budgets","title":"Persefone.reproduce!","text":"reproduce!(energybudget)\n\nIf there is sufficient energy in the offspring buffer of an adult, produce an embryo/egg, reducing the parent energy in the process. Returns the embryo's energy budget, or nothing if the conditions are not met.\n\n\n\n\n\n","category":"method"},{"location":"energy.html#Persefone.scaledreservedensity-Tuple{Persefone.EnergyBudget}","page":"Dynamic Energy Budgets","title":"Persefone.scaledreservedensity","text":"scaledreservedensity(energybudget)\n\nCalculate the scaled reserve density e. (Internal function.)\n\n\n\n\n\n","category":"method"},{"location":"energy.html#Persefone.update!-Tuple{Persefone.EnergyBudget}","page":"Dynamic Energy Budgets","title":"Persefone.update!","text":"update!(energybudget)\n\nCarry out a daily update of the energy budget. Mobilises reserves and allocates these to maintenance (prioritised), growth, and reproduction.\n\nReturn true if the individual has enough energy to survive, or false if the reserve is empty and it starves.\n\n\n\n\n\n","category":"method"},{"location":"energy.html#Persefone.volumetriclength-Tuple{Persefone.EnergyBudget}","page":"Dynamic Energy Budgets","title":"Persefone.volumetriclength","text":"volumetriclength(energybudget)\n\nCalculate the structural length in cm based on an individual's weight (assuming a density of 1 g/cm³ to calculate volume, see Kooijman 2009).\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Nature-submodel","page":"Nature submodel","title":"Nature submodel","text":"","category":"section"},{"location":"nature.html#nature.jl","page":"Nature submodel","title":"nature.jl","text":"","category":"section"},{"location":"nature.html","page":"Nature submodel","title":"Nature submodel","text":"This file is responsible for managing the animal modules.","category":"page"},{"location":"nature.html","page":"Nature submodel","title":"Nature submodel","text":"Modules = [Persefone]\nPages = [\"nature/nature.jl\"]","category":"page"},{"location":"nature.html#Persefone.Animal","page":"Nature submodel","title":"Persefone.Animal","text":"Animal\n\nThis is the generic agent type for all animals. Individual species are created using the @species macro. In addition to user-defined, species-specific fields, all species contain the following fields:\n\nid An integer unique identifier for this individual.\nsex male, female, or hermaphrodite.\nparents The IDs of the individual's parents.\npos An (x, y) coordinate tuple.\nage The age of the individual in days.\nphase The update function to be called during the individual's current life phase.\nenergy A DEBparameters struct for calculating energy budgets.\noffspring A vector containing the IDs of an individual's children.\nterritory A vector of coordinates that comprise the individual's territory.\n\n\n\n\n\n","category":"type"},{"location":"nature.html#Persefone.animalid-Tuple{Animal}","page":"Nature submodel","title":"Persefone.animalid","text":"animalid(animal)\n\nA small utility function to return a string with the species name and ID of an animal.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.create!-Tuple{Animal, SimulationModel}","page":"Nature submodel","title":"Persefone.create!","text":"create!(animal, model)\n\nThe create! function is called for every individual at birth or at model initialisation. Species must use @create to define a species-specific method. This is the fall- back method, in case none is implemented for a species.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.initnature!-Tuple{SimulationModel}","page":"Nature submodel","title":"Persefone.initnature!","text":"initnature!(model)\n\nInitialise the model with all simulated animal populations.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.killallanimals!-Tuple{Any}","page":"Nature submodel","title":"Persefone.killallanimals!","text":"killallanimals!(model)\n\nRemove all animal individuals from the simulation.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.speciesof-Tuple{Union{Animal, Type}}","page":"Nature submodel","title":"Persefone.speciesof","text":"speciesof(animal)\n\nReturn the species name of this animal as a string.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.speciestype-Tuple{String}","page":"Nature submodel","title":"Persefone.speciestype","text":"speciestype(name)\n\nReturn the Type of this species.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.stepagent!-Tuple{Animal, SimulationModel}","page":"Nature submodel","title":"Persefone.stepagent!","text":"stepagent!(animal, model)\n\nUpdate an animal by one day, executing it's currently active phase function.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.updatenature!-Tuple{SimulationModel}","page":"Nature submodel","title":"Persefone.updatenature!","text":"updatenature!(model)\n\nRun processes that affect all animals.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#macros.jl","page":"Nature submodel","title":"macros.jl","text":"","category":"section"},{"location":"nature.html","page":"Nature submodel","title":"Nature submodel","text":"This file contains all the macros that can be used in the species DSL.","category":"page"},{"location":"nature.html","page":"Nature submodel","title":"Nature submodel","text":"Modules = [Persefone]\nPages = [\"nature/macros.jl\"]","category":"page"},{"location":"nature.html#Persefone.@animal-Tuple{Any}","page":"Nature submodel","title":"Persefone.@animal","text":"@animal(id)\n\nReturn the animal object associated with this ID number. This can only be used in a context where the model object is available (e.g. nested within @phase).\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@countanimals-Tuple","page":"Nature submodel","title":"Persefone.@countanimals","text":"@countanimals(radius=0, species=\"\")\n\nCount the number of animals at or near this location, optionally filtering by species. This can only be used nested within @phase or @habitat.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@create-Tuple{Any, Any}","page":"Nature submodel","title":"Persefone.@create","text":"@create(species, body)\n\nDefine a special phase function (create!()) that will be called when an individual of this species is created, at the initialisation of the simulation or at birth.\n\nAs for @phase, the body of this macro has access to the variables self (the individual being created) and model (the simulation world), and can thus use all macros available in @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@cropcover-Tuple{}","page":"Nature submodel","title":"Persefone.@cropcover","text":"@cropcover\n\nReturn the percentage ground cover of the crop at this position, or nothing if there is no crop here. This is a utility wrapper that can only be used nested within @phase or @habitat.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@cropheight-Tuple{}","page":"Nature submodel","title":"Persefone.@cropheight","text":"@cropheight\n\nReturn the height of the crop at this position, or nothing if there is no crop here. This is a utility wrapper that can only be used nested within @phase or @habitat.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@cropname-Tuple{}","page":"Nature submodel","title":"Persefone.@cropname","text":"@cropname\n\nReturn the name of the local croptype, or an empty string if there is no crop here. This is a utility wrapper that can only be used nested within @phase or @habitat.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@destroynest-Tuple{Any}","page":"Nature submodel","title":"Persefone.@destroynest","text":"@destroynest(reason)\n\nUtility wrapper for destroynest!() in the Skylark model.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@directionto-Tuple{Any}","page":"Nature submodel","title":"Persefone.@directionto","text":"@directionto\n\nCalculate the direction to an animal or the closest habitat of the specified type or descriptor. This is a utility wrapper that can only be used nested within @phase or @habitat.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@distanceto-Tuple{Any}","page":"Nature submodel","title":"Persefone.@distanceto","text":"@distanceto\n\nCalculate the distance to an animal or the closest habitat of the specified type or descriptor. This is a utility wrapper that can only be used nested within @phase or @habitat.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@distancetoedge-Tuple{}","page":"Nature submodel","title":"Persefone.@distancetoedge","text":"@distancetoedge\n\nCalculate the distance to the closest neighbouring habitat. This is a utility wrapper that can only be used nested within @phase or @habitat.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@follow-Tuple{Any, Any}","page":"Nature submodel","title":"Persefone.@follow","text":"@follow(leader, distance)\n\nMove to a location within the given distance of the leading animal. This is a utility wrapper that can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@habitat-Tuple{Any}","page":"Nature submodel","title":"Persefone.@habitat","text":"@habitat\n\nSpecify habitat suitability for spatial ecological processes.\n\nThis macro works by creating an anonymous function that takes in a model object and a position, and returns true or false depending on the conditions specified in the macro body.\n\nSeveral utility macros can be used within the body of @habitat as a short-hand for common expressions: @landcover, @cropname, @cropheight, @distanceto, @distancetoedge, @countanimals. The variables model and pos can be used for checks that don't have a macro available.\n\nTwo example uses of @habitat might look like this:\n\nmovementhabitat = @habitat(@landcover() in (grass agriculture soil))\n\nnestinghabitat = @habitat((@landcover() == grass || \n (@landcover() == agriculture && @cropname() != \"maize\" &&\n @cropheight() < 10)) &&\n @distanceto(forest) > 20)\n\nFor more complex habitat suitability checks, the use of this macro can be circumvented by directly creating an equivalent function.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@here-Tuple{}","page":"Nature submodel","title":"Persefone.@here","text":"@here()\n\nReturn the landscape pixel of this animal's current location. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@isalive-Tuple{Any}","page":"Nature submodel","title":"Persefone.@isalive","text":"@isalive(id)\n\nTest whether the animal with the given ID is still alive. This can only be used in a context where the model object is available (e.g. nested within @phase).\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@isoccupied-Tuple{Any}","page":"Nature submodel","title":"Persefone.@isoccupied","text":"@isoccupied(position)\n\nTest whether this position is already occupied by an animal of this species. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@kill-Tuple","page":"Nature submodel","title":"Persefone.@kill","text":"@kill\n\nKill this animal (and immediately abort its current update if it dies). This is a thin wrapper around kill!, and passes on any arguments. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@killother-Tuple{Any, Vararg{Any}}","page":"Nature submodel","title":"Persefone.@killother","text":"@killother\n\nKill another animal. This is a thin wrapper around kill!, and passes on any arguments. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@landcover-Tuple{}","page":"Nature submodel","title":"Persefone.@landcover","text":"@landcover\n\nReturns the local landcover. This is a utility wrapper that can only be used nested within @phase or @habitat.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@lastyear-Tuple{Any}","page":"Nature submodel","title":"Persefone.@lastyear","text":"@lastyear(annualdate)\n\nConstruct a date object referring to the last year in the model from an AnnualDate. Only use in scopes where model is available.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@migrate-Tuple{Any}","page":"Nature submodel","title":"Persefone.@migrate","text":"@migrate(arrival)\n\nRemove this animal from the map and add it to the migrant species pool. It will be returned to its current location at the specified arrival date. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@move-Tuple{Any}","page":"Nature submodel","title":"Persefone.@move","text":"@move(position)\n\nMove the current individual to a new position. This is a utility wrapper that can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@nearby_animals-Tuple","page":"Nature submodel","title":"Persefone.@nearby_animals","text":"@nearby_animals(radius=0, species=\"\")\n\nReturn an iterator over all animals in the given radius around the current position. This can only be used nested within @phase or @habitat.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@neighbours-Tuple","page":"Nature submodel","title":"Persefone.@neighbours","text":"@neighbours(radius=0, conspecifics=true)\n\nReturn an iterator over all (by default conspecific) animals in the given radius around this animal, excluding itself. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@nextyear-Tuple{Any}","page":"Nature submodel","title":"Persefone.@nextyear","text":"@nextyear(annualdate)\n\nConstruct a date object referring to the next year in the model from an AnnualDate. Only use in scopes where model is available.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@occupy-Tuple{Any}","page":"Nature submodel","title":"Persefone.@occupy","text":"@occupy(position)\n\nAdd the given position to this animal's territory. Use @vacate to remove positions from the territory again. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@phase-Tuple{Any, Any, Any}","page":"Nature submodel","title":"Persefone.@phase","text":"@phase(name, body)\n\nUse this macro to describe a species' behaviour during a given phase of its life. The idea behind this is that species show very different behaviour at different times of their lives. Therefore, @phase can be used define the behaviour for one such phase, and the conditions under which the animal transitions to another phase.\n\n@phase works by creating a function that will be called by the model if the animal is in the relevant phase. When it is called, it has access to the following variables:\n\nself a reference to the animal itself. This provides access to all the variables defined in the @species definition, as well as all standard Animal variables (e.g. self.age, self.sex, self.offspring).\npos gives the animal's current position as a coordinate tuple.\nmodel a reference to the model world (an object of type SimulationModel). This allows access, amongst others, to model.date (the current simulation date) and model.landscape (a two-dimensional array of pixels containing geographic information).\n\nMany macros are available to make the code within the body of @phase more succinct. Some of the most important of these are: @setphase, @respond, @kill, @reproduce, @neighbours, @migrate, @move, @occupy, @rand.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@populate-Tuple{Any, Any}","page":"Nature submodel","title":"Persefone.@populate","text":"@populate(species, params)\n\nSet the parameters that are used to initialise this species' population. For parameter options, see PopInitParams.\n\n@populate <species> begin\n <parameter> = <value>\n ...\nend \n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@randomdirection-Tuple","page":"Nature submodel","title":"Persefone.@randomdirection","text":"@randomdirection(range=1)\n\nReturn a random direction tuple that can be passed to @walk. This is a utility wrapper that can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@randompixel-Tuple","page":"Nature submodel","title":"Persefone.@randompixel","text":"@randompixel(range, habitatdescriptor)\n\nFind a random pixel within a given range of the animal's location that matches the habitatdescriptor (create this using @habitat). This is a utility wrapper that can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@reproduce-Tuple","page":"Nature submodel","title":"Persefone.@reproduce","text":"@reproduce\n\nLet this animal reproduce. This is a thin wrapper around reproduce!, and passes on any arguments. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@respond-Tuple{Any, Any}","page":"Nature submodel","title":"Persefone.@respond","text":"@respond(eventname, body)\n\nDefine how an animal responds to a landscape event that affects its current position. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@setphase-Tuple{Any}","page":"Nature submodel","title":"Persefone.@setphase","text":"@setphase(newphase)\n\nSwitch this animal over to a different phase. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@species-Tuple{Any, Any}","page":"Nature submodel","title":"Persefone.@species","text":"@species(name, body)\n\nA macro used to add new species types to the nature model. Use this to define species-specific variables and parameters.\n\nThe macro works by creating a keyword-defined mutable struct that contains the standard fields described for the Animal type, as well as any new fields that the user adds:\n\n@species <name> begin\n <var1> = <value>\n <var2> = <value>\n ...\nend\n\nTo complete the species definition, the @phase, @create, and @populate macros also need to be used.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@thisyear-Tuple{Any}","page":"Nature submodel","title":"Persefone.@thisyear","text":"@thisyear(annualdate)\n\nConstruct a date object referring to the current model year from an AnnualDate. Only use in scopes where model is available.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@vacate-Tuple{Any}","page":"Nature submodel","title":"Persefone.@vacate","text":"@vacate(position)\n\nRemove the given position from this animal's territory. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@vacate-Tuple{}","page":"Nature submodel","title":"Persefone.@vacate","text":"@vacate()\n\nRemove this animal's complete territory. This can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#Persefone.@walk-Tuple","page":"Nature submodel","title":"Persefone.@walk","text":"@walk(direction, speed)\n\nWalk the animal in a given direction, which is specified by a tuple of coordinates relative to the animal's current position (i.e. (2, -3) increments the X coordinate by 2 and decrements the Y coordinate by 3.) This is a utility wrapper that can only be used nested within @phase.\n\n\n\n\n\n","category":"macro"},{"location":"nature.html#individuals.jl","page":"Nature submodel","title":"individuals.jl","text":"","category":"section"},{"location":"nature.html","page":"Nature submodel","title":"Nature submodel","text":"This file contains life-history and other ecological functions that apply to all animal individuals, such reproduction, death, and movement.","category":"page"},{"location":"nature.html","page":"Nature submodel","title":"Nature submodel","text":"Modules = [Persefone]\nPages = [\"nature/individuals.jl\"]","category":"page"},{"location":"nature.html#Persefone.followanimal!","page":"Nature submodel","title":"Persefone.followanimal!","text":"followanimal!(follower, leader, model, distance=0)\n\nMove the follower animal to a location near the leading animal.\n\n\n\n\n\n","category":"function"},{"location":"nature.html#Persefone.kill!","page":"Nature submodel","title":"Persefone.kill!","text":"kill!(animal, model, probability=1.0, cause=\"\")\n\nKill this animal, optionally with a given percentage probability. Returns true if the animal dies, false if not.\n\n\n\n\n\n","category":"function"},{"location":"nature.html#Persefone.migrate!-Tuple{Animal, SimulationModel, AnnualDate}","page":"Nature submodel","title":"Persefone.migrate!","text":"migrate!(animal, model, arrival)\n\nRemove this animal from the map and add it to the migrant species pool. It will be returned to its current location at the specified arrival date.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.move!-Tuple{Animal, SimulationModel, Tuple{Int64, Int64}}","page":"Nature submodel","title":"Persefone.move!","text":"move!(animal, model, position)\n\nMove the animal to the given position, making sure that this is in-bounds. If the position is out of bounds, the animal stops at the map edge.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.occupy!-Tuple{Animal, SimulationModel, Tuple{Int64, Int64}}","page":"Nature submodel","title":"Persefone.occupy!","text":"occupy!(animal, model, position)\n\nAdd the given location to the animal's territory. Returns true if successful (i.e. if the location was not already occupied by a conspecific), false if not.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.reproduce!","page":"Nature submodel","title":"Persefone.reproduce!","text":"reproduce!(animal, model, mate, n=1)\n\nProduce one or more offspring for the given animal at its current location. The mate argument gives the ID of the reproductive partner.\n\n\n\n\n\n","category":"function"},{"location":"nature.html#Persefone.vacate!-Tuple{Animal, SimulationModel, Tuple{Int64, Int64}}","page":"Nature submodel","title":"Persefone.vacate!","text":"vacate!(animal, model, position)\n\nRemove this position from the animal's territory.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.vacate!-Tuple{Animal, SimulationModel}","page":"Nature submodel","title":"Persefone.vacate!","text":"vacate!(animal, model)\n\nRemove the animal's complete territory.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.walk!","page":"Nature submodel","title":"Persefone.walk!","text":"walk!(animal, model, direction, distance=-1)\n\nLet the animal move in the given direction, where the direction is defined by an (x, y) tuple to specify the shift in coordinates. If maxdist >= 0, move no further than the specified distance.\n\n\n\n\n\n","category":"function"},{"location":"nature.html#Persefone.walk!-2","page":"Nature submodel","title":"Persefone.walk!","text":"walk!(animal, model, direction, distance=1pixel)\n\nLet the animal move a given number of steps in the given direction (\"north\", \"northeast\", \"east\", \"southeast\", \"south\", \"southwest\", \"west\", \"northwest\", \"random\").\n\n\n\n\n\n","category":"function"},{"location":"nature.html#populations.jl","page":"Nature submodel","title":"populations.jl","text":"","category":"section"},{"location":"nature.html","page":"Nature submodel","title":"Nature submodel","text":"This file contains functions that apply to all animal populations, such as for initialisation, or querying for neighbours.","category":"page"},{"location":"nature.html","page":"Nature submodel","title":"Nature submodel","text":"Modules = [Persefone]\nPages = [\"nature/populations.jl\"]","category":"page"},{"location":"nature.html#Persefone.PopInitParams","page":"Nature submodel","title":"Persefone.PopInitParams","text":"PopInitParams\n\nA set of parameters used by initpopulation! to initialise the population of a species at the start of a simulation. Define these parameters for each species using @populate.\n\ninitphase determines which life phase individuals will be assigned to at model initialisation (required).\nbirthphase determines which life phase individuals will be assigned to at birth (required).\nhabitat is a function that determines whether a given location is suitable or not (create this using @habitat). By default, every cell will be occupied.\npopsize determines the number of individuals that will be created, dispersed over the suitable locations in the landscape. If this is zero or negative, one individual will be created in every suitable location. If it is greater than the number of suitable locations, multiple individuals will be created per location. Alternately, use indarea.\nindarea: if this is greater than zero, it determines the habitat area allocated to each individual or pair. To be precise, the chance of creating an individual (or pair of individuals) at a suitable location is 1/indarea. Use this as an alternative to popsize.\nIf pairs is true, a male and a female individual will be created in each selected location, otherwise, only one individual will be created at a time. (default: false)\nIf asexual is true, all created individuals are assigned the sex hermaphrodite, otherwise, they are randomly assigned male or female. If pairs is true, asexual is ignored. (default: false)\n\n\n\n\n\n","category":"type"},{"location":"nature.html#Persefone.countanimals-Tuple{Tuple{Int64, Int64}, SimulationModel}","page":"Nature submodel","title":"Persefone.countanimals","text":"countanimals(pos, model; radius=0, species=\"\")\n\nReturn the number of animals in the given radius around this position, optionally filtering by species.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.directionto-Tuple{Tuple{Int64, Int64}, SimulationModel, Animal}","page":"Nature submodel","title":"Persefone.directionto","text":"directionto(pos, model, animal)\n\nCalculate the direction from the given position to the animal.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.distanceto-Tuple{Tuple{Int64, Int64}, SimulationModel, Animal}","page":"Nature submodel","title":"Persefone.distanceto","text":"distanceto(pos, model, animal)\n\nCalculate the distance from the given position to the animal.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.initindividuals!-Tuple{Type, Tuple{Int64, Int64}, Persefone.PopInitParams, SimulationModel}","page":"Nature submodel","title":"Persefone.initindividuals!","text":"initindividuals!(species, pos, popinitparams, model)\n\nInitialise one or two individuals (depending on the pairs parameter) in the given location. Returns the number of created individuals. (Internal helper function for initpopulation!().)\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.initpopulation!-Tuple{String, SimulationModel}","page":"Nature submodel","title":"Persefone.initpopulation!","text":"initpopulation!(speciesname, model)\n\nInitialise the population of the given species, based on the parameters stored in PopInitParams. Define these using @populate.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.initpopulation!-Tuple{Type, Persefone.PopInitParams, SimulationModel}","page":"Nature submodel","title":"Persefone.initpopulation!","text":"initpopulation!(speciestype, popinitparams, model)\n\nInitialise the population of the given species, based on the given initialisation parameters. This is an internal function called by initpopulation!(), and was split off from it to allow better testing.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.isalive-Tuple{Int64, SimulationModel}","page":"Nature submodel","title":"Persefone.isalive","text":"isalive(id, model)\n\nTest whether the animal with the given ID is still alive.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.isoccupied-Tuple{SimulationModel, String, Tuple{Int64, Int64}}","page":"Nature submodel","title":"Persefone.isoccupied","text":"isoccupied(model, position, species)\n\nTest whether this location is part of the territory of an animal of the given species.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.nearby_animals-Tuple{Tuple{Int64, Int64}, SimulationModel}","page":"Nature submodel","title":"Persefone.nearby_animals","text":"nearby_animals(pos, model; radius= 0, species=\"\")\n\nReturn a list of animals in the given radius around this position, optionally filtering by species.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.nearby_ids-Tuple{Tuple{Int64, Int64}, SimulationModel, Union{Unitful.Quantity{T, 𝐋, U}, Unitful.Level{L, S, Unitful.Quantity{T, 𝐋, U}} where {L, S}} where {T, U}}","page":"Nature submodel","title":"Persefone.nearby_ids","text":"nearby_ids(pos, model, radius)\n\nReturn a list of IDs of the animals within a given radius of the position.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.neighbours","page":"Nature submodel","title":"Persefone.neighbours","text":"neighbours(animal, model, radius=0, conspecifics=true)\n\nReturn a list of animals in the given radius around this animal, excluding itself. By default, only return conspecific animals.\n\n\n\n\n\n","category":"function"},{"location":"nature.html#Persefone.populationparameters-Tuple{Type}","page":"Nature submodel","title":"Persefone.populationparameters","text":"populationparameters(type)\n\nA function that returns a PopInitParams object for the given species type. Parametric methods for each species are defined with @populate. This is the catch-all method, which throws an error if no species-specific function is defined.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.territorysize","page":"Nature submodel","title":"Persefone.territorysize","text":"territorysize(animal, model, stripunits=false)\n\nCalculate the size of this animal's territory in the given unit. If stripunits is true, return the size as a plain number.\n\n\n\n\n\n","category":"function"},{"location":"nature.html#ecologicaldata.jl","page":"Nature submodel","title":"ecologicaldata.jl","text":"","category":"section"},{"location":"nature.html","page":"Nature submodel","title":"Nature submodel","text":"This file contains a set of life-history related utility functions needed by species.","category":"page"},{"location":"nature.html","page":"Nature submodel","title":"Nature submodel","text":"Modules = [Persefone]\nPages = [\"nature/ecologicaldata.jl\"]","category":"page"},{"location":"nature.html#Persefone.initecologicaldata-Tuple{SimulationModel}","page":"Nature submodel","title":"Persefone.initecologicaldata","text":"initecologicaldata()\n\nCreate output files for each data group collected by the nature model.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.saveindividualdata-Tuple{SimulationModel}","page":"Nature submodel","title":"Persefone.saveindividualdata","text":"saveindividualdata(model)\n\nReturn a data table (to be printed to individuals.csv), listing all properties of all animal individuals in the model. May be called never, daily, monthly, yearly, or at the end of a simulation, depending on the parameter nature.indoutfreq. WARNING: Produces very big files!\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.savepopulationdata-Tuple{SimulationModel}","page":"Nature submodel","title":"Persefone.savepopulationdata","text":"savepopulationdata(model)\n\nReturn a data table (to be printed to populations.csv), giving the current date and population size for each animal species. May be called never, daily, monthly, yearly, or at the end of a simulation, depending on the parameter nature.popoutfreq.\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.skylarkabundance-Tuple{SimulationModel}","page":"Nature submodel","title":"Persefone.skylarkabundance","text":"skylarkabundance(model)\n\nSave skylark abundance data, including total abundance and demographic data (abundances of breeding/non-breeding/juvenile/migrated individuals).\n\n\n\n\n\n","category":"method"},{"location":"nature.html#Persefone.skylarkterritories-Tuple{SimulationModel}","page":"Nature submodel","title":"Persefone.skylarkterritories","text":"skylarkterritories(model)\n\nReturn a list of all coordinates occupied by a skylark territory, and the ID of the individual holding the territory. WARNING: produces very big files.\n\n\n\n\n\n","category":"method"},{"location":"gui.html#Graphical-User-Interface","page":"Graphical User Interface","title":"Graphical User Interface","text":"","category":"section"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Due to the computational demands of simulating many individuals at high temporal and spatial resolution, Persefone.jl is primarily designed to be run non-interactively on an HPC. However, to allow interactive exploratory simulations to be conducted while learning or developing the model, a graphical user interface is available as an additional package: Persefone Desktop.","category":"page"},{"location":"gui.html#Quick-start","page":"Graphical User Interface","title":"Quick start","text":"","category":"section"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Follow these instructions if you simply want to try out the software as a user. If you want to play around with the source code, see the next section.","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Download the Julia programming language and install it on ","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"your computer.","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Start Julia. This should launch a commandline interface/REPL.\nExecute the following commands (copy-and-paste should work):","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"using Pkg\nPkg.add(url=\"https://git.idiv.de/persefone/persefone-model.git\")\nPkg.add(url=\"https://git.idiv.de/persefone/persefone-desktop.git\")\nusing PersefoneDesktop\nENV[\"QSG_RENDER_LOOP\"] = \"basic\" # only needed on Windows\nlaunch()","category":"page"},{"location":"gui.html#Running-from-the-repo","page":"Graphical User Interface","title":"Running from the repo","text":"","category":"section"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Follow these instructions if you want to get to grips with the source code. For more detailed installation instructions, see here.","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"To install: Install Julia and download/clone the repository. Open a Julia REPL in the downloaded folder and execute the following to install all dependencies:","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"using Pkg\nPkg.activate(\".\")\nPkg.instantiate()","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"To run: Run desktop.jl. Alternatively, open a Julia REPL in this folder and run:","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"using Pkg\nPkg.activate(\".\")\nusing PersefoneDesktop\nlaunch()","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Note: Due to the necessary pre-compilation done by Julia, installing and launching the application can take quite a long time. (Start-up time with desktop.jl is currently about 2 minutes.) We will reduce this as much as possible in future releases.","category":"page"},{"location":"gui.html#User-interface","page":"Graphical User Interface","title":"User interface","text":"","category":"section"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"(Image: Persefone.jl Desktop screenshot)","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"The main window component is the map view. This displays a land cover map of the simulated region: dark green are forests, light green grassland, yellow fields, red built-up areas and blue water. On it, little circles show the position of individual animals, with different species denoted by different colours.","category":"page"},{"location":"gui.html#Control-bar","page":"Graphical User Interface","title":"Control bar","text":"","category":"section"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Back button: Rewind the simulation by one day.\nStep button: Advance the simulation by one day.\nRun button: Run the simulation until the button is pressed again or the end date is reached.\nProgress bar: Shows the percentage of time elapsed between the start and end dates of the simulation.\nSpeed slider: Set the time delay between each simulation step when running.\nDate: Shows the simulation date currently displayed on the map.","category":"page"},{"location":"gui.html#Menu-bar","page":"Graphical User Interface","title":"Menu bar","text":"","category":"section"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Simulation:","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"New simulation: Reset the model and start over.\nConfigure simulation: Change the model settings (not yet implemented).\nLoad saved state: Load a model object file saved by a previous simulation run.\nSave current state: Save a model object file for later use.\nQuit: Close the application.","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Data:","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Show population graph: Show a window with a graph of population sizes over time in the current model run.\nSave simulation output: Save the model output data to file (saves both raw CSV data and generated graphics).","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Help:","category":"page"},{"location":"gui.html","page":"Graphical User Interface","title":"Graphical User Interface","text":"Documentation: Open the Persefone.jl online documentation in a browser.\nWebsite: Open the main Persefone.jl website in a browser.\nAbout: Show a window with core information about the application.","category":"page"},{"location":"io.html#Input-and-Output","page":"Input and Output","title":"Input and Output","text":"","category":"section"},{"location":"io.html","page":"Input and Output","title":"Input and Output","text":"These functions are responsible for reading in all model configurations (passed by config file or commandline), administrating them during a run, and printing or plotting any output.","category":"page"},{"location":"io.html#input.jl","page":"Input and Output","title":"input.jl","text":"","category":"section"},{"location":"io.html","page":"Input and Output","title":"Input and Output","text":"Modules = [Persefone]\nPages = [\"core/input.jl\"]","category":"page"},{"location":"io.html#Persefone.AVAILABLE_CROPMODELS","page":"Input and Output","title":"Persefone.AVAILABLE_CROPMODELS","text":"The crop models that can be used in the simulation.\n\n\n\n\n\n","category":"constant"},{"location":"io.html#Persefone.PARAMFILE","page":"Input and Output","title":"Persefone.PARAMFILE","text":"The file that stores all default parameters: src/parameters.toml\n\n\n\n\n\n","category":"constant"},{"location":"io.html#Persefone.flattenTOML-Tuple{Any}","page":"Input and Output","title":"Persefone.flattenTOML","text":"flattenTOML(dict)\n\nAn internal utility function to convert the two-dimensional dict returned by TOML.parsefile() into a one-dimensional dict, so that instead of writing settings[\"domain\"][\"param\"] one can use settings[\"domain.param\"]. Can be reversed with prepareTOML.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.getsettings","page":"Input and Output","title":"Persefone.getsettings","text":"getsettings(configfile, userparams=Dict())\n\nCombines all configuration options to produce a single settings dict. Precedence: function arguments - commandline parameters - user config file - default values\n\n\n\n\n\n","category":"function"},{"location":"io.html#Persefone.loadmodelobject-Tuple{String}","page":"Input and Output","title":"Persefone.loadmodelobject","text":"loadmodelobject(fullfilename)\n\nDeserialise a model object that was previously saved with [savemodelobject](@ref).\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.parsecommandline-Tuple{}","page":"Input and Output","title":"Persefone.parsecommandline","text":"parsecommandline()\n\nCertain software parameters can be set via the commandline.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.preprocessparameters-Tuple{Dict{String, Any}, String}","page":"Input and Output","title":"Persefone.preprocessparameters","text":"preprocessparameters(settings)\n\nTake the raw input parameters and process them where necessary (e.g. convert types or perform checks). This is a helper function for getsettings.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.@param-Tuple{Any}","page":"Input and Output","title":"Persefone.@param","text":"@param(domainparam)\n\nReturn a configuration parameter from the global settings. The argument should be in the form <domain>.<parameter>, for example @param(core.outdir). Possible values for <domain> are core, nature, farm, or crop. For a full list of parameters, see src/parameters.toml.\n\nNote: this macro only works in a context where the model object is available!\n\n\n\n\n\n","category":"macro"},{"location":"io.html#output.jl","page":"Input and Output","title":"output.jl","text":"","category":"section"},{"location":"io.html","page":"Input and Output","title":"Input and Output","text":"Modules = [Persefone]\nPages = [\"core/output.jl\"]","category":"page"},{"location":"io.html#Persefone.LOGFILE","page":"Input and Output","title":"Persefone.LOGFILE","text":"Log output is saved to simulation.log in the output directory\n\n\n\n\n\n","category":"constant"},{"location":"io.html#Persefone.RECORDDIR","page":"Input and Output","title":"Persefone.RECORDDIR","text":"All input data are copied to the inputs folder within the output directory\n\n\n\n\n\n","category":"constant"},{"location":"io.html#Persefone.DataOutput","page":"Input and Output","title":"Persefone.DataOutput","text":"DataOutput\n\nA struct for organising model output. This is used to collect model data in an in-memory dataframe or for CSV output. Submodels can register their own output functions using newdataoutput!.\n\nStruct fields: - frequency: how often to call the output function (daily/monthly/yearly/end/never) - databuffer: a vector of vectors that temporarily saves data before it is stored permanently or written to file - datastore: a data frame that stores data until the end of the run - outputfunction: a function that takes a model object and returns data values to record (formatted as a vector of vectors) - plotfunction: a function that takes a model object and returns a Makie figure object (optional)\n\n\n\n\n\n","category":"type"},{"location":"io.html#Persefone.createdatadir-Tuple{String, Union{Bool, String}}","page":"Input and Output","title":"Persefone.createdatadir","text":"createdatadir(outdir, overwrite)\n\nCreates the output directory, dealing with possible conflicts.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.data-Tuple{DataOutput}","page":"Input and Output","title":"Persefone.data","text":"Retrieve the data stored in a DataOutput (assumes core.storedata is true).\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.modellogger","page":"Input and Output","title":"Persefone.modellogger","text":"modellogger(loglevel, outdir, output=\"both\")\n\nCreate a logger object that writes output to screen and/or a logfile. This object is stored as model.logger and can then be used with with_logger(). Note: requires createdatadir to be run first.\n\n\n\n\n\n","category":"function"},{"location":"io.html#Persefone.newdataoutput!","page":"Input and Output","title":"Persefone.newdataoutput!","text":"newdataoutput!(model, name, header, frequency, outputfunction, plotfunction)\n\nCreate and register a new data output. This function must be called by all submodels that want to have their output functions called regularly.\n\n\n\n\n\n","category":"function"},{"location":"io.html#Persefone.outputdata","page":"Input and Output","title":"Persefone.outputdata","text":"outputdata(model, force=false)\n\nCycle through all registered data outputs and activate them according to their configured frequency. If force is true, activate all outputs regardless of their configuration.\n\n\n\n\n\n","category":"function"},{"location":"io.html#Persefone.prepareTOML-Tuple{Any}","page":"Input and Output","title":"Persefone.prepareTOML","text":"prepareTOML(dict)\n\nAn internal utility function to re-convert the one-dimensional dict created by flattenTOML into the two-dimensional dict needed by TOML.print, and convert any data types into TOML-compatible types where necessary.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.record!-Tuple{SimulationModel, String, Vector}","page":"Input and Output","title":"Persefone.record!","text":"record!(model, outputname, data)\n\nAppend an observation vector to the given output.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.saveinputfiles-Tuple{SimulationModel}","page":"Input and Output","title":"Persefone.saveinputfiles","text":"saveinputfiles(model)\n\nCopy all input files into the output directory, including the actual parameter settings used. This allows replicating a run in future.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.savemodelobject-Tuple{SimulationModel, String}","page":"Input and Output","title":"Persefone.savemodelobject","text":"savemodelobject(model, filename)\n\nSerialise a model object and save it to file for later reference. Includes the current model and Julia versions for compatibility checking.\n\nWARNING: produces large files (>100 MB) and takes a while to execute.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.visualiseoutput-Tuple{SimulationModel}","page":"Input and Output","title":"Persefone.visualiseoutput","text":"visualiseoutput(model)\n\nCycle through all data outputs and call their respective plot functions, saving each figure to file.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.withtestlogger-Tuple{SimulationModel}","page":"Input and Output","title":"Persefone.withtestlogger","text":"withtestlogger(model)\n\nReplace the model logger with the currently active logger. This is intended to be used in the testsuite to circumvent a Julia issue, where @test_logs doesn't work with local loggers.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.@data-Tuple{Any}","page":"Input and Output","title":"Persefone.@data","text":"@data(outputname)\n\nReturn the data stored in the given output (assumes core.storedata is true). Only use in scopes where model is available.\n\n\n\n\n\n","category":"macro"},{"location":"io.html#Persefone.@record-Tuple","page":"Input and Output","title":"Persefone.@record","text":"@record(outputname, data)\n\nRecord an observation / data point. Only use in scopes where model is available.\n\n\n\n\n\n","category":"macro"},{"location":"io.html#makieplots.jl","page":"Input and Output","title":"makieplots.jl","text":"","category":"section"},{"location":"io.html","page":"Input and Output","title":"Input and Output","text":"Modules = [Persefone]\nPages = [\"analysis/makieplots.jl\"]","category":"page"},{"location":"io.html#Persefone.croptrends-Tuple{SimulationModel}","page":"Input and Output","title":"Persefone.croptrends","text":"croptrends(model)\n\nPlot a dual line graph of cropped area and average plant height per crop over time. Returns a Makie figure object.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.datetickmarks-Tuple{Any}","page":"Input and Output","title":"Persefone.datetickmarks","text":"datetickmarks(dates)\n\nGiven a vector of dates, construct a selection to use as tick mark locations. Helper function for [populationtrends](@ref)\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.populationtrends-Tuple{SimulationModel}","page":"Input and Output","title":"Persefone.populationtrends","text":"populationtrends(model)\n\nPlot a line graph of population sizes of each species over time. Returns a Makie figure object.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.skylarkpopulation-Tuple{SimulationModel}","page":"Input and Output","title":"Persefone.skylarkpopulation","text":"skylarkpopulation(model)\n\nPlot a line graph of total population size and individual demographics of skylarks over time. Returns a Makie figure object.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.skylarkstats-Tuple{SimulationModel}","page":"Input and Output","title":"Persefone.skylarkstats","text":"skylarkstats(model)\n\nPlot various statistics from the skylark model: nesting habitat, territory size, mortality.\n\n\n\n\n\n","category":"method"},{"location":"io.html#Persefone.visualisemap","page":"Input and Output","title":"Persefone.visualisemap","text":"visualisemap(model, date, landcover)\n\nDraw the model's land cover map and plot all individuals as points on it at the specified date. If no date is passed, use the last date for which data are available. Optionally, you can pass a landcover map image (this is needed to reduce the frequency of disk I/O for Persefone Desktop). Returns a Makie figure object.\n\n\n\n\n\n","category":"function"},{"location":"config.html#Configuration","page":"Configuration","title":"Configuration","text":"","category":"section"},{"location":"config.html","page":"Configuration","title":"Configuration","text":"Persefone requires three input files: a configuration file and two map files. How to generate the map files is documented elsewhere. The configuration file defines parameter values and looks like this (see src/parameters.toml for the default):","category":"page"},{"location":"config.html","page":"Configuration","title":"Configuration","text":"### Persefone.jl - a model of agricultural landscapes and ecosystems in Europe.\n###\n### This is the default configuration file for Persefone, containing all model parameters.\n### The syntax is described here: https://toml.io/en/\n\n[core]\nconfigfile = \"src/parameters.toml\" # location of the configuration file\noutdir = \"results\" # location and name of the output folder\noverwrite = \"ask\" # overwrite the output directory? (true/false/\"ask\")\nlogoutput = \"both\" # log output to screen/file/both\ncsvoutput = true # save collected data in CSV files\nvisualise = true # generate result graphs\nstoredata = true # keep collected data in memory\nloglevel = \"debug\" # verbosity level: \"debug\", \"info\", \"warn\"\nprocessors = 2 # number of processors to use on parallel runs\nseed = 2 # seed value for the RNG (0 -> random value)\nstartdate = 2022-01-01 # first day of the simulation\nenddate = 2022-12-31 # last day of the simulation\n\n[world]\nlandcovermap = \"data/regions/jena/landcover.tif\" # location of the landcover map\nfarmfieldsmap = \"data/regions/jena/fields.tif\" # location of the field geometry map\nweatherfile = \"data/regions/jena/weather.csv\" # location of the weather data file\n\t\n[farm]\nfarmmodel = \"FieldManager\" # which version of the farm model to use (not yet implemented)\n\n[nature]\ntargetspecies = [\"Wolpertinger\", \"Wyvern\"] # list of target species to simulate\npopoutfreq = \"daily\" # output frequency population-level data, daily/monthly/yearly/end/never\nindoutfreq = \"end\" # output frequency individual-level data, daily/monthly/yearly/end/never\ninsectmodel = [\"season\", \"habitat\", \"pesticides\", \"weather\"] # factors affecting insect growth\n\t\n[crop]\ncropmodel = \"almass\" # crop growth model to use, \"almass\" or \"aquacrop\"\ncropfile = \"data/crops/almass/crop_data_general.csv\" # file with general crop parameters\ngrowthfile = \"data/crops/almass/almass_crop_growth_curves.csv\" # file with crop growth parameters\t","category":"page"},{"location":"config.html","page":"Configuration","title":"Configuration","text":"info: Parameter scanning\nYou can set any parameter to a list of different values, e.g. seed = [1,2,3]. Persefone will then set up and run multiple simulations, one for every possible combination of parameters that you entered (i.e. do a full-factorial simulation experiment).","category":"page"},{"location":"using.html#The-Persefone.jl-Package","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"","category":"section"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"This page describes how to run Persefone.jl as a command line application or Julia package, which is the default mode. To use the model with a graphical user interface, see here.","category":"page"},{"location":"using.html#Installation","page":"The Persefone.jl Package","title":"Installation","text":"","category":"section"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"For more detailed installation instructions, see here.","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"Install the latest version of the Julia programming language (1.10+). The recommended editors are VSCode or Emacs. To install the package dependencies, open a Julia REPL in this folder and run:","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"using Pkg\nPkg.activate(\".\")\nPkg.instantiate()","category":"page"},{"location":"using.html#Running-from-the-command-line","page":"The Persefone.jl Package","title":"Running from the command line","text":"","category":"section"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"This is the normal mode of operation. Simply execute run.jl in a terminal, typically like so (in Linux):","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"> julia run.jl -c <config>","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"where <config> specifies the configuration file to use. The recommended workflow is to copy scr/parameters.toml to a location of your choice and edit the copy to suit your requirements. The adapted config file can then be passed to run.jl. (If no configuration file is specified, Persefone will run with its default settings.)","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"The full list of commandline arguments is:","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"usage: run.jl [-c CONFIGFILE] [-s SEED] [-o OUTDIR] [-l LOGLEVEL] \n [--version] [-h]\n\noptional arguments:\n -c, --configfile CONFIGFILE\n name of the configuration file\n -s, --seed SEED inital random seed (type: Int64)\n -o, --outdir OUTDIR location of the output directory\n -l, --loglevel LOGLEVEL\n verbosity: \"debug\", \"info\", or \"quiet\"\n --version show version information and exit\n -h, --help show this help message and exit","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"To run the test suite, switch to the test directory and execute runtests.jl.","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"If you are on Linux or MacOS, you can also use make:","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"> make run # run a simulation with default values\n> make test # run the test suite\n> make profile # run and profile a default simulation\n> make docs # build the documentation\n> make release # create a release","category":"page"},{"location":"using.html#Running-from-within-Julia","page":"The Persefone.jl Package","title":"Running from within Julia","text":"","category":"section"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"To use the model from within Julia (either inside an interactive REPL or if you want to import it from your own software), do the following:","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"using Pkg\nPkg.activate(\".\") # assuming you're in the Persefone root folder\nusing Persefone","category":"page"},{"location":"using.html","page":"The Persefone.jl Package","title":"The Persefone.jl Package","text":"You can then access all Persefone functions, such as simulate, initialise, stepsimulation!, simulate!, or visualiseoutput. (See src/Persefone.jl for a list of exported functions.)","category":"page"},{"location":"architecture.html#Source-code-architecture","page":"Source code architecture","title":"Source code architecture","text":"","category":"section"},{"location":"architecture.html#Model-components","page":"Source code architecture","title":"Model components","text":"","category":"section"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"(Image: \"model architecture\")","category":"page"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"Persefone is divided into four components, three of which are semi-independent submodels:","category":"page"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"core and world: These two directories provide the foundation of the model software, which sets up and executes simulation runs. It also reads all input files (the configuration file, landscape maps, and weather data), and provides data output functionality.\nnature: This is an individual-based model of species in agricultural landscapes. It defines the Animal agent type, and a set of macros that can be used to rapidly create new species. It also includes ecological process functions that are useful for all species.\nfarm: This is an agent-based model of farmer decision making. It is not yet implemented, but will provide the Farmer agent type.\ncrop: This is a mathematical growth model for various crops. It is not yet implemented, but already provides the agent type FarmPlot, representing one field and its associated extent and crop type.","category":"page"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"Conceptually, core provides functionality that is needed by all of the submodels. Decisions made by Farmers affect the FarmPlots they own, and (directly or indirectly) the Animals in the model landscape.","category":"page"},{"location":"architecture.html#Important-implementation-details","page":"Source code architecture","title":"Important implementation details","text":"","category":"section"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"(Image: \"the model object\")","category":"page"},{"location":"architecture.html#The-model-object","page":"Source code architecture","title":"The model object","text":"","category":"section"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"A cursory reading of the source code will quickly show that most functions take an SimulationModel object as one of their arguments. The concrete type for this is AgricultureModel, a struct that holds all state that is in any way relevant to a simulation run. (Persefone has a strict \"no global state\" policy to avoid state-dependent bugs and allow parallelisation.) The model object gives access to all agent instances. It also stores the configuration (model.settings), the landscape (model.landscape, a matrix of Pixel objects that store the local land cover, amongst other things), and the current simulation date (model.date). (See Persefone.initmodel for details.)","category":"page"},{"location":"architecture.html#Model-configuration/the-@param-macro","page":"Source code architecture","title":"Model configuration/the @param macro","text":"","category":"section"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"The model is configured via a TOML file, the default version of which is at src/parameters.toml. An individual run can be configured using a user-defined configuration file, commandline arguments, or function calls (when Persefone is used as a package rather than an application). During a model run, the @param macro can be used to access parameter values. Note that parameter names are prepended with the name of the component they are associated with. For example, the outdir parameter belongs to the [core] section of the TOML file, and must therefore be referenced as @param(core.outdir). (See src/core/input.jl for details.)","category":"page"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"info: @param and other macros\nAs @param(parameter) expands to model.settings[\"parameter\"], it can obviously only be used in a context where the model object is actually available. (This is the case for most functions in Persefone, but not for all.) Similarly, many of the nature macros depend on specific variables being available where they are called, and can therefore only be used in specific contexts (this is indicated in their documentation).","category":"page"},{"location":"architecture.html#Output-data","page":"Source code architecture","title":"Output data","text":"","category":"section"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"Persefone can output model data into text files with a specified frequency (daily, monthly, yearly, or at the simulation end). Submodels can use Persefone.newdataoutput! to plug into this system. For an example of how to use this, see src/nature/ecologicaldata.jl. (See src/core/output.jl for details.)","category":"page"},{"location":"architecture.html#Farm-events","page":"Source code architecture","title":"Farm events","text":"","category":"section"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"The FarmEvent struct is used to communicate farming-related events between submodels. An event can be triggered with createevent! and affects all pixels within a FarmPlot. (See src/core/landscape.jl for details.)","category":"page"},{"location":"architecture.html#Random-numbers-and-logging","page":"Source code architecture","title":"Random numbers and logging","text":"","category":"section"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"By default in Julia, the random number generator (RNG) and the system logger are two globally accessible variables. As Persefone needs to avoid all global data (since this would interfere with reproducibility in parallel runs), the model object stores a local logger and a local RNG. The local logger generally does not change the way the model uses log statements, it is only relevant for some functions in src/core/simulation.jl.","category":"page"},{"location":"architecture.html","page":"Source code architecture","title":"Source code architecture","text":"info: Using the model RNG\nWhenever you need to use a random number, you must use the model.rng. The easiest way to do this is with the @rand and @shuffle! macros. (Note that these, too, require access to the model object.)","category":"page"},{"location":"skylark.html#Skylark","page":"Skylark","title":"Skylark","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"Alauda arvensis is a common and charismatic species of agricultural landscapes. This animal model is one component of the nature submodel of Persefone.jl.","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The model description follows the ODD (Overview, Design concepts, Details) protocol (Grimm et al., 2006; 2010; 2020):","category":"page"},{"location":"skylark.html#.-Purpose","page":"Skylark","title":"1. Purpose","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The purpose of this animal model is to simulate the abundance and distribution of a population of Alauda arvensis in response to farm management in Central European agricultural landscapes.","category":"page"},{"location":"skylark.html#.-Entities,-state-variables,-and-scales","page":"Skylark","title":"2. Entities, state variables, and scales","text":"","category":"section"},{"location":"skylark.html#.1-Landscape","page":"Skylark","title":"2.1 Landscape","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The simulated landscape consists of a grid of pixels with a resolution of 10m and can have an extent of 20km²-200km² (approximately; depending on the chosen input map). Each pixel is assigned a land cover class. It may also be associated with a farm plot, in which case it will contain information about the type and growth stage of the crop planted here. Farm management determines which crops are grown when, and when disturbance (e.g. mowing, harvesting, tillage) takes place.","category":"page"},{"location":"skylark.html#.2-Animals","page":"Skylark","title":"2.2 Animals","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The simulated individuals (a.k.a. agents) are mature skylarks. Each skylark is characterised by the following variables:","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"ID A unique identifier for this individual, which can be used to link it to its parents and its offspring.\nsex Male or female.\nphase The individual's current stage in the annual/life cycle. May be one of: migration, nonbreeding, territorysearch, occupation, matesearch, nesting, breeding.\nposition The individual's position in the simulated landscape.\nmate The ID of the individual with which this individual has mated this year, if any.\nterritory A list of coordinates of the positions in the landscape that this individual claims as its nesting and feeding territory.\nnest A coordinate giving the location of the currently active nest.\nclutch The number of juvenile (i.e. not yet independent) skylarks that this individual is currently raising.","category":"page"},{"location":"skylark.html#.-Process-overview-and-scheduling","page":"Skylark","title":"3. Process overview and scheduling","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The simulation proceeds in time steps of one day. Every day, each individual executes the function associated with their current life phase:","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"migration: The individual is held in a separate data structure (apart from the model landscape) and does nothing until its return date is reached. Then, it is re-introduced to the landscape and assigned the phase territorysearch (for males) or matesearch (for females).\nterritorysearch: Males return first from migration. If they already have a territory from a previous year, they return to this. Otherwise, they move randomly through the landscape until they find a contiguous territory that satisfies their habitat requirements. Once a male has a territory, it changes its phase to occupation.\nmatesearch: Females return later than males from their winter migration. If they already had a partner the previous year, they have a given probability of remaining with this partner. Otherwise, they move randomly through the landscape, looking for a male with a territory and without a partner. Once the female has a partner, it changes its phase to nesting.","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"If an individual fails to find a territory or a mate, it changes its phase to nonbreeding once the breeding season is over.","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"occupation: The male moves at random about its territory until the breeding season is over. Then it changes its phase to nonbreeding. (Note: Skylark males actively help with feeding their chicks. However, feeding is only modelled indirectly here, through the process of habitat selection when the male forms its territory - see section 4.1.)\nnesting: The female selects a suitable location within the male's territory for the nest. Building the nest and laying eggs takes a number of days, during which she does nothing else. Then, she changes her phase to breeding.\nbreeding: The female checks for mortality. The probability of brood loss varies with the age of the clutch and the nesting habitat. If and when the chicks reach independence (30 days after hatching), they are instantiated as new individuals in the nonbreeding phase.","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"If a nest fails due to predation or disturbance, or a brood leaves the nest successfully, the female resets her phase to nesting and begins again if the breeding season is not yet over. If it is, she changes her phase to nonbreeding.","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"nonbreeding: Non-breeding mature birds move randomly around the landscape, keeping close to other individuals (flocking behaviour). Once their individual migration date is reached, they are removed from the landscape until the following year (see above). Mature birds have a mortality probability for their first summer, and others thereafter for each winter.","category":"page"},{"location":"skylark.html#.-Design-concepts","page":"Skylark","title":"4. Design concepts","text":"","category":"section"},{"location":"skylark.html#.1-Basic-principles","page":"Skylark","title":"4.1 Basic principles","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"This model assumes that the two most important drivers of skylark distribution and abundance are habitat availability and juvenile mortality (see literature below). The factors and processes affecting these are therefore given the most attention in the model, while other factors and processes are only included superficially, indirectly, or not at all. Specifically, this means that the phases territorysearch, nesting, and breeding are the most relevant and detailed parts of the model, as these determine the selection of habitat and the survival of offspring.","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"Furthermore, the model concentrates on predation and anthropogenic disturbance (through management actions such as mowing) as the main causes of juvenile mortality. Other causes, such as hunger or bad weather, are currently ignored as they are usually not significant.","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The focus on habitat availability and juvenile mortality opens up two avenues by which agricultural management influences skylark populations. First, the farmers' choice of crops and date of sowing determines the quality of the habitat when skylarks select a territory. (For example, unlike summer grain, winter grain is already so high and dense in spring that it is generally avoided for nesting.) Secondly, the frequency and timing of management actions (especially mowing) is a major cause of brood loss. This means that there are direct causal links between agriculture and population trends.","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"Concentrating on these two drivers allows the rest of the model to be kept simple, reducing both the scientific complexity and computational costs. Thus, foraging movement (both during and after the breeding season) can be ignored or represented as random movement, as it does not directly impact either of the drivers. Likewise, chick growth and winter migration are represented very simply.","category":"page"},{"location":"skylark.html#.2-Emergence","page":"Skylark","title":"4.2 Emergence","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"Multiple patterns emerge from the basic principles outlined above. The most important are listed here:","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"Territory size and population density: The model assumes that skylarks occupy only as much area as they need to satisfy their nesting and foraging requirements, and that population size is limited by the amount of available habitat. This means that territories in high-quality habitat are smaller than in low-quality habitat. Scaling up, this leads to a pattern whereby population densities are highest in open landscapes with a diversity of crops, grassland, semi-natural habitat, and lower in landscapes with low habitat diversity or many woody features.\nEcological traps: Jenny (1990) describes a strong ecological trap effect whereby skylarks avoid winter grain crops, preferentially nesting in more open grassland sites. However, the mowing frequency associated with modern agriculture means that nest loss in grassland is almost assured, since there is insufficient time between two mowing dates to raise a brood. This means that landscape composition leads skylarks to breed in habitats that have a high mortality, resulting in population declines.","category":"page"},{"location":"skylark.html#.3-Adaptation","page":"Skylark","title":"4.3 Adaptation","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"In the model, skylarks primarily adapt to their surroundings by choosing suitable territories. These are chosen by evaluating the quality of surrounding habitats for breeding and foraging, and occupying as much area as needed to satisfy requirements (see section 7.1).","category":"page"},{"location":"skylark.html#.4-Objectives","page":"Skylark","title":"4.4 Objectives","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"Skylarks' main objective in the model is to have sufficient habitat available to raise a brood. Habitat quality is calculated as a function of habitat type, vegetation height, vegetation cover, and distance to vertical structures (see section 7.1).","category":"page"},{"location":"skylark.html#.5-Learning","page":"Skylark","title":"4.5 Learning","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The model includes no learning by individuals.","category":"page"},{"location":"skylark.html#.6-Prediction","page":"Skylark","title":"4.6 Prediction","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The model includes no predictions by individuals.","category":"page"},{"location":"skylark.html#.7-Sensing","page":"Skylark","title":"4.7 Sensing","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"Skylarks can perceive the landscape structure in a given radius around them (habitat type, vegetation height and cover). They can also see nearby conspecifics and are aware of the territories claimed by other individuals. When mating, they recognise whether another individual already has a mate, and mated individuals share information about their territory and brood status.","category":"page"},{"location":"skylark.html#.8-Interaction","page":"Skylark","title":"4.8 Interaction","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The model includes two direct forms of interaction. First, during mating, females move around the landscape looking for males who have a territory but no mate yet. Once they have found one, the two individuals set each other as their mate. Secondly, after the breeding seasons, individuals move around the landscape, keeping close to other individuals in their vicinity (flocking behaviour).","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"There are also indirect interactions, in that there is a competition for habitat (territory that has been claimed by one male cannot be occupied by another) and males (males that have mated with one female will not mate with another in the same season).","category":"page"},{"location":"skylark.html#.9-Stochasticity","page":"Skylark","title":"4.9 Stochasticity","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"Stochasticity is used when modelling mortality and movement. Predation mortality is modelled as an age- and habitat-dependent probability, while migration mortality is a simple probability. Dispersal movement (when searching for a territory or a mate) is modelled as a random walk, as it is assumed that skylarks are not significantly impeded in their long-range movement by habitats that are unsuitable for foraging or nesting. Foraging movement by the male and by non-breeding individuals is also random, as it is desirable to show movement (to help model analysis) but unimportant to model this exactly.","category":"page"},{"location":"skylark.html#.10-Collectives","page":"Skylark","title":"4.10 Collectives","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"After the breeding season, skylarks move around in loose agglomerations (flocking behaviour). However, this has no relevant ecological effect.","category":"page"},{"location":"skylark.html#.11-Observation","page":"Skylark","title":"4.11 Observation","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"TODO","category":"page"},{"location":"skylark.html#.-Initialisation","page":"Skylark","title":"5. Initialisation","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"At the beginning of a model run, pairs of skylarks are created on grassland and agricultural land, keeping a distance of 60m to vertical structures and allowing each pair approximately 3ha of suitable habitat (an average territory size in agricultural landscapes).","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"For details, see the source code and the associated documentation.","category":"page"},{"location":"skylark.html#.-Input-data","page":"Skylark","title":"6. Input data","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The general input to Persefone (i.e. land use maps and weather data) is described here.","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"The following extract from the source code lists the species parameters and values used by the Skylark model, based on the literature cited below:","category":"page"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"@species Skylark begin\n const movementrange::Length = 500m #XXX arbitrary\n const visionrange::Length = 200m #XXX arbitrary\n \n const eggtime::Int64 = 11 # days from laying to hatching\n const nestlingtime::Int64 = 9 # days from hatching to leaving nest\n const fledglingtime::Int64 = 21 # days from leaving the nest to independence\n\n #XXX predation mortality should be habitat-dependent\n const eggpredationmortality::Float64 = 0.03 # per-day egg mortality from predation\n const nestlingpredationmortality::Float64 = 0.03 # per-day nestling mortality from predation\n const fledglingpredationmortality::Float64 = 0.01 # per-day fledgling mortality from predation\n const firstyearmortality::Float64 = 0.38 # total mortality in the first year after independence\n const migrationmortality::Float64 = 0.33 # chance of dying during the winter\n\n const minimumterritory = 5000m² # size of territory under ideal conditions\n const mindistancetoedge = 60m # minimum distance of habitat to vertical structures\n const maxforageheight = 50cm # maximum preferred vegetation height for foraging\n const maxforagecover = 0.7 # maximum preferred vegetation cover for foraging\n const nestingheight = (15cm, 25cm) # min and max preferred vegetation height for nesting\n const nestingcover = (0.2, 0.5) # min and max preferred vegetation cover for nesting\n\n const matefaithfulness = 0.5 # chance of a female retaining her previous partner\n const nestingbegin::Tuple{Int64,Int64} = (April, 10) # begin nesting in the middle of April\n const nestbuildingtime::UnitRange{Int64} = 4:5 # 4-5 days needed to build a nest (doubled for first nest)\n const eggsperclutch::UnitRange{Int64} = 2:5 # eggs laid per clutch\n const nestingend::Int64 = July # last month of nesting\nend","category":"page"},{"location":"skylark.html#.-Submodels","page":"Skylark","title":"7. Submodels","text":"","category":"section"},{"location":"skylark.html#.1-Territory-formation","page":"Skylark","title":"7.1 Territory formation","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"TODO","category":"page"},{"location":"skylark.html#.2-Juvenile-mortality","page":"Skylark","title":"7.2 Juvenile mortality","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"TODO","category":"page"},{"location":"skylark.html#.-References","page":"Skylark","title":"8. References","text":"","category":"section"},{"location":"skylark.html","page":"Skylark","title":"Skylark","text":"Bauer, H.-G., Bezzel, E., & Fiedler, W. (Eds.). (2012). Das Kompendium der Vögel Mitteleuropas: Ein umfassendes Handbuch zu Biologie, Gefährdung und Schutz (Einbändige Sonderausg. der 2., vollständig überarb. und erw. Aufl. 2005). AULA-Verlag\nDelius, J. D. (1965). A Population Study of Skylarks Alauda Arvensis. Ibis, 107(4), 466–492.\nDonald et al. (2002). Survival rates, causes of failure and productivity of Skylark Alauda arvensis nests on lowland farmland. Ibis, 144(4), 652–664.\nGlutz von Blotzheim, Urs N. (Ed.). (1985). Handbuch der Vögel Mitteleuropas. Bd. 10. Passeriformes (Teil 1) 1. Alaudidae - Hirundidae. AULA-Verlag, Wiesbaden. ISBN 3-89104-019-9\nJenny, M. (1990). Territorialität und Brutbiologie der Feldlerche Alauda arvensis in einer intensiv genutzten Agrarlandschaft. Journal für Ornithologie, 131(3), 241–265.\nJeromin, K. (2002). Zur Ernährungsökologie der Feldlerche (Alauda arvensis L. 1758) in der Reproduktionsphase [Doctoral thesis]. Christian-Albrechts-Universität zu Kiel.\nPüttmanns et al. (2022). Habitat use and foraging parameters of breeding Skylarks indicate no seasonal decrease in food availability in heterogeneous farmland. Ecology and Evolution, 12(1), e8461.","category":"page"},{"location":"species.html#Species-models","page":"Species models","title":"Species models","text":"","category":"section"},{"location":"species.html","page":"Species models","title":"Species models","text":"The ecological submodel in Persefone simulates a range of species in agricultural landscapes.","category":"page"},{"location":"species.html#Skylark","page":"Species models","title":"Skylark","text":"","category":"section"},{"location":"species.html","page":"Species models","title":"Species models","text":"Modules = [Persefone]\nPages = [\"nature/species/skylark.jl\"]","category":"page"},{"location":"species.html#Persefone.Skylark","page":"Species models","title":"Persefone.Skylark","text":"Skylark\n\nAlauda arvensis is a common and charismatic species of agricultural landscapes.\n\nSources: - Bauer, H.-G., Bezzel, E., & Fiedler, W. (Eds.). (2012). Das Kompendium der Vögel Mitteleuropas: Ein umfassendes Handbuch zu Biologie, Gefährdung und Schutz (Einbändige Sonderausg. der 2., vollständig überarb. und erw. Aufl. 2005). AULA-Verlag - Delius, J. D. (1965). A Population Study of Skylarks Alauda Arvensis. Ibis, 107(4), 466–492. https://doi.org/10.1111/j.1474-919X.1965.tb07332.x - Donald et al. (2002). Survival rates, causes of failure and productivity of Skylark Alauda arvensis nests on lowland farmland. Ibis, 144(4), 652–664. https://doi.org/10.1046/j.1474-919X.2002.00101.x - Glutz von Blotzheim, Urs N. (Ed.). (1985). Handbuch der Vögel Mitteleuropas. Bd. 10. Passeriformes (Teil 1) 1. Alaudidae - Hirundidae. AULA-Verlag, Wiesbaden. ISBN 3-89104-019-9 - Jenny, M. (1990). Territorialität und Brutbiologie der Feldlerche Alauda arvensis in einer intensiv genutzten Agrarlandschaft. Journal für Ornithologie, 131(3), 241–265. https://doi.org/10.1007/BF01640998 - Püttmanns et al. (2022). Habitat use and foraging parameters of breeding Skylarks indicate no seasonal decrease in food availability in heterogeneous farmland. Ecology and Evolution, 12(1), e8461. https://doi.org/10.1002/ece3.8461\n\n\n\n\n\n","category":"type"},{"location":"species.html#Persefone.#1112#fun","page":"Species models","title":"Persefone.#1112#fun","text":"Initialise the skylark population. Creates pairs of skylarks on grassland and agricultural land, keeping a distance of 60m to vertical structures and giving each pair an area of 3ha.\n\n\n\n\n\n","category":"function"},{"location":"species.html#Persefone.allowsnesting-Tuple{Persefone.Skylark, SimulationModel, Tuple{Int64, Int64}}","page":"Species models","title":"Persefone.allowsnesting","text":"allowsnesting(skylark, model, pos)\n\nCheck whether the given position is suitable for nesting.\n\n\n\n\n\n","category":"method"},{"location":"species.html#Persefone.breeding-Tuple{Persefone.Skylark, SimulationModel}","page":"Species models","title":"Persefone.breeding","text":"Females that have laid eggs take care of their chicks, restarting the nesting process once the chicks are independent or in case of brood loss.\n\n\n\n\n\n","category":"method"},{"location":"species.html#Persefone.create!-Tuple{Persefone.Skylark, SimulationModel}","page":"Species models","title":"Persefone.create!","text":"Initialise a skylark individual. Selects migration dates and checks if the bird should currently be on migration. Also sets other individual-specific variables.\n\n\n\n\n\n","category":"method"},{"location":"species.html#Persefone.destroynest!-Tuple{Persefone.Skylark, SimulationModel, String}","page":"Species models","title":"Persefone.destroynest!","text":"destroynest!(skylark, model, reason)\n\nRemove the skylark's nest and offspring due to disturbance or predation.\n\n\n\n\n\n","category":"method"},{"location":"species.html#Persefone.findterritory-Tuple{Persefone.Skylark, SimulationModel}","page":"Species models","title":"Persefone.findterritory","text":"findterritory(skylark, model)\n\nCheck whether the habitat surrounding the skylark is suitable for establishing a territory. If it is, return the list of coordinates that make up the new territory, else return an empty list.\n\n\n\n\n\n","category":"method"},{"location":"species.html#Persefone.foragequality-Tuple{Persefone.Skylark, SimulationModel, Tuple{Int64, Int64}}","page":"Species models","title":"Persefone.foragequality","text":"foragequality(skylark, model, pos)\n\nCalculate the relative quality of the habitat at this position for foraging. This assumes that open habitat is best (quality = 1.0), and steadily decreases as vegetation height and/or cover increase. (Linear regressions based on Püttmanns et al., 2021; Jeromin, 2002; Jenny, 1990b.)\n\n\n\n\n\n","category":"method"},{"location":"species.html#Persefone.matesearch-Tuple{Persefone.Skylark, SimulationModel}","page":"Species models","title":"Persefone.matesearch","text":"Females returning from migration move around to look for a suitable partner with a territory.\n\n\n\n\n\n","category":"method"},{"location":"species.html#Persefone.nesting-Tuple{Persefone.Skylark, SimulationModel}","page":"Species models","title":"Persefone.nesting","text":"Females that have found a partner build a nest and lay eggs in a suitable location.\n\n\n\n\n\n","category":"method"},{"location":"species.html#Persefone.nonbreeding-Tuple{Persefone.Skylark, SimulationModel}","page":"Species models","title":"Persefone.nonbreeding","text":"Non-breeding adults move around with other individuals and check for migration.\n\n\n\n\n\n","category":"method"},{"location":"species.html#Persefone.occupation-Tuple{Persefone.Skylark, SimulationModel}","page":"Species models","title":"Persefone.occupation","text":"Once a male has found a territory, he remains in it until the breeding season is over, adjusting it to new conditions when and as necessary.\n\n\n\n\n\n","category":"method"},{"location":"species.html#Persefone.territorysearch-Tuple{Persefone.Skylark, SimulationModel}","page":"Species models","title":"Persefone.territorysearch","text":"Males returning from migration move around to look for suitable habitats to establish a territory.\n\n\n\n\n\n","category":"method"},{"location":"species-dsl.html#Defining-new-species","page":"Defining new species","title":"Defining new species","text":"","category":"section"},{"location":"species-dsl.html","page":"Defining new species","title":"Defining new species","text":"In order to make implementing new species as easy as possible, Persefone includes a domain-specific language (DSL) built from a collection of macros and functions.","category":"page"},{"location":"species-dsl.html","page":"Defining new species","title":"Defining new species","text":"Here is an example of what this looks like, using a hypothetical mermaid species:","category":"page"},{"location":"species-dsl.html","page":"Defining new species","title":"Defining new species","text":"@species Mermaid begin\n ageofmaturity = 2\n pesticidemortality = 1.0\nend\n\n@create Mermaid begin\n @debug \"Created $(animalid(self)).\"\nend\n\n@phase Mermaid life begin\n @debug \"$(animalid(self)) is swimming happily in its pond.\"\n @respond pesticide @kill(self.pesticidemortality, \"poisoning\")\n @respond harvesting @setphase(drought)\n if self.sex == female && length(@neighbours()) < 3 &&\n self.age >= self.ageofmaturity && @landcover() == water\n @reproduce()\n end\nend\n\n@phase Mermaid drought begin\n n = sum(1 for a in @neighbours())\n @debug \"$(animalid(self)) is experiencing drought with $n neighbour(s).\"\n @respond sowing @setphase(life)\nend\n\n@populate Mermaid begin\n birthphase = life\n initphase = life\n habitat = @habitat(@landcover() == water)\n pairs=true\nend","category":"page"},{"location":"species-dsl.html","page":"Defining new species","title":"Defining new species","text":"A complete species definition consists of one call each to @species, @create, @populate, and one or more calls to @phase. Another important macro is @habitat. Further macros are available to provide convenience wrappers for common functions. (See src/nature/nature.jl for details.)","category":"page"},{"location":"species-dsl.html","page":"Defining new species","title":"Defining new species","text":"The first macro to call is @species. This takes two arguments: a species name and a definition block (enclosed in begin and end tags). Within the block, species-specific parameters and variables can be defined (and optionally given values) that should be available throughout a species' lifetime. ","category":"page"},{"location":"species-dsl.html","page":"Defining new species","title":"Defining new species","text":"Next, each species must define one or more @phase blocks. The concept behind this is that species show different behaviours at different phases of their lifecycle. Each @phase block defines the behaviour in one of these phases. (Technically, it defines a function that will be called daily, so long as the species' phase variable is set to this phase.) Code in this section has access to the model object as well as a self object, which is the currently active Animal agent. Within a phase block, @respond can be used to define the species' response to a FarmEvent that affects the species' current location, while a variety of other macros provide wrappers to life history and movement functions from src/nature/populations.jl.","category":"page"},{"location":"species-dsl.html","page":"Defining new species","title":"Defining new species","text":"The third macro to call is @create. Like @phase, this defines a function with access to the world and self objects. This function is called whenever a new individual of this species is created (either at birth, or when the model is initialised).","category":"page"},{"location":"species-dsl.html","page":"Defining new species","title":"Defining new species","text":"The last macro that must be called is [@populate]. Whereas @create regulates the creation of individual animals, @populate determines how the population of a species is initialised at the start of a simulation. It does this by defining values for the parameters used by initpopulation!. The full list of parameters that can be used is documented under PopInitParams.","category":"page"},{"location":"species-dsl.html","page":"Defining new species","title":"Defining new species","text":"The final important macro is @habitat. This defines a \"habitat descriptor\", i.e. a predicate function that tests whether or not a given landscape pixel is suitable for a specified purpose. Such habitat descriptors are used as arguments to various functions, for example for population initialisation or movement. The argument to @habitat consists of a logical expression, which has access to the animal's current position (the pos tuple variable) and the model. Various macros are available to easily reference information about the current location, such as @landcover or @distancetoedge.","category":"page"},{"location":"species-dsl.html","page":"Defining new species","title":"Defining new species","text":"All of these macros are defined in src/nature/macros.jl.","category":"page"},{"location":"CHANGELOG.html#Changelog","page":"Changelog","title":"Changelog","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"All notable changes to this project will be documented in this file.","category":"page"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.","category":"page"},{"location":"CHANGELOG.html#[1.0.0]-in-planning","page":"Changelog","title":"[1.0.0] - in planning","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Aim: 3 species, 2 crop growth models, farm model, GAEC scenarios, experimental analysis","category":"page"},{"location":"CHANGELOG.html#[0.6.0]-unreleased","page":"Changelog","title":"[0.6.0] - unreleased","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Plan: decouple CairoMakie (#81), fix & test ALMaSS, set up first experiments","category":"page"},{"location":"CHANGELOG.html#Added","page":"Changelog","title":"Added","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"crop.cropdirectory parameter specifies folder in which all crop data files for the selected crop model can be found.","category":"page"},{"location":"CHANGELOG.html#Changed","page":"Changelog","title":"Changed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"preprocessparameters() checks whether the map and crop directories are reachable from the current working directory. If not, it checks whether it can be reached from the package directory. This makes running simulations easier when Persefone has been installed as a package.\nsimulate() and initialise() now take a params keyword argument that can be used to override parameters from other input sources","category":"page"},{"location":"CHANGELOG.html#Deprecated","page":"Changelog","title":"Deprecated","text":"","category":"section"},{"location":"CHANGELOG.html#Removed","page":"Changelog","title":"Removed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"crop.cropfile and crop.growthfile parameters -> user configuration is now done via crop.cropdirectory, names of ALMaSS input files are specified as constants in almass.jl","category":"page"},{"location":"CHANGELOG.html#Fixed","page":"Changelog","title":"Fixed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"","category":"page"},{"location":"CHANGELOG.html#[0.5.5]-09-08-2024","page":"Changelog","title":"[0.5.5] - 09-08-2024","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"This point release implements the first basic farm model","category":"page"},{"location":"CHANGELOG.html#Added-2","page":"Changelog","title":"Added","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"basic farm model that assigns a crop rotation to each field, sowing and harvesting when appropriate\nnew parameters: farm.farmmodel, farm.setaside, farm.fieldoutfreq\nvisualisation of cropped area and crop growth over time\nfarm.setaside setting to configure what proportion of land farmers let lie fallow\nisharvestable() function for FarmPlots\n@areaof macro to calculate the area of a given number of landscape pixels\ndata/farm/standard_gross_margins.csv from KTBL data","category":"page"},{"location":"CHANGELOG.html#Changed-2","page":"Changelog","title":"Changed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"expanded & adapted general crop data and crop growth curve tables","category":"page"},{"location":"CHANGELOG.html#Fixed-2","page":"Changelog","title":"Fixed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"bug fixes in the ALMaSS crop model","category":"page"},{"location":"CHANGELOG.html#[0.5.4]-08-08-2024","page":"Changelog","title":"[0.5.4] - 08-08-2024","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Skylark data analysis and new internal utility functions","category":"page"},{"location":"CHANGELOG.html#Added-3","page":"Changelog","title":"Added","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"AnnualDate type and associated functions for working with recurring dates (#101)\ncan be constructed from two Int64, a Date, or a Tuple{Int64,Int64}\nautomatic conversion from Date or Tuple{Int64,Int64}\ncan use operators: ==, <, +, -, :\nthisyear(), lastyear(), nextyear() functions and macros\nnew file core/utils.jl for utility functions that fit in no other file\nirregular data logging using record!()/@record() (#103)\ndata outputs & visualisation for the skylark model (#97)\nrandn() function and macro to sample from a vector using a normal distribution\nmake install to download and install Julia and package dependencies (on Linux, #67)\nweather file for the Thüringer Becken","category":"page"},{"location":"CHANGELOG.html#Changed-3","page":"Changelog","title":"Changed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"moved random number functions and macros from input.jl to utils.jl\nexpanded weather data for Jena to 1990-2023\nNon-breeding skylarks only search for neighbours to follow once (-> huge performance improvement!)","category":"page"},{"location":"CHANGELOG.html#Fixed-3","page":"Changelog","title":"Fixed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"bug fixes in the skylark model","category":"page"},{"location":"CHANGELOG.html#[0.5.3]-31-07-2024","page":"Changelog","title":"[0.5.3] - 31-07-2024","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Switchable crop models","category":"page"},{"location":"CHANGELOG.html#Added-4","page":"Changelog","title":"Added","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Support for switchable crop models (#70), crop models can be set with the cropmodel setting in the [crop] section of parameters.toml.\nNew submodules ALMaSS for the ALMaSS crop model, and SimpleCrop for testing switchable crop models.","category":"page"},{"location":"CHANGELOG.html#Changed-4","page":"Changelog","title":"Changed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"All functionality specific to the ALMaSS crop model has been moved to the submodule ALMaSS.\nDue to switchable crop models, some types are now parametric: AgricultureModel{Tcroptype,Tcropstate} and FarmPlot{Tcropstate}.\nFarmPlot{Tcropstate} now only stores basic information about which pixels are part of the farm plot, all crop-specific information is now stored in the field cropstate. Many functions acting on a FarmPlot now mostly forward to functions of the same name acting on the cropstate field of a FarmPlot.\nThe type of height in ALMaSS.CropState and ALMaSS.CropCurveParams is now a unitful number ::Length{Float64}.\nBoth crop models ALMaSS and SimpleCrop now also support the functions cropcover and cropyield in addition to croptype, cropname, cropheight.\ncropheight now returns a unitful number ::Length{Float64}, and returns height 0cm if the landscape at that position is not a FarmPlot.","category":"page"},{"location":"CHANGELOG.html#[0.5.2]-30-07-2024","page":"Changelog","title":"[0.5.2] - 30-07-2024","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Rewrote the skylark model","category":"page"},{"location":"CHANGELOG.html#Added-5","page":"Changelog","title":"Added","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Skylark model is largely rewritten to follow a new phase structure (#9)\nanimals can occupy territories (see @occupy, @isoccupied, @vacate macros/functions) (#94)\n@cropcover macro and function\nODD documentation for Skylark","category":"page"},{"location":"CHANGELOG.html#Changed-5","page":"Changelog","title":"Changed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"input files that are now copied to a separate inputs directory within the output directory\nEventType renamed to Management for clarity\ndocumentation website now has a \"Scientific Documentation\" section","category":"page"},{"location":"CHANGELOG.html#Removed-2","page":"Changelog","title":"Removed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"old skylark model (has been rewritten, see above)","category":"page"},{"location":"CHANGELOG.html#Fixed-4","page":"Changelog","title":"Fixed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"all skylarks now migrate (#90)\ninsectbiomass() uses units","category":"page"},{"location":"CHANGELOG.html#[0.5.1]-13-06-2024","page":"Changelog","title":"[0.5.1] - 13-06-2024","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Added Unitful.jl","category":"page"},{"location":"CHANGELOG.html#Added-6","page":"Changelog","title":"Added","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Unitful.jl now used to add units to quantities\nworld.mapdirectory parameter specifies the path to the directory in which","category":"page"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"landcovermap, farmfieldsmap, and weatherfile are located","category":"page"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"world.mapresolution parameter specifies the input maps' spatial resolution in meters","category":"page"},{"location":"CHANGELOG.html#Changed-6","page":"Changelog","title":"Changed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"spatial functions now work with explicit distances (using Unitful.jl) rather than using the number of pixels\nall species definitions and tests updated to use units","category":"page"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"","category":"page"},{"location":"CHANGELOG.html#[0.5.0]-07-06-2024","page":"Changelog","title":"[0.5.0] - 07-06-2024","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"This release doesn't add much new functionality, but represents a major restructuring of the code base. Specifically, it removes the Agents.jl dependency and changes the way the species definition macros work and are used.","category":"page"},{"location":"CHANGELOG.html#Added-7","page":"Changelog","title":"Added","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"SimulationModel type, extended by AgricultureModel struct\n@create macro defines a special phase function that is called when an individual animal is created (at birth or on model initialisation)\nfunctions (and associated macros) to replace Agents.jl functionality:\nmove!() and walk!() \nnearby_ids(), nearby_animals(), countanimals(), neighbours()\ndirectionto(), distanceto(), randomdirection()\nnagents(), killallanimals!()\n@here macro to return the pixel currently occupied by the active animal\ncore.logoutput parameter to define whether logs are printed to screen, file, none, or both\nlarge logo and model structure diagram\nChangelog","category":"page"},{"location":"CHANGELOG.html#Changed-7","page":"Changelog","title":"Changed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"SimulationModel replaces AgentBasedModel\nSpecies definition macros revamped:\n@species now only defines parameters and variables and creates a mutable struct\n@phase must now be defined in the top-level code and creates a global function\n@initialise renamed to @populate, must also be called in the top-level code\ninitindividual() renamed to create!()\nSkylark, Wolpertinger, and Wyvern updated to match the new macros\nrequires Julia 1.10","category":"page"},{"location":"CHANGELOG.html#Removed-3","page":"Changelog","title":"Removed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Agents.jl dependency (including AgentBasedModel and functions for adding/moving/removing agents)","category":"page"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"","category":"page"},{"location":"CHANGELOG.html#[0.4.1]-2023-11-14","page":"Changelog","title":"[0.4.1] - 2023-11-14","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Initial version of the skylark model","category":"page"},{"location":"CHANGELOG.html#Added-8","page":"Changelog","title":"Added","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"initial version of the Skylark species\nsmall Jena map\nanimal individuals keep track of their parents' IDs\nseveral new functions and macros for animals\ninstallation instructions for Windows","category":"page"},{"location":"CHANGELOG.html#Changed-8","page":"Changelog","title":"Changed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"graphics output is more configurable","category":"page"},{"location":"CHANGELOG.html#[0.4.0]-2023-10-28","page":"Changelog","title":"[0.4.0] - 2023-10-28","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Functions for animal populations","category":"page"},{"location":"CHANGELOG.html#Added-9","page":"Changelog","title":"Added","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"initialisation functions for individuals (not just species)\nmigration function / migrant pool for animals that disappear from the landscape during winter\nskylark migration","category":"page"},{"location":"CHANGELOG.html#Changed-9","page":"Changelog","title":"Changed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"online documentation was expanded and restructured\nnature macros moved to a separate file","category":"page"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"Started changelog at this point, earlier versions are not included.","category":"page"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"<!– Template","category":"page"},{"location":"CHANGELOG.html#[version]-unreleased","page":"Changelog","title":"[version] - unreleased","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"<comments>","category":"page"},{"location":"CHANGELOG.html#*PLANNED*","page":"Changelog","title":"PLANNED","text":"","category":"section"},{"location":"CHANGELOG.html#Added-10","page":"Changelog","title":"Added","text":"","category":"section"},{"location":"CHANGELOG.html#Changed-10","page":"Changelog","title":"Changed","text":"","category":"section"},{"location":"CHANGELOG.html#Deprecated-2","page":"Changelog","title":"Deprecated","text":"","category":"section"},{"location":"CHANGELOG.html#Removed-4","page":"Changelog","title":"Removed","text":"","category":"section"},{"location":"CHANGELOG.html#Fixed-5","page":"Changelog","title":"Fixed","text":"","category":"section"},{"location":"CHANGELOG.html","page":"Changelog","title":"Changelog","text":"–>","category":"page"},{"location":"developing.html#Developing-Persefone","page":"Developing Persefone","title":"Developing Persefone","text":"","category":"section"},{"location":"developing.html#Setting-up","page":"Developing Persefone","title":"Setting up","text":"","category":"section"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"If you haven't worked with Julia before, here are detailed instructions for how to set up your development environment. The main development is currently done on Linux (and as the primary execution platform will be an HPC, Linux compatibility is important), but developing on Windows works too.","category":"page"},{"location":"developing.html#Visual-Studio-Code-on-Windows","page":"Developing Persefone","title":"Visual Studio Code on Windows","text":"","category":"section"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"Download and install Julia, git and Visual Studio Code.\nInstall the Julia extension for VS Code: In VS Code, open the extensions pane (Ctrl+Shift+X). Search for and install Julia Language Support.\nClone the Gitlab repository: In VS Code, open the source control pane (Ctrl+Shift+G). Click on Clone and enter the repo URL. Then select a folder on your computer to download the files into, and let VS Code open the project once it has been cloned.\nStart a Julia REPL: In VS Code, bring up the command palette (Ctrl+Shift+P). Execute the command Julia: Start REPL. Then install all dependencies of Persefone by running using Pkg; Pkg.activate(\".\"); Pkg.instantiate(). (This will take some time.)\nOpen the file run.jl and click Execute (triangular button in the top right). The source code will compile (this can take a lot of time the first time you do it) and run a default simulation.\nFurther steps: You may want to familiarise yourself with how to use git with VS Code. You may also want to clone the Persefone Desktop repository (repeat steps 3 to 5).","category":"page"},{"location":"developing.html#Emacs-on-Linux","page":"Developing Persefone","title":"Emacs on Linux","text":"","category":"section"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"You can of course also use VS Code on Linux. In that case, follow the instructions above.","category":"page"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"Make sure you have git and Julia installed. Git should be in your distro's repos (e.g. sudo apt install git). To install Julia, download the binary and unpack it. For greater ease of use, copy the unpacked files to /usr/local/lib/julia (or similar) and create a symlink to the executable: sudo ln -s /usr/local/lib/julia/bin/julia /usr/local/bin/julia. Then go the to folder that you want to use for development and run git clone https://git.idiv.de/persefone/persefone-model.git . in your terminal.","category":"page"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"There are a couple of addons that make working with Julia much nicer in Emacs:","category":"page"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"julia-mode gives syntax highlighting. Install with M-x package-install julia-mode.\njulia-snail provides IDE-like features, especially a fully-functional REPL and the ability to evaluate code straight from inside a buffer. Note that the installation can be somewhat tricky. You first need to manually install all the dependencies of its dependency vterm, then install vterm itself with M-x package-install vterm, before you can do M-x package-install julia-snail. Then add it to your init.el with (require 'julia-snail) and (add-hook 'julia-mode-hook #'julia-snail-mode).\ncompany-mode integrates with Snail to give code completion. Install with M-x package-install company, then add (add-hook 'julia-mode-hook #'company-mode) and (global-set-key (kbd \"C-<tab>\") 'company-complete) to your init.el.\nmagit is a great git interface for Emacs. Install with M-x package-install magit and add (global-set-key (kbd \"C-x g\") 'magit-status) to your init.el.","category":"page"},{"location":"developing.html#Development-workflow","page":"Developing Persefone","title":"Development workflow","text":"","category":"section"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"Pull the current version from the master branch on Gitlab: https://git.idiv.de/persefone/persefone-model.\nIf you are working on a new feature, create a new branch to avoid breaking the master branch. (The master branch on Github should always be in a runnable and error-free state.)\nImplement your changes.\nRun an example simulation and the test suite to make sure everything works without crashing (make run and make test on Linux, or execute run.jl and test/runtests.jl manually.)\nCommit your work frequently, and try to keep each commit small. Don't forget to add relevant tests to the test suite.\nOnce your satisfied with your work, do another pull/merge from the master branch in case somebody else changed the branch in the meantime. Then merge your work into master and push to the Gitlab server.\nRepeat :-)","category":"page"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"The Gitlab issue tracker can be used to create, discuss, and assign tasks, as well as to monitor progress towards milestones/releases. Once we have a first release, we will start using semantic versioning and a changelog.","category":"page"},{"location":"developing.html#Important-libraries","page":"Developing Persefone","title":"Important libraries","text":"","category":"section"},{"location":"developing.html#Revise.jl","page":"Developing Persefone","title":"Revise.jl","text":"","category":"section"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"Revise.jl allows one to reload code without restarting the Julia interpreter. Get it with Pkg.add(\"Revise\"), then add using Revise to .julia/config/startup.jl to have it automatically available.","category":"page"},{"location":"developing.html#Test","page":"Developing Persefone","title":"Test","text":"","category":"section"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"Persefone uses the inbuilt Julia testing framework. All new functions should have appropriate tests written for them in the appropriate file in the test directory. (See test/runtests.jl for details.) There are three ways to run the test suite: in the terminal, executing make test or cd test; julia runtests.jl; or in the Julia REPL, Pkg.activate(\".\"); Pkg.test().","category":"page"},{"location":"developing.html#Documenter.jl","page":"Developing Persefone","title":"Documenter.jl","text":"","category":"section"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"The HTML documentation is generated using Documenter.jl. Therefore, all new functions should have docstrings attached. New files need to be integrated into the relevant documentation source files in docs/src, and if necessary into docs/builddocs.jl. To build the documentation, run make docs, or cd docs; julia builddocs.jl (if using the latter, don't forget to update the date and commit in docs/src/index.md).","category":"page"},{"location":"developing.html#Graphics-and-user-interface","page":"Developing Persefone","title":"Graphics and user interface","text":"","category":"section"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"Persefone uses Makie as a plotting library to generate its output graphics. Additionally, Persefone Desktop uses QML.jl to create its graphical user interface.","category":"page"},{"location":"developing.html#Unitful.jl","page":"Developing Persefone","title":"Unitful.jl","text":"","category":"section"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"Throughout the source code, variables can be tagged with their appropriate units using the Unitful.jl library. This makes the code easier to understand, and also allows automatic unit conversion:","category":"page"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"julia> 1ha == 10000m²\ntrue\n\njulia> 2km |> m\n2000 m\n\njulia> 2km / 10m\n200.0","category":"page"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"Within Persefone, the following units and dimensions have been imported for direct usage: cm, m, km, m², ha, km², mg, g, kg, Length, Area, Mass.","category":"page"},{"location":"developing.html#Dates","page":"Developing Persefone","title":"Dates","text":"","category":"section"},{"location":"developing.html","page":"Developing Persefone","title":"Developing Persefone","text":"Persefone expands the default Dates library with the AnnualDate type, which can be used to store dates that recur every year (e.g. migration or harvest). AnnualDates can be compared and added/subtracted just as normal dates. Use thisyear() to convert an AnnualDate to a Date.","category":"page"},{"location":"simulation.html#Simulation","page":"Simulation","title":"Simulation","text":"","category":"section"},{"location":"simulation.html","page":"Simulation","title":"Simulation","text":"The core and world directories hold source files that are important for all submodels, including scheduling, landscape, weather, and input/output functions.","category":"page"},{"location":"simulation.html#Persefone.jl","page":"Simulation","title":"Persefone.jl","text":"","category":"section"},{"location":"simulation.html","page":"Simulation","title":"Simulation","text":"This file defines the module, including all exported symbols and two high-level types.","category":"page"},{"location":"simulation.html","page":"Simulation","title":"Simulation","text":"Modules = [Persefone]\nPages = [\"Persefone.jl\", \"core/utils.jl\"]","category":"page"},{"location":"simulation.html#Persefone.ModelAgent","page":"Simulation","title":"Persefone.ModelAgent","text":"ModelAgent\n\nThe supertype of all agents in the model (animal species, farmer types, farmplots).\n\n\n\n\n\n","category":"type"},{"location":"simulation.html#Persefone.SimulationModel","page":"Simulation","title":"Persefone.SimulationModel","text":"SimulationModel\n\nThe supertype of AgricultureModel. This is needed to avoid circular dependencies (most types and functions depend on SimulationModel, but the definition of the model struct depends on these types).\n\n\n\n\n\n","category":"type"},{"location":"simulation.html#Persefone.AnnualDate","page":"Simulation","title":"Persefone.AnnualDate","text":"AnnualDate\n\nA type to handle recurring dates (e.g. migration, harvest). Stores a month and a day, and can be compared against normal dates. To save typing, a Tuple{Int64,Int64} is automatically converted to an AnnualDate, allowing this syntax: nestingend::AnnualDate = (August, 15).\n\n\n\n\n\n","category":"type"},{"location":"simulation.html#Base.randn","page":"Simulation","title":"Base.randn","text":"randn(vector)\n\nReturn a random element from the given vector, following a (mostly) normal distribution based on index values (i.e. elements in the middle of the vector will be returned most frequently).\n\n\n\n\n\n","category":"function"},{"location":"simulation.html#Persefone.bounds-Tuple{Number}","page":"Simulation","title":"Persefone.bounds","text":"bounds(x; max=Inf, min=0)\n\nA utility function to make sure that a number is within a given set of bounds. Returns max/min if x is greater/less than this.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.cycle!","page":"Simulation","title":"Persefone.cycle!","text":"cycle!(vector, n=1)\n\nMove the first element of the vector to the end, repeat n times.\n\n\n\n\n\n","category":"function"},{"location":"simulation.html#Persefone.thisyear-Tuple{AnnualDate, SimulationModel}","page":"Simulation","title":"Persefone.thisyear","text":"thisyear(annualdate, model)\nnextyear(annualdate, model)\nlastyear(annualdate, model)\n\nConvert an AnnualDate to a Date, using the current/next/previous year of the simulation run.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.@areaof-Tuple{Any}","page":"Simulation","title":"Persefone.@areaof","text":"@areaof(npixels)\n\nCalculate the area of a given number of landscape pixels, knowing the resolution of the world map (requires the model object to be available).\n\n\n\n\n\n","category":"macro"},{"location":"simulation.html#Persefone.@chance-Tuple{Any}","page":"Simulation","title":"Persefone.@chance","text":"@chance(odds)\n\nReturn true if a random number is less than the odds (0.0 <= odds <= 1.0), using the model RNG. This is a utility wrapper that can only be used a context where the model object is available.\n\n\n\n\n\n","category":"macro"},{"location":"simulation.html#Persefone.@rand-Tuple","page":"Simulation","title":"Persefone.@rand","text":"@rand(args...)\n\nReturn a random number or element from the sample, using the model RNG. This is a utility wrapper that can only be used a context where the model object is available.\n\n\n\n\n\n","category":"macro"},{"location":"simulation.html#Persefone.@randn-Tuple{Any}","page":"Simulation","title":"Persefone.@randn","text":"@randn(vector)\n\nReturn a normally-distributed random number or element from the sample, using the model RNG. This is a utility wrapper that can only be used a context where the model object is available.\n\n\n\n\n\n","category":"macro"},{"location":"simulation.html#Persefone.@shuffle!-Tuple{Any}","page":"Simulation","title":"Persefone.@shuffle!","text":"@shuffle!(collection)\n\nShuffle the given collection in place, using the model RNG. This is a utility wrapper that can only be used a context where the model object is available.\n\n\n\n\n\n","category":"macro"},{"location":"simulation.html#simulation.jl","page":"Simulation","title":"simulation.jl","text":"","category":"section"},{"location":"simulation.html","page":"Simulation","title":"Simulation","text":"This file includes the basal functions for initialising and running simulations.","category":"page"},{"location":"simulation.html","page":"Simulation","title":"Simulation","text":"Modules = [Persefone]\nPages = [\"core/simulation.jl\"]","category":"page"},{"location":"simulation.html#Persefone.AgricultureModel","page":"Simulation","title":"Persefone.AgricultureModel","text":"AgricultureModel\n\nThis is the heart of the model - a struct that holds all data and state for one simulation run. It is created by initialise and passed as input to most model functions.\n\n\n\n\n\n","category":"type"},{"location":"simulation.html#Persefone.finalise!-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.finalise!","text":"finalise!(model)\n\nWrap up the simulation. Finalises and visualises output, then terminates.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.initialise-Tuple{}","page":"Simulation","title":"Persefone.initialise","text":"initialise(configfile=PARAMFILE, params=Dict())\n\nInitialise the model: read in parameters, create the output data directory, and instantiate the SimulationModel object(s). Optionally allows specifying the configuration file and overriding specific parameters. This returns a single model object, unless the config file contains multiple values for one or more parameters, in which case it creates a full-factorial simulation experiment and returns a vector of model objects.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.initmodel-Tuple{Dict{String, Any}}","page":"Simulation","title":"Persefone.initmodel","text":"initmodel(settings)\n\nInitialise a model object using a ready-made settings dict. This is a helper function for initialise().\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.nagents-Tuple{AgricultureModel}","page":"Simulation","title":"Persefone.nagents","text":"nagents(model)\n\nReturn the total number of agents in a model object.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.paramscan-Tuple{Dict{String, Any}, Vector{String}}","page":"Simulation","title":"Persefone.paramscan","text":"paramscan(settings)\n\nCreate a list of settings dicts, covering all possible parameter combinations given by the input settings (i.e. a full-factorial experiment). This is a helper function for initialise().\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.simulate!-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.simulate!","text":"simulate!(model)\n\nCarry out a complete simulation run using a pre-initialised model object.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.simulate-Tuple{}","page":"Simulation","title":"Persefone.simulate","text":"simulate(configfile=PARAMFILE, params=Dict())\n\nInitialise one or more model objects and carry out a full simulation experiment, optionally specifying a configuration file and/or specific parameters.\n\nThis is the default way to run a Persefone simulation.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.stepagent!-Tuple{ModelAgent, SimulationModel}","page":"Simulation","title":"Persefone.stepagent!","text":"stepagent!(agent, model)\n\nAll agent types must define a stepagent!() method that will be called daily.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.stepsimulation!-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.stepsimulation!","text":"stepsimulation!(model)\n\nExecute one update of the model.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#landscape.jl","page":"Simulation","title":"landscape.jl","text":"","category":"section"},{"location":"simulation.html","page":"Simulation","title":"Simulation","text":"This file manages the landscape maps that underlie the model.","category":"page"},{"location":"simulation.html","page":"Simulation","title":"Simulation","text":"Modules = [Persefone]\nPages = [\"world/landscape.jl\"]","category":"page"},{"location":"simulation.html#Persefone.FarmEvent","page":"Simulation","title":"Persefone.FarmEvent","text":"FarmEvent\n\nA data structure to define a landscape event, giving its type, spatial extent, and duration.\n\n\n\n\n\n","category":"type"},{"location":"simulation.html#Persefone.LandCover","page":"Simulation","title":"Persefone.LandCover","text":"The land cover classes encoded in the Mundialis Sentinel data.\n\n\n\n\n\n","category":"type"},{"location":"simulation.html#Persefone.Management","page":"Simulation","title":"Persefone.Management","text":"The types of management event that can be simulated\n\n\n\n\n\n","category":"type"},{"location":"simulation.html#Persefone.Pixel","page":"Simulation","title":"Persefone.Pixel","text":"Pixel\n\nA pixel is a simple data structure to combine land use and ownership information in a single object. The model landscape consists of a matrix of pixels. (Note: further landscape information may be added here in future.)\n\n\n\n\n\n","category":"type"},{"location":"simulation.html#Persefone.createevent!","page":"Simulation","title":"Persefone.createevent!","text":"createevent!(model, pixels, name, duration=1)\n\nAdd a farm event to the specified pixels (a vector of position tuples) for a given duration.\n\n\n\n\n\n","category":"function"},{"location":"simulation.html#Persefone.directionto-Tuple{Tuple{Int64, Int64}, SimulationModel, Function}","page":"Simulation","title":"Persefone.directionto","text":"directionto(pos, model, habitatdescriptor)\n\nCalculate the direction from the given location to the closest location matching the habitat descriptor function. Returns a coordinate tuple (target - position), or nothing if no matching habitat is found. Caution: can be computationally expensive!\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.directionto-Tuple{Tuple{Int64, Int64}, SimulationModel, Persefone.LandCover}","page":"Simulation","title":"Persefone.directionto","text":"directionto(pos, model, habitattype)\n\nCalculate the direction from the given location to the closest habitat of the specified type. Returns a coordinate tuple (target - position), or nothing if no matching habitat is found. Caution: can be computationally expensive!\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.distanceto-Tuple{Tuple{Int64, Int64}, SimulationModel, Function}","page":"Simulation","title":"Persefone.distanceto","text":"distanceto(pos, model, habitatdescriptor)\n\nCalculate the distance from the given location to the closest location matching the habitat descriptor function. Caution: can be computationally expensive!\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.distanceto-Tuple{Tuple{Int64, Int64}, SimulationModel, Persefone.LandCover}","page":"Simulation","title":"Persefone.distanceto","text":"distanceto(pos, model, habitattype)\n\nCalculate the distance from the given location to the closest habitat of the specified type. Caution: can be computationally expensive!\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.distancetoedge-Tuple{Tuple{Int64, Int64}, SimulationModel}","page":"Simulation","title":"Persefone.distancetoedge","text":"distancetoedge(pos, model)\n\nCalculate the distance from the given location to the closest neighbouring habitat. Caution: can be computationally expensive!\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.farmplot-Tuple{Tuple{Int64, Int64}, SimulationModel}","page":"Simulation","title":"Persefone.farmplot","text":"farmplot(position, model)\n\nReturn the farm plot at this position, or nothing if there is none (utility wrapper).\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.inbounds-Tuple{Any, Any}","page":"Simulation","title":"Persefone.inbounds","text":"inbounds(pos, model)\n\nIs the given position within the bounds of the model landscape?\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.initlandscape-Tuple{String, String, String}","page":"Simulation","title":"Persefone.initlandscape","text":"initlandscape(directory, landcovermap, farmfieldsmap)\n\nInitialise the model landscape based on the map files specified in the configuration. Returns a matrix of pixels.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.landcover-Tuple{Tuple{Int64, Int64}, SimulationModel}","page":"Simulation","title":"Persefone.landcover","text":"landcover(position, model)\n\nReturn the land cover class at this position (utility wrapper).\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.randomdirection-Tuple{SimulationModel, Union{Unitful.Quantity{T, 𝐋, U}, Unitful.Level{L, S, Unitful.Quantity{T, 𝐋, U}} where {L, S}} where {T, U}}","page":"Simulation","title":"Persefone.randomdirection","text":"randomdirection(model, distance)\n\nGet a random direction coordinate tuple within the specified distance.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.randompixel","page":"Simulation","title":"Persefone.randompixel","text":"randompixel(position, model, range, habitatdescriptor)\n\nFind a random pixel within a given range of the position that matches the habitatdescriptor (create this using @habitat).\n\n\n\n\n\n","category":"function"},{"location":"simulation.html#Persefone.safebounds-Tuple{Tuple{Int64, Int64}, SimulationModel}","page":"Simulation","title":"Persefone.safebounds","text":"safebounds(pos, model)\n\nMake sure that a given position is within the bounds of the model landscape.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.updateevents!-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.updateevents!","text":"updateevents!(model)\n\nCycle through the list of events, removing those that have expired.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#weather.jl","page":"Simulation","title":"weather.jl","text":"","category":"section"},{"location":"simulation.html","page":"Simulation","title":"Simulation","text":"This file reads in weather data and makes it available to the model.","category":"page"},{"location":"simulation.html","page":"Simulation","title":"Simulation","text":"Modules = [Persefone]\nPages = [\"world/weather.jl\"]","category":"page"},{"location":"simulation.html#Persefone.Weather","page":"Simulation","title":"Persefone.Weather","text":"Weather\n\nA single weather datum, combining the observations from one day.\n\n\n\n\n\n","category":"type"},{"location":"simulation.html#Persefone.initweather-Tuple{String, Dates.Date, Dates.Date}","page":"Simulation","title":"Persefone.initweather","text":"initweather(weatherfile, startdate, enddate)\n\nLoad a weather file, extract the values that are relevant to this model run (specified by start and end dates), and return a dictionary of Weather objects mapped to dates.\n\nNote: This requires a weather file in the format produced by data/extract_weather_data.R.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.maxtemp-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.maxtemp","text":"maxtemp(model)\n\nReturn today's maximum temperature in °C.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.meantemp-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.meantemp","text":"meantemp(model)\n\nReturn today's mean temperature in °C.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.mintemp-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.mintemp","text":"mintemp(model)\n\nReturn today's minimum temperature in °C.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.precipitation-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.precipitation","text":"precipitation(model)\n\nReturn today's total precipitation in mm.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.sunshine-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.sunshine","text":"sunshine(model)\n\nReturn today's sunshine duration in hours.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.vapourpressure-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.vapourpressure","text":"vapourpressure(model)\n\nReturn today's average vapour pressure in hPa.\n\n\n\n\n\n","category":"method"},{"location":"simulation.html#Persefone.windspeed-Tuple{SimulationModel}","page":"Simulation","title":"Persefone.windspeed","text":"windspeed(model)\n\nReturn today's average windspeed in m/s.\n\n\n\n\n\n","category":"method"},{"location":"farm.html#Farm-submodel","page":"Farm submodel","title":"Farm submodel","text":"","category":"section"},{"location":"farm.html","page":"Farm submodel","title":"Farm submodel","text":"Eventually, the aim is to create a full socio-economic farm decision model for Persefone. However, for the time being, we will restrict ourselves to a simple model that executes typical farm operations and crop rotations.","category":"page"},{"location":"farm.html#farm.jl","page":"Farm submodel","title":"farm.jl","text":"","category":"section"},{"location":"farm.html","page":"Farm submodel","title":"Farm submodel","text":"This file is responsible for managing the farm module(s).","category":"page"},{"location":"farm.html","page":"Farm submodel","title":"Farm submodel","text":"Modules = [Persefone]\nPages = [\"farm/farm.jl\"]","category":"page"},{"location":"farm.html#Persefone.BasicFarmer","page":"Farm submodel","title":"Persefone.BasicFarmer","text":"BasicFarmer\n\nThe BasicFarmer type simply applies a set crop rotation to his fields and keeps track of income.\n\n\n\n\n\n","category":"type"},{"location":"farm.html#Persefone.Farmer","page":"Farm submodel","title":"Persefone.Farmer","text":"This is the agent type for the farm ABM.\n\n\n\n\n\n","category":"type"},{"location":"farm.html#Persefone.findsetasides-Tuple{Persefone.BasicFarmer, SimulationModel}","page":"Farm submodel","title":"Persefone.findsetasides","text":"findsetasides(farmer, model)\n\nReturn a vector of field IDs that this farmer should keep fallow to satisfy the configured set-aside rules.\n\n\n\n\n\n","category":"method"},{"location":"farm.html#Persefone.initbasicfarms!-Tuple{SimulationModel}","page":"Farm submodel","title":"Persefone.initbasicfarms!","text":"initbasicfarms!(model)\n\nInitialise the basic farm model. All fields are controlled by a single farmer actor and are assigned as grassland, set-aside, or arable land with a crop rotation.\n\n\n\n\n\n","category":"method"},{"location":"farm.html#Persefone.initfarms!-Tuple{SimulationModel}","page":"Farm submodel","title":"Persefone.initfarms!","text":"initfarms!(model)\n\nInitialise the model with a set of farm agents, depending on the configured farm model.\n\n\n\n\n\n","category":"method"},{"location":"farm.html#Persefone.stepagent!-Tuple{Persefone.BasicFarmer, SimulationModel}","page":"Farm submodel","title":"Persefone.stepagent!","text":"stepagent!(farmer, model)\n\nUpdate a farmer by one day. Cycle through all fields and see what management is needed.\n\n\n\n\n\n","category":"method"},{"location":"adapting.html#Adapting-Persefone","page":"Adapting Persefone","title":"Adapting Persefone","text":"","category":"section"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"A key development goal of Persefone is to be FAIR: findable, accessible, interoperable, and reusable. We aim to build a model that is both easy to use and easy to adapt to new situations.","category":"page"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"There are multiple ways to adapt Persefone for a new modelling study:","category":"page"},{"location":"adapting.html#Changing-the-parameters","page":"Adapting Persefone","title":"Changing the parameters","text":"","category":"section"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"The simplest way to adapt Persefone is simply by changing the parameters. Copy src/parameters.toml to a new location, adjust it to your needs, and run the model using julia run.jl -c <configfile>.","category":"page"},{"location":"adapting.html#Changing-the-region","page":"Adapting Persefone","title":"Changing the region","text":"","category":"section"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"To apply Persefone to a new region, you need to create new input maps of land cover and farmplots. How to do so is described here.","category":"page"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"You may also need to change aspects of the farm submodel. This is not yet implemented.","category":"page"},{"location":"adapting.html#Adding-new-animal-species","page":"Adapting Persefone","title":"Adding new animal species","text":"","category":"section"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"To implement a new species to the nature submodel, add a new file to the src/nature/species directory and include it in src/Persefone.jl, as well as adding the name of the species to the nature.targetspecies parameter. In the new file, implement the species using the @species syntax as described here.","category":"page"},{"location":"adapting.html#Adding-new-crop-species","page":"Adapting Persefone","title":"Adding new crop species","text":"","category":"section"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"Crop growth is not yet implemented.","category":"page"},{"location":"adapting.html#Adding-new-farmer-behaviour","page":"Adapting Persefone","title":"Adding new farmer behaviour","text":"","category":"section"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"Farmer behaviour is not yet implemented.","category":"page"},{"location":"adapting.html#Adding-a-new-submodel","page":"Adapting Persefone","title":"Adding a new submodel","text":"","category":"section"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"To add a new submodel in addition to the existing ones (nature, crop, and farm), you need to familiarise yourself with the software architecture. In particular, you need to understand how initialisation and scheduling works in src/core/simulation.jl, and what information is stored in the model object.","category":"page"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"If you want to add a new agent type, create a subtype of ModelAgent, implement a stepagent! function for it and add it to Persefone.initmodel.","category":"page"},{"location":"adapting.html#Linking-to-another-model","page":"Adapting Persefone","title":"Linking to another model","text":"","category":"section"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"Persefone can also be used as a software library and be called from another application. For this purpose, it is set up as a Julia package, with a module exporting various model functions, types, and macros (see src/Persefone.jl). Of particular interest are the functions simulate (set up and run a complete simulation based on a config file), initialise (create one or more model objects from a config file), simulate! (do a simulation run with an existing model object), and stepsimulation! (update a model object by one time step).","category":"page"},{"location":"adapting.html","page":"Adapting Persefone","title":"Adapting Persefone","text":"To interface with Julia from another language, see the Julia docs here and here.","category":"page"},{"location":"crop-models.html#Crop-models","page":"Crop models","title":"Crop models","text":"","category":"section"},{"location":"crop-models.html","page":"Crop models","title":"Crop models","text":"TODO","category":"page"},{"location":"crop-models.html#ALMaSS","page":"Crop models","title":"ALMaSS","text":"","category":"section"},{"location":"crop-models.html#AquaCrop","page":"Crop models","title":"AquaCrop","text":"","category":"section"},{"location":"odd.html#Overview,-Design,-Details-(ODD)","page":"Overview, Design, Details (ODD)","title":"Overview, Design, Details (ODD)","text":"","category":"section"},{"location":"odd.html","page":"Overview, Design, Details (ODD)","title":"Overview, Design, Details (ODD)","text":"The model description follows the ODD (Overview, Design concepts, Details) protocol (Grimm et al., 2006; 2010; 2020):","category":"page"},{"location":"odd.html#.-Purpose","page":"Overview, Design, Details (ODD)","title":"1. Purpose","text":"","category":"section"},{"location":"odd.html#.-Entities,-state-variables,-and-scales","page":"Overview, Design, Details (ODD)","title":"2. Entities, state variables, and scales","text":"","category":"section"},{"location":"odd.html#.-Process-overview-and-scheduling","page":"Overview, Design, Details (ODD)","title":"3. Process overview and scheduling","text":"","category":"section"},{"location":"odd.html#.-Design-concepts","page":"Overview, Design, Details (ODD)","title":"4. Design concepts","text":"","category":"section"},{"location":"odd.html#.1-Basic-principles","page":"Overview, Design, Details (ODD)","title":"4.1 Basic principles","text":"","category":"section"},{"location":"odd.html#.2-Emergence","page":"Overview, Design, Details (ODD)","title":"4.2 Emergence","text":"","category":"section"},{"location":"odd.html#.3-Adaptation","page":"Overview, Design, Details (ODD)","title":"4.3 Adaptation","text":"","category":"section"},{"location":"odd.html#.4-Objectives","page":"Overview, Design, Details (ODD)","title":"4.4 Objectives","text":"","category":"section"},{"location":"odd.html#.5-Learning","page":"Overview, Design, Details (ODD)","title":"4.5 Learning","text":"","category":"section"},{"location":"odd.html#.6-Prediction","page":"Overview, Design, Details (ODD)","title":"4.6 Prediction","text":"","category":"section"},{"location":"odd.html#.7-Sensing","page":"Overview, Design, Details (ODD)","title":"4.7 Sensing","text":"","category":"section"},{"location":"odd.html#.8-Interaction","page":"Overview, Design, Details (ODD)","title":"4.8 Interaction","text":"","category":"section"},{"location":"odd.html#.9-Stochasticity","page":"Overview, Design, Details (ODD)","title":"4.9 Stochasticity","text":"","category":"section"},{"location":"odd.html#.10-Collectives","page":"Overview, Design, Details (ODD)","title":"4.10 Collectives","text":"","category":"section"},{"location":"odd.html#.11-Observation","page":"Overview, Design, Details (ODD)","title":"4.11 Observation","text":"","category":"section"},{"location":"odd.html#.-Initialisation","page":"Overview, Design, Details (ODD)","title":"5. Initialisation","text":"","category":"section"},{"location":"odd.html#.-Input-data","page":"Overview, Design, Details (ODD)","title":"6. Input data","text":"","category":"section"},{"location":"odd.html#.-Submodels","page":"Overview, Design, Details (ODD)","title":"7. Submodels","text":"","category":"section"},{"location":"odd.html#.-References","page":"Overview, Design, Details (ODD)","title":"8. References","text":"","category":"section"},{"location":"gis.html#Maps-and-weather-data","page":"Maps and weather data","title":"Maps and weather data","text":"","category":"section"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"Persefone currently requires two separate map input files: one for land cover, the other for field geometry. Additionally, a weather input file is needed. This documents describe how to obtain and process the data needed for each of these.","category":"page"},{"location":"gis.html#Land-cover-maps","page":"Maps and weather data","title":"Land cover maps","text":"","category":"section"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"Land cover maps for Germany at 10m resolution can be obtained from Mundialis. These are generated annually from Sentinel data and comprise the following land cover classes:","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"10: forest\n20: low vegetation\n30: water\n40: built-up\n50: bare soil\n60: agriculture","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"To create a Persefone map input file, you need to crop the national Mundialis map to the extent that you want to simulate (suggestion: approx. 10x10km is a reasonable size).","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"To do so, download the Mundialis map and import it into QGIS. Then create a new vector layer and create a rectangle feature to delimit the extent of your region. Then go to Raster -> Extraction -> Clip Raster by Extent. Select the Mundialis map as the input layer, set the clipping extent by choosing your region vector layer under Calculate from Layer and specify the output file name before clicking Run. This will generate a TIF file that you can pass to Persefone as the landcovermap parameter.","category":"page"},{"location":"gis.html#Field-ID-maps","page":"Maps and weather data","title":"Field ID maps","text":"","category":"section"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"In addition to the land cover data explained above, Persefone also needs information about agricultural field boundaries in order to assign these to the farming agents. Unfortunately, getting this is rather more complicated.","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"In the EU, every country runs a Land Parcel Information System (LPIS) to administer CAP payments. In Germany, this is called InVeKoS and is run by the Länder. For example, you can view and download the InVeKoS data for Thüringen here. This gives you a vector layer which can be loaded into QGIS. However, it needs to be converted to a raster layer and cropped to your region extent before it can be used in Persefone.","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"The first thing to do is to make sure that the vector layer has a numeric (!) field with a unique identifier for each field block (check the attribute table). The Thüringen data has the FBI (\"Feldblockident\") field, but this is a string value and therefore not usable by the rasteriser. So, we set the vector layer to edit mode, open the field calculator, enter the information for a new field (call it \"FID\" and set it to a 32-bit integer), and enter @row_number in the expression field. Then save the layer and close the calculator.","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"Secondly, you need to filter out all non-field/non-grassland plot types. (LPIS also has data on forests and various landscape elements that are not relevant to our use case.) Assuming you're working with the Thüringen InVeKoS data (other data sets may have a different structure), right-click on the layer name in QGIS' layer overview and click on \"Filter...\". Then, enter this expression in the query builder: \"BNK\" = 'AL' OR \"BNK\" = 'GL' and click \"OK\". This will select only field and grassland plots.","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"Next, open the rasteriser (Raster -> Conversion -> Rasterize). Select your FID field as the \"Field to use for a burn-in value\", and your land cover map (as created above - this ensures the two layers match) as the output extent. Make sure the \"fixed value to burn\" is \"Not set\". Then choose \"Georeferenced units\" as the \"Out raster size units\" and set horizontal and vertical resolution to 10.0. In the advanced parameters, set the output data type to UInt32. Finally, enter an output file name and run. The resulting TIF file can be passed to Persefone as the farmfieldmap parameter.","category":"page"},{"location":"gis.html#Weather-data","page":"Maps and weather data","title":"Weather data","text":"","category":"section"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"Currently, Persefone uses historical weather data from the closes weather station as its weather input. (In future, this may be changed to a more detailed raster input, which could then also provide future weather predictions under climate change.) Weather data can be downloaded from the German weather service (DWD). The relevant data are in the folder daily/kl/historical.","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"The description of this data set and the list of weather stations can be found in the Persefone repository, in the docs folder (or downloaded from the link above). Using the list of weather stations, select the one closest to the area of study. Note that not all stations were continuously in operation; make sure that the selected station covers the years of interest.","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"Region Jena: station number 02444 (\"Jena (Sternwarte)\")\nRegion Eichsfeld:\nRegion Thüringer Becken: station number 00896 (\"Dachwig\")\nRegion Hohenlohe:\nRegion Bodensee:\nRegion Nördlicher Oberrhein:","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"From the link above, download the ZIP file associated with the station number. Check the included meta-data if there is any important missing data, or other relevant information (e.g. the station moved position).","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"Then use data/extract_weather_data.R to process the data into the format needed by Persefone:","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"library(tidyverse)\n\n## replace this with the correct file name\nweatherfile = \"produkt_klima_tag_18210101_20221231_02444.txt\"\n\ndata = read.table(weatherfile, sep=\";\", header=T)\n\nweather = data %>%\n ## drop values before 2000 to save space\n filter(MESS_DATUM>=20000101) %>%\n ## select relevant variables and convert place-holder values to NA\n select(MESS_DATUM, FM, RSK, SDK, VPM, TMK, TXK, TNK) %>%\n mutate(date=MESS_DATUM, MESS_DATUM=NULL,\n mean_windspeed=na_if(FM, -999), FM=NULL,\n precipitation=na_if(RSK, -999), RSK=NULL,\n sunshine_hours=na_if(SDK, -999), SDK=NULL,\n mean_vapour_pressure=na_if(VPM, -999), VPM=NULL,\n mean_temperature=na_if(TMK, -999), TMK=NULL,\n max_temperature=na_if(TXK, -999), TXK=NULL,\n min_temperature=na_if(TNK, -999), TNK=NULL)\n\n## replace with the desired file name\nwrite.csv(weather, file=\"weather_jena.csv\", row.names=FALSE)","category":"page"},{"location":"gis.html","page":"Maps and weather data","title":"Maps and weather data","text":"Note: for calculating the reference evapotranspiration ET_0 (needed for the AquaCrop model), use the FAO Penman-Monteith equation.","category":"page"},{"location":"crops.html#Crop-submodel","page":"Crop submodel","title":"Crop submodel","text":"","category":"section"},{"location":"crops.html","page":"Crop submodel","title":"Crop submodel","text":"Eventually, the plan is to have Persefone include a reimplementation of the AquaCrop model, a well-established crop growth model developed by the FAO. Until then, we are using the crop growth submodel used in ALMaSS.","category":"page"},{"location":"crops.html#farmplot.jl","page":"Crop submodel","title":"farmplot.jl","text":"","category":"section"},{"location":"crops.html","page":"Crop submodel","title":"Crop submodel","text":"This file is responsible for the farm plots, i.e. the indidivual fields that farmers manage.","category":"page"},{"location":"crops.html","page":"Crop submodel","title":"Crop submodel","text":"Modules = [Persefone]\nPages = [\"crop/farmplot.jl\"]","category":"page"},{"location":"crops.html#Persefone.FarmPlot","page":"Crop submodel","title":"Persefone.FarmPlot","text":"FarmPlot\n\nA struct representing a single field, on which a crop can be grown.\n\n\n\n\n\n","category":"type"},{"location":"crops.html#Persefone.averagefieldsize-Tuple{SimulationModel}","page":"Crop submodel","title":"Persefone.averagefieldsize","text":"averagefieldsize(model)\n\nCalculate the average field size in hectares for the model landscape.\n\n\n\n\n\n","category":"method"},{"location":"crops.html#Persefone.cropcover-Tuple{Tuple{Int64, Int64}, SimulationModel}","page":"Crop submodel","title":"Persefone.cropcover","text":"cropcover(model, position)\n\nReturn the crop cover of the crop at this position, or nothing if there is no crop here (utility wrapper).\n\n\n\n\n\n","category":"method"},{"location":"crops.html#Persefone.cropheight-Tuple{Tuple{Int64, Int64}, SimulationModel}","page":"Crop submodel","title":"Persefone.cropheight","text":"cropheight(model, position)\n\nReturn the height of the crop at this position, or nothing if there is no crop here (utility wrapper).\n\n\n\n\n\n","category":"method"},{"location":"crops.html#Persefone.cropname-Tuple{Tuple{Int64, Int64}, SimulationModel}","page":"Crop submodel","title":"Persefone.cropname","text":"cropname(model, position)\n\nReturn the name of the crop at this position, or an empty string if there is no crop here (utility wrapper).\n\n\n\n\n\n","category":"method"},{"location":"crops.html#Persefone.croptype-Tuple{Tuple{Int64, Int64}, SimulationModel}","page":"Crop submodel","title":"Persefone.croptype","text":"croptype(model, position)\n\nReturn the crop at this position, or nothing if there is no crop here (utility wrapper).\n\n\n\n\n\n","category":"method"},{"location":"crops.html#Persefone.harvest!-Union{Tuple{T}, Tuple{FarmPlot{T}, SimulationModel}} where T","page":"Crop submodel","title":"Persefone.harvest!","text":"harvest!(farmplot, model)\n\nHarvest the crop of this farmplot.\n\n\n\n\n\n","category":"method"},{"location":"crops.html#Persefone.isgrassland-Tuple{FarmPlot, SimulationModel}","page":"Crop submodel","title":"Persefone.isgrassland","text":"isgrassland(farmplot, model)\n\nClassify a farmplot as grassland or not (i.e., is the landcover of >80% of its pixels grass?)\n\n\n\n\n\n","category":"method"},{"location":"crops.html#Persefone.sow!-Tuple{FarmPlot, SimulationModel, String}","page":"Crop submodel","title":"Persefone.sow!","text":"sow!(farmplot, model, cropname)\n\nSow the specified crop on the farmplot.\n\n\n\n\n\n","category":"method"},{"location":"crops.html#Persefone.stepagent!-Union{Tuple{T}, Tuple{FarmPlot{T}, SimulationModel}} where T","page":"Crop submodel","title":"Persefone.stepagent!","text":"stepagent!(farmplot, model)\n\nUpdate a farm plot by one day.\n\n\n\n\n\n","category":"method"},{"location":"crops.html#Persefone.@harvest-Tuple{}","page":"Crop submodel","title":"Persefone.@harvest","text":"@harvest()\n\nHarvest the current field. Requires the variables field and model.\n\n\n\n\n\n","category":"macro"},{"location":"crops.html#Persefone.@sow-Tuple{Any}","page":"Crop submodel","title":"Persefone.@sow","text":"@sow(cropname)\n\nSow the named crop on the current field. Requires the variables field and model.\n\n\n\n\n\n","category":"macro"},{"location":"crops.html#crops.jl","page":"Crop submodel","title":"crops.jl","text":"","category":"section"},{"location":"crops.html","page":"Crop submodel","title":"Crop submodel","text":"This includes the types and functions needed for all crop growth model, which are also referenced by the other submodels.","category":"page"},{"location":"crops.html","page":"Crop submodel","title":"Crop submodel","text":"Modules = [Persefone]\nPages = [\"crop/crops.jl\"]","category":"page"},{"location":"management.html#Farm-management","page":"Farm management","title":"Farm management","text":"","category":"section"},{"location":"management.html","page":"Farm management","title":"Farm management","text":"TODO","category":"page"},{"location":"management.html#Crop-rotations-and-management","page":"Farm management","title":"Crop rotations and management","text":"","category":"section"},{"location":"management.html#Environmental-regulations","page":"Farm management","title":"Environmental regulations","text":"","category":"section"},{"location":"index.html","page":"Introduction","title":"Introduction","text":"CurrentModule = Persefone","category":"page"},{"location":"index.html","page":"Introduction","title":"Introduction","text":"(Image: Persefone.jl splash screen)","category":"page"},{"location":"index.html#Introduction","page":"Introduction","title":"Introduction","text":"","category":"section"},{"location":"index.html","page":"Introduction","title":"Introduction","text":"Persefone.jl models agricultural practice and how it impacts animal species at a landscape scale. It includes a farm submodel, a crop growth submodel, and individual-based models of multiple indicator species. Its aim is to investigate how changes in farm operations (e.g. through policy changes in the CAP) influence biodiversity.","category":"page"},{"location":"index.html","page":"Introduction","title":"Introduction","text":"The model is open-source software available on Gitlab.","category":"page"},{"location":"index.html","page":"Introduction","title":"Introduction","text":"This documentation was last updated on 2024-09-11 for Persefone.jl v0.5.5 (commit 6b3aee6).","category":"page"}] -} diff --git a/docs/build/simulation.html b/docs/build/simulation.html deleted file mode 100644 index 18d9196..0000000 --- a/docs/build/simulation.html +++ /dev/null @@ -1,4 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Simulation · Persefone.jl</title><meta name="title" content="Simulation · Persefone.jl"/><meta property="og:title" content="Simulation · Persefone.jl"/><meta property="twitter:title" content="Simulation · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li class="is-active"><a class="tocitem" href="simulation.html">Simulation</a><ul class="internal"><li><a class="tocitem" href="#Persefone.jl"><span>Persefone.jl</span></a></li><li><a class="tocitem" href="#simulation.jl"><span>simulation.jl</span></a></li><li><a class="tocitem" href="#landscape.jl"><span>landscape.jl</span></a></li><li><a class="tocitem" href="#weather.jl"><span>weather.jl</span></a></li></ul></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Software API</a></li><li class="is-active"><a href="simulation.html">Simulation</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="simulation.html">Simulation</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/simulation.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Simulation"><a class="docs-heading-anchor" href="#Simulation">Simulation</a><a id="Simulation-1"></a><a class="docs-heading-anchor-permalink" href="#Simulation" title="Permalink"></a></h1><p>The <code>core</code> and <code>world</code> directories hold source files that are important for all submodels, including scheduling, landscape, weather, and input/output functions.</p><h2 id="Persefone.jl"><a class="docs-heading-anchor" href="#Persefone.jl">Persefone.jl</a><a id="Persefone.jl-1"></a><a class="docs-heading-anchor-permalink" href="#Persefone.jl" title="Permalink"></a></h2><p>This file defines the module, including all exported symbols and two high-level types.</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.ModelAgent" href="#Persefone.ModelAgent"><code>Persefone.ModelAgent</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">ModelAgent</code></pre><p>The supertype of all agents in the model (animal species, farmer types, farmplots).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/Persefone.jl#L128-L132">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.SimulationModel" href="#Persefone.SimulationModel"><code>Persefone.SimulationModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">SimulationModel</code></pre><p>The supertype of <a href="@ref">AgricultureModel</a>. This is needed to avoid circular dependencies (most types and functions depend on <code>SimulationModel</code>, but the definition of the model struct depends on these types).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/Persefone.jl#L119-L125">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.AnnualDate" href="#Persefone.AnnualDate"><code>Persefone.AnnualDate</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">AnnualDate</code></pre><p>A type to handle recurring dates (e.g. migration, harvest). Stores a month and a day, and can be compared against normal dates. To save typing, a Tuple{Int64,Int64} is automatically converted to an AnnualDate, allowing this syntax: <code>nestingend::AnnualDate = (August, 15)</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/utils.jl#L21-L28">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Base.randn" href="#Base.randn"><code>Base.randn</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">randn(vector)</code></pre><p>Return a random element from the given vector, following a (mostly) normal distribution based on index values (i.e. elements in the middle of the vector will be returned most frequently).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/utils.jl#L102-L107">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.bounds-Tuple{Number}" href="#Persefone.bounds-Tuple{Number}"><code>Persefone.bounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">bounds(x; max=Inf, min=0)</code></pre><p>A utility function to make sure that a number is within a given set of bounds. Returns <code>max</code>/<code>min</code> if <code>x</code> is greater/less than this.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/utils.jl#L161-L166">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.cycle!" href="#Persefone.cycle!"><code>Persefone.cycle!</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">cycle!(vector, n=1)</code></pre><p>Move the first element of the vector to the end, repeat n times.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/utils.jl#L177-L181">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.thisyear-Tuple{AnnualDate, SimulationModel}" href="#Persefone.thisyear-Tuple{AnnualDate, SimulationModel}"><code>Persefone.thisyear</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">thisyear(annualdate, model) -nextyear(annualdate, model) -lastyear(annualdate, model)</code></pre><p>Convert an AnnualDate to a Date, using the current/next/previous year of the simulation run.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/utils.jl#L89-L95">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@areaof-Tuple{Any}" href="#Persefone.@areaof-Tuple{Any}"><code>Persefone.@areaof</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@areaof(npixels)</code></pre><p>Calculate the area of a given number of landscape pixels, knowing the resolution of the world map (requires the <code>model</code> object to be available).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/utils.jl#L190-L195">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@chance-Tuple{Any}" href="#Persefone.@chance-Tuple{Any}"><code>Persefone.@chance</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@chance(odds)</code></pre><p>Return true if a random number is less than the odds (0.0 <= <code>odds</code> <= 1.0), using the model RNG. This is a utility wrapper that can only be used a context where the <code>model</code> object is available.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/utils.jl#L148-L154">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@rand-Tuple" href="#Persefone.@rand-Tuple"><code>Persefone.@rand</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@rand(args...)</code></pre><p>Return a random number or element from the sample, using the model RNG. This is a utility wrapper that can only be used a context where the <code>model</code> object is available.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/utils.jl#L126-L132">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@randn-Tuple{Any}" href="#Persefone.@randn-Tuple{Any}"><code>Persefone.@randn</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@randn(vector)</code></pre><p>Return a normally-distributed random number or element from the sample, using the model RNG. This is a utility wrapper that can only be used a context where the <code>model</code> object is available.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/utils.jl#L115-L121">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.@shuffle!-Tuple{Any}" href="#Persefone.@shuffle!-Tuple{Any}"><code>Persefone.@shuffle!</code></a> — <span class="docstring-category">Macro</span></header><section><div><pre><code class="language-julia hljs">@shuffle!(collection)</code></pre><p>Shuffle the given collection in place, using the model RNG. This is a utility wrapper that can only be used a context where the <code>model</code> object is available.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/utils.jl#L137-L143">source</a></section></article><h2 id="simulation.jl"><a class="docs-heading-anchor" href="#simulation.jl">simulation.jl</a><a id="simulation.jl-1"></a><a class="docs-heading-anchor-permalink" href="#simulation.jl" title="Permalink"></a></h2><p>This file includes the basal functions for initialising and running simulations.</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.AgricultureModel" href="#Persefone.AgricultureModel"><code>Persefone.AgricultureModel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">AgricultureModel</code></pre><p>This is the heart of the model - a struct that holds all data and state for one simulation run. It is created by <a href="simulation.html#Persefone.initialise-Tuple{}"><code>initialise</code></a> and passed as input to most model functions.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/simulation.jl#L8-L14">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.finalise!-Tuple{SimulationModel}" href="#Persefone.finalise!-Tuple{SimulationModel}"><code>Persefone.finalise!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">finalise!(model)</code></pre><p>Wrap up the simulation. Finalises and visualises output, then terminates.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/simulation.jl#L198-L202">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initialise-Tuple{}" href="#Persefone.initialise-Tuple{}"><code>Persefone.initialise</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initialise(configfile=PARAMFILE, params=Dict())</code></pre><p>Initialise the model: read in parameters, create the output data directory, and instantiate the SimulationModel object(s). Optionally allows specifying the configuration file and overriding specific parameters. This returns a single model object, unless the config file contains multiple values for one or more parameters, in which case it creates a full-factorial simulation experiment and returns a vector of model objects.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/simulation.jl#L77-L86">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initmodel-Tuple{Dict{String, Any}}" href="#Persefone.initmodel-Tuple{Dict{String, Any}}"><code>Persefone.initmodel</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initmodel(settings)</code></pre><p>Initialise a model object using a ready-made settings dict. This is a helper function for <code>initialise()</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/simulation.jl#L96-L101">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.nagents-Tuple{AgricultureModel}" href="#Persefone.nagents-Tuple{AgricultureModel}"><code>Persefone.nagents</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">nagents(model)</code></pre><p>Return the total number of agents in a model object.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/simulation.jl#L31-L35">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.paramscan-Tuple{Dict{String, Any}, Vector{String}}" href="#Persefone.paramscan-Tuple{Dict{String, Any}, Vector{String}}"><code>Persefone.paramscan</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">paramscan(settings)</code></pre><p>Create a list of settings dicts, covering all possible parameter combinations given by the input settings (i.e. a full-factorial experiment). This is a helper function for <code>initialise()</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/simulation.jl#L146-L152">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.simulate!-Tuple{SimulationModel}" href="#Persefone.simulate!-Tuple{SimulationModel}"><code>Persefone.simulate!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">simulate!(model)</code></pre><p>Carry out a complete simulation run using a pre-initialised model object.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/simulation.jl#L64-L68">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.simulate-Tuple{}" href="#Persefone.simulate-Tuple{}"><code>Persefone.simulate</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">simulate(configfile=PARAMFILE, params=Dict())</code></pre><p>Initialise one or more model objects and carry out a full simulation experiment, optionally specifying a configuration file and/or specific parameters.</p><p>This is the default way to run a Persefone simulation.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/simulation.jl#L49-L56">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.stepagent!-Tuple{ModelAgent, SimulationModel}" href="#Persefone.stepagent!-Tuple{ModelAgent, SimulationModel}"><code>Persefone.stepagent!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">stepagent!(agent, model)</code></pre><p>All agent types must define a stepagent!() method that will be called daily.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/simulation.jl#L40-L44">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.stepsimulation!-Tuple{SimulationModel}" href="#Persefone.stepsimulation!-Tuple{SimulationModel}"><code>Persefone.stepsimulation!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">stepsimulation!(model)</code></pre><p>Execute one update of the model.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/core/simulation.jl#L174-L178">source</a></section></article><h2 id="landscape.jl"><a class="docs-heading-anchor" href="#landscape.jl">landscape.jl</a><a id="landscape.jl-1"></a><a class="docs-heading-anchor-permalink" href="#landscape.jl" title="Permalink"></a></h2><p>This file manages the landscape maps that underlie the model.</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.FarmEvent" href="#Persefone.FarmEvent"><code>Persefone.FarmEvent</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">FarmEvent</code></pre><p>A data structure to define a landscape event, giving its type, spatial extent, and duration.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L32-L37">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.LandCover" href="#Persefone.LandCover"><code>Persefone.LandCover</code></a> — <span class="docstring-category">Type</span></header><section><div><p>The land cover classes encoded in the Mundialis Sentinel data.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L7">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.Management" href="#Persefone.Management"><code>Persefone.Management</code></a> — <span class="docstring-category">Type</span></header><section><div><p>The types of management event that can be simulated</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L10">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.Pixel" href="#Persefone.Pixel"><code>Persefone.Pixel</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">Pixel</code></pre><p>A pixel is a simple data structure to combine land use and ownership information in a single object. The model landscape consists of a matrix of pixels. (Note: further landscape information may be added here in future.)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L13-L19">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.createevent!" href="#Persefone.createevent!"><code>Persefone.createevent!</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">createevent!(model, pixels, name, duration=1)</code></pre><p>Add a farm event to the specified pixels (a vector of position tuples) for a given duration.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L96-L100">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.directionto-Tuple{Tuple{Int64, Int64}, SimulationModel, Function}" href="#Persefone.directionto-Tuple{Tuple{Int64, Int64}, SimulationModel, Function}"><code>Persefone.directionto</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">directionto(pos, model, habitatdescriptor)</code></pre><p>Calculate the direction from the given location to the closest location matching the habitat descriptor function. Returns a coordinate tuple (target - position), or nothing if no matching habitat is found. Caution: can be computationally expensive!</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L128-L134">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.directionto-Tuple{Tuple{Int64, Int64}, SimulationModel, Persefone.LandCover}" href="#Persefone.directionto-Tuple{Tuple{Int64, Int64}, SimulationModel, Persefone.LandCover}"><code>Persefone.directionto</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">directionto(pos, model, habitattype)</code></pre><p>Calculate the direction from the given location to the closest habitat of the specified type. Returns a coordinate tuple (target - position), or nothing if no matching habitat is found. Caution: can be computationally expensive!</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L167-L173">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.distanceto-Tuple{Tuple{Int64, Int64}, SimulationModel, Function}" href="#Persefone.distanceto-Tuple{Tuple{Int64, Int64}, SimulationModel, Function}"><code>Persefone.distanceto</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">distanceto(pos, model, habitatdescriptor)</code></pre><p>Calculate the distance from the given location to the closest location matching the habitat descriptor function. Caution: can be computationally expensive!</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L179-L184">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.distanceto-Tuple{Tuple{Int64, Int64}, SimulationModel, Persefone.LandCover}" href="#Persefone.distanceto-Tuple{Tuple{Int64, Int64}, SimulationModel, Persefone.LandCover}"><code>Persefone.distanceto</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">distanceto(pos, model, habitattype)</code></pre><p>Calculate the distance from the given location to the closest habitat of the specified type. Caution: can be computationally expensive!</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L192-L197">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.distancetoedge-Tuple{Tuple{Int64, Int64}, SimulationModel}" href="#Persefone.distancetoedge-Tuple{Tuple{Int64, Int64}, SimulationModel}"><code>Persefone.distancetoedge</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">distancetoedge(pos, model)</code></pre><p>Calculate the distance from the given location to the closest neighbouring habitat. Caution: can be computationally expensive!</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L203-L208">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.farmplot-Tuple{Tuple{Int64, Int64}, SimulationModel}" href="#Persefone.farmplot-Tuple{Tuple{Int64, Int64}, SimulationModel}"><code>Persefone.farmplot</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">farmplot(position, model)</code></pre><p>Return the farm plot at this position, or nothing if there is none (utility wrapper).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L118-L122">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.inbounds-Tuple{Any, Any}" href="#Persefone.inbounds-Tuple{Any, Any}"><code>Persefone.inbounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">inbounds(pos, model)</code></pre><p>Is the given position within the bounds of the model landscape?</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L242-L246">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initlandscape-Tuple{String, String, String}" href="#Persefone.initlandscape-Tuple{String, String, String}"><code>Persefone.initlandscape</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initlandscape(directory, landcovermap, farmfieldsmap)</code></pre><p>Initialise the model landscape based on the map files specified in the configuration. Returns a matrix of pixels.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L44-L49">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.landcover-Tuple{Tuple{Int64, Int64}, SimulationModel}" href="#Persefone.landcover-Tuple{Tuple{Int64, Int64}, SimulationModel}"><code>Persefone.landcover</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">landcover(position, model)</code></pre><p>Return the land cover class at this position (utility wrapper).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L109-L113">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.randomdirection-Tuple{SimulationModel, Union{Unitful.Quantity{T, 𝐋, U}, Unitful.Level{L, S, Unitful.Quantity{T, 𝐋, U}} where {L, S}} where {T, U}}" href="#Persefone.randomdirection-Tuple{SimulationModel, Union{Unitful.Quantity{T, 𝐋, U}, Unitful.Level{L, S, Unitful.Quantity{T, 𝐋, U}} where {L, S}} where {T, U}}"><code>Persefone.randomdirection</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">randomdirection(model, distance)</code></pre><p>Get a random direction coordinate tuple within the specified distance.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L232-L236">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.randompixel" href="#Persefone.randompixel"><code>Persefone.randompixel</code></a> — <span class="docstring-category">Function</span></header><section><div><pre><code class="language-julia hljs">randompixel(position, model, range, habitatdescriptor)</code></pre><p>Find a random pixel within a given <code>range</code> of the <code>position</code> that matches the habitatdescriptor (create this using <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>).</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L214-L219">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.safebounds-Tuple{Tuple{Int64, Int64}, SimulationModel}" href="#Persefone.safebounds-Tuple{Tuple{Int64, Int64}, SimulationModel}"><code>Persefone.safebounds</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">safebounds(pos, model)</code></pre><p>Make sure that a given position is within the bounds of the model landscape.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L252-L256">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.updateevents!-Tuple{SimulationModel}" href="#Persefone.updateevents!-Tuple{SimulationModel}"><code>Persefone.updateevents!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">updateevents!(model)</code></pre><p>Cycle through the list of events, removing those that have expired.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/landscape.jl#L75-L79">source</a></section></article><h2 id="weather.jl"><a class="docs-heading-anchor" href="#weather.jl">weather.jl</a><a id="weather.jl-1"></a><a class="docs-heading-anchor-permalink" href="#weather.jl" title="Permalink"></a></h2><p>This file reads in weather data and makes it available to the model.</p><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.Weather" href="#Persefone.Weather"><code>Persefone.Weather</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">Weather</code></pre><p>A single weather datum, combining the observations from one day.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/weather.jl#L7-L11">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.initweather-Tuple{String, Dates.Date, Dates.Date}" href="#Persefone.initweather-Tuple{String, Dates.Date, Dates.Date}"><code>Persefone.initweather</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">initweather(weatherfile, startdate, enddate)</code></pre><p>Load a weather file, extract the values that are relevant to this model run (specified by start and end dates), and return a dictionary of Weather objects mapped to dates.</p><p><strong>Note:</strong> This requires a weather file in the format produced by <code>data/extract_weather_data.R</code>.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/weather.jl#L22-L30">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.maxtemp-Tuple{SimulationModel}" href="#Persefone.maxtemp-Tuple{SimulationModel}"><code>Persefone.maxtemp</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">maxtemp(model)</code></pre><p>Return today's maximum temperature in °C.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/weather.jl#L96-L100">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.meantemp-Tuple{SimulationModel}" href="#Persefone.meantemp-Tuple{SimulationModel}"><code>Persefone.meantemp</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">meantemp(model)</code></pre><p>Return today's mean temperature in °C.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/weather.jl#L87-L91">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.mintemp-Tuple{SimulationModel}" href="#Persefone.mintemp-Tuple{SimulationModel}"><code>Persefone.mintemp</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">mintemp(model)</code></pre><p>Return today's minimum temperature in °C.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/weather.jl#L105-L109">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.precipitation-Tuple{SimulationModel}" href="#Persefone.precipitation-Tuple{SimulationModel}"><code>Persefone.precipitation</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">precipitation(model)</code></pre><p>Return today's total precipitation in mm.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/weather.jl#L60-L64">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.sunshine-Tuple{SimulationModel}" href="#Persefone.sunshine-Tuple{SimulationModel}"><code>Persefone.sunshine</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">sunshine(model)</code></pre><p>Return today's sunshine duration in hours.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/weather.jl#L69-L73">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.vapourpressure-Tuple{SimulationModel}" href="#Persefone.vapourpressure-Tuple{SimulationModel}"><code>Persefone.vapourpressure</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">vapourpressure(model)</code></pre><p>Return today's average vapour pressure in hPa.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/weather.jl#L78-L82">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.windspeed-Tuple{SimulationModel}" href="#Persefone.windspeed-Tuple{SimulationModel}"><code>Persefone.windspeed</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">windspeed(model)</code></pre><p>Return today's average windspeed in m/s.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/world/weather.jl#L51-L55">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="CHANGELOG.html">« Changelog</a><a class="docs-footer-nextpage" href="io.html">Input and Output »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/skylark.html b/docs/build/skylark.html deleted file mode 100644 index ca01146..0000000 --- a/docs/build/skylark.html +++ /dev/null @@ -1,29 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Skylark · Persefone.jl</title><meta name="title" content="Skylark · Persefone.jl"/><meta property="og:title" content="Skylark · Persefone.jl"/><meta property="twitter:title" content="Skylark · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li class="is-active"><a class="tocitem" href="skylark.html">Skylark</a><ul class="internal"><li><a class="tocitem" href="#.-Purpose"><span>1. Purpose</span></a></li><li><a class="tocitem" href="#.-Entities,-state-variables,-and-scales"><span>2. Entities, state variables, and scales</span></a></li><li><a class="tocitem" href="#.-Process-overview-and-scheduling"><span>3. Process overview and scheduling</span></a></li><li><a class="tocitem" href="#.-Design-concepts"><span>4. Design concepts</span></a></li><li><a class="tocitem" href="#.-Initialisation"><span>5. Initialisation</span></a></li><li><a class="tocitem" href="#.-Input-data"><span>6. Input data</span></a></li><li><a class="tocitem" href="#.-Submodels"><span>7. Submodels</span></a></li><li><a class="tocitem" href="#.-References"><span>8. References</span></a></li></ul></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Scientific documentation</a></li><li class="is-active"><a href="skylark.html">Skylark</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="skylark.html">Skylark</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/skylark.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Skylark"><a class="docs-heading-anchor" href="#Skylark">Skylark</a><a id="Skylark-1"></a><a class="docs-heading-anchor-permalink" href="#Skylark" title="Permalink"></a></h1><p><em>Alauda arvensis</em> is a common and charismatic species of agricultural landscapes. This animal model is one component of the <a href="architecture.html"><code>nature</code></a> submodel of Persefone.jl.</p><p>The model description follows the ODD (Overview, Design concepts, Details) protocol (Grimm et al., <a href="https://doi.org/10.1016/j.ecolmodel.2006.04.023">2006</a>; <a href="https://doi.org/10.1016/j.ecolmodel.2010.08.019">2010</a>; <a href="https://doi.org/10.18564/jasss.4259">2020</a>):</p><h2 id=".-Purpose"><a class="docs-heading-anchor" href="#.-Purpose">1. Purpose</a><a id=".-Purpose-1"></a><a class="docs-heading-anchor-permalink" href="#.-Purpose" title="Permalink"></a></h2><p>The purpose of this animal model is to simulate the abundance and distribution of a population of <em>Alauda arvensis</em> in response to farm management in Central European agricultural landscapes.</p><h2 id=".-Entities,-state-variables,-and-scales"><a class="docs-heading-anchor" href="#.-Entities,-state-variables,-and-scales">2. Entities, state variables, and scales</a><a id=".-Entities,-state-variables,-and-scales-1"></a><a class="docs-heading-anchor-permalink" href="#.-Entities,-state-variables,-and-scales" title="Permalink"></a></h2><h3 id=".1-Landscape"><a class="docs-heading-anchor" href="#.1-Landscape">2.1 Landscape</a><a id=".1-Landscape-1"></a><a class="docs-heading-anchor-permalink" href="#.1-Landscape" title="Permalink"></a></h3><p>The <a href="gis.html">simulated landscape</a> consists of a grid of pixels with a resolution of 10m and can have an extent of 20km²-200km² (approximately; depending on the chosen input map). Each pixel is assigned a land cover class. It may also be associated with a farm plot, in which case it will contain information about the type and growth stage of the crop planted here. <a href="management.html">Farm management</a> determines which crops are grown when, and when disturbance (e.g. mowing, harvesting, tillage) takes place.</p><h3 id=".2-Animals"><a class="docs-heading-anchor" href="#.2-Animals">2.2 Animals</a><a id=".2-Animals-1"></a><a class="docs-heading-anchor-permalink" href="#.2-Animals" title="Permalink"></a></h3><p>The simulated individuals (a.k.a. agents) are mature <a href="species.html#Skylark">skylarks</a>. Each skylark is characterised by the following variables:</p><ul><li><p><code>ID</code> A unique identifier for this individual, which can be used to link it to its parents and its offspring.</p></li><li><p><code>sex</code> Male or female.</p></li><li><p><code>phase</code> The individual's current stage in the annual/life cycle. May be one of: <code>migration</code>, <code>nonbreeding</code>, <code>territorysearch</code>, <code>occupation</code>, <code>matesearch</code>, <code>nesting</code>, <code>breeding</code>.</p></li><li><p><code>position</code> The individual's position in the simulated landscape.</p></li><li><p><code>mate</code> The ID of the individual with which this individual has mated this year, if any.</p></li><li><p><code>territory</code> A list of coordinates of the positions in the landscape that this individual claims as its nesting and feeding territory.</p></li><li><p><code>nest</code> A coordinate giving the location of the currently active nest.</p></li><li><p><code>clutch</code> The number of juvenile (i.e. not yet independent) skylarks that this individual is currently raising.</p></li></ul><h2 id=".-Process-overview-and-scheduling"><a class="docs-heading-anchor" href="#.-Process-overview-and-scheduling">3. Process overview and scheduling</a><a id=".-Process-overview-and-scheduling-1"></a><a class="docs-heading-anchor-permalink" href="#.-Process-overview-and-scheduling" title="Permalink"></a></h2><p>The simulation proceeds in time steps of one day. Every day, each individual executes the function associated with their current life phase:</p><ul><li><code>migration</code>: The individual is held in a separate data structure (apart from the model landscape) and does nothing until its return date is reached. Then, it is re-introduced to the landscape and assigned the phase <code>territorysearch</code> (for males) or <code>matesearch</code> (for females).</li><li><code>territorysearch</code>: Males return first from migration. If they already have a territory from a previous year, they return to this. Otherwise, they move randomly through the landscape until they find a contiguous territory that satisfies their habitat requirements. Once a male has a territory, it changes its phase to <code>occupation</code>.</li><li><code>matesearch</code>: Females return later than males from their winter migration. If they already had a partner the previous year, they have a given probability of remaining with this partner. Otherwise, they move randomly through the landscape, looking for a male with a territory and without a partner. Once the female has a partner, it changes its phase to <code>nesting</code>.</li></ul><p>If an individual fails to find a territory or a mate, it changes its phase to <code>nonbreeding</code> once the breeding season is over.</p><ul><li><code>occupation</code>: The male moves at random about its territory until the breeding season is over. Then it changes its phase to <code>nonbreeding</code>. (<em>Note:</em> Skylark males actively help with feeding their chicks. However, feeding is only modelled indirectly here, through the process of habitat selection when the male forms its territory - see section 4.1.)</li><li><code>nesting</code>: The female selects a suitable location within the male's territory for the nest. Building the nest and laying eggs takes a number of days, during which she does nothing else. Then, she changes her phase to <code>breeding</code>.</li><li><code>breeding</code>: The female checks for mortality. The probability of brood loss varies with the age of the clutch and the nesting habitat. If and when the chicks reach independence (30 days after hatching), they are instantiated as new individuals in the <code>nonbreeding</code> phase.</li></ul><p>If a nest fails due to predation or disturbance, or a brood leaves the nest successfully, the female resets her phase to <code>nesting</code> and begins again if the breeding season is not yet over. If it is, she changes her phase to <code>nonbreeding</code>.</p><ul><li><code>nonbreeding</code>: Non-breeding mature birds move randomly around the landscape, keeping close to other individuals (flocking behaviour). Once their individual migration date is reached, they are removed from the landscape until the following year (see above). Mature birds have a mortality probability for their first summer, and others thereafter for each winter.</li></ul><h2 id=".-Design-concepts"><a class="docs-heading-anchor" href="#.-Design-concepts">4. Design concepts</a><a id=".-Design-concepts-1"></a><a class="docs-heading-anchor-permalink" href="#.-Design-concepts" title="Permalink"></a></h2><h3 id=".1-Basic-principles"><a class="docs-heading-anchor" href="#.1-Basic-principles">4.1 Basic principles</a><a id=".1-Basic-principles-1"></a><a class="docs-heading-anchor-permalink" href="#.1-Basic-principles" title="Permalink"></a></h3><p>This model assumes that the two most important drivers of skylark distribution and abundance are <strong>habitat availability</strong> and <strong>juvenile mortality</strong> (see literature below). The factors and processes affecting these are therefore given the most attention in the model, while other factors and processes are only included superficially, indirectly, or not at all. Specifically, this means that the phases <code>territorysearch</code>, <code>nesting</code>, and <code>breeding</code> are the most relevant and detailed parts of the model, as these determine the selection of habitat and the survival of offspring.</p><p>Furthermore, the model concentrates on predation and anthropogenic disturbance (through management actions such as mowing) as the main causes of juvenile mortality. Other causes, such as hunger or bad weather, are currently ignored as they are usually not significant.</p><p>The focus on habitat availability and juvenile mortality opens up two avenues by which agricultural management influences skylark populations. First, the farmers' choice of crops and date of sowing determines the quality of the habitat when skylarks select a territory. (For example, unlike summer grain, winter grain is already so high and dense in spring that it is generally avoided for nesting.) Secondly, the frequency and timing of management actions (especially mowing) is a major cause of brood loss. This means that there are direct causal links between agriculture and population trends.</p><p>Concentrating on these two drivers allows the rest of the model to be kept simple, reducing both the scientific complexity and computational costs. Thus, foraging movement (both during and after the breeding season) can be ignored or represented as random movement, as it does not directly impact either of the drivers. Likewise, chick growth and winter migration are represented very simply.</p><h3 id=".2-Emergence"><a class="docs-heading-anchor" href="#.2-Emergence">4.2 Emergence</a><a id=".2-Emergence-1"></a><a class="docs-heading-anchor-permalink" href="#.2-Emergence" title="Permalink"></a></h3><p>Multiple patterns emerge from the basic principles outlined above. The most important are listed here:</p><ul><li><strong>Territory size and population density:</strong> The model assumes that skylarks occupy only as much area as they need to satisfy their nesting and foraging requirements, and that population size is limited by the amount of available habitat. This means that territories in high-quality habitat are smaller than in low-quality habitat. Scaling up, this leads to a pattern whereby population densities are highest in open landscapes with a diversity of crops, grassland, semi-natural habitat, and lower in landscapes with low habitat diversity or many woody features.</li><li><strong>Ecological traps:</strong> Jenny (1990) describes a strong ecological trap effect whereby skylarks avoid winter grain crops, preferentially nesting in more open grassland sites. However, the mowing frequency associated with modern agriculture means that nest loss in grassland is almost assured, since there is insufficient time between two mowing dates to raise a brood. This means that landscape composition leads skylarks to breed in habitats that have a high mortality, resulting in population declines.</li></ul><h3 id=".3-Adaptation"><a class="docs-heading-anchor" href="#.3-Adaptation">4.3 Adaptation</a><a id=".3-Adaptation-1"></a><a class="docs-heading-anchor-permalink" href="#.3-Adaptation" title="Permalink"></a></h3><p>In the model, skylarks primarily adapt to their surroundings by choosing suitable territories. These are chosen by evaluating the quality of surrounding habitats for breeding and foraging, and occupying as much area as needed to satisfy requirements (see section 7.1).</p><h3 id=".4-Objectives"><a class="docs-heading-anchor" href="#.4-Objectives">4.4 Objectives</a><a id=".4-Objectives-1"></a><a class="docs-heading-anchor-permalink" href="#.4-Objectives" title="Permalink"></a></h3><p>Skylarks' main objective in the model is to have sufficient habitat available to raise a brood. Habitat quality is calculated as a function of habitat type, vegetation height, vegetation cover, and distance to vertical structures (see section 7.1).</p><h3 id=".5-Learning"><a class="docs-heading-anchor" href="#.5-Learning">4.5 Learning</a><a id=".5-Learning-1"></a><a class="docs-heading-anchor-permalink" href="#.5-Learning" title="Permalink"></a></h3><p>The model includes no learning by individuals.</p><h3 id=".6-Prediction"><a class="docs-heading-anchor" href="#.6-Prediction">4.6 Prediction</a><a id=".6-Prediction-1"></a><a class="docs-heading-anchor-permalink" href="#.6-Prediction" title="Permalink"></a></h3><p>The model includes no predictions by individuals.</p><h3 id=".7-Sensing"><a class="docs-heading-anchor" href="#.7-Sensing">4.7 Sensing</a><a id=".7-Sensing-1"></a><a class="docs-heading-anchor-permalink" href="#.7-Sensing" title="Permalink"></a></h3><p>Skylarks can perceive the landscape structure in a given radius around them (habitat type, vegetation height and cover). They can also see nearby conspecifics and are aware of the territories claimed by other individuals. When mating, they recognise whether another individual already has a mate, and mated individuals share information about their territory and brood status.</p><h3 id=".8-Interaction"><a class="docs-heading-anchor" href="#.8-Interaction">4.8 Interaction</a><a id=".8-Interaction-1"></a><a class="docs-heading-anchor-permalink" href="#.8-Interaction" title="Permalink"></a></h3><p>The model includes two direct forms of interaction. First, during mating, females move around the landscape looking for males who have a territory but no mate yet. Once they have found one, the two individuals set each other as their mate. Secondly, after the breeding seasons, individuals move around the landscape, keeping close to other individuals in their vicinity (flocking behaviour).</p><p>There are also indirect interactions, in that there is a competition for habitat (territory that has been claimed by one male cannot be occupied by another) and males (males that have mated with one female will not mate with another in the same season).</p><h3 id=".9-Stochasticity"><a class="docs-heading-anchor" href="#.9-Stochasticity">4.9 Stochasticity</a><a id=".9-Stochasticity-1"></a><a class="docs-heading-anchor-permalink" href="#.9-Stochasticity" title="Permalink"></a></h3><p>Stochasticity is used when modelling mortality and movement. Predation mortality is modelled as an age- and habitat-dependent probability, while migration mortality is a simple probability. Dispersal movement (when searching for a territory or a mate) is modelled as a random walk, as it is assumed that skylarks are not significantly impeded in their long-range movement by habitats that are unsuitable for foraging or nesting. Foraging movement by the male and by non-breeding individuals is also random, as it is desirable to show movement (to help model analysis) but unimportant to model this exactly.</p><h3 id=".10-Collectives"><a class="docs-heading-anchor" href="#.10-Collectives">4.10 Collectives</a><a id=".10-Collectives-1"></a><a class="docs-heading-anchor-permalink" href="#.10-Collectives" title="Permalink"></a></h3><p>After the breeding season, skylarks move around in loose agglomerations (flocking behaviour). However, this has no relevant ecological effect.</p><h3 id=".11-Observation"><a class="docs-heading-anchor" href="#.11-Observation">4.11 Observation</a><a id=".11-Observation-1"></a><a class="docs-heading-anchor-permalink" href="#.11-Observation" title="Permalink"></a></h3><p><em>TODO</em></p><h2 id=".-Initialisation"><a class="docs-heading-anchor" href="#.-Initialisation">5. Initialisation</a><a id=".-Initialisation-1"></a><a class="docs-heading-anchor-permalink" href="#.-Initialisation" title="Permalink"></a></h2><p>At the beginning of a model run, pairs of skylarks are created on grassland and agricultural land, keeping a distance of 60m to vertical structures and allowing each pair approximately 3ha of suitable habitat (an average territory size in agricultural landscapes).</p><p>For details, see the <a href="https://git.idiv.de/persefone/persefone-model/-/blob/master/src/nature/species/skylark.jl?ref_type=heads">source code</a> and the associated <a href="nature.html#populations.jl">documentation</a>.</p><h2 id=".-Input-data"><a class="docs-heading-anchor" href="#.-Input-data">6. Input data</a><a id=".-Input-data-1"></a><a class="docs-heading-anchor-permalink" href="#.-Input-data" title="Permalink"></a></h2><p>The general input to Persefone (i.e. land use maps and weather data) is described <a href="gis.html">here</a>.</p><p>The following extract from the <a href="https://git.idiv.de/persefone/persefone-model/-/blob/master/src/nature/species/skylark.jl?ref_type=heads">source code</a> lists the species parameters and values used by the Skylark model, based on the literature cited below:</p><pre><code class="language-julia hljs">@species Skylark begin - const movementrange::Length = 500m #XXX arbitrary - const visionrange::Length = 200m #XXX arbitrary - - const eggtime::Int64 = 11 # days from laying to hatching - const nestlingtime::Int64 = 9 # days from hatching to leaving nest - const fledglingtime::Int64 = 21 # days from leaving the nest to independence - - #XXX predation mortality should be habitat-dependent - const eggpredationmortality::Float64 = 0.03 # per-day egg mortality from predation - const nestlingpredationmortality::Float64 = 0.03 # per-day nestling mortality from predation - const fledglingpredationmortality::Float64 = 0.01 # per-day fledgling mortality from predation - const firstyearmortality::Float64 = 0.38 # total mortality in the first year after independence - const migrationmortality::Float64 = 0.33 # chance of dying during the winter - - const minimumterritory = 5000m² # size of territory under ideal conditions - const mindistancetoedge = 60m # minimum distance of habitat to vertical structures - const maxforageheight = 50cm # maximum preferred vegetation height for foraging - const maxforagecover = 0.7 # maximum preferred vegetation cover for foraging - const nestingheight = (15cm, 25cm) # min and max preferred vegetation height for nesting - const nestingcover = (0.2, 0.5) # min and max preferred vegetation cover for nesting - - const matefaithfulness = 0.5 # chance of a female retaining her previous partner - const nestingbegin::Tuple{Int64,Int64} = (April, 10) # begin nesting in the middle of April - const nestbuildingtime::UnitRange{Int64} = 4:5 # 4-5 days needed to build a nest (doubled for first nest) - const eggsperclutch::UnitRange{Int64} = 2:5 # eggs laid per clutch - const nestingend::Int64 = July # last month of nesting -end</code></pre><h2 id=".-Submodels"><a class="docs-heading-anchor" href="#.-Submodels">7. Submodels</a><a id=".-Submodels-1"></a><a class="docs-heading-anchor-permalink" href="#.-Submodels" title="Permalink"></a></h2><h3 id=".1-Territory-formation"><a class="docs-heading-anchor" href="#.1-Territory-formation">7.1 Territory formation</a><a id=".1-Territory-formation-1"></a><a class="docs-heading-anchor-permalink" href="#.1-Territory-formation" title="Permalink"></a></h3><p><em>TODO</em></p><h3 id=".2-Juvenile-mortality"><a class="docs-heading-anchor" href="#.2-Juvenile-mortality">7.2 Juvenile mortality</a><a id=".2-Juvenile-mortality-1"></a><a class="docs-heading-anchor-permalink" href="#.2-Juvenile-mortality" title="Permalink"></a></h3><p><em>TODO</em></p><h2 id=".-References"><a class="docs-heading-anchor" href="#.-References">8. References</a><a id=".-References-1"></a><a class="docs-heading-anchor-permalink" href="#.-References" title="Permalink"></a></h2><ul><li><p>Bauer, H.-G., Bezzel, E., & Fiedler, W. (Eds.). (2012). Das Kompendium der Vögel Mitteleuropas: Ein umfassendes Handbuch zu Biologie, Gefährdung und Schutz (Einbändige Sonderausg. der 2., vollständig überarb. und erw. Aufl. 2005). AULA-Verlag</p></li><li><p>Delius, J. D. (1965). A Population Study of Skylarks Alauda Arvensis. <a href="https://doi.org/10.1111/j.1474-919X.1965.tb07332.x">Ibis, 107(4), 466–492.</a></p></li><li><p>Donald et al. (2002). Survival rates, causes of failure and productivity of Skylark Alauda arvensis nests on lowland farmland. <a href="https://doi.org/10.1046/j.1474-919X.2002.00101.x">Ibis, 144(4), 652–664.</a></p></li><li><p>Glutz von Blotzheim, Urs N. (Ed.). (1985). Handbuch der Vögel Mitteleuropas. Bd. 10. Passeriformes (Teil 1) 1. Alaudidae - Hirundidae. AULA-Verlag, Wiesbaden. ISBN 3-89104-019-9</p></li><li><p>Jenny, M. (1990). Territorialität und Brutbiologie der Feldlerche Alauda arvensis in einer intensiv genutzten Agrarlandschaft. <a href="https://doi.org/10.1007/BF01640998">Journal für Ornithologie, 131(3), 241–265.</a></p></li><li><p>Jeromin, K. (2002). Zur Ernährungsökologie der Feldlerche (Alauda arvensis L. 1758) in der Reproduktionsphase [Doctoral thesis]. <a href="https://macau.uni-kiel.de/receive/diss_mods_00000968">Christian-Albrechts-Universität zu Kiel.</a></p></li><li><p>Püttmanns et al. (2022). Habitat use and foraging parameters of breeding Skylarks indicate no seasonal decrease in food availability in heterogeneous farmland. <a href="https://doi.org/10.1002/ece3.8461">Ecology and Evolution, 12(1), e8461.</a></p></li></ul></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="crop-models.html">« Crop models</a><a class="docs-footer-nextpage" href="developing.html">Developing Persefone »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/species-dsl.html b/docs/build/species-dsl.html deleted file mode 100644 index 77f80f1..0000000 --- a/docs/build/species-dsl.html +++ /dev/null @@ -1,32 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Defining new species · Persefone.jl</title><meta name="title" content="Defining new species · Persefone.jl"/><meta property="og:title" content="Defining new species · Persefone.jl"/><meta property="twitter:title" content="Defining new species · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li class="is-active"><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li><a class="tocitem" href="species.html">Species models</a></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Developer guide</a></li><li class="is-active"><a href="species-dsl.html">Defining new species</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="species-dsl.html">Defining new species</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/species-dsl.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Defining-new-species"><a class="docs-heading-anchor" href="#Defining-new-species">Defining new species</a><a id="Defining-new-species-1"></a><a class="docs-heading-anchor-permalink" href="#Defining-new-species" title="Permalink"></a></h1><p>In order to make implementing new species as easy as possible, Persefone includes a <a href="https://doi.org/10.1016/j.ecoinf.2015.02.005">domain-specific language</a> (DSL) built from a collection of macros and functions.</p><p>Here is an example of what this looks like, using a hypothetical mermaid species:</p><pre><code class="language-julia hljs">@species Mermaid begin - ageofmaturity = 2 - pesticidemortality = 1.0 -end - -@create Mermaid begin - @debug "Created $(animalid(self))." -end - -@phase Mermaid life begin - @debug "$(animalid(self)) is swimming happily in its pond." - @respond pesticide @kill(self.pesticidemortality, "poisoning") - @respond harvesting @setphase(drought) - if self.sex == female && length(@neighbours()) < 3 && - self.age >= self.ageofmaturity && @landcover() == water - @reproduce() - end -end - -@phase Mermaid drought begin - n = sum(1 for a in @neighbours()) - @debug "$(animalid(self)) is experiencing drought with $n neighbour(s)." - @respond sowing @setphase(life) -end - -@populate Mermaid begin - birthphase = life - initphase = life - habitat = @habitat(@landcover() == water) - pairs=true -end</code></pre><p>A complete species definition consists of one call each to <a href="nature.html#Persefone.@species-Tuple{Any, Any}"><code>@species</code></a>, <a href="nature.html#Persefone.@create-Tuple{Any, Any}"><code>@create</code></a>, <a href="nature.html#Persefone.@populate-Tuple{Any, Any}"><code>@populate</code></a>, and one or more calls to <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a>. Another important macro is <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>. Further macros are available to provide convenience wrappers for common functions. (See <a href="nature.html"><code>src/nature/nature.jl</code></a> for details.)</p><p>The first macro to call is <a href="nature.html#Persefone.@species-Tuple{Any, Any}"><code>@species</code></a>. This takes two arguments: a species name and a definition block (enclosed in <code>begin</code> and <code>end</code> tags). Within the block, species-specific parameters and variables can be defined (and optionally given values) that should be available throughout a species' lifetime. </p><p>Next, each species must define one or more <a href="nature.html#Persefone.@phase-Tuple{Any, Any, Any}"><code>@phase</code></a> blocks. The concept behind this is that species show different behaviours at different phases of their lifecycle. Each <code>@phase</code> block defines the behaviour in one of these phases. (Technically, it defines a function that will be called daily, so long as the species' <code>phase</code> variable is set to this phase.) Code in this section has access to the <code>model</code> object as well as a <code>self</code> object, which is the currently active <a href="nature.html#Persefone.Animal"><code>Animal</code></a> agent. Within a phase block, <a href="nature.html#Persefone.@respond-Tuple{Any, Any}"><code>@respond</code></a> can be used to define the species' response to a <a href="simulation.html#Persefone.FarmEvent"><code>FarmEvent</code></a> that affects the species' current location, while a variety of other macros provide wrappers to life history and movement functions from <a href="nature.html"><code>src/nature/populations.jl</code></a>.</p><p>The third macro to call is <a href="nature.html#Persefone.@create-Tuple{Any, Any}"><code>@create</code></a>. Like <code>@phase</code>, this defines a function with access to the <code>world</code> and <code>self</code> objects. This function is called whenever a new individual of this species is created (either at birth, or when the model is initialised).</p><p>The last macro that must be called is [<code>@populate</code>]. Whereas <code>@create</code> regulates the creation of individual animals, <code>@populate</code> determines how the population of a species is initialised at the start of a simulation. It does this by defining values for the parameters used by <a href="@ref"><code>initpopulation!</code></a>. The full list of parameters that can be used is documented under <a href="@ref"><code>PopInitParams</code></a>.</p><p>The final important macro is <a href="nature.html#Persefone.@habitat-Tuple{Any}"><code>@habitat</code></a>. This defines a "habitat descriptor", i.e. a predicate function that tests whether or not a given landscape pixel is suitable for a specified purpose. Such habitat descriptors are used as arguments to various functions, for example for population initialisation or movement. The argument to <code>@habitat</code> consists of a logical expression, which has access to the animal's current position (the <code>pos</code> tuple variable) and the <code>model</code>. Various macros are available to easily reference information about the current location, such as <a href="nature.html#Persefone.@landcover-Tuple{}"><code>@landcover</code></a> or <a href="nature.html#Persefone.@distancetoedge-Tuple{}"><code>@distancetoedge</code></a>.</p><p>All of these macros are defined in <a href="https://git.idiv.de/persefone/persefone-model/-/blob/master/src/nature/macros.jl"><code>src/nature/macros.jl</code></a>.</p></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="gis.html">« Maps and weather data</a><a class="docs-footer-nextpage" href="CHANGELOG.html">Changelog »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/build/species.html b/docs/build/species.html deleted file mode 100644 index 02bd200..0000000 --- a/docs/build/species.html +++ /dev/null @@ -1,2 +0,0 @@ -<!DOCTYPE html> -<html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><title>Species models · Persefone.jl</title><meta name="title" content="Species models · Persefone.jl"/><meta property="og:title" content="Species models · Persefone.jl"/><meta property="twitter:title" content="Species models · Persefone.jl"/><meta name="description" content="Documentation for Persefone.jl."/><meta property="og:description" content="Documentation for Persefone.jl."/><meta property="twitter:description" content="Documentation for Persefone.jl."/><script data-outdated-warner src="assets/warner.js"></script><link href="https://cdnjs.cloudflare.com/ajax/libs/lato-font/3.0.0/css/lato-font.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/juliamono/0.050/juliamono.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/fontawesome.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/solid.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/brands.min.css" rel="stylesheet" type="text/css"/><link href="https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min.css" rel="stylesheet" type="text/css"/><script>documenterBaseURL="."</script><script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js" data-main="assets/documenter.js"></script><script src="search_index.js"></script><script src="siteinfo.js"></script><script src="../versions.js"></script><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-dark.css" data-theme-name="documenter-dark" data-theme-primary-dark/><link class="docs-theme-link" rel="stylesheet" type="text/css" href="assets/themes/documenter-light.css" data-theme-name="documenter-light" data-theme-primary/><script src="assets/themeswap.js"></script></head><body><div id="documenter"><nav class="docs-sidebar"><a class="docs-logo" href="index.html"><img src="assets/logo.png" alt="Persefone.jl logo"/></a><div class="docs-package-name"><span class="docs-autofit"><a href="index.html">Persefone.jl</a></span></div><button class="docs-search-query input is-rounded is-small is-clickable my-2 mx-auto py-1 px-2" id="documenter-search-query">Search docs (Ctrl + /)</button><ul class="docs-menu"><li><a class="tocitem" href="index.html">Introduction</a></li><li><span class="tocitem">User guide</span><ul><li><a class="tocitem" href="using.html">The Persefone.jl Package</a></li><li><a class="tocitem" href="gui.html">Graphical User Interface</a></li><li><a class="tocitem" href="config.html">Configuration</a></li></ul></li><li><span class="tocitem">Scientific documentation</span><ul><li><a class="tocitem" href="management.html">Farm management</a></li><li><a class="tocitem" href="crop-models.html">Crop models</a></li><li><a class="tocitem" href="skylark.html">Skylark</a></li></ul></li><li><span class="tocitem">Developer guide</span><ul><li><a class="tocitem" href="developing.html">Developing Persefone</a></li><li><a class="tocitem" href="adapting.html">Adapting Persefone</a></li><li><a class="tocitem" href="architecture.html">Source code architecture</a></li><li><a class="tocitem" href="gis.html">Maps and weather data</a></li><li><a class="tocitem" href="species-dsl.html">Defining new species</a></li><li><a class="tocitem" href="CHANGELOG.html">Changelog</a></li></ul></li><li><span class="tocitem">Software API</span><ul><li><a class="tocitem" href="simulation.html">Simulation</a></li><li><a class="tocitem" href="io.html">Input and Output</a></li><li><a class="tocitem" href="nature.html">Nature submodel</a></li><li class="is-active"><a class="tocitem" href="species.html">Species models</a><ul class="internal"><li><a class="tocitem" href="#Skylark"><span>Skylark</span></a></li></ul></li><li><a class="tocitem" href="crops.html">Crop submodel</a></li><li><a class="tocitem" href="farm.html">Farm submodel</a></li></ul></li></ul><div class="docs-version-selector field has-addons"><div class="control"><span class="docs-label button is-static is-size-7">Version</span></div><div class="docs-selector control is-expanded"><div class="select is-fullwidth is-size-7"><select id="documenter-version-selector"></select></div></div></div></nav><div class="docs-main"><header class="docs-navbar"><a class="docs-sidebar-button docs-navbar-link fa-solid fa-bars is-hidden-desktop" id="documenter-sidebar-button" href="#"></a><nav class="breadcrumb"><ul class="is-hidden-mobile"><li><a class="is-disabled">Software API</a></li><li class="is-active"><a href="species.html">Species models</a></li></ul><ul class="is-hidden-tablet"><li class="is-active"><a href="species.html">Species models</a></li></ul></nav><div class="docs-right"><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model" title="View the repository"><span class="docs-icon fa-brands"></span><span class="docs-label is-hidden-touch">Repository</span></a><a class="docs-navbar-link" href="https://git.idiv.de/persefone/persefone-model/-/tree/master/docs/src/species.md" title="Edit source"><span class="docs-icon fa-solid"></span></a><a class="docs-settings-button docs-navbar-link fa-solid fa-gear" id="documenter-settings-button" href="#" title="Settings"></a><a class="docs-article-toggle-button fa-solid fa-chevron-up" id="documenter-article-toggle-button" href="javascript:;" title="Collapse all docstrings"></a></div></header><article class="content" id="documenter-page"><h1 id="Species-models"><a class="docs-heading-anchor" href="#Species-models">Species models</a><a id="Species-models-1"></a><a class="docs-heading-anchor-permalink" href="#Species-models" title="Permalink"></a></h1><p>The ecological submodel in Persefone simulates a range of species in agricultural landscapes.</p><h2 id="Skylark"><a class="docs-heading-anchor" href="#Skylark">Skylark</a><a id="Skylark-1"></a><a class="docs-heading-anchor-permalink" href="#Skylark" title="Permalink"></a></h2><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.Skylark" href="#Persefone.Skylark"><code>Persefone.Skylark</code></a> — <span class="docstring-category">Type</span></header><section><div><pre><code class="language-julia hljs">Skylark</code></pre><p><em>Alauda arvensis</em> is a common and charismatic species of agricultural landscapes.</p><p><strong>Sources:</strong> - Bauer, H.-G., Bezzel, E., & Fiedler, W. (Eds.). (2012). Das Kompendium der Vögel Mitteleuropas: Ein umfassendes Handbuch zu Biologie, Gefährdung und Schutz (Einbändige Sonderausg. der 2., vollständig überarb. und erw. Aufl. 2005). AULA-Verlag - Delius, J. D. (1965). A Population Study of Skylarks Alauda Arvensis. Ibis, 107(4), 466–492. https://doi.org/10.1111/j.1474-919X.1965.tb07332.x - Donald et al. (2002). Survival rates, causes of failure and productivity of Skylark Alauda arvensis nests on lowland farmland. Ibis, 144(4), 652–664. https://doi.org/10.1046/j.1474-919X.2002.00101.x - Glutz von Blotzheim, Urs N. (Ed.). (1985). Handbuch der Vögel Mitteleuropas. Bd. 10. Passeriformes (Teil 1) 1. Alaudidae - Hirundidae. AULA-Verlag, Wiesbaden. ISBN 3-89104-019-9 - Jenny, M. (1990). Territorialität und Brutbiologie der Feldlerche Alauda arvensis in einer intensiv genutzten Agrarlandschaft. Journal für Ornithologie, 131(3), 241–265. https://doi.org/10.1007/BF01640998 - Püttmanns et al. (2022). Habitat use and foraging parameters of breeding Skylarks indicate no seasonal decrease in food availability in heterogeneous farmland. Ecology and Evolution, 12(1), e8461. https://doi.org/10.1002/ece3.8461</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L13-L37">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.#1112#fun" href="#Persefone.#1112#fun"><code>Persefone.#1112#fun</code></a> — <span class="docstring-category">Function</span></header><section><div><p>Initialise the skylark population. Creates pairs of skylarks on grassland and agricultural land, keeping a distance of 60m to vertical structures and giving each pair an area of 3ha.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L406-L409">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.allowsnesting-Tuple{Persefone.Skylark, SimulationModel, Tuple{Int64, Int64}}" href="#Persefone.allowsnesting-Tuple{Persefone.Skylark, SimulationModel, Tuple{Int64, Int64}}"><code>Persefone.allowsnesting</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">allowsnesting(skylark, model, pos)</code></pre><p>Check whether the given position is suitable for nesting.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L351-L355">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.breeding-Tuple{Persefone.Skylark, SimulationModel}" href="#Persefone.breeding-Tuple{Persefone.Skylark, SimulationModel}"><code>Persefone.breeding</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Females that have laid eggs take care of their chicks, restarting the nesting process once the chicks are independent or in case of brood loss.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L239-L242">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.create!-Tuple{Persefone.Skylark, SimulationModel}" href="#Persefone.create!-Tuple{Persefone.Skylark, SimulationModel}"><code>Persefone.create!</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Initialise a skylark individual. Selects migration dates and checks if the bird should currently be on migration. Also sets other individual-specific variables.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L383-L386">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.destroynest!-Tuple{Persefone.Skylark, SimulationModel, String}" href="#Persefone.destroynest!-Tuple{Persefone.Skylark, SimulationModel, String}"><code>Persefone.destroynest!</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">destroynest!(skylark, model, reason)</code></pre><p>Remove the skylark's nest and offspring due to disturbance or predation.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L366-L370">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.findterritory-Tuple{Persefone.Skylark, SimulationModel}" href="#Persefone.findterritory-Tuple{Persefone.Skylark, SimulationModel}"><code>Persefone.findterritory</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">findterritory(skylark, model)</code></pre><p>Check whether the habitat surrounding the skylark is suitable for establishing a territory. If it is, return the list of coordinates that make up the new territory, else return an empty list.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L284-L289">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.foragequality-Tuple{Persefone.Skylark, SimulationModel, Tuple{Int64, Int64}}" href="#Persefone.foragequality-Tuple{Persefone.Skylark, SimulationModel, Tuple{Int64, Int64}}"><code>Persefone.foragequality</code></a> — <span class="docstring-category">Method</span></header><section><div><pre><code class="language-julia hljs">foragequality(skylark, model, pos)</code></pre><p>Calculate the relative quality of the habitat at this position for foraging. This assumes that open habitat is best (quality = 1.0), and steadily decreases as vegetation height and/or cover increase. (Linear regressions based on Püttmanns et al., 2021; Jeromin, 2002; Jenny, 1990b.)</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L331-L338">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.matesearch-Tuple{Persefone.Skylark, SimulationModel}" href="#Persefone.matesearch-Tuple{Persefone.Skylark, SimulationModel}"><code>Persefone.matesearch</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Females returning from migration move around to look for a suitable partner with a territory.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L156-L158">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.nesting-Tuple{Persefone.Skylark, SimulationModel}" href="#Persefone.nesting-Tuple{Persefone.Skylark, SimulationModel}"><code>Persefone.nesting</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Females that have found a partner build a nest and lay eggs in a suitable location.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L195-L197">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.nonbreeding-Tuple{Persefone.Skylark, SimulationModel}" href="#Persefone.nonbreeding-Tuple{Persefone.Skylark, SimulationModel}"><code>Persefone.nonbreeding</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Non-breeding adults move around with other individuals and check for migration.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L92-L94">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.occupation-Tuple{Persefone.Skylark, SimulationModel}" href="#Persefone.occupation-Tuple{Persefone.Skylark, SimulationModel}"><code>Persefone.occupation</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Once a male has found a territory, he remains in it until the breeding season is over, adjusting it to new conditions when and as necessary.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L140-L143">source</a></section></article><article class="docstring"><header><a class="docstring-article-toggle-button fa-solid fa-chevron-down" href="javascript:;" title="Collapse docstring"></a><a class="docstring-binding" id="Persefone.territorysearch-Tuple{Persefone.Skylark, SimulationModel}" href="#Persefone.territorysearch-Tuple{Persefone.Skylark, SimulationModel}"><code>Persefone.territorysearch</code></a> — <span class="docstring-category">Method</span></header><section><div><p>Males returning from migration move around to look for suitable habitats to establish a territory.</p></div><a class="docs-sourcelink" target="_blank" href="https://git.idiv.de/persefone/persefone-model/-/tree/6b3aee6e353b335cd0c9487903b4f14451cb5628/src/nature/species/skylark.jl#L119-L121">source</a></section></article></article><nav class="docs-footer"><a class="docs-footer-prevpage" href="nature.html">« Nature submodel</a><a class="docs-footer-nextpage" href="crops.html">Crop submodel »</a><div class="flexbox-break"></div><p class="footer-message">Powered by <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> and the <a href="https://julialang.org/">Julia Programming Language</a>.</p></nav></div><div class="modal" id="documenter-settings"><div class="modal-background"></div><div class="modal-card"><header class="modal-card-head"><p class="modal-card-title">Settings</p><button class="delete"></button></header><section class="modal-card-body"><p><label class="label">Theme</label><div class="select"><select id="documenter-themepicker"><option value="documenter-light">documenter-light</option><option value="documenter-dark">documenter-dark</option><option value="auto">Automatic (OS)</option></select></div></p><hr/><p>This document was generated with <a href="https://github.com/JuliaDocs/Documenter.jl">Documenter.jl</a> version 1.1.2 on <span class="colophon-date" title="Wednesday 11 September 2024 16:19">Wednesday 11 September 2024</span>. Using Julia version 1.10.4.</p></section><footer class="modal-card-foot"></footer></div></div></div></body></html> diff --git a/docs/builddocs.jl b/docs/builddocs.jl index 246b4fb..17322eb 100644 --- a/docs/builddocs.jl +++ b/docs/builddocs.jl @@ -24,7 +24,6 @@ makedocs(sitename="Persefone.jl", "using.md", "gui.md", "config.md"], - #"odd.md", "Scientific documentation" => [ "management.md", "crop-models.md", @@ -47,9 +46,11 @@ makedocs(sitename="Persefone.jl", ]) # compile the handbook +#XXX change to LaTeX output for manual editing? +# or configure the title page https://github.com/JuliaDocs/Documenter.jl/blob/master/test/examples/src.cover_page/assets/titlepage.tex makedocs(format = Documenter.LaTeX(), - sitename="Persefone.jl manual", - authors="Vedder, Matthies, Pe'er", + sitename="Persefone.jl", + authors="Daniel Vedder, Marco C. Matthies, Guy Pe'er", modules = [Persefone], repo = Remotes.GitLab("git.idiv.de", "persefone", "persefone-model"), warnonly = true, #XXX not recommended @@ -59,7 +60,6 @@ makedocs(format = Documenter.LaTeX(), "using.md", "gui.md", "config.md"], - #"odd.md", "Scientific documentation" => [ "management.md", "crop-models.md", @@ -69,13 +69,11 @@ makedocs(format = Documenter.LaTeX(), "adapting.md", "architecture.md", "gis.md", - "species-dsl.md", - "CHANGELOG.md"], + "species-dsl.md"], "Software API" => [ "simulation.md", "io.md", "nature.md", - #"energy.md", "species.md", "crops.md", "farm.md"] -- GitLab