diff --git a/stable b/stable index 4ea5cafa..7965b36d 120000 --- a/stable +++ b/stable @@ -1 +1 @@ -v0.8.0 \ No newline at end of file +v0.9.0 \ No newline at end of file diff --git a/v0.9 b/v0.9 new file mode 120000 index 00000000..7965b36d --- /dev/null +++ b/v0.9 @@ -0,0 +1 @@ +v0.9.0 \ No newline at end of file diff --git a/v0.9.0/.documenter-siteinfo.json b/v0.9.0/.documenter-siteinfo.json new file mode 100644 index 00000000..783f5dfa --- /dev/null +++ b/v0.9.0/.documenter-siteinfo.json @@ -0,0 +1 @@ +{"documenter":{"julia_version":"1.10.2","generation_timestamp":"2024-03-19T21:45:45","documenter_version":"1.3.0"}} \ No newline at end of file diff --git a/v0.9.0/assets/documenter.js b/v0.9.0/assets/documenter.js new file mode 100644 index 00000000..c6562b55 --- /dev/null +++ b/v0.9.0/assets/documenter.js @@ -0,0 +1,1050 @@ +// 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', + '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 (event) { + let articleToggleTitle = "Expand docstring"; + let navArticleToggleTitle = "Expand all docstrings"; + let animationSpeed = event.noToggleAnimation ? 0 : 400; + + 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(animationSpeed); + } 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(animationSpeed); + } + + $(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'], function($) { + +$(document).ready(function () { + let meta = $("div[data-docstringscollapsed]").data(); + + if (meta?.docstringscollapsed) { + $("#documenter-article-toggle-button").trigger({ + type: "click", + noToggleAnimation: true, + }); + } +}); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +/* +To get an in-depth about the thought process you can refer: https://hetarth02.hashnode.dev/series/gsoc + +PSEUDOCODE: + +Searching happens automatically as the user types or adjusts the selected filters. +To preserve responsiveness, as much as possible of the slow parts of the search are done +in a web worker. Searching and result generation are done in the worker, and filtering and +DOM updates are done in the main thread. The filters are in the main thread as they should +be very quick to apply. This lets filters be changed without re-searching with minisearch +(which is possible even if filtering is on the worker thread) and also lets filters be +changed _while_ the worker is searching and without message passing (neither of which are +possible if filtering is on the worker thread) + +SEARCH WORKER: + +Import minisearch + +Build index + +On message from main thread + run search + find the first 200 unique results from each category, and compute their divs for display + note that this is necessary and sufficient information for the main thread to find the + first 200 unique results from any given filter set + post results to main thread + +MAIN: + +Launch worker + +Declare nonconstant globals (worker_is_running, last_search_text, unfiltered_results) + +On text update + if worker is not running, launch_search() + +launch_search + set worker_is_running to true, set last_search_text to the search text + post the search query to worker + +on message from worker + if last_search_text is not the same as the text in the search field, + the latest search result is not reflective of the latest search query, so update again + launch_search() + otherwise + set worker_is_running to false + + regardless, display the new search results to the user + save the unfiltered_results as a global + update_search() + +on filter click + adjust the filter selection + update_search() + +update_search + apply search filters by looping through the unfiltered_results and finding the first 200 + unique results that match the filters + + Update the DOM +*/ + +/////// SEARCH WORKER /////// + +function worker_function(documenterSearchIndex, documenterBaseURL, filters) { + importScripts( + "https://cdn.jsdelivr.net/npm/minisearch@6.1.0/dist/umd/index.min.js" + ); + + let data = documenterSearchIndex.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 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@!]+$/, ""); + + word = word.toLowerCase(); + } + + 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: { + prefix: true, + boost: { title: 100 }, + fuzzy: 2, + }, + }); + + index.addAll(data); + + /** + * Used to map characters to HTML entities. + * Refer: https://github.com/lodash/lodash/blob/main/src/escape.ts + */ + const htmlEscapes = { + "&": "&", + "<": "<", + ">": ">", + '"': """, + "'": "'", + }; + + /** + * Used to match HTML entities and HTML characters. + * Refer: https://github.com/lodash/lodash/blob/main/src/escape.ts + */ + const reUnescapedHtml = /[&<>"']/g; + const reHasUnescapedHtml = RegExp(reUnescapedHtml.source); + + /** + * Escape function from lodash + * Refer: https://github.com/lodash/lodash/blob/main/src/escape.ts + */ + function escape(string) { + return string && reHasUnescapedHtml.test(string) + ? string.replace(reUnescapedHtml, (chr) => htmlEscapes[chr]) + : string || ""; + } + + /** + * 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 = `
`; + 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(`${querystring}`, "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 + + text = text.length ? escape(text) : ""; + + let display_result = text.length + ? "..." + + text.replace( + new RegExp(`${escape(querystring)}`, "i"), // For first occurrence + '$&' + ) + + "..." + : ""; // 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 = ` + +
+
${escape(result.title)}
+
${result.category}
+
+

+ ${display_result} +

+
+ ${display_link} +
+
+ ${search_divider} + `; + + return result_div; + } + + self.onmessage = function (e) { + let query = e.data; + let results = index.search(query, { + filter: (result) => { + // Only return relevant results + return result.score >= 1; + }, + }); + + // Pre-filter to deduplicate and limit to 200 per category to the extent + // possible without knowing what the filters are. + let filtered_results = []; + let counts = {}; + for (let filter of filters) { + counts[filter] = 0; + } + let present = {}; + + for (let result of results) { + cat = result.category; + cnt = counts[cat]; + if (cnt < 200) { + id = cat + "---" + result.location; + if (present[id]) { + continue; + } + present[id] = true; + filtered_results.push({ + location: result.location, + category: cat, + div: make_search_result(result, query), + }); + } + } + + postMessage(filtered_results); + }; +} + +// `worker = Threads.@spawn worker_function(documenterSearchIndex)`, but in JavaScript! +const filters = [ + ...new Set(documenterSearchIndex["docs"].map((x) => x.category)), +]; +const worker_str = + "(" + + worker_function.toString() + + ")(" + + JSON.stringify(documenterSearchIndex["docs"]) + + "," + + JSON.stringify(documenterBaseURL) + + "," + + JSON.stringify(filters) + + ")"; +const worker_blob = new Blob([worker_str], { type: "text/javascript" }); +const worker = new Worker(URL.createObjectURL(worker_blob)); + +/////// SEARCH MAIN /////// + +// Whether the worker is currently handling a search. This is a boolean +// as the worker only ever handles 1 or 0 searches at a time. +var worker_is_running = false; + +// The last search text that was sent to the worker. This is used to determine +// if the worker should be launched again when it reports back results. +var last_search_text = ""; + +// The results of the last search. This, in combination with the state of the filters +// in the DOM, is used compute the results to display on calls to update_search. +var unfiltered_results = []; + +// Which filter is currently selected +var selected_filter = ""; + +$(document).on("input", ".documenter-search-input", function (event) { + if (!worker_is_running) { + launch_search(); + } +}); + +function launch_search() { + worker_is_running = true; + last_search_text = $(".documenter-search-input").val(); + worker.postMessage(last_search_text); +} + +worker.onmessage = function (e) { + if (last_search_text !== $(".documenter-search-input").val()) { + launch_search(); + } else { + worker_is_running = false; + } + + unfiltered_results = e.data; + update_search(); +}; + +$(document).on("click", ".search-filter", function () { + if ($(this).hasClass("search-filter-selected")) { + selected_filter = ""; + } else { + selected_filter = $(this).text().toLowerCase(); + } + + // This updates search results and toggles classes for UI: + update_search(); +}); + +/** + * Make/Update the search component + */ +function update_search() { + let querystring = $(".documenter-search-input").val(); + + if (querystring.trim()) { + if (selected_filter == "") { + results = unfiltered_results; + } else { + results = unfiltered_results.filter((result) => { + return selected_filter == result.category.toLowerCase(); + }); + } + + let search_result_container = ``; + let modal_filters = make_modal_body_filters(); + let search_divider = `
`; + + if (results.length) { + let links = []; + let count = 0; + let search_results = ""; + + for (var i = 0, n = results.length; i < n && count < 200; ++i) { + let result = results[i]; + if (result.location && !links.includes(result.location)) { + search_results += result.div; + count++; + links.push(result.location); + } + } + + if (count == 1) { + count_str = "1 result"; + } else if (count == 200) { + count_str = "200+ results"; + } else { + count_str = count + " results"; + } + let result_count = `
${count_str}
`; + + search_result_container = ` +
+ ${modal_filters} + ${search_divider} + ${result_count} +
+ ${search_results} +
+
+ `; + } else { + search_result_container = ` +
+ ${modal_filters} + ${search_divider} +
0 result(s)
+
+
No result found!
+ `; + } + + 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 { + if (!$(".search-modal-card-body").hasClass("is-justify-content-center")) { + $(".search-modal-card-body").addClass("is-justify-content-center"); + } + + $(".search-modal-card-body").html(` +
Type something to get started!
+ `); + } +} + +/** + * Make the modal filter html + * + * @returns string + */ +function make_modal_body_filters() { + let str = filters + .map((val) => { + if (selected_filter == val.toLowerCase()) { + return `${val}`; + } else { + return `${val}`; + } + }) + .join(""); + + return ` +
+ Filters: + ${str} +
`; +} + +}) +//////////////////////////////////////////////////////////////////////////////// +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($) { + +$(document).ready(function () { + let search_modal_header = ` + + `; + + let initial_search_body = ` +
Type something to get started!
+ `; + + let search_modal_footer = ` + + `; + + $(document.body).append( + ` + + ` + ); + + 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 = ` +
Type something to get started!
+ `; + + 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 = $( + "" + ); + version_selector_select.append(option); + } + + if (typeof DOC_VERSIONS !== "undefined") { + var existing_versions = version_selector_select.children("option"); + var existing_versions_texts = existing_versions.map(function (i, x) { + return x.text; + }); + DOC_VERSIONS.forEach(function (each) { + var version_url = documenterBaseURL + "/../" + each + "/"; + var existing_id = $.inArray(each, existing_versions_texts); + // if not already in the version selector, add it as a new option, + // otherwise update the old option with the URL and enable it + if (existing_id == -1) { + var option = $( + "" + ); + version_selector_select.append(option); + } else { + var option = existing_versions[existing_id]; + option.value = version_url; + option.disabled = false; + } + }); + } + + // only show the version selector if the selector has been populated + if (version_selector_select.children("option").length > 0) { + version_selector.toggleClass("visible"); + } +}); + +}) diff --git a/v0.9.0/assets/fulllogo.svg b/v0.9.0/assets/fulllogo.svg new file mode 100644 index 00000000..92897e8a --- /dev/null +++ b/v0.9.0/assets/fulllogo.svg @@ -0,0 +1,232 @@ + + + + diff --git a/v0.9.0/assets/logo.png b/v0.9.0/assets/logo.png new file mode 100644 index 00000000..aac5d458 Binary files /dev/null and b/v0.9.0/assets/logo.png differ diff --git a/v0.9.0/assets/logo.svg b/v0.9.0/assets/logo.svg new file mode 100644 index 00000000..e831fbee --- /dev/null +++ b/v0.9.0/assets/logo.svg @@ -0,0 +1,224 @@ + + + + diff --git a/v0.9.0/assets/themes/documenter-dark.css b/v0.9.0/assets/themes/documenter-dark.css new file mode 100644 index 00000000..53889fb9 --- /dev/null +++ b/v0.9.0/assets/themes/documenter-dark.css @@ -0,0 +1,7 @@ +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;overflow:auto}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;overflow-x:hidden}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 .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/v0.9.0/assets/themes/documenter-light.css b/v0.9.0/assets/themes/documenter-light.css new file mode 100644 index 00000000..2f168c77 --- /dev/null +++ b/v0.9.0/assets/themes/documenter-light.css @@ -0,0 +1,9 @@ +.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;overflow:auto}.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;overflow-x:hidden}#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 + 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/v0.9.0/assets/themeswap.js b/v0.9.0/assets/themeswap.js new file mode 100644 index 00000000..9f5eebe6 --- /dev/null +++ b/v0.9.0/assets/themeswap.js @@ -0,0 +1,84 @@ +// Small function to quickly swap out themes. Gets put into the 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 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 + 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 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 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/v0.9.0/assets/warner.js b/v0.9.0/assets/warner.js new file mode 100644 index 00000000..3f6f5d00 --- /dev/null +++ b/v0.9.0/assets/warner.js @@ -0,0 +1,52 @@ +function maybeAddWarning() { + // DOCUMENTER_NEWEST is defined in versions.js, DOCUMENTER_CURRENT_VERSION and DOCUMENTER_STABLE + // in siteinfo.js. + // If either of these are undefined something went horribly wrong, so we abort. + if ( + window.DOCUMENTER_NEWEST === undefined || + window.DOCUMENTER_CURRENT_VERSION === undefined || + window.DOCUMENTER_STABLE === undefined + ) { + return; + } + + // Current version is not a version number, so we can't tell if it's the newest version. Abort. + if (!/v(\d+\.)*\d+/.test(window.DOCUMENTER_CURRENT_VERSION)) { + return; + } + + // Current version is newest version, so no need to add a warning. + if (window.DOCUMENTER_NEWEST === window.DOCUMENTER_CURRENT_VERSION) { + return; + } + + // Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs. + if (document.body.querySelector('meta[name="robots"]') === null) { + const meta = document.createElement("meta"); + meta.name = "robots"; + meta.content = "noindex"; + + document.getElementsByTagName("head")[0].appendChild(meta); + } + + const div = document.createElement("div"); + div.classList.add("outdated-warning-overlay"); + const closer = document.createElement("button"); + closer.classList.add("outdated-warning-closer", "delete"); + closer.addEventListener("click", function () { + document.body.removeChild(div); + }); + const href = window.documenterBaseURL + "/../" + window.DOCUMENTER_STABLE; + div.innerHTML = + 'This documentation is not for the latest stable release, but for either the development version or an older release.
Click here to go to the documentation for the latest stable release.'; + div.appendChild(closer); + document.body.appendChild(div); +} + +if (document.readyState === "loading") { + document.addEventListener("DOMContentLoaded", maybeAddWarning); +} else { + maybeAddWarning(); +} diff --git a/v0.9.0/contributing/index.html b/v0.9.0/contributing/index.html new file mode 100644 index 00000000..6f16f59c --- /dev/null +++ b/v0.9.0/contributing/index.html @@ -0,0 +1,2 @@ + +Contributing · TiffImages.jl

Contributing

Supporting all TIFFs is non-trivial and I would greatly appreciate any help from the community in identifying edge cases.

Add edge case TIFFs

There is incredible diversity in the TIFF ecosystem so much so that there is a backronym "Thousand Incompatible File Formats" to describe it. I have tried to establish a good baseline test set of TIFFs that should guarantee that TiffImages.jl should "just work tm" for most people, but if you have a TIFF that you run into that breaks TiffImages.jl please do the following:

  1. create a pull request against the example TIFF repo adding the file. The smaller the file, the better.
  2. update the README table with license information, etc.
  3. Open an issue against TiffImages.jl with the error message and the expected result
diff --git a/v0.9.0/democards/gridtheme.css b/v0.9.0/democards/gridtheme.css new file mode 100644 index 00000000..4d02fc84 --- /dev/null +++ b/v0.9.0/democards/gridtheme.css @@ -0,0 +1,59 @@ +.grid-card-section { + display: flex; + flex-direction: row; + flex-wrap: wrap; + align-content: space-between; +} + +.grid-card:hover{ + box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.4), 0 6px 20px 0 rgba(0, 0, 0, 0.1); +} + +.grid-card { + width: 210px; + max-height: 400px; + margin: 10px 15px; + box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2); + transition: 0.3s; + border-radius: 5px; +} + +.grid-card-text { + padding: 0 15px; +} + +.grid-card-cover img { + width: 100%; +} + +.grid-card-cover { + width: 200px; + height: 220px; + padding: 5px; + box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2); + transition: 0.3s; + border-radius: 5px; + display:block; + margin:auto; +} + +.grid-card-cover .grid-card-description { + opacity: 0; + z-index: -1; + position: absolute; + top: 25%; + left: 140%; + width: 100%; + transform: translate(-50%, -50%); + padding: 10px; + border-radius: 5px; + background: rgba(0, 0, 0, 0.8); + color: #fff; + text-align: center; + font-size: 14px; +} + +.grid-card-cover:hover .grid-card-description{ + z-index: 3; + opacity: 1; +} diff --git a/v0.9.0/demos/common/assets/coffee.png b/v0.9.0/demos/common/assets/coffee.png new file mode 100644 index 00000000..2764776e Binary files /dev/null and b/v0.9.0/demos/common/assets/coffee.png differ diff --git a/v0.9.0/demos/common/assets/fiji_hyperstack.png b/v0.9.0/demos/common/assets/fiji_hyperstack.png new file mode 100644 index 00000000..1992ab30 Binary files /dev/null and b/v0.9.0/demos/common/assets/fiji_hyperstack.png differ diff --git a/v0.9.0/demos/common/assets/fiji_logo.png b/v0.9.0/demos/common/assets/fiji_logo.png new file mode 100644 index 00000000..8795721a Binary files /dev/null and b/v0.9.0/demos/common/assets/fiji_logo.png differ diff --git a/v0.9.0/demos/common/assets/fiji_properties.png b/v0.9.0/demos/common/assets/fiji_properties.png new file mode 100644 index 00000000..81a3bd9b Binary files /dev/null and b/v0.9.0/demos/common/assets/fiji_properties.png differ diff --git a/v0.9.0/demos/common/imagej.ipynb b/v0.9.0/demos/common/imagej.ipynb new file mode 100644 index 00000000..1354b2f4 --- /dev/null +++ b/v0.9.0/demos/common/imagej.ipynb @@ -0,0 +1,170 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "source": [ + "ImageJ is a commonly used image processing software for working with TIFFs.\n", + "You might want to add X and Y resolution information to your `TiffImages.jl`\n", + "TIFFs that works with ImageJ." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "First, we need to assign the resolution unit by adding a `RESOLUTIONUNIT` tag\n", + "to each IFD in the image" + ], + "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "using Images, TiffImages, Unitful\n", + "img0 = zeros(Gray{N0f8}, 10, 10, 12) #example image\n", + "img = TiffImages.DenseTaggedImage(img0)\n", + "\n", + "!isdefined(Main, :ifds) && (ifds = x-> x.ifds) #hide\n", + "\n", + "resunit = UInt8(3) # 1: No absolute unit of measurement, 2: Inch, 3: Centimeter\n", + "[ifd[TiffImages.RESOLUTIONUNIT] = resunit for ifd in ifds(img)];" + ], + "metadata": {}, + "execution_count": 1 + }, + { + "cell_type": "markdown", + "source": [ + "Then, we can add the `XRESOLUTION` and `YRESOLUTION` TIFF tags to store the\n", + "number of pixels per `RESOLUTIONUNIT`." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "IFD, with tags: \n\tTag(IMAGEWIDTH, 10)\n\tTag(IMAGELENGTH, 10)\n\tTag(BITSPERSAMPLE, 8)\n\tTag(PHOTOMETRIC, 1)\n\tTag(SAMPLESPERPIXEL, 1)\n\tTag(XRESOLUTION, 0x001d3582//0x0000007d)\n\tTag(YRESOLUTION, 0x001d3582//0x0000007d)\n\tTag(RESOLUTIONUNIT, 3)\n\tTag(SAMPLEFORMAT, 1)" + }, + "metadata": {}, + "execution_count": 2 + } + ], + "cell_type": "code", + "source": [ + "resxy = Rational{UInt32}(round(1u\"cm\"/0.653u\"μm\", digits = 3)) # Type must be rational. In this example, the pixel size is 0.653 μm x 0.653 μm.\n", + "[ifd[TiffImages.XRESOLUTION] = resxy for ifd in ifds(img)]\n", + "[ifd[TiffImages.YRESOLUTION] = resxy for ifd in ifds(img)]\n", + "first(ifds(img))" + ], + "metadata": {}, + "execution_count": 2 + }, + { + "cell_type": "markdown", + "source": [ + "Now if we want to add Z and time information to a TIFF, it's a bit more\n", + "complicated because the TIFF spec doesn't have a standard way of representing\n", + "this information. ImageJ has a poorly documented way to add this information\n", + "by writing to an IMAGEDESCRIPTION tag in the first IFD." + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "The following tells ImageJ that it is a hyperstack with 3 timepoints and 4 Z\n", + "slices with a 0.2 interval (in secs) between frames and a 5 micron spacing,\n", + "respectively." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "IFD, with tags: \n\tTag(IMAGEWIDTH, 10)\n\tTag(IMAGELENGTH, 10)\n\tTag(BITSPERSAMPLE, 8)\n\tTag(PHOTOMETRIC, 1)\n\tTag(IMAGEDESCRIPTION, \"ImageJ=1.51d\nimages=...\")\n\tTag(SAMPLESPERPIXEL, 1)\n\tTag(XRESOLUTION, 0x001d3582//0x0000007d)\n\tTag(YRESOLUTION, 0x001d3582//0x0000007d)\n\tTag(RESOLUTIONUNIT, 3)\n\tTag(SAMPLEFORMAT, 1)" + }, + "metadata": {}, + "execution_count": 3 + } + ], + "cell_type": "code", + "source": [ + "first(ifds(img))[TiffImages.IMAGEDESCRIPTION] = # only in the first IFD\n", + "\"ImageJ=1.51d\n", + "images=12\n", + "frames=3\n", + "slices=4\n", + "hyperstack=true\n", + "spacing=5.0\n", + "unit=um\n", + "finterval=0.2\n", + "axes=TZYX\"\n", + "\n", + "first(ifds(img))" + ], + "metadata": {}, + "execution_count": 3 + }, + { + "cell_type": "markdown", + "source": [ + "Then write the image to disk" + ], + "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "TiffImages.save(\"imagej.tiff\", img)" + ], + "metadata": {}, + "execution_count": 4 + }, + { + "cell_type": "markdown", + "source": [ + "Opening the file in ImageJ shows that it's recognized as a hyperstack with the\n", + "proper XYZT information:" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "![](assets/fiji_hyperstack.png)\n", + "![](assets/fiji_properties.png)" + ], + "metadata": {} + }, + { + "cell_type": "markdown", + "source": [ + "---\n", + "\n", + "*This notebook was generated using [Literate.jl](https://github.com/fredrikekre/Literate.jl).*" + ], + "metadata": {} + } + ], + "nbformat_minor": 3, + "metadata": { + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.10.2" + }, + "kernelspec": { + "name": "julia-1.10", + "display_name": "Julia 1.10.2", + "language": "julia" + } + }, + "nbformat": 4 +} diff --git a/v0.9.0/demos/common/imagej.jl b/v0.9.0/demos/common/imagej.jl new file mode 100644 index 00000000..fe94600b --- /dev/null +++ b/v0.9.0/demos/common/imagej.jl @@ -0,0 +1,30 @@ +using Images, TiffImages, Unitful +img0 = zeros(Gray{N0f8}, 10, 10, 12) #example image +img = TiffImages.DenseTaggedImage(img0) + +!isdefined(Main, :ifds) && (ifds = x-> x.ifds) #hide + +resunit = UInt8(3) # 1: No absolute unit of measurement, 2: Inch, 3: Centimeter +[ifd[TiffImages.RESOLUTIONUNIT] = resunit for ifd in ifds(img)]; + +resxy = Rational{UInt32}(round(1u"cm"/0.653u"μm", digits = 3)) # Type must be rational. In this example, the pixel size is 0.653 μm x 0.653 μm. +[ifd[TiffImages.XRESOLUTION] = resxy for ifd in ifds(img)] +[ifd[TiffImages.YRESOLUTION] = resxy for ifd in ifds(img)] +first(ifds(img)) + +first(ifds(img))[TiffImages.IMAGEDESCRIPTION] = # only in the first IFD +"ImageJ=1.51d +images=12 +frames=3 +slices=4 +hyperstack=true +spacing=5.0 +unit=um +finterval=0.2 +axes=TZYX" + +first(ifds(img)) + +TiffImages.save("imagej.tiff", img) + +# This file was generated using Literate.jl, https://github.com/fredrikekre/Literate.jl diff --git a/v0.9.0/demos/common/imagej.tiff b/v0.9.0/demos/common/imagej.tiff new file mode 100644 index 00000000..8b79614f Binary files /dev/null and b/v0.9.0/demos/common/imagej.tiff differ diff --git a/v0.9.0/demos/common/imagej/index.html b/v0.9.0/demos/common/imagej/index.html new file mode 100644 index 00000000..0c4319d1 --- /dev/null +++ b/v0.9.0/demos/common/imagej/index.html @@ -0,0 +1,42 @@ + +Writing ImageJ compatible metadata · TiffImages.jl

Writing ImageJ compatible metadata

Source code notebook Author

ImageJ is a commonly used image processing software for working with TIFFs. You might want to add X and Y resolution information to your TiffImages.jl TIFFs that works with ImageJ.

First, we need to assign the resolution unit by adding a RESOLUTIONUNIT tag to each IFD in the image

using Images, TiffImages, Unitful
+img0 = zeros(Gray{N0f8}, 10, 10, 12) #example image
+img = TiffImages.DenseTaggedImage(img0)
+
+
+resunit = UInt8(3) # 1: No absolute unit of measurement, 2: Inch, 3: Centimeter
+[ifd[TiffImages.RESOLUTIONUNIT] = resunit for ifd in ifds(img)];

Then, we can add the XRESOLUTION and YRESOLUTION TIFF tags to store the number of pixels per RESOLUTIONUNIT.

resxy = Rational{UInt32}(round(1u"cm"/0.653u"μm", digits = 3)) # Type must be rational. In this example, the pixel size is 0.653 μm x 0.653 μm.
+[ifd[TiffImages.XRESOLUTION] = resxy for ifd in ifds(img)]
+[ifd[TiffImages.YRESOLUTION] = resxy for ifd in ifds(img)]
+first(ifds(img))
IFD, with tags: 
+	Tag(IMAGEWIDTH, 10)
+	Tag(IMAGELENGTH, 10)
+	Tag(BITSPERSAMPLE, 8)
+	Tag(PHOTOMETRIC, 1)
+	Tag(SAMPLESPERPIXEL, 1)
+	Tag(XRESOLUTION, 0x001d3582//0x0000007d)
+	Tag(YRESOLUTION, 0x001d3582//0x0000007d)
+	Tag(RESOLUTIONUNIT, 3)
+	Tag(SAMPLEFORMAT, 1)

Now if we want to add Z and time information to a TIFF, it's a bit more complicated because the TIFF spec doesn't have a standard way of representing this information. ImageJ has a poorly documented way to add this information by writing to an IMAGEDESCRIPTION tag in the first IFD.

The following tells ImageJ that it is a hyperstack with 3 timepoints and 4 Z slices with a 0.2 interval (in secs) between frames and a 5 micron spacing, respectively.

first(ifds(img))[TiffImages.IMAGEDESCRIPTION] = # only in the first IFD
+"ImageJ=1.51d
+images=12
+frames=3
+slices=4
+hyperstack=true
+spacing=5.0
+unit=um
+finterval=0.2
+axes=TZYX"
+
+first(ifds(img))
IFD, with tags: 
+	Tag(IMAGEWIDTH, 10)
+	Tag(IMAGELENGTH, 10)
+	Tag(BITSPERSAMPLE, 8)
+	Tag(PHOTOMETRIC, 1)
+	Tag(IMAGEDESCRIPTION, "ImageJ=1.51d
+images=...")
+	Tag(SAMPLESPERPIXEL, 1)
+	Tag(XRESOLUTION, 0x001d3582//0x0000007d)
+	Tag(YRESOLUTION, 0x001d3582//0x0000007d)
+	Tag(RESOLUTIONUNIT, 3)
+	Tag(SAMPLEFORMAT, 1)

Then write the image to disk

TiffImages.save("imagej.tiff", img)

Opening the file in ImageJ shows that it's recognized as a hyperstack with the proper XYZT information:


This page was generated using DemoCards.jl and Literate.jl.

diff --git a/v0.9.0/demos/common/network.ipynb b/v0.9.0/demos/common/network.ipynb new file mode 100644 index 00000000..34cd36bf --- /dev/null +++ b/v0.9.0/demos/common/network.ipynb @@ -0,0 +1,109 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "source": [ + "The following code can be used to load remote TIFFs without saving them to the\n", + "disk." + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "load_tiff_without_saving (generic function with 1 method)" + }, + "metadata": {}, + "execution_count": 1 + } + ], + "cell_type": "code", + "source": [ + "using TiffImages, Downloads, FileIO\n", + "\n", + "function load_tiff_without_saving(url)\n", + " buffer = IOBuffer()\n", + " Downloads.download(url, buffer)\n", + " bufstream = TiffImages.getstream(format\"TIFF\", buffer)\n", + " TiffImages.load(read(bufstream, TiffFile))\n", + "end" + ], + "metadata": {}, + "execution_count": 1 + }, + { + "cell_type": "markdown", + "source": [ + "We'll load an example from\n", + "[`tlnagy/exampletiffs`](https://github.com/tlnagy/exampletiffs)" + ], + "metadata": {} + }, + { + "outputs": [ + { + "output_type": "execute_result", + "data": { + "text/plain": "378×504 TiffImages.DenseTaggedImage{Gray{N0f8}, 2, UInt32, Matrix{Gray{N0f8}}}:\n Gray{N0f8}(0.706) Gray{N0f8}(0.71) … Gray{N0f8}(0.039)\n Gray{N0f8}(0.71) Gray{N0f8}(0.714) Gray{N0f8}(0.039)\n Gray{N0f8}(0.714) Gray{N0f8}(0.718) Gray{N0f8}(0.039)\n Gray{N0f8}(0.718) Gray{N0f8}(0.722) Gray{N0f8}(0.039)\n Gray{N0f8}(0.725) Gray{N0f8}(0.725) Gray{N0f8}(0.039)\n Gray{N0f8}(0.733) Gray{N0f8}(0.733) … Gray{N0f8}(0.035)\n Gray{N0f8}(0.737) Gray{N0f8}(0.741) Gray{N0f8}(0.039)\n Gray{N0f8}(0.741) Gray{N0f8}(0.741) Gray{N0f8}(0.035)\n Gray{N0f8}(0.749) Gray{N0f8}(0.753) Gray{N0f8}(0.035)\n Gray{N0f8}(0.757) Gray{N0f8}(0.761) Gray{N0f8}(0.039)\n ⋮ ⋱ \n Gray{N0f8}(0.384) Gray{N0f8}(0.345) Gray{N0f8}(0.647)\n Gray{N0f8}(0.427) Gray{N0f8}(0.416) … Gray{N0f8}(0.655)\n Gray{N0f8}(0.392) Gray{N0f8}(0.412) Gray{N0f8}(0.651)\n Gray{N0f8}(0.392) Gray{N0f8}(0.373) Gray{N0f8}(0.655)\n Gray{N0f8}(0.384) Gray{N0f8}(0.412) Gray{N0f8}(0.663)\n Gray{N0f8}(0.337) Gray{N0f8}(0.353) Gray{N0f8}(0.659)\n Gray{N0f8}(0.357) Gray{N0f8}(0.325) … Gray{N0f8}(0.659)\n Gray{N0f8}(0.42) Gray{N0f8}(0.416) Gray{N0f8}(0.667)\n Gray{N0f8}(0.42) Gray{N0f8}(0.439) Gray{N0f8}(0.663)", + "image/png": "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", + "text/html": [ + "" + ] + }, + "metadata": {}, + "execution_count": 2 + } + ], + "cell_type": "code", + "source": [ + "coffeepath = \"https://github.com/tlnagy/exampletiffs/raw/11516d288c4b03a258aa3027705b0e9d2ce2b5de/coffee.tif\"\n", + "coffeeimg = load_tiff_without_saving(coffeepath)" + ], + "metadata": {}, + "execution_count": 2 + }, + { + "cell_type": "markdown", + "source": [ + "No disks involved!" + ], + "metadata": {} + }, + { + "outputs": [], + "cell_type": "code", + "source": [ + "save(\"assets/coffee.png\", collect(coffeeimg[:, 70:470])) #hide\n", + "nothing #hide" + ], + "metadata": {}, + "execution_count": 3 + }, + { + "cell_type": "markdown", + "source": [ + "---\n", + "\n", + "*This notebook was generated using [Literate.jl](https://github.com/fredrikekre/Literate.jl).*" + ], + "metadata": {} + } + ], + "nbformat_minor": 3, + "metadata": { + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.10.2" + }, + "kernelspec": { + "name": "julia-1.10", + "display_name": "Julia 1.10.2", + "language": "julia" + } + }, + "nbformat": 4 +} diff --git a/v0.9.0/demos/common/network.jl b/v0.9.0/demos/common/network.jl new file mode 100644 index 00000000..b2edb586 --- /dev/null +++ b/v0.9.0/demos/common/network.jl @@ -0,0 +1,16 @@ +using TiffImages, Downloads, FileIO + +function load_tiff_without_saving(url) + buffer = IOBuffer() + Downloads.download(url, buffer) + bufstream = TiffImages.getstream(format"TIFF", buffer) + TiffImages.load(read(bufstream, TiffFile)) +end + +coffeepath = "https://github.com/tlnagy/exampletiffs/raw/11516d288c4b03a258aa3027705b0e9d2ce2b5de/coffee.tif" +coffeeimg = load_tiff_without_saving(coffeepath) + +save("assets/coffee.png", collect(coffeeimg[:, 70:470])) #hide +nothing #hide + +# This file was generated using Literate.jl, https://github.com/fredrikekre/Literate.jl diff --git a/v0.9.0/demos/common/network/index.html b/v0.9.0/demos/common/network/index.html new file mode 100644 index 00000000..6cdcb6f3 --- /dev/null +++ b/v0.9.0/demos/common/network/index.html @@ -0,0 +1,10 @@ + +Loading a remote TIFF · TiffImages.jl

Loading a remote TIFF

Source code notebook Author

The following code can be used to load remote TIFFs without saving them to the disk.

using TiffImages, Downloads, FileIO
+
+function load_tiff_without_saving(url)
+  buffer = IOBuffer()
+  Downloads.download(url, buffer)
+  bufstream = TiffImages.getstream(format"TIFF", buffer)
+  TiffImages.load(read(bufstream, TiffFile))
+end
load_tiff_without_saving (generic function with 1 method)

We'll load an example from tlnagy/exampletiffs

coffeepath = "https://github.com/tlnagy/exampletiffs/raw/11516d288c4b03a258aa3027705b0e9d2ce2b5de/coffee.tif"
+coffeeimg = load_tiff_without_saving(coffeepath)

No disks involved!


This page was generated using DemoCards.jl and Literate.jl.

diff --git a/v0.9.0/demos/covers/imagej.png b/v0.9.0/demos/covers/imagej.png new file mode 100644 index 00000000..8795721a Binary files /dev/null and b/v0.9.0/demos/covers/imagej.png differ diff --git a/v0.9.0/demos/covers/network.png b/v0.9.0/demos/covers/network.png new file mode 100644 index 00000000..2764776e Binary files /dev/null and b/v0.9.0/demos/covers/network.png differ diff --git a/v0.9.0/demos/index.html b/v0.9.0/demos/index.html new file mode 100644 index 00000000..04ace8ab --- /dev/null +++ b/v0.9.0/demos/index.html @@ -0,0 +1,10 @@ + +Demos · TiffImages.jl
diff --git a/v0.9.0/examples/mmap_lazyio/49677c35.png b/v0.9.0/examples/mmap_lazyio/49677c35.png new file mode 100644 index 00000000..ea50db56 Binary files /dev/null and b/v0.9.0/examples/mmap_lazyio/49677c35.png differ diff --git a/v0.9.0/examples/mmap_lazyio/65b89df9.png b/v0.9.0/examples/mmap_lazyio/65b89df9.png new file mode 100644 index 00000000..34aa3cbd Binary files /dev/null and b/v0.9.0/examples/mmap_lazyio/65b89df9.png differ diff --git a/v0.9.0/examples/mmap_lazyio/69391ac9.png b/v0.9.0/examples/mmap_lazyio/69391ac9.png new file mode 100644 index 00000000..323e7474 Binary files /dev/null and b/v0.9.0/examples/mmap_lazyio/69391ac9.png differ diff --git a/v0.9.0/examples/mmap_lazyio/cda5ed83.png b/v0.9.0/examples/mmap_lazyio/cda5ed83.png new file mode 100644 index 00000000..e4fde9e6 Binary files /dev/null and b/v0.9.0/examples/mmap_lazyio/cda5ed83.png differ diff --git a/v0.9.0/examples/mmap_lazyio/index.html b/v0.9.0/examples/mmap_lazyio/index.html new file mode 100644 index 00000000..8fd2aca2 --- /dev/null +++ b/v0.9.0/examples/mmap_lazyio/index.html @@ -0,0 +1,24 @@ + +Lazy TIFFs · TiffImages.jl

Lazy TIFFs

If you're running into memory-limitations when working with large datasets, you can lazy-load or memory-map the file so that it looks and behaves as if it were loaded, but actually loads data only when needed.

Memory-mapping and lazy loading

Loading lazily is very similar to Reading TIFFs, except with the addition of the mmap=true or lazyio=true flag. The differences between the two will be described in the next section.

Tip

A good general rule is to preferentially use mmap=true. It will generally be faster and, perhaps even more importantly, will have much better worst-case behavior. However, it's more limited in the types of TIFFs that are supported, e.g. compressed and/or striped TIFFs are not supported. For those files, use lazyio=true, which is more flexible.

See the Caveats and important details section for more details.

First, let's look at a demonstration using mri.tif from the tlnagy/exampletiffs repo.

using TiffImages
+img = TiffImages.load(filepath; lazyio=true);

Regardless of the size of the file, this is likely to return img almost immediately. The trick is that the data are not actually loaded (yet)– the image data will be loaded on an as-needed basis.

The lazily-loaded img will behave much the same as a normal eagerly-loaded image:

size(img)
(128, 128, 27)

Display the 2nd slice

img[:, :, 2]
Example block output

Lazy operations

One of the primary benefits of lazy-loading is avoiding unnecessary work for portions of the image that may never be accessed. I recommend using MappedArrays to continue the "laziness" of operations.

using Colors
+using MappedArrays
+
+eltype(img)
RGB{N0f16}

We can lazily modify our data for only the slices we end up actually displaying. For example, img is stored as an RGB, despite the fact that you can see it consists only of grayscale intensities. Let's convert the eltype lazily:

gray_img = of_eltype(Gray, img);

Then when we extract a slice from disk, it converts only that one to gray

slice = gray_img[:, :, 1]

We can check to make sure its eltype is correct:

eltype(slice)
Gray{N0f16}

Example: Maximum intensity projection

It's pretty straigtforward to do a max-intensity projection:

dropdims(maximum(gray_img, dims=3), dims=3)

While this demonstration was performed with lazyio=true, for files that support mmap=true the results would be similar.

Caveats and important details

Mechanism, format support, and performance

mmap=true and lazyio=true correspond, internally, to two different strategies for deferring the work of loading, and the differences can be visible to users.

  • lazyio=true uses an internal single-slice data buffer, and each frame of the TIFF file is read into this buffer on an as-needed basis.
  • mmap=true uses memory-mapped I/O to set up a virtual address space for the entire array, and the operating system's memory manager takes care of loading chunks of data into physical memory and mapping it to the virtual address space on an as-needed basis.

The two strategies support different features and exhibit different performance:

  • mmap=true requires a one-to-one correspondence between what is on disk and what is in memory. Consequently, features like compression are not supported. Currently, there is also no support for files that write slice data in strips. Both of these features are supported with lazyio=true.
  • with lazyio=true, switching slices is an expensive operation, because an entire new slice has to be read into the buffer; as a consequence, access patterns that stay "within-slice" (like sum(img[:,:,1])) are fast, while access patterns that cross slices (like sum(img[1, 1, :])) are slow; access patterns that alternate between slices (e.g., interpolation across the third dimension) are essentially unusable. mmap=true can be more selective about the data it loads, for example reading subsets of single slices. It can also keep previously-loaded data in memory even as you switch slice planes, so that reloads are less common. Consequently, when supported, mmap=true achieves good performance more consistently.

Assigning values and writing to disk

Aside from generality and performance, there are other important differences. Currently, lazyio=true does not support assigning new values to the array: img[:, :, 2] .= 0.0 throws an error. mmap=true can support setting values, but setting values also writes those same values to the disk file. To guard against unintended data corruption, by default load(filepath; mmap=true) opens the file with read-only permission, and then assigning values throws an error. Using flagler.tif from the tlnagy/exampletiffs repo (a file which is of a format that can be read with mmap=true), we get

img = TiffImages.load(filepath_flagler, mmap=true)
Example block output

but

julia> img[1,1,1] = RGB(1, 0, 0)
+ERROR: ReadOnlyMemoryError()

To support writing, open the file with read/write permissions:

img = TiffImages.load(filepath_flagler, mode="r+", mmap=true);

Then, assignment will work and the same value will be written to the disk file.

Warning

Casual use of mode="r+" can lead to data corruption, so use it only when you intend to rewrite data.

Behavior on Windows

On Microsoft Windows, one additional caveat is that deleting or replacing a file that has been mmaped by your Julia process will result in either a IOError: unlink(<file path>): permission denied (EACCES) or LoadError: SystemError: opening file <file path>: Invalid argument error. If you're done using the image, you may want to ensure it is garbage-collected first:

img = nothing
+GC.gc()

If successful, this will terminate the mmap and the file can be deleted without causing an error in the Julia session. However, any reference to img by any other object can prevent garbage collection; one safe pattern is

let img = TiffImages.load(filepath; mmap=true)
+    # operations on `img` go here
+end
+GC.gc()

Such tricks are not generally necessary on other platforms, which handle deletion by unlinking the file from its name but otherwise keep the data on disk if it is being mmapped by one or more processes. After all such processes have exited, the actual data are deleted by the operating system.

Incremental writing

TiffImages also supports writing to a file via an append operation. We have a special type for this called LazyBufferedTIFF, that we can create via the standard empty function

using ImageCore # reexports Gray and N0f8
+img2 = empty(LazyBufferedTIFF, Gray{N0f8}, "test.tif")
32-bit LazyBufferedTIFF{Gray{N0f8}} 0×0×0 (writable)
+    Current file size on disk:   8 bytes
+    Addressable space remaining: 4.000 GiB
+
Note

For data-integrity reasons, TiffImages will not allow you to append to an pre-existing file and will throw an error if a file exists at the filepath that you provide.

Say you have the following data:

slice = rand(Gray{N0f8}, 256, 256)
Example block output

You can then push new data to the img2 object and it will eagerly write that data to disk.

push!(img2, slice)
32-bit LazyBufferedTIFF{Gray{N0f8}} 256×256×1 (writable)
+    Current file size on disk:   64.151 KiB
+    Addressable space remaining: 4.000 GiB
+

The first slice sets the XY dimensions of the TIFF and subsequent slices must have the same dimensions as the first.

push!(img2, rand(Gray{N0f8}, 256, 256))
32-bit LazyBufferedTIFF{Gray{N0f8}} 256×256×2 (writable)
+    Current file size on disk:   128.295 KiB
+    Addressable space remaining: 4.000 GiB
+

The memory-mapped object also behaves like an array and supports most array operations (other than inplace mutating ones like setindex!)

size(img2)
(256, 256, 2)

To read a slice that you just wrote:

img2[:, :, 2]
Example block output

XL files

If you're going to be writing lots of data to disk (4GB+) then it can be helpful to set the bigtiff flag to true so that TiffImages can use 64-bit offsets. You'll see that the addressable space sky rockets:

img3 = empty(LazyBufferedTIFF, Gray{N0f16}, "test.btif"; bigtiff=true)
64-bit LazyBufferedTIFF{Gray{N0f16}} 0×0×0 (writable)
+    Current file size on disk:   16 bytes
+    Addressable space remaining: 16384.000 PiB
+

This page was generated using Literate.jl.

diff --git a/v0.9.0/examples/reading/1aa19430.png b/v0.9.0/examples/reading/1aa19430.png new file mode 100644 index 00000000..40145bb2 Binary files /dev/null and b/v0.9.0/examples/reading/1aa19430.png differ diff --git a/v0.9.0/examples/reading/72e08135.png b/v0.9.0/examples/reading/72e08135.png new file mode 100644 index 00000000..8395861d Binary files /dev/null and b/v0.9.0/examples/reading/72e08135.png differ diff --git a/v0.9.0/examples/reading/index.html b/v0.9.0/examples/reading/index.html new file mode 100644 index 00000000..1c99d261 --- /dev/null +++ b/v0.9.0/examples/reading/index.html @@ -0,0 +1,32 @@ + +Reading TIFFs · TiffImages.jl

Reading TIFFs

Loading most TIFFs should just work, see Writing TIFFs for more advanced manipulation of TIFF objects. But we'll quickly run through a common use cases.

Basic loading

At its most basic, we can just point TiffImages.jl to the filepath of an image and it will attempt to load it. Here, we're loading spring.tif from the tlnagy/exampletiffs repo

using TiffImages
+img = TiffImages.load(filepath)
Example block output

If you're a graphical environment, you can load the Images.jl repo to get a nice graphical representation of your image. If you're in the REPL, I highly recommend the ImageInTerminal.jl package for some visual feedback.

Continuing on, img here behaves exactly as you would expect a Julian array to despite the funky type signature

typeof(img)
TiffImages.DenseTaggedImage{RGB{Float16}, 2, UInt32, Matrix{RGB{Float16}}}

Everything should behave as expected

eltype(img)
RGB{Float16}
Note

If your reaction to this element type is "Whoa! What is that?", I highly recommend reading JuliaImages' primer on colors and types. TiffImages is well integrated with the JuliaImages ecosystem so the tutorials there are quite helpful for learning how to interact with the TiffImages' outputs

Accessing and setting data should work as expected

img[160:180, 50]
img[160:180, 50] .= 1.0
+img
Example block output

This page was generated using Literate.jl.

diff --git a/v0.9.0/examples/test.btif b/v0.9.0/examples/test.btif new file mode 100644 index 00000000..e69de29b diff --git a/v0.9.0/examples/test.tif b/v0.9.0/examples/test.tif new file mode 100644 index 00000000..c1d71f23 Binary files /dev/null and b/v0.9.0/examples/test.tif differ diff --git a/v0.9.0/examples/writing/index.html b/v0.9.0/examples/writing/index.html new file mode 100644 index 00000000..1b7ea2a7 --- /dev/null +++ b/v0.9.0/examples/writing/index.html @@ -0,0 +1,57 @@ + +Writing TIFFs · TiffImages.jl

Writing TIFFs

This page is a tutorial for saving TIFFs using TiffImages.jl and covers some common use cases

You might want to write TIFFs to disk too. Now this can be done quite simply with TiffImages.jl. Say you have some AbstractArray type that you want to save, here we'll call it data:

using Random
+using Images # for nice inline images
+
+Random.seed!(123)
+data = rand(RGB{N0f8}, 10, 10)
Note

TiffImages.jl only works with AbstractArrays with eltypes of <:Colorant because the writer needs to know how to represent the image data on disk. Make sure to convert your AbstractArrays using before passing them. See the common strategies section below for tips.

Simple cases

In most simple cases, all you need to do is use the save function

using TiffImages
+TiffImages.save("test.tif", data)

That's it! TiffImages will convert your data into its own internal file type and then rapidly write it to disk. See the "Incremental writing" section of Lazy TIFFs for building a TIFF piece by piece.

Complex cases

If you need more fine-grained control over what tags are included when the image is written, this section is for you!

Converting to TiffImages.jl's TIFF type

Next lets convert data to a TIFF type

using TiffImages
+img = TiffImages.DenseTaggedImage(data)

Wait nothing happened! Hang with me, lets take a closer look at our new object using the dump command. We can see that there's now new information associated with our data! TiffImages.jl usually represents TIFF images as simply the data and associated tags that describe the data

dump(img; maxdepth=1)
TiffImages.DenseTaggedImage{RGB{N0f8}, 2, UInt32, Matrix{RGB{N0f8}}}
+  data: Array{RGB{N0f8}}((10, 10))
+  ifds: Array{TiffImages.IFD{UInt32}}((1,))

The tags are organized as a vector of what are called Image File Directories (IFDs). For a simple 2D image like what we have, the IFDs will be stored a vector of length=1. For 3D images, the length of the IFDs vector will equal the length of the image in the third dimension.

Lets take a look at what tags there are:

ifd = ifds(img) # returns a single IFD since our data is 2D
IFD, with tags: 
+	Tag(IMAGEWIDTH, 10)
+	Tag(IMAGELENGTH, 10)
+	Tag(BITSPERSAMPLE, UInt16[8, 8, 8])
+	Tag(PHOTOMETRIC, 2)
+	Tag(SAMPLESPERPIXEL, 3)
+	Tag(SAMPLEFORMAT, UInt16[1, 1, 1])

Manipulating TIFF Tags

These are some of the most basic tags that are required by the TIFF spec. We can even update it to add our own custom tags

ifd[TiffImages.IMAGEDESCRIPTION] = "This is very important data"
+ifd
IFD, with tags: 
+	Tag(IMAGEWIDTH, 10)
+	Tag(IMAGELENGTH, 10)
+	Tag(BITSPERSAMPLE, UInt16[8, 8, 8])
+	Tag(PHOTOMETRIC, 2)
+	Tag(IMAGEDESCRIPTION, "This is very importa...")
+	Tag(SAMPLESPERPIXEL, 3)
+	Tag(SAMPLEFORMAT, UInt16[1, 1, 1])

We can even add tags that aren't in the standard set in TiffImages.TiffTag as long as they are a UInt16

ifd[UInt16(34735)] = UInt16[1, 2, 3]
+ifd
IFD, with tags: 
+	Tag(IMAGEWIDTH, 10)
+	Tag(IMAGELENGTH, 10)
+	Tag(BITSPERSAMPLE, UInt16[8, 8, 8])
+	Tag(PHOTOMETRIC, 2)
+	Tag(IMAGEDESCRIPTION, "This is very importa...")
+	Tag(SAMPLESPERPIXEL, 3)
+	Tag(SAMPLEFORMAT, UInt16[1, 1, 1])
+	Tag(UNKNOWN(34735), UInt16[1, 2, 3])

We can also delete tags if we decide we don't want them:

delete!(ifd, TiffImages.IMAGEDESCRIPTION)
+ifd
IFD, with tags: 
+	Tag(IMAGEWIDTH, 10)
+	Tag(IMAGELENGTH, 10)
+	Tag(BITSPERSAMPLE, UInt16[8, 8, 8])
+	Tag(PHOTOMETRIC, 2)
+	Tag(SAMPLESPERPIXEL, 3)
+	Tag(SAMPLEFORMAT, UInt16[1, 1, 1])
+	Tag(UNKNOWN(34735), UInt16[1, 2, 3])
Warning

Careful with delete!, if any of core tags are deleted, TiffImages.jl and other readers might fail to read the file

Saving to disk

Once you're happy with your TIFF object, you can write it to disk as follows:

TiffImages.save("test.tif", img)

And to just double check, we can load it right back in

TiffImages.load("test.tif")

Strategies for saving common types

The general strategy for saving arrays will differ a bit depending on the type. The key step is the convert or reinterpret the arrays so that the elements are subtypes of Colors.Colorant

Unsigned Integers

Say you want to save a 3D array of small integers as grayscale values.

data2 = rand(UInt8.(1:255), 5, 10)
+eltype(data2)
UInt8

You can't directly save the data2 since TiffImages.jl needs some color information to properly save the file. You can use reinterpret to accomplish this:

grays = reinterpret(Gray{N0f8}, data2)
+img2 = TiffImages.DenseTaggedImage(grays)

Here the data are first reinterpreted as N0f8s, which is a FixedPointNumber then wrapped with a Gray type that marks this as a grayscale image. TiffImages.jl uses this information to update the TIFF tags

Floating point numbers

With RGB we can reinterpret the first dimension of a 3D array as the 3 different color components (red, green, and blue):

data = rand(Float64, 3, 5, 10);
+colors = dropdims(reinterpret(RGB{eltype(data)}, data), dims=1) # drop first dimension
+img3 = TiffImages.DenseTaggedImage(colors)

Here we dropped the first dimension since it was collapsed into the RGB type when we ran the reinterpret command.

Signed integers

Say you want to save data that has negative integer values. In that case, you can't use N0f8, etc because those only worked for unsigned integers. You have to instead use Q0f63, etc, which is a different kind of fixed point number that uses one bit for the sign info (that's why it's Q0f63, not Q0f64!)

data = rand(-100:100, 5, 5)
5×5 Matrix{Int64}:
+  25   18   84  -67  -74
+  87   34  -23   22  100
+ -93   63   -2  -16   63
+ -96  -65  -80  -99   98
+  11  -59  -57   17   -6
img4 = TiffImages.DenseTaggedImage(reinterpret(Gray{Q0f63}, data))
+println(ifds(img4))
IFD, with tags:
+	Tag(IMAGEWIDTH, 5)
+	Tag(IMAGELENGTH, 5)
+	Tag(BITSPERSAMPLE, 64)
+	Tag(PHOTOMETRIC, 1)
+	Tag(SAMPLESPERPIXEL, 1)
+	Tag(SAMPLEFORMAT, 2)

As you can see the SAMPLEFORMATS and BITSPERSAMPLE tags correctly updated to show that this TIFF contains signed integers and 64-bit data, respectively.

Warning

Currently, several of the display libraries struggle with showing Colorants backed by a signed type so you might run into errors, but the data will still save properly


This page was generated using Literate.jl.

diff --git a/v0.9.0/index.html b/v0.9.0/index.html new file mode 100644 index 00000000..305d6d5f --- /dev/null +++ b/v0.9.0/index.html @@ -0,0 +1,2 @@ + +Home · TiffImages.jl

TiffImages.jl

Pure-Julia TIFF reader and writer with a focus on correctness 🧐

TIFF (Tagged Image File Format) is a notoriously flexible file format that is very difficult to support properly so why not just link libtiff and call it a day? Because Julia developers are greedy. I wanted to design a clean, minimal, and standards-compliant TIFF reader and writer that can have the speed and compliance of libtiff while adding modern features like streaming, out-of-memory support, and fancy color support. I wanted to design it to be extensible such that packages like OMETIFF.jl can hook right in with minimal overhead. I wanted to leverage the wonderful Julia Arrays ecosystem to do as much lazily and flexibly as possible.

Features

TiffImages.jl supports:

  • The TIFF 6.0 baseline spec
  • Thorough testing
  • HDR images stored as 32bit or 64bit floats
  • BigTIFF standard (TIFFs larger than 4 GB)
  • Memory-mapped and lazy loading/writing
  • Arbitrary bit depths (e.g. 12 or 14 bit cameras)
  • Common compression algorithms like LZW and Packbits

Usage

Check out the examples to see how to use TiffImages.jl

diff --git a/v0.9.0/lib/extend/index.html b/v0.9.0/lib/extend/index.html new file mode 100644 index 00000000..cb5009e2 --- /dev/null +++ b/v0.9.0/lib/extend/index.html @@ -0,0 +1,26 @@ + +Overview · TiffImages.jl

Extending TiffImages.jl

If you want to extend TiffImages.jl to add support for more features or change how TIFF data is loaded, you have come to right place.

Types

TiffImages.TiffFileType
mutable struct TiffFile{O<:Unsigned, S<:FileIO.Stream}

-> TiffFile

Wrap io with helper parameters to keep track of file attributes.

  • uuid: A unique identifier for this file

  • filepath: The relative path to this file

  • io: The file stream

  • first_offset: Location of the first IFD in the file stream

  • need_bswap: Whether this file has a different endianness than the host computer

source
TiffImages.IFDType
struct IFD{O<:Unsigned}

An image file directory is a sorted collection of the tags representing this plane in the TIFF file. They behave like dictionaries except that tags aren't required to be unique, so given an IFD called ifd, we can add new tags as follows:

julia> ifd[TiffImages.IMAGEDESCRIPTION] = "Some details";
+
+julia> ifd[TiffImages.IMAGEWIDTH] = 512;
+
+julia> ifd
+IFD, with tags:
+	Tag(IMAGEWIDTH, 512)
+	Tag(IMAGEDESCRIPTION, "Some details")
Note

Tags are not required to be unique! See TiffImages.Iterable for how to work with duplicate tags.

source
TiffImages.TagType
struct Tag{T}

In-memory representation of Tiff Tags, which are essentially key value pairs. The data field can either be a String, a Number, an Array of bitstypes, or a RemoteData type.

  • tag

  • data

source
TiffImages.IterableType

A wrapper to force getindex to return the underlying array instead of only the first element. Usually the first element is sufficient, but sometimes access to the array is needed (to add duplicate entries or access them).

julia> using TiffImages: Iterable
+
+julia> ifd[TiffImages.IMAGEDESCRIPTION] = "test"
+"test"
+
+julia> ifd[Iterable(TiffImages.IMAGEDESCRIPTION)] # since wrapped with Iterable, returns array
+1-element Vector{TiffImages.Tag}:
+ Tag(IMAGEDESCRIPTION, "test")
+
+julia> ifd[Iterable(TiffImages.IMAGEDESCRIPTION)] = "test2" # since wrapped with Iterable, it appends
+"test2"
+
+julia> ifd
+IFD, with tags:
+	Tag(IMAGEDESCRIPTION, "test")
+	Tag(IMAGEDESCRIPTION, "test2")
+
source
TiffImages.RemoteDataType
RemoteData

A placeholder type to describe the location and properties of remote data that is too large to fit directly in a tag's spot in the IFD. Calling TiffImages.load! on an IFD object replaces all RemoteDatas with the respective data.

  • position: Position of this data in the stream

  • count: The length of the data

source

Functions

Base.sizeofFunction
sizeof(file)

Number of bytes that file's header will use on disk

source
sizeof(tag::TiffImages.Tag)

Minimum number of bytes that the data in tag will use on disk.

Note

Actual space on disk will be different because the tag's representation depends on the file's offset. For example, given a 2 bytes of data in tag and a file with UInt32 offsets, the actual usage on disk will be sizeof(UInt32)=4 for the data + tag overhead

source
sizeof(ifd)

Number of bytes that an IFD will use on disk.

source
diff --git a/v0.9.0/lib/extend/tags/index.html b/v0.9.0/lib/extend/tags/index.html new file mode 100644 index 00000000..b53f5509 --- /dev/null +++ b/v0.9.0/lib/extend/tags/index.html @@ -0,0 +1,2 @@ + +Built-in Tags · TiffImages.jl

Built-in Tags

Tags are stored as an enum called TiffTag

TiffImages.TiffTagType
primitive type TiffTag <: Enum{Int32} 32

List of many common named TIFF Tags. This is not an exhaustive list but should cover most cases.

source

Full list of built-in tags

Tag IDTag Description
254SUBFILETYPE
255OSUBFILETYPE
256IMAGEWIDTH
257IMAGELENGTH
258BITSPERSAMPLE
259COMPRESSION
262PHOTOMETRIC
263THRESHHOLDING
264CELLWIDTH
265CELLLENGTH
266FILLORDER
269DOCUMENTNAME
270IMAGEDESCRIPTION
271MAKE
272MODEL
273STRIPOFFSETS
274ORIENTATION
277SAMPLESPERPIXEL
278ROWSPERSTRIP
279STRIPBYTECOUNTS
280MINSAMPLEVALUE
281MAXSAMPLEVALUE
282XRESOLUTION
283YRESOLUTION
284PLANARCONFIG
285PAGENAME
286XPOSITION
287YPOSITION
288FREEOFFSETS
289FREEBYTECOUNTS
290GRAYRESPONSEUNIT
291GRAYRESPONSECURVE
292T4OPTIONS
293T6OPTIONS
296RESOLUTIONUNIT
297PAGENUMBER
300COLORRESPONSEUNIT
301TRANSFERFUNCTION
305SOFTWARE
306DATETIME
315ARTIST
316HOSTCOMPUTER
317PREDICTOR
318WHITEPOINT
319PRIMARYCHROMATICITIES
320COLORMAP
321HALFTONEHINTS
322TILEWIDTH
323TILELENGTH
324TILEOFFSETS
325TILEBYTECOUNTS
326BADFAXLINES
327CLEANFAXDATA
328CONSECUTIVEBADFAXLINES
330SUBIFD
332INKSET
333INKNAMES
334NUMBEROFINKS
336DOTRANGE
337TARGETPRINTER
338EXTRASAMPLES
339SAMPLEFORMAT
340SMINSAMPLEVALUE
341SMAXSAMPLEVALUE
343CLIPPATH
344XCLIPPATHUNITS
345YCLIPPATHUNITS
346INDEXED
347JPEGTABLES
351OPIPROXY
400GLOBALPARAMETERSIFD
401PROFILETYPE
402FAXPROFILE
403CODINGMETHODS
404VERSIONYEAR
405MODENUMBER
433DECODE
434IMAGEBASECOLOR
435T82OPTIONS
512JPEGPROC
513JPEGIFOFFSET
514JPEGIFBYTECOUNT
515JPEGRESTARTINTERVAL
517JPEGLOSSLESSPREDICTORS
518JPEGPOINTTRANSFORM
519JPEGQTABLES
520JPEGDCTABLES
521JPEGACTABLES
529YCBCRCOEFFICIENTS
530YCBCRSUBSAMPLING
531YCBCRPOSITIONING
532REFERENCEBLACKWHITE
559STRIPROWCOUNTS
700XMLPACKET
32781OPIIMAGEID
32953REFPTS
32954REGIONTACKPOINT
32955REGIONWARPCORNERS
32956REGIONAFFINE
32995MATTEING
32996DATATYPE
32997IMAGEDEPTH
32998TILEDEPTH
33300PIXAR_IMAGEFULLWIDTH
33301PIXAR_IMAGEFULLLENGTH
33405WRITERSERIALNUMBER
33421CFAREPEATPATTERNDIM
33422CFAPATTERN
33432COPYRIGHT
33723RICHTIFFIPTC
34016IT8SITE
34017IT8COLORSEQUENCE
34018IT8HEADER
34019IT8RASTERPADDING
34020IT8BITSPERRUNLENGTH
34021IT8BITSPEREXTENDEDRUNLENGTH
34022IT8COLORTABLE
34023IT8IMAGECOLORINDICATOR
34024IT8BKGCOLORINDICATOR
34025IT8IMAGECOLORVALUE
34026IT8BKGCOLORVALUE
34027IT8PIXELINTENSITYRANGE
34028IT8TRANSPARENCYINDICATOR
34029IT8COLORCHARACTERIZATION
34030IT8HCUSAGE
34031IT8TRAPINDICATOR
34032IT8CMYKEQUIVALENT
34232FRAMECOUNT
34377PHOTOSHOP
34665EXIFIFD
34675ICCPROFILE
34732IMAGELAYER
34750JBIGOPTIONS
34853GPSIFD
34908FAXRECVPARAMS
34909FAXSUBADDRESS
34910FAXRECVTIME
34911FAXDCS
37439STONITS
34929FEDEX_EDR
40965INTEROPERABILITYIFD
50706DNGVERSION
50707DNGBACKWARDVERSION
50708UNIQUECAMERAMODEL
50711CFALAYOUT
50712LINEARIZATIONTABLE
50714BLACKLEVEL
50718DEFAULTSCALE
50723CAMERACALIBRATION1
50724CAMERACALIBRATION2
50731BASELINENOISE
50734LINEARRESPONSELIMIT
50735CAMERASERIALNUMBER
50736LENSINFO
50737CHROMABLURRADIUS
50739SHADOWSCALE
50740DNGPRIVATEDATA
50778CALIBRATIONILLUMINANT1
50779CALIBRATIONILLUMINANT2
50780BESTQUALITYSCALE
50831ASSHOTICCPROFILE
50833CURRENTICCPROFILE
50834CURRENTPREPROFILEMATRIX
50838IMAGEJ_METADATA_BYTECOUNTS
50839IMAGEJ_METADATA
65535DCSHUESHIFTVALUES
65536FAXMODE
65537JPEGQUALITY
65538JPEGCOLORMODE
65539JPEGTABLESMODE
65540FAXFILLFUNC
65549PIXARLOGDATAFMT
65550DCSIMAGERTYPE
65551DCSINTERPMODE
65552DCSBALANCEARRAY
65553DCSCORRECTMATRIX
65554DCSGAMMA
65555DCSTOESHOULDERPTS
65556DCSCALIBRATIONFD
65557ZIPQUALITY
65558PIXARLOGQUALITY
65559DCSCLIPRECTANGLE
65560SGILOGDATAFMT
65561SGILOGENCODE
65562LZMAPRESET
65563PERSAMPLE
33434EXIFTAG_EXPOSURETIME
33437EXIFTAG_FNUMBER
34850EXIFTAG_EXPOSUREPROGRAM
34852EXIFTAG_SPECTRALSENSITIVITY
34855EXIFTAG_ISOSPEEDRATINGS
34856EXIFTAG_OECF
36864EXIFTAG_EXIFVERSION
36867EXIFTAG_DATETIMEORIGINAL
36868EXIFTAG_DATETIMEDIGITIZED
37121EXIFTAG_COMPONENTSCONFIGURATION
37122EXIFTAG_COMPRESSEDBITSPERPIXEL
37377EXIFTAG_SHUTTERSPEEDVALUE
37378EXIFTAG_APERTUREVALUE
37379EXIFTAG_BRIGHTNESSVALUE
37380EXIFTAG_EXPOSUREBIASVALUE
37381EXIFTAG_MAXAPERTUREVALUE
37382EXIFTAG_SUBJECTDISTANCE
37383EXIFTAG_METERINGMODE
37384EXIFTAG_LIGHTSOURCE
37385EXIFTAG_FLASH
37386EXIFTAG_FOCALLENGTH
37396EXIFTAG_SUBJECTAREA
37500EXIFTAG_MAKERNOTE
37510EXIFTAG_USERCOMMENT
37520EXIFTAG_SUBSECTIME
37521EXIFTAG_SUBSECTIMEORIGINAL
37522EXIFTAG_SUBSECTIMEDIGITIZED
40960EXIFTAG_FLASHPIXVERSION
40961EXIFTAG_COLORSPACE
40962EXIFTAG_PIXELXDIMENSION
40963EXIFTAG_PIXELYDIMENSION
40964EXIFTAG_RELATEDSOUNDFILE
41483EXIFTAG_FLASHENERGY
41484EXIFTAG_SPATIALFREQUENCYRESPONSE
41486EXIFTAG_FOCALPLANEXRESOLUTION
41487EXIFTAG_FOCALPLANEYRESOLUTION
41488EXIFTAG_FOCALPLANERESOLUTIONUNIT
41492EXIFTAG_SUBJECTLOCATION
41493EXIFTAG_EXPOSUREINDEX
41495EXIFTAG_SENSINGMETHOD
41728EXIFTAG_FILESOURCE
41729EXIFTAG_SCENETYPE
41730EXIFTAG_CFAPATTERN
41985EXIFTAG_CUSTOMRENDERED
41986EXIFTAG_EXPOSUREMODE
41987EXIFTAG_WHITEBALANCE
41988EXIFTAG_DIGITALZOOMRATIO
41989EXIFTAG_FOCALLENGTHIN35MMFILM
41990EXIFTAG_SCENECAPTURETYPE
41991EXIFTAG_GAINCONTROL
41992EXIFTAG_CONTRAST
41993EXIFTAG_SATURATION
41994EXIFTAG_SHARPNESS
41995EXIFTAG_DEVICESETTINGDESCRIPTION
41996EXIFTAG_SUBJECTDISTANCERANGE
42016EXIFTAG_IMAGEUNIQUEID
diff --git a/v0.9.0/lib/public/index.html b/v0.9.0/lib/public/index.html new file mode 100644 index 00000000..9def540d --- /dev/null +++ b/v0.9.0/lib/public/index.html @@ -0,0 +1,32 @@ + +Public · TiffImages.jl

Public interface

Reading/Writing

TiffImages.loadFunction
load(filepath; mode, kwargs...)
+

Loads a TIFF image. Optional flags verbose, lazyio, and mmap are set to true, false, and false by default, respectively. Setting verbose to false will hide the loading bar, while setting either lazyio or mmap to true defer loading until the data are needed (by either of two mechanisms).

Parallelism is enabled by default, but can be disabled by setting JULIA_IMAGES_PARALLEL=false in your environment

See Lazy TIFFs for more details about memory-mapping and lazy I/O.

source
TiffImages.saveFunction
save(io, data)

Write data to io, if data is a DenseTaggedImage then any custom tags are also written to the file, otherwise a minimal set of tags are added to make the data readable by other TIFF engines.

source

Output Types

TiffImages.DenseTaggedImageType
struct DenseTaggedImage{T, N, O<:Unsigned, AA<:AbstractArray} <: TiffImages.AbstractDenseTIFF{T, N}

The most common TIFF structure that associates an Image File Directory, aka TiffImages.IFD, with each XY image slice.

julia> img = TiffImages.DenseTaggedImage(Gray.(zeros(UInt8, 10, 10)));
+
+julia> size(img)
+(10, 10)
+
+julia> ifds(img)
+IFD, with tags: 
+	Tag(IMAGEWIDTH, 10)
+	Tag(IMAGELENGTH, 10)
+	Tag(BITSPERSAMPLE, 8)
+	Tag(PHOTOMETRIC, 1)
+	Tag(SAMPLESPERPIXEL, 1)
+	Tag(SAMPLEFORMAT, 1)
+
+julia> ifds(img)[TiffImages.XRESOLUTION] = 0x00000014//0x00000064 # write custom data
+0x00000001//0x00000005
+
+julia> TiffImages.save(mktemp()[2], img); # write to temp file
Note

Currently, when writing custom info to tags, play attention to the types expected by other TIFF engines. For example, XRESOLUTION above expects a rational by default, which is equivalent to the Julian Rational{UInt32}

See also TiffImages.load and TiffImages.save

source
TiffImages.LazyBufferedTIFFType
mutable struct LazyBufferedTIFF{T<:Colorant, O<:Unsigned, AA<:AbstractArray} <: TiffImages.AbstractDenseTIFF{T<:Colorant, 3}

A type to represent lazily-loaded TIFF data, returned by TiffImages.load(filepath; lazyio=true). Useful for opening and operating on images too large to store in memory, and for incrementally writing new TIFF files.

This works by buffering individual slices. This allows broad format support, including compressed TIFFs, but with mixed performance depending on your specific access (indexing) patterns. See discussion in the package documentation, and MmappedTIFF for an alternative with different strengths and weaknesses.

julia> using TiffImages, ColorTypes
+
+julia> img = empty(LazyBufferedTIFF, Gray{Float32}, joinpath(mktempdir(), "test.tif"))
+32-bit LazyBufferedTIFF{Gray{Float32}} 0×0×0 (writable)
+    Current file size on disk:   8 bytes
+    Addressable space remaining: 4.000 GiB
+
+julia> close(img) # when you're done, close the stream
  • file: Pointer to keep track of the backing file
  • ifds: The associated tags for each slice in this array
  • dims

  • cache: An internal cache to fill reading from disk

  • cache_index: The index of the currently loaded slice
  • last_ifd_offset: Position of last loaded IFD, updated whenever a slice is appended
  • readonly: A flag tracking whether this file is editable
source
TiffImages.MmappedTIFFType
struct MmappedTIFF{T<:Colorant, N, O<:Unsigned, A<:AbstractArray{T<:Colorant, 2}} <: TiffImages.AbstractTIFF{T<:Colorant, N}

A type to represent memory-mapped TIFF data, returned by TiffImages.load(filepath; mmap=true). Useful for opening and operating on images too large to store in memory.

This works by exploiting the operating system's memory-mapping capabilities. This is not compatible with certain TIFF options, including compression, but when applicable it gives good performance for most access (indexing) patterns. See discussion in the package documentation, and LazyBufferedTIFF for an alternative with different strengths and weaknesses.

julia> using TiffImages
+
+julia> img = TiffImages.load(filepath; mmap=true);
+
+julia> print(summary(img))
+200×541 TiffImages.MmappedTIFF{RGBA{N0f8}, 2}

Fields:

  • chunks: 2d slices in the file
  • ifds: The associated tags for each slice in this array
  • sz2: The 2d slice size
source
diff --git a/v0.9.0/objects.inv b/v0.9.0/objects.inv new file mode 100644 index 00000000..0edf2434 Binary files /dev/null and b/v0.9.0/objects.inv differ diff --git a/v0.9.0/search_index.js b/v0.9.0/search_index.js new file mode 100644 index 00000000..94946b37 --- /dev/null +++ b/v0.9.0/search_index.js @@ -0,0 +1,3 @@ +var documenterSearchIndex = {"docs": +[{"location":"contributing/#Contributing","page":"Contributing","title":"Contributing","text":"","category":"section"},{"location":"contributing/","page":"Contributing","title":"Contributing","text":"Supporting all TIFFs is non-trivial and I would greatly appreciate any help from the community in identifying edge cases.","category":"page"},{"location":"contributing/#Add-edge-case-TIFFs","page":"Contributing","title":"Add edge case TIFFs","text":"","category":"section"},{"location":"contributing/","page":"Contributing","title":"Contributing","text":"There is incredible diversity in the TIFF ecosystem so much so that there is a backronym \"Thousand Incompatible File Formats\" to describe it. I have tried to establish a good baseline test set of TIFFs that should guarantee that TiffImages.jl should \"just work tm\" for most people, but if you have a TIFF that you run into that breaks TiffImages.jl please do the following:","category":"page"},{"location":"contributing/","page":"Contributing","title":"Contributing","text":"create a pull request against the example TIFF repo adding the file. The smaller the file, the better.\nupdate the README table with license information, etc.\nOpen an issue against TiffImages.jl with the error message and the expected result","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"EditURL = \"/home/runner/work/TiffImages.jl/TiffImages.jl/docs/demos/common/imagej.jl\"","category":"page"},{"location":"demos/common/imagej/#Writing-ImageJ-compatible-metadata","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"","category":"section"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"(Image: Source code) (Image: notebook) (Image: Author)","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"ImageJ is a commonly used image processing software for working with TIFFs. You might want to add X and Y resolution information to your TiffImages.jl TIFFs that works with ImageJ.","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"First, we need to assign the resolution unit by adding a RESOLUTIONUNIT tag to each IFD in the image","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"using Images, TiffImages, Unitful\nimg0 = zeros(Gray{N0f8}, 10, 10, 12) #example image\nimg = TiffImages.DenseTaggedImage(img0)\n\n\nresunit = UInt8(3) # 1: No absolute unit of measurement, 2: Inch, 3: Centimeter\n[ifd[TiffImages.RESOLUTIONUNIT] = resunit for ifd in ifds(img)];","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"Then, we can add the XRESOLUTION and YRESOLUTION TIFF tags to store the number of pixels per RESOLUTIONUNIT.","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"resxy = Rational{UInt32}(round(1u\"cm\"/0.653u\"μm\", digits = 3)) # Type must be rational. In this example, the pixel size is 0.653 μm x 0.653 μm.\n[ifd[TiffImages.XRESOLUTION] = resxy for ifd in ifds(img)]\n[ifd[TiffImages.YRESOLUTION] = resxy for ifd in ifds(img)]\nfirst(ifds(img))","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"IFD, with tags: \n\tTag(IMAGEWIDTH, 10)\n\tTag(IMAGELENGTH, 10)\n\tTag(BITSPERSAMPLE, 8)\n\tTag(PHOTOMETRIC, 1)\n\tTag(SAMPLESPERPIXEL, 1)\n\tTag(XRESOLUTION, 0x001d3582//0x0000007d)\n\tTag(YRESOLUTION, 0x001d3582//0x0000007d)\n\tTag(RESOLUTIONUNIT, 3)\n\tTag(SAMPLEFORMAT, 1)","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"Now if we want to add Z and time information to a TIFF, it's a bit more complicated because the TIFF spec doesn't have a standard way of representing this information. ImageJ has a poorly documented way to add this information by writing to an IMAGEDESCRIPTION tag in the first IFD.","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"The following tells ImageJ that it is a hyperstack with 3 timepoints and 4 Z slices with a 0.2 interval (in secs) between frames and a 5 micron spacing, respectively.","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"first(ifds(img))[TiffImages.IMAGEDESCRIPTION] = # only in the first IFD\n\"ImageJ=1.51d\nimages=12\nframes=3\nslices=4\nhyperstack=true\nspacing=5.0\nunit=um\nfinterval=0.2\naxes=TZYX\"\n\nfirst(ifds(img))","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"IFD, with tags: \n\tTag(IMAGEWIDTH, 10)\n\tTag(IMAGELENGTH, 10)\n\tTag(BITSPERSAMPLE, 8)\n\tTag(PHOTOMETRIC, 1)\n\tTag(IMAGEDESCRIPTION, \"ImageJ=1.51d\nimages=...\")\n\tTag(SAMPLESPERPIXEL, 1)\n\tTag(XRESOLUTION, 0x001d3582//0x0000007d)\n\tTag(YRESOLUTION, 0x001d3582//0x0000007d)\n\tTag(RESOLUTIONUNIT, 3)\n\tTag(SAMPLEFORMAT, 1)","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"Then write the image to disk","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"TiffImages.save(\"imagej.tiff\", img)","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"Opening the file in ImageJ shows that it's recognized as a hyperstack with the proper XYZT information:","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"(Image: ) (Image: )","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"","category":"page"},{"location":"demos/common/imagej/","page":"Writing ImageJ compatible metadata","title":"Writing ImageJ compatible metadata","text":"This page was generated using DemoCards.jl and Literate.jl.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"EditURL = \"../../../examples/mmap_lazyio.jl\"","category":"page"},{"location":"examples/mmap_lazyio/#Lazy-TIFFs","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"","category":"section"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"If you're running into memory-limitations when working with large datasets, you can lazy-load or memory-map the file so that it looks and behaves as if it were loaded, but actually loads data only when needed.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"Pages = [\"mmap_lazyio.md\"]\nDepth = 5","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"get_example(name) = download(\"https://github.com/tlnagy/exampletiffs/blob/master/$name?raw=true\") #hide\nfilepath = get_example(\"mri.tif\"); #hide\nnothing #hide","category":"page"},{"location":"examples/mmap_lazyio/#Memory-mapping-and-lazy-loading","page":"Lazy TIFFs","title":"Memory-mapping and lazy loading","text":"","category":"section"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"Loading lazily is very similar to Reading TIFFs, except with the addition of the mmap=true or lazyio=true flag. The differences between the two will be described in the next section.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"tip: Tip\nA good general rule is to preferentially use mmap=true. It will generally be faster and, perhaps even more importantly, will have much better worst-case behavior. However, it's more limited in the types of TIFFs that are supported, e.g. compressed and/or striped TIFFs are not supported. For those files, use lazyio=true, which is more flexible.See the Caveats and important details section for more details.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"First, let's look at a demonstration using mri.tif from the tlnagy/exampletiffs repo.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"using TiffImages\nimg = TiffImages.load(filepath; lazyio=true);\nnothing #hide","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"Regardless of the size of the file, this is likely to return img almost immediately. The trick is that the data are not actually loaded (yet)– the image data will be loaded on an as-needed basis.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"The lazily-loaded img will behave much the same as a normal eagerly-loaded image:","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"size(img)","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"Display the 2nd slice","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"img[:, :, 2]","category":"page"},{"location":"examples/mmap_lazyio/#Lazy-operations","page":"Lazy TIFFs","title":"Lazy operations","text":"","category":"section"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"One of the primary benefits of lazy-loading is avoiding unnecessary work for portions of the image that may never be accessed. I recommend using MappedArrays to continue the \"laziness\" of operations.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"using Colors\nusing MappedArrays\n\neltype(img)","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"We can lazily modify our data for only the slices we end up actually displaying. For example, img is stored as an RGB, despite the fact that you can see it consists only of grayscale intensities. Let's convert the eltype lazily:","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"gray_img = of_eltype(Gray, img);\nnothing #hide","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"Then when we extract a slice from disk, it converts only that one to gray","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"slice = gray_img[:, :, 1]","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"We can check to make sure its eltype is correct:","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"eltype(slice)","category":"page"},{"location":"examples/mmap_lazyio/#Example:-Maximum-intensity-projection","page":"Lazy TIFFs","title":"Example: Maximum intensity projection","text":"","category":"section"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"It's pretty straigtforward to do a max-intensity projection:","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"dropdims(maximum(gray_img, dims=3), dims=3)","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"While this demonstration was performed with lazyio=true, for files that support mmap=true the results would be similar.","category":"page"},{"location":"examples/mmap_lazyio/#Caveats-and-important-details","page":"Lazy TIFFs","title":"Caveats and important details","text":"","category":"section"},{"location":"examples/mmap_lazyio/#Mechanism,-format-support,-and-performance","page":"Lazy TIFFs","title":"Mechanism, format support, and performance","text":"","category":"section"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"mmap=true and lazyio=true correspond, internally, to two different strategies for deferring the work of loading, and the differences can be visible to users.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"lazyio=true uses an internal single-slice data buffer, and each frame of the TIFF file is read into this buffer on an as-needed basis.\nmmap=true uses memory-mapped I/O to set up a virtual address space for the entire array, and the operating system's memory manager takes care of loading chunks of data into physical memory and mapping it to the virtual address space on an as-needed basis.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"The two strategies support different features and exhibit different performance:","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"mmap=true requires a one-to-one correspondence between what is on disk and what is in memory. Consequently, features like compression are not supported. Currently, there is also no support for files that write slice data in strips. Both of these features are supported with lazyio=true.\nwith lazyio=true, switching slices is an expensive operation, because an entire new slice has to be read into the buffer; as a consequence, access patterns that stay \"within-slice\" (like sum(img[:,:,1])) are fast, while access patterns that cross slices (like sum(img[1, 1, :])) are slow; access patterns that alternate between slices (e.g., interpolation across the third dimension) are essentially unusable. mmap=true can be more selective about the data it loads, for example reading subsets of single slices. It can also keep previously-loaded data in memory even as you switch slice planes, so that reloads are less common. Consequently, when supported, mmap=true achieves good performance more consistently.","category":"page"},{"location":"examples/mmap_lazyio/#Assigning-values-and-writing-to-disk","page":"Lazy TIFFs","title":"Assigning values and writing to disk","text":"","category":"section"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"Aside from generality and performance, there are other important differences. Currently, lazyio=true does not support assigning new values to the array: img[:, :, 2] .= 0.0 throws an error. mmap=true can support setting values, but setting values also writes those same values to the disk file. To guard against unintended data corruption, by default load(filepath; mmap=true) opens the file with read-only permission, and then assigning values throws an error. Using flagler.tif from the tlnagy/exampletiffs repo (a file which is of a format that can be read with mmap=true), we get","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"filepath_flagler = get_example(\"flagler.tif\"); #hide\nimg = TiffImages.load(filepath_flagler, mmap=true)","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"but","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"julia> img[1,1,1] = RGB(1, 0, 0)\nERROR: ReadOnlyMemoryError()","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"To support writing, open the file with read/write permissions:","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"img = TiffImages.load(filepath_flagler, mode=\"r+\", mmap=true);\nnothing #hide","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"Then, assignment will work and the same value will be written to the disk file.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"warning: Warning\nCasual use of mode=\"r+\" can lead to data corruption, so use it only when you intend to rewrite data.","category":"page"},{"location":"examples/mmap_lazyio/#Behavior-on-Windows","page":"Lazy TIFFs","title":"Behavior on Windows","text":"","category":"section"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"On Microsoft Windows, one additional caveat is that deleting or replacing a file that has been mmaped by your Julia process will result in either a IOError: unlink(): permission denied (EACCES) or LoadError: SystemError: opening file : Invalid argument error. If you're done using the image, you may want to ensure it is garbage-collected first:","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"img = nothing\nGC.gc()","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"If successful, this will terminate the mmap and the file can be deleted without causing an error in the Julia session. However, any reference to img by any other object can prevent garbage collection; one safe pattern is","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"let img = TiffImages.load(filepath; mmap=true)\n # operations on `img` go here\nend\nGC.gc()","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"Such tricks are not generally necessary on other platforms, which handle deletion by unlinking the file from its name but otherwise keep the data on disk if it is being mmapped by one or more processes. After all such processes have exited, the actual data are deleted by the operating system.","category":"page"},{"location":"examples/mmap_lazyio/#Incremental-writing","page":"Lazy TIFFs","title":"Incremental writing","text":"","category":"section"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"TiffImages also supports writing to a file via an append operation. We have a special type for this called LazyBufferedTIFF, that we can create via the standard empty function","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"using TiffImages #hide","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"using ImageCore # reexports Gray and N0f8\nimg2 = empty(LazyBufferedTIFF, Gray{N0f8}, \"test.tif\")","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"note: Note\nFor data-integrity reasons, TiffImages will not allow you to append to an pre-existing file and will throw an error if a file exists at the filepath that you provide.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"Say you have the following data:","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"slice = rand(Gray{N0f8}, 256, 256)","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"You can then push new data to the img2 object and it will eagerly write that data to disk.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"push!(img2, slice)","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"The first slice sets the XY dimensions of the TIFF and subsequent slices must have the same dimensions as the first.","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"push!(img2, rand(Gray{N0f8}, 256, 256))","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"The memory-mapped object also behaves like an array and supports most array operations (other than inplace mutating ones like setindex!)","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"size(img2)","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"To read a slice that you just wrote:","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"img2[:, :, 2]","category":"page"},{"location":"examples/mmap_lazyio/#XL-files","page":"Lazy TIFFs","title":"XL files","text":"","category":"section"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"If you're going to be writing lots of data to disk (4GB+) then it can be helpful to set the bigtiff flag to true so that TiffImages can use 64-bit offsets. You'll see that the addressable space sky rockets:","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"img3 = empty(LazyBufferedTIFF, Gray{N0f16}, \"test.btif\"; bigtiff=true)","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"","category":"page"},{"location":"examples/mmap_lazyio/","page":"Lazy TIFFs","title":"Lazy TIFFs","text":"This page was generated using Literate.jl.","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"EditURL = \"../../../examples/reading.jl\"","category":"page"},{"location":"examples/reading/#Reading-TIFFs","page":"Reading TIFFs","title":"Reading TIFFs","text":"","category":"section"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"Loading most TIFFs should just work, see Writing TIFFs for more advanced manipulation of TIFF objects. But we'll quickly run through a common use cases.","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"Pages = [\"reading.md\"]\nDepth = 5","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"get_example(name) = download(\"https://github.com/tlnagy/exampletiffs/blob/master/$name?raw=true\") #hide\nfilepath = get_example(\"spring.tif\"); #hide\nnothing #hide","category":"page"},{"location":"examples/reading/#Basic-loading","page":"Reading TIFFs","title":"Basic loading","text":"","category":"section"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"At its most basic, we can just point TiffImages.jl to the filepath of an image and it will attempt to load it. Here, we're loading spring.tif from the tlnagy/exampletiffs repo","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"using TiffImages\nimg = TiffImages.load(filepath)","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"If you're a graphical environment, you can load the Images.jl repo to get a nice graphical representation of your image. If you're in the REPL, I highly recommend the ImageInTerminal.jl package for some visual feedback.","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"Continuing on, img here behaves exactly as you would expect a Julian array to despite the funky type signature","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"typeof(img)","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"Everything should behave as expected","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"eltype(img)","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"note: Note\nIf your reaction to this element type is \"Whoa! What is that?\", I highly recommend reading JuliaImages' primer on colors and types. TiffImages is well integrated with the JuliaImages ecosystem so the tutorials there are quite helpful for learning how to interact with the TiffImages' outputs","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"Accessing and setting data should work as expected","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"img[160:180, 50]","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"img[160:180, 50] .= 1.0\nimg","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"","category":"page"},{"location":"examples/reading/","page":"Reading TIFFs","title":"Reading TIFFs","text":"This page was generated using Literate.jl.","category":"page"},{"location":"lib/public/#Public-interface","page":"Public","title":"Public interface","text":"","category":"section"},{"location":"lib/public/#Reading/Writing","page":"Public","title":"Reading/Writing","text":"","category":"section"},{"location":"lib/public/","page":"Public","title":"Public","text":"TiffImages.load\nTiffImages.save","category":"page"},{"location":"lib/public/#TiffImages.load","page":"Public","title":"TiffImages.load","text":"load(filepath; mode, kwargs...)\n\n\nLoads a TIFF image. Optional flags verbose, lazyio, and mmap are set to true, false, and false by default, respectively. Setting verbose to false will hide the loading bar, while setting either lazyio or mmap to true defer loading until the data are needed (by either of two mechanisms).\n\nParallelism is enabled by default, but can be disabled by setting JULIA_IMAGES_PARALLEL=false in your environment\n\nSee Lazy TIFFs for more details about memory-mapping and lazy I/O.\n\n\n\n\n\n","category":"function"},{"location":"lib/public/#TiffImages.save","page":"Public","title":"TiffImages.save","text":"save(io, data)\n\nWrite data to io, if data is a DenseTaggedImage then any custom tags are also written to the file, otherwise a minimal set of tags are added to make the data readable by other TIFF engines.\n\n\n\n\n\n","category":"function"},{"location":"lib/public/#Output-Types","page":"Public","title":"Output Types","text":"","category":"section"},{"location":"lib/public/","page":"Public","title":"Public","text":"TiffImages.DenseTaggedImage\nTiffImages.LazyBufferedTIFF\nTiffImages.MmappedTIFF","category":"page"},{"location":"lib/public/#TiffImages.DenseTaggedImage","page":"Public","title":"TiffImages.DenseTaggedImage","text":"struct DenseTaggedImage{T, N, O<:Unsigned, AA<:AbstractArray} <: TiffImages.AbstractDenseTIFF{T, N}\n\nThe most common TIFF structure that associates an Image File Directory, aka TiffImages.IFD, with each XY image slice.\n\njulia> img = TiffImages.DenseTaggedImage(Gray.(zeros(UInt8, 10, 10)));\n\njulia> size(img)\n(10, 10)\n\njulia> ifds(img)\nIFD, with tags: \n\tTag(IMAGEWIDTH, 10)\n\tTag(IMAGELENGTH, 10)\n\tTag(BITSPERSAMPLE, 8)\n\tTag(PHOTOMETRIC, 1)\n\tTag(SAMPLESPERPIXEL, 1)\n\tTag(SAMPLEFORMAT, 1)\n\njulia> ifds(img)[TiffImages.XRESOLUTION] = 0x00000014//0x00000064 # write custom data\n0x00000001//0x00000005\n\njulia> TiffImages.save(mktemp()[2], img); # write to temp file\n\nnote: Note\nCurrently, when writing custom info to tags, play attention to the types expected by other TIFF engines. For example, XRESOLUTION above expects a rational by default, which is equivalent to the Julian Rational{UInt32}\n\nSee also TiffImages.load and TiffImages.save\n\n\n\n\n\n","category":"type"},{"location":"lib/public/#TiffImages.LazyBufferedTIFF","page":"Public","title":"TiffImages.LazyBufferedTIFF","text":"mutable struct LazyBufferedTIFF{T<:Colorant, O<:Unsigned, AA<:AbstractArray} <: TiffImages.AbstractDenseTIFF{T<:Colorant, 3}\n\nA type to represent lazily-loaded TIFF data, returned by TiffImages.load(filepath; lazyio=true). Useful for opening and operating on images too large to store in memory, and for incrementally writing new TIFF files.\n\nThis works by buffering individual slices. This allows broad format support, including compressed TIFFs, but with mixed performance depending on your specific access (indexing) patterns. See discussion in the package documentation, and MmappedTIFF for an alternative with different strengths and weaknesses.\n\njulia> using TiffImages, ColorTypes\n\njulia> img = empty(LazyBufferedTIFF, Gray{Float32}, joinpath(mktempdir(), \"test.tif\"))\n32-bit LazyBufferedTIFF{Gray{Float32}} 0×0×0 (writable)\n Current file size on disk: 8 bytes\n Addressable space remaining: 4.000 GiB\n\njulia> close(img) # when you're done, close the stream\n\nfile: Pointer to keep track of the backing file\n\nifds: The associated tags for each slice in this array\n\ndims\ncache: An internal cache to fill reading from disk\n\ncache_index: The index of the currently loaded slice\n\nlast_ifd_offset: Position of last loaded IFD, updated whenever a slice is appended\n\nreadonly: A flag tracking whether this file is editable\n\n\n\n\n\n","category":"type"},{"location":"lib/public/#TiffImages.MmappedTIFF","page":"Public","title":"TiffImages.MmappedTIFF","text":"struct MmappedTIFF{T<:Colorant, N, O<:Unsigned, A<:AbstractArray{T<:Colorant, 2}} <: TiffImages.AbstractTIFF{T<:Colorant, N}\n\nA type to represent memory-mapped TIFF data, returned by TiffImages.load(filepath; mmap=true). Useful for opening and operating on images too large to store in memory.\n\nThis works by exploiting the operating system's memory-mapping capabilities. This is not compatible with certain TIFF options, including compression, but when applicable it gives good performance for most access (indexing) patterns. See discussion in the package documentation, and LazyBufferedTIFF for an alternative with different strengths and weaknesses.\n\njulia> using TiffImages\n\njulia> img = TiffImages.load(filepath; mmap=true);\n\njulia> print(summary(img))\n200×541 TiffImages.MmappedTIFF{RGBA{N0f8}, 2}\n\nFields:\n\nchunks: 2d slices in the file\n\nifds: The associated tags for each slice in this array\n\nsz2: The 2d slice size\n\n\n\n\n\n","category":"type"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"EditURL = \"/home/runner/work/TiffImages.jl/TiffImages.jl/docs/demos/common/network.jl\"","category":"page"},{"location":"demos/common/network/#Loading-a-remote-TIFF","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"","category":"section"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"(Image: Source code) (Image: notebook) (Image: Author)","category":"page"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"The following code can be used to load remote TIFFs without saving them to the disk.","category":"page"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"using TiffImages, Downloads, FileIO\n\nfunction load_tiff_without_saving(url)\n buffer = IOBuffer()\n Downloads.download(url, buffer)\n bufstream = TiffImages.getstream(format\"TIFF\", buffer)\n TiffImages.load(read(bufstream, TiffFile))\nend","category":"page"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"load_tiff_without_saving (generic function with 1 method)","category":"page"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"We'll load an example from tlnagy/exampletiffs","category":"page"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"coffeepath = \"https://github.com/tlnagy/exampletiffs/raw/11516d288c4b03a258aa3027705b0e9d2ce2b5de/coffee.tif\"\ncoffeeimg = load_tiff_without_saving(coffeepath)","category":"page"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"","category":"page"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"No disks involved!","category":"page"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"","category":"page"},{"location":"demos/common/network/","page":"Loading a remote TIFF","title":"Loading a remote TIFF","text":"This page was generated using DemoCards.jl and Literate.jl.","category":"page"},{"location":"lib/extend/#Extending-TiffImages.jl","page":"Overview","title":"Extending TiffImages.jl","text":"","category":"section"},{"location":"lib/extend/","page":"Overview","title":"Overview","text":"If you want to extend TiffImages.jl to add support for more features or change how TIFF data is loaded, you have come to right place.","category":"page"},{"location":"lib/extend/#Types","page":"Overview","title":"Types","text":"","category":"section"},{"location":"lib/extend/","page":"Overview","title":"Overview","text":"TiffImages.TiffFile\nTiffImages.IFD\nTiffImages.Tag\nTiffImages.Iterable\nTiffImages.RemoteData","category":"page"},{"location":"lib/extend/#TiffImages.TiffFile","page":"Overview","title":"TiffImages.TiffFile","text":"mutable struct TiffFile{O<:Unsigned, S<:FileIO.Stream}\n\n-> TiffFile\n\nWrap io with helper parameters to keep track of file attributes.\n\nuuid: A unique identifier for this file\nfilepath: The relative path to this file\nio: The file stream\nfirst_offset: Location of the first IFD in the file stream\nneed_bswap: Whether this file has a different endianness than the host computer\n\n\n\n\n\n","category":"type"},{"location":"lib/extend/#TiffImages.IFD","page":"Overview","title":"TiffImages.IFD","text":"struct IFD{O<:Unsigned}\n\nAn image file directory is a sorted collection of the tags representing this plane in the TIFF file. They behave like dictionaries except that tags aren't required to be unique, so given an IFD called ifd, we can add new tags as follows:\n\njulia> ifd[TiffImages.IMAGEDESCRIPTION] = \"Some details\";\n\njulia> ifd[TiffImages.IMAGEWIDTH] = 512;\n\njulia> ifd\nIFD, with tags:\n\tTag(IMAGEWIDTH, 512)\n\tTag(IMAGEDESCRIPTION, \"Some details\")\n\nnote: Note\nTags are not required to be unique! See TiffImages.Iterable for how to work with duplicate tags.\n\n\n\n\n\n","category":"type"},{"location":"lib/extend/#TiffImages.Tag","page":"Overview","title":"TiffImages.Tag","text":"struct Tag{T}\n\nIn-memory representation of Tiff Tags, which are essentially key value pairs. The data field can either be a String, a Number, an Array of bitstypes, or a RemoteData type.\n\ntag\ndata\n\n\n\n\n\n","category":"type"},{"location":"lib/extend/#TiffImages.Iterable","page":"Overview","title":"TiffImages.Iterable","text":"A wrapper to force getindex to return the underlying array instead of only the first element. Usually the first element is sufficient, but sometimes access to the array is needed (to add duplicate entries or access them).\n\njulia> using TiffImages: Iterable\n\njulia> ifd[TiffImages.IMAGEDESCRIPTION] = \"test\"\n\"test\"\n\njulia> ifd[Iterable(TiffImages.IMAGEDESCRIPTION)] # since wrapped with Iterable, returns array\n1-element Vector{TiffImages.Tag}:\n Tag(IMAGEDESCRIPTION, \"test\")\n\njulia> ifd[Iterable(TiffImages.IMAGEDESCRIPTION)] = \"test2\" # since wrapped with Iterable, it appends\n\"test2\"\n\njulia> ifd\nIFD, with tags:\n\tTag(IMAGEDESCRIPTION, \"test\")\n\tTag(IMAGEDESCRIPTION, \"test2\")\n\n\n\n\n\n\n","category":"type"},{"location":"lib/extend/#TiffImages.RemoteData","page":"Overview","title":"TiffImages.RemoteData","text":"RemoteData\n\nA placeholder type to describe the location and properties of remote data that is too large to fit directly in a tag's spot in the IFD. Calling TiffImages.load! on an IFD object replaces all RemoteDatas with the respective data.\n\nposition: Position of this data in the stream\ncount: The length of the data\n\n\n\n\n\n","category":"type"},{"location":"lib/extend/#Functions","page":"Overview","title":"Functions","text":"","category":"section"},{"location":"lib/extend/","page":"Overview","title":"Overview","text":"TiffImages.load!\nTiffImages.sizeof","category":"page"},{"location":"lib/extend/#TiffImages.load!","page":"Overview","title":"TiffImages.load!","text":"load!(tf, ifd)\n\n\nUpdates an TiffImages.IFD by replacing all instances of the placeholder type TiffImages.RemoteData with the actual data from the file tf.\n\n\n\n\n\n","category":"function"},{"location":"lib/extend/#Base.sizeof","page":"Overview","title":"Base.sizeof","text":"sizeof(file)\n\nNumber of bytes that file's header will use on disk\n\n\n\n\n\nsizeof(tag::TiffImages.Tag)\n\nMinimum number of bytes that the data in tag will use on disk.\n\nnote: Note\nActual space on disk will be different because the tag's representation depends on the file's offset. For example, given a 2 bytes of data in tag and a file with UInt32 offsets, the actual usage on disk will be sizeof(UInt32)=4 for the data + tag overhead\n\n\n\n\n\nsizeof(ifd)\n\nNumber of bytes that an IFD will use on disk.\n\n\n\n\n\n","category":"function"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"EditURL = \"../../../examples/writing.jl\"","category":"page"},{"location":"examples/writing/#Writing-TIFFs","page":"Writing TIFFs","title":"Writing TIFFs","text":"","category":"section"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"This page is a tutorial for saving TIFFs using TiffImages.jl and covers some common use cases","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"Pages = [\"writing.md\"]\nDepth = 5","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"You might want to write TIFFs to disk too. Now this can be done quite simply with TiffImages.jl. Say you have some AbstractArray type that you want to save, here we'll call it data:","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"using Random\nusing Images # for nice inline images\n\nRandom.seed!(123)\ndata = rand(RGB{N0f8}, 10, 10)","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"note: Note\nTiffImages.jl only works with AbstractArrays with eltypes of <:Colorant because the writer needs to know how to represent the image data on disk. Make sure to convert your AbstractArrays using before passing them. See the common strategies section below for tips.","category":"page"},{"location":"examples/writing/#Simple-cases","page":"Writing TIFFs","title":"Simple cases","text":"","category":"section"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"In most simple cases, all you need to do is use the save function","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"using TiffImages\nTiffImages.save(\"test.tif\", data)","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"That's it! TiffImages will convert your data into its own internal file type and then rapidly write it to disk. See the \"Incremental writing\" section of Lazy TIFFs for building a TIFF piece by piece.","category":"page"},{"location":"examples/writing/#Complex-cases","page":"Writing TIFFs","title":"Complex cases","text":"","category":"section"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"If you need more fine-grained control over what tags are included when the image is written, this section is for you!","category":"page"},{"location":"examples/writing/#Converting-to-TiffImages.jl's-TIFF-type","page":"Writing TIFFs","title":"Converting to TiffImages.jl's TIFF type","text":"","category":"section"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"Next lets convert data to a TIFF type","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"using TiffImages\nimg = TiffImages.DenseTaggedImage(data)","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"Wait nothing happened! Hang with me, lets take a closer look at our new object using the dump command. We can see that there's now new information associated with our data! TiffImages.jl usually represents TIFF images as simply the data and associated tags that describe the data","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"dump(img; maxdepth=1)","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"The tags are organized as a vector of what are called Image File Directories (IFDs). For a simple 2D image like what we have, the IFDs will be stored a vector of length=1. For 3D images, the length of the IFDs vector will equal the length of the image in the third dimension.","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"Lets take a look at what tags there are:","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"ifd = ifds(img) # returns a single IFD since our data is 2D","category":"page"},{"location":"examples/writing/#Manipulating-TIFF-Tags","page":"Writing TIFFs","title":"Manipulating TIFF Tags","text":"","category":"section"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"These are some of the most basic tags that are required by the TIFF spec. We can even update it to add our own custom tags","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"ifd[TiffImages.IMAGEDESCRIPTION] = \"This is very important data\"\nifd","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"We can even add tags that aren't in the standard set in TiffImages.TiffTag as long as they are a UInt16","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"ifd[UInt16(34735)] = UInt16[1, 2, 3]\nifd","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"We can also delete tags if we decide we don't want them:","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"delete!(ifd, TiffImages.IMAGEDESCRIPTION)\nifd","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"warning: Warning\nCareful with delete!, if any of core tags are deleted, TiffImages.jl and other readers might fail to read the file","category":"page"},{"location":"examples/writing/#Saving-to-disk","page":"Writing TIFFs","title":"Saving to disk","text":"","category":"section"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"Once you're happy with your TIFF object, you can write it to disk as follows:","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"TiffImages.save(\"test.tif\", img)","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"And to just double check, we can load it right back in","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"TiffImages.load(\"test.tif\")","category":"page"},{"location":"examples/writing/#Strategies-for-saving-common-types","page":"Writing TIFFs","title":"Strategies for saving common types","text":"","category":"section"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"The general strategy for saving arrays will differ a bit depending on the type. The key step is the convert or reinterpret the arrays so that the elements are subtypes of Colors.Colorant","category":"page"},{"location":"examples/writing/#Unsigned-Integers","page":"Writing TIFFs","title":"Unsigned Integers","text":"","category":"section"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"Say you want to save a 3D array of small integers as grayscale values.","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"data2 = rand(UInt8.(1:255), 5, 10)\neltype(data2)","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"You can't directly save the data2 since TiffImages.jl needs some color information to properly save the file. You can use reinterpret to accomplish this:","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"grays = reinterpret(Gray{N0f8}, data2)\nimg2 = TiffImages.DenseTaggedImage(grays)","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"Here the data are first reinterpreted as N0f8s, which is a FixedPointNumber then wrapped with a Gray type that marks this as a grayscale image. TiffImages.jl uses this information to update the TIFF tags","category":"page"},{"location":"examples/writing/#Floating-point-numbers","page":"Writing TIFFs","title":"Floating point numbers","text":"","category":"section"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"With RGB we can reinterpret the first dimension of a 3D array as the 3 different color components (red, green, and blue):","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"data = rand(Float64, 3, 5, 10);\ncolors = dropdims(reinterpret(RGB{eltype(data)}, data), dims=1) # drop first dimension\nimg3 = TiffImages.DenseTaggedImage(colors)","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"Here we dropped the first dimension since it was collapsed into the RGB type when we ran the reinterpret command.","category":"page"},{"location":"examples/writing/#Signed-integers","page":"Writing TIFFs","title":"Signed integers","text":"","category":"section"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"Say you want to save data that has negative integer values. In that case, you can't use N0f8, etc because those only worked for unsigned integers. You have to instead use Q0f63, etc, which is a different kind of fixed point number that uses one bit for the sign info (that's why it's Q0f63, not Q0f64!)","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"data = rand(-100:100, 5, 5)","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"img4 = TiffImages.DenseTaggedImage(reinterpret(Gray{Q0f63}, data))\nprintln(ifds(img4))","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"As you can see the SAMPLEFORMATS and BITSPERSAMPLE tags correctly updated to show that this TIFF contains signed integers and 64-bit data, respectively.","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"warning: Warning\nCurrently, several of the display libraries struggle with showing Colorants backed by a signed type so you might run into errors, but the data will still save properly","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"","category":"page"},{"location":"examples/writing/","page":"Writing TIFFs","title":"Writing TIFFs","text":"This page was generated using Literate.jl.","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"EditURL = \"/home/runner/work/TiffImages.jl/TiffImages.jl/docs/demos/index.md\"","category":"page"},{"location":"demos/#Demos","page":"Demos","title":"Demos","text":"","category":"section"},{"location":"demos/","page":"Demos","title":"Demos","text":"Small demos showcasing how to use TiffImages.jl to accomplish common tasks","category":"page"},{"location":"demos/#Common","page":"Demos","title":"Common","text":"","category":"section"},{"location":"demos/","page":"Demos","title":"Demos","text":"
","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"
\n
\n
","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"This demo shows how to write XYZT information that works with ImageJ","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"
","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"(Image: card-cover-image)","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"
\n
","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"Writing ImageJ compatible metadata","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"
\n
","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"
\n
\n
","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"This demo shows how to load a TIFF over the network","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"
","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"(Image: card-cover-image)","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"
\n
","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"Loading a remote TIFF","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"
\n
","category":"page"},{"location":"demos/","page":"Demos","title":"Demos","text":"
","category":"page"},{"location":"lib/extend/tags/#Built-in-Tags","page":"Built-in Tags","title":"Built-in Tags","text":"","category":"section"},{"location":"lib/extend/tags/","page":"Built-in Tags","title":"Built-in Tags","text":"Tags are stored as an enum called TiffTag","category":"page"},{"location":"lib/extend/tags/","page":"Built-in Tags","title":"Built-in Tags","text":"TiffImages.TiffTag","category":"page"},{"location":"lib/extend/tags/#TiffImages.TiffTag","page":"Built-in Tags","title":"TiffImages.TiffTag","text":"primitive type TiffTag <: Enum{Int32} 32\n\nList of many common named TIFF Tags. This is not an exhaustive list but should cover most cases.\n\n\n\n\n\n","category":"type"},{"location":"lib/extend/tags/#Full-list-of-built-in-tags","page":"Built-in Tags","title":"Full list of built-in tags","text":"","category":"section"},{"location":"lib/extend/tags/","page":"Built-in Tags","title":"Built-in Tags","text":"using TiffImages, Markdown\ntags = instances(TiffImages.TiffTag)\nmapping = collect.(zip(Int.(tags), string.(tags)))\ninsert!(mapping, 1, [\"Tag ID\", \"Tag Description\"])\nMarkdown.MD(Markdown.Table(mapping, fill(:l, length(mapping))))","category":"page"},{"location":"#TiffImages.jl","page":"Home","title":"TiffImages.jl","text":"","category":"section"},{"location":"","page":"Home","title":"Home","text":"Pure-Julia TIFF reader and writer with a focus on correctness 🧐","category":"page"},{"location":"","page":"Home","title":"Home","text":"TIFF (Tagged Image File Format) is a notoriously flexible file format that is very difficult to support properly so why not just link libtiff and call it a day? Because Julia developers are greedy. I wanted to design a clean, minimal, and standards-compliant TIFF reader and writer that can have the speed and compliance of libtiff while adding modern features like streaming, out-of-memory support, and fancy color support. I wanted to design it to be extensible such that packages like OMETIFF.jl can hook right in with minimal overhead. I wanted to leverage the wonderful Julia Arrays ecosystem to do as much lazily and flexibly as possible.","category":"page"},{"location":"#Features","page":"Home","title":"Features","text":"","category":"section"},{"location":"","page":"Home","title":"Home","text":"TiffImages.jl supports:","category":"page"},{"location":"","page":"Home","title":"Home","text":"The TIFF 6.0 baseline spec\nThorough testing\nHDR images stored as 32bit or 64bit floats\nBigTIFF standard (TIFFs larger than 4 GB)\nMemory-mapped and lazy loading/writing\nArbitrary bit depths (e.g. 12 or 14 bit cameras)\nCommon compression algorithms like LZW and Packbits","category":"page"},{"location":"#Usage","page":"Home","title":"Usage","text":"","category":"section"},{"location":"","page":"Home","title":"Home","text":"Check out the examples to see how to use TiffImages.jl","category":"page"},{"location":"","page":"Home","title":"Home","text":"Pages = [\"examples/reading.md\", \"examples/writing.md\", \"examples/mmap_lazyio.md\"]\nDepth = 1","category":"page"}] +} diff --git a/v0.9.0/siteinfo.js b/v0.9.0/siteinfo.js new file mode 100644 index 00000000..785ab5cd --- /dev/null +++ b/v0.9.0/siteinfo.js @@ -0,0 +1 @@ +var DOCUMENTER_CURRENT_VERSION = "v0.9.0"; diff --git a/versions.js b/versions.js index 36d468c7..855b93a0 100644 --- a/versions.js +++ b/versions.js @@ -1,5 +1,6 @@ var DOC_VERSIONS = [ "stable", + "v0.9", "v0.8", "v0.7", "v0.6", @@ -10,5 +11,5 @@ var DOC_VERSIONS = [ "v0.1", "dev", ]; -var DOCUMENTER_NEWEST = "v0.8.0"; +var DOCUMENTER_NEWEST = "v0.9.0"; var DOCUMENTER_STABLE = "stable";