From 109535534bacc08a4bd626ac993a5a39fa067a60 Mon Sep 17 00:00:00 2001 From: "Documenter.jl" Date: Wed, 24 Jul 2024 20:46:48 +0000 Subject: [PATCH] build based on 4218c87 --- stable | 2 +- v0.28 | 2 +- v0.28.3/api/PowerSimulations/index.html | 239 +++++ v0.28.3/assets/documenter.js | 331 +++++++ v0.28.3/assets/logo.png | Bin 0 -> 7972 bytes v0.28.3/assets/search.js | 267 ++++++ v0.28.3/assets/themes/documenter-dark.css | 7 + v0.28.3/assets/themes/documenter-light.css | 9 + v0.28.3/assets/themeswap.js | 66 ++ v0.28.3/assets/warner.js | 49 + .../developer/index.html | 2 + .../extending_powersimulations/index.html | 36 + .../troubleshooting/index.html | 2 + v0.28.3/formulation_library/Branch/index.html | 38 + .../Feedforward/index.html | 33 + .../formulation_library/General/index.html | 10 + .../Introduction/index.html | 15 + v0.28.3/formulation_library/Load/index.html | 8 + .../formulation_library/Network/index.html | 8 + .../formulation_library/Piecewise/index.html | 30 + v0.28.3/formulation_library/README/index.html | 2 + .../RenewableGen/index.html | 8 + .../formulation_library/Service/index.html | 18 + .../formulation_library/ThermalGen/index.html | 93 ++ v0.28.3/get_test_data.jl | 40 + v0.28.3/index.html | 2 + .../structure_of_operation_problem/index.html | 26 + .../troubleshooting/index.html | 2 + .../debugging_infeasible_models/index.html | 127 +++ v0.28.3/modeler_guide/definitions/index.html | 15 + v0.28.3/modeler_guide/logging/index.html | 11 + v0.28.3/modeler_guide/modeling_faq/index.html | 2 + .../parallel_simulations/index.html | 105 +++ .../problem_templates/index.html | 252 +++++ .../modeler_guide/psi_structure/index.html | 2 + v0.28.3/modeler_guide/read_results/index.html | 127 +++ .../running_a_simulation/index.html | 75 ++ .../simulation_recorder/index.html | 43 + .../modeler_guide/tips_and_tricks/index.html | 2 + v0.28.3/quick_start_guide/index.html | 2 + v0.28.3/search/index.html | 2 + v0.28.3/search_index.js | 3 + v0.28.3/siteinfo.js | 1 + .../adding_new_device_formulation/index.html | 2 + .../adding_new_problem_model/index.html | 76 ++ .../basics_of_developing_models/index.html | 2 + v0.28.3/tutorials/decision_problem/index.html | 428 +++++++++ v0.28.3/tutorials/pcm_simulation/index.html | 883 ++++++++++++++++++ .../rts-test/data_store/check.sha256 | 1 + .../rts-test/data_store/simulation_store.h5 | Bin 0 -> 13484531 bytes .../rts-store/rts-test/logs/simulation.log | 80 ++ .../rts-store/rts-test/problems/ED/model.bin | Bin 0 -> 105829 bytes .../ED/optimization_container_metadata.bin | Bin 0 -> 7091 bytes ...-83465dce-52e5-480f-aad4-9ae9026fdea5.json | 1 + ...-52e5-480f-aad4-9ae9026fdea5_metadata.json | 80 ++ ...f-aad4-9ae9026fdea5_time_series_storage.h5 | Bin 0 -> 60180992 bytes .../problems/UC/initial_conditions.bin | Bin 0 -> 27484 bytes .../rts-store/rts-test/problems/UC/model.bin | Bin 0 -> 32243 bytes .../UC/optimization_container_metadata.bin | Bin 0 -> 6563 bytes ...-d4831ec5-1be7-4057-aa3f-e30006d9ba3b.json | 1 + ...-1be7-4057-aa3f-e30006d9ba3b_metadata.json | 80 ++ ...7-aa3f-e30006d9ba3b_time_series_storage.h5 | Bin 0 -> 5442448 bytes .../rts-store/rts-test/recorder/execution.log | 10 + .../rts-test/recorder/simulation_status.log | 4 + .../rts-store/rts-test/results/status.json | 1 + .../rts-test/simulation_files/simulation.bin | Bin 0 -> 2083 bytes versions.js | 2 +- 67 files changed, 3762 insertions(+), 3 deletions(-) create mode 100644 v0.28.3/api/PowerSimulations/index.html create mode 100644 v0.28.3/assets/documenter.js create mode 100644 v0.28.3/assets/logo.png create mode 100644 v0.28.3/assets/search.js create mode 100644 v0.28.3/assets/themes/documenter-dark.css create mode 100644 v0.28.3/assets/themes/documenter-light.css create mode 100644 v0.28.3/assets/themeswap.js create mode 100644 v0.28.3/assets/warner.js create mode 100644 v0.28.3/code_base_developer_guide/developer/index.html create mode 100644 v0.28.3/code_base_developer_guide/extending_powersimulations/index.html create mode 100644 v0.28.3/code_base_developer_guide/troubleshooting/index.html create mode 100644 v0.28.3/formulation_library/Branch/index.html create mode 100644 v0.28.3/formulation_library/Feedforward/index.html create mode 100644 v0.28.3/formulation_library/General/index.html create mode 100644 v0.28.3/formulation_library/Introduction/index.html create mode 100644 v0.28.3/formulation_library/Load/index.html create mode 100644 v0.28.3/formulation_library/Network/index.html create mode 100644 v0.28.3/formulation_library/Piecewise/index.html create mode 100644 v0.28.3/formulation_library/README/index.html create mode 100644 v0.28.3/formulation_library/RenewableGen/index.html create mode 100644 v0.28.3/formulation_library/Service/index.html create mode 100644 v0.28.3/formulation_library/ThermalGen/index.html create mode 100644 v0.28.3/get_test_data.jl create mode 100644 v0.28.3/index.html create mode 100644 v0.28.3/model_developer_guide/structure_of_operation_problem/index.html create mode 100644 v0.28.3/model_developer_guide/troubleshooting/index.html create mode 100644 v0.28.3/modeler_guide/debugging_infeasible_models/index.html create mode 100644 v0.28.3/modeler_guide/definitions/index.html create mode 100644 v0.28.3/modeler_guide/logging/index.html create mode 100644 v0.28.3/modeler_guide/modeling_faq/index.html create mode 100644 v0.28.3/modeler_guide/parallel_simulations/index.html create mode 100644 v0.28.3/modeler_guide/problem_templates/index.html create mode 100644 v0.28.3/modeler_guide/psi_structure/index.html create mode 100644 v0.28.3/modeler_guide/read_results/index.html create mode 100644 v0.28.3/modeler_guide/running_a_simulation/index.html create mode 100644 v0.28.3/modeler_guide/simulation_recorder/index.html create mode 100644 v0.28.3/modeler_guide/tips_and_tricks/index.html create mode 100644 v0.28.3/quick_start_guide/index.html create mode 100644 v0.28.3/search/index.html create mode 100644 v0.28.3/search_index.js create mode 100644 v0.28.3/siteinfo.js create mode 100644 v0.28.3/tutorials/adding_new_device_formulation/index.html create mode 100644 v0.28.3/tutorials/adding_new_problem_model/index.html create mode 100644 v0.28.3/tutorials/basics_of_developing_models/index.html create mode 100644 v0.28.3/tutorials/decision_problem/index.html create mode 100644 v0.28.3/tutorials/pcm_simulation/index.html create mode 100644 v0.28.3/tutorials/rts-store/rts-test/data_store/check.sha256 create mode 100644 v0.28.3/tutorials/rts-store/rts-test/data_store/simulation_store.h5 create mode 100644 v0.28.3/tutorials/rts-store/rts-test/logs/simulation.log create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/ED/model.bin create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/ED/optimization_container_metadata.bin create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/ED/system-83465dce-52e5-480f-aad4-9ae9026fdea5.json create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/ED/system-83465dce-52e5-480f-aad4-9ae9026fdea5_metadata.json create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/ED/system-83465dce-52e5-480f-aad4-9ae9026fdea5_time_series_storage.h5 create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/UC/initial_conditions.bin create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/UC/model.bin create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/UC/optimization_container_metadata.bin create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/UC/system-d4831ec5-1be7-4057-aa3f-e30006d9ba3b.json create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/UC/system-d4831ec5-1be7-4057-aa3f-e30006d9ba3b_metadata.json create mode 100644 v0.28.3/tutorials/rts-store/rts-test/problems/UC/system-d4831ec5-1be7-4057-aa3f-e30006d9ba3b_time_series_storage.h5 create mode 100644 v0.28.3/tutorials/rts-store/rts-test/recorder/execution.log create mode 100644 v0.28.3/tutorials/rts-store/rts-test/recorder/simulation_status.log create mode 100644 v0.28.3/tutorials/rts-store/rts-test/results/status.json create mode 100644 v0.28.3/tutorials/rts-store/rts-test/simulation_files/simulation.bin diff --git a/stable b/stable index f53b7bda11..3756ecfe07 120000 --- a/stable +++ b/stable @@ -1 +1 @@ -v0.28.2 \ No newline at end of file +v0.28.3 \ No newline at end of file diff --git a/v0.28 b/v0.28 index f53b7bda11..3756ecfe07 120000 --- a/v0.28 +++ b/v0.28 @@ -1 +1 @@ -v0.28.2 \ No newline at end of file +v0.28.3 \ No newline at end of file diff --git a/v0.28.3/api/PowerSimulations/index.html b/v0.28.3/api/PowerSimulations/index.html new file mode 100644 index 0000000000..41b6036558 --- /dev/null +++ b/v0.28.3/api/PowerSimulations/index.html @@ -0,0 +1,239 @@ + +API Reference · PowerSimulations.jl

API Reference

Table of Contents

  + 

Device Models

List of structures and methods for Device models

PowerSimulations.DeviceModelType
DeviceModel(
+    ::Type{D},
+    ::Type{B},
+    feedforwards::Vector{<:AbstractAffectFeedforward}
+    use_slacks::Bool,
+    duals::Vector{DataType},
+    services::Vector{ServiceModel}
+    attributes::Dict{String, Any}
+)

Establishes the model for a particular device specified by type. Uses the keyword argument feedforward to enable passing values between operation model at simulation time

Arguments

  • ::Type{D} where D<:PSY.Device: Power System Device Type
  • ::Type{B} where B<:AbstractDeviceFormulation: Abstract Device Formulation
  • feedforward::Array{<:AbstractAffectFeedforward} = Vector{AbstractAffectFeedforward}() : use to pass parameters between models
  • use_slacks::Bool = false : Add slacks to the device model. Implementation is model dependent and not all models feature slacks
  • duals::Vector{DataType} = Vector{DataType}(): use to pass constraint type to calculate the duals. The DataType needs to be a valid ConstraintType
  • time_series_names::Dict{Type{<:TimeSeriesParameter}, String} = get_default_time_series_names(D, B) : use to specify time series names associated to the device`
  • attributes::Dict{String, Any} = get_default_attributes(D, B) : use to specify attributes to the device

Example

thermal_gens = DeviceModel(ThermalStandard, ThermalBasicUnitCommitment)
source

Formulations

Refer to the Formulations Page for each Abstract Device Formulation.

Problem Templates

Refer to the Problem Templates Page for available ProblemTemplates.

  + 

Decision Models

PowerSimulations.DecisionModelType
DecisionModel{M}(
+    template::AbstractProblemTemplate,
+    sys::PSY.System,
+    jump_model::Union{Nothing, JuMP.Model}=nothing;
+    kwargs...) where {M<:DecisionProblem}

Build the optimization problem of type M with the specific system and template.

Arguments

  • ::Type{M} where M<:DecisionProblem: The abstract operation model type
  • template::AbstractProblemTemplate: The model reference made up of transmission, devices, branches, and services.
  • sys::PSY.System: the system created using Power Systems
  • jump_model::Union{Nothing, JuMP.Model}: Enables passing a custom JuMP model. Use with care
  • name = nothing: name of model, string or symbol; defaults to the type of template converted to a symbol.
  • optimizer::Union{Nothing,MOI.OptimizerWithAttributes} = nothing : The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.
  • horizon::Dates.Period = UNSET_HORIZON: Manually specify the length of the forecast Horizon
  • resolution::Dates.Period = UNSET_RESOLUTION: Manually specify the model's resolution
  • warm_start::Bool = true: True will use the current operation point in the system to initialize variable values. False initializes all variables to zero. Default is true
  • system_to_file::Bool = true:: True to create a copy of the system used in the model.
  • initialize_model::Bool = true: Option to decide to initialize the model or not.
  • initialization_file::String = "": This allows to pass pre-existing initialization values to avoid the solution of an optimization problem to find feasible initial conditions.
  • deserialize_initial_conditions::Bool = false: Option to deserialize conditions
  • export_pwl_vars::Bool = false: True to export all the pwl intermediate variables. It can slow down significantly the build and solve time.
  • allow_fails::Bool = false: True to allow the simulation to continue even if the optimization step fails. Use with care.
  • optimizer_solve_log_print::Bool = false: Uses JuMP.unset_silent() to print the optimizer's log. By default all solvers are set to MOI.Silent()
  • detailed_optimizer_stats::Bool = false: True to save detailed optimizer stats log.
  • calculate_conflict::Bool = false: True to use solver to calculate conflicts for infeasible problems. Only specific solvers are able to calculate conflicts.
  • direct_mode_optimizer::Bool = false: True to use the solver in direct mode. Creates a JuMP.direct_model.
  • store_variable_names::Bool = false: to store variable names in optimization model. Decreases the build times.
  • rebuild_model::Bool = false: It will force the rebuild of the underlying JuMP model with each call to update the model. It increases solution times, use only if the model can't be updated in memory.
  • initial_time::Dates.DateTime = UNSET_INI_TIME: Initial Time for the model solve.
  • time_series_cache_size::Int = IS.TIME_SERIES_CACHE_SIZE_BYTES: Size in bytes to cache for each time array. Default is 1 MiB. Set to 0 to disable.

Example

template = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)
+OpModel = DecisionModel(MockOperationProblem, template, system)
source
DecisionModel(
+    ::Type{M<:PowerSimulations.DecisionProblem},
+    template::PowerSimulations.AbstractProblemTemplate,
+    sys::System;
+    ...
+) -> DecisionModel
+DecisionModel(
+    ::Type{M<:PowerSimulations.DecisionProblem},
+    template::PowerSimulations.AbstractProblemTemplate,
+    sys::System,
+    jump_model::Union{Nothing, JuMP.Model};
+    kwargs...
+) -> DecisionModel
+

Build the optimization problem of type M with the specific system and template

Arguments

  • ::Type{M} where M<:DecisionProblem: The abstract operation model type
  • template::AbstractProblemTemplate: The model reference made up of transmission, devices, branches, and services.
  • sys::PSY.System: the system created using Power Systems
  • jump_model::Union{Nothing, JuMP.Model} = nothing: Enables passing a custom JuMP model. Use with care.

Example

template = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)
+problem = DecisionModel(MyOpProblemType, template, system, optimizer)
source

Builds an empty decision model. This constructor is used for the implementation of custom decision models that do not require a template.

Arguments

  • ::Type{M} where M<:DecisionProblem: The abstract operation model type
  • sys::PSY.System: the system created using Power Systems
  • jump_model::Union{Nothing, JuMP.Model} = nothing: Enables passing a custom JuMP model. Use with care.

Example

problem = DecisionModel(system, optimizer)
source
DecisionModel(
+    directory::AbstractString,
+    optimizer::MathOptInterface.OptimizerWithAttributes;
+    jump_model,
+    system
+) -> Any
+

Construct an DecisionProblem from a serialized file.

Arguments

  • directory::AbstractString: Directory containing a serialized model
  • jump_model::Union{Nothing, JuMP.Model} = nothing: The JuMP model does not get serialized. Callers should pass whatever they passed to the original problem.
  • optimizer::Union{Nothing,MOI.OptimizerWithAttributes} = nothing: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.
  • system::Union{Nothing, PSY.System}: Optionally, the system used for the model. If nothing and systofile was set to true when the model was created, the system will be deserialized from a file.
source
PowerSimulations.DecisionModelMethod
DecisionModel(
+    ::Type{M<:PowerSimulations.DecisionProblem},
+    template::PowerSimulations.AbstractProblemTemplate,
+    sys::System;
+    ...
+) -> DecisionModel
+DecisionModel(
+    ::Type{M<:PowerSimulations.DecisionProblem},
+    template::PowerSimulations.AbstractProblemTemplate,
+    sys::System,
+    jump_model::Union{Nothing, JuMP.Model};
+    kwargs...
+) -> DecisionModel
+

Build the optimization problem of type M with the specific system and template

Arguments

  • ::Type{M} where M<:DecisionProblem: The abstract operation model type
  • template::AbstractProblemTemplate: The model reference made up of transmission, devices, branches, and services.
  • sys::PSY.System: the system created using Power Systems
  • jump_model::Union{Nothing, JuMP.Model} = nothing: Enables passing a custom JuMP model. Use with care.

Example

template = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)
+problem = DecisionModel(MyOpProblemType, template, system, optimizer)
source
PowerSimulations.DecisionModelMethod
DecisionModel(
+    directory::AbstractString,
+    optimizer::MathOptInterface.OptimizerWithAttributes;
+    jump_model,
+    system
+) -> Any
+

Construct an DecisionProblem from a serialized file.

Arguments

  • directory::AbstractString: Directory containing a serialized model
  • jump_model::Union{Nothing, JuMP.Model} = nothing: The JuMP model does not get serialized. Callers should pass whatever they passed to the original problem.
  • optimizer::Union{Nothing,MOI.OptimizerWithAttributes} = nothing: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.
  • system::Union{Nothing, PSY.System}: Optionally, the system used for the model. If nothing and systofile was set to true when the model was created, the system will be deserialized from a file.
source
PowerSimulations.build!Method
build!(
+    model::DecisionModel;
+    output_dir,
+    recorders,
+    console_level,
+    file_level,
+    disable_timer_outputs
+)
+

Build the Decision Model based on the specified DecisionProblem.

Arguments

  • model::DecisionModel{<:DecisionProblem}: DecisionModel object
  • output_dir::String: Output directory for results
  • recorders::Vector{Symbol} = []: recorder names to register
  • console_level = Logging.Error:
  • file_level = Logging.Info:
  • disable_timer_outputs = false : Enable/Disable timing outputs
source
PowerSimulations.solve!Method
solve!(
+    model::DecisionModel;
+    export_problem_results,
+    console_level,
+    file_level,
+    disable_timer_outputs,
+    serialize,
+    kwargs...
+) -> InfrastructureSystems.Simulation.RunStatusModule.RunStatus
+

Default solve method for models that conform to the requirements of DecisionModel{<: DecisionProblem}.

This will call build! on the model if it is not already built. It will forward all keyword arguments to that function.

Arguments

  • model::OperationModel = model: operation model
  • export_problem_results::Bool = false: If true, export OptimizationProblemResults DataFrames to CSV files. Reduces solution times during simulation.
  • console_level = Logging.Error:
  • file_level = Logging.Info:
  • disable_timer_outputs = false : Enable/Disable timing outputs
  • serialize::Bool = true: If true, serialize the model to a file to allow re-execution later.

Examples

results = solve!(OpModel)
+results = solve!(OpModel, export_problem_results = true)
source
  + 

Emulation Models

PowerSimulations.EmulationModelType
EmulationModel{M}(
+    template::AbstractProblemTemplate,
+    sys::PSY.System,
+    jump_model::Union{Nothing, JuMP.Model}=nothing;
+    kwargs...) where {M<:EmulationProblem}

Build the optimization problem of type M with the specific system and template.

Arguments

  • ::Type{M} where M<:EmulationProblem: The abstract Emulation model type
  • template::AbstractProblemTemplate: The model reference made up of transmission, devices, branches, and services.
  • sys::PSY.System: the system created using Power Systems
  • jump_model::Union{Nothing, JuMP.Model}: Enables passing a custom JuMP model. Use with care
  • name = nothing: name of model, string or symbol; defaults to the type of template converted to a symbol.
  • optimizer::Union{Nothing,MOI.OptimizerWithAttributes} = nothing : The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.
  • warm_start::Bool = true: True will use the current operation point in the system to initialize variable values. False initializes all variables to zero. Default is true
  • system_to_file::Bool = true:: True to create a copy of the system used in the model.
  • initialize_model::Bool = true: Option to decide to initialize the model or not.
  • initialization_file::String = "": This allows to pass pre-existing initialization values to avoid the solution of an optimization problem to find feasible initial conditions.
  • deserialize_initial_conditions::Bool = false: Option to deserialize conditions
  • export_pwl_vars::Bool = false: True to export all the pwl intermediate variables. It can slow down significantly the build and solve time.
  • allow_fails::Bool = false: True to allow the simulation to continue even if the optimization step fails. Use with care.
  • calculate_conflict::Bool = false: True to use solver to calculate conflicts for infeasible problems. Only specific solvers are able to calculate conflicts.
  • optimizer_solve_log_print::Bool = false: Uses JuMP.unset_silent() to print the optimizer's log. By default all solvers are set to MOI.Silent()
  • detailed_optimizer_stats::Bool = false: True to save detailed optimizer stats log.
  • direct_mode_optimizer::Bool = false: True to use the solver in direct mode. Creates a JuMP.direct_model.
  • store_variable_names::Bool = false: True to store variable names in optimization model.
  • rebuild_model::Bool = false: It will force the rebuild of the underlying JuMP model with each call to update the model. It increases solution times, use only if the model can't be updated in memory.
  • initial_time::Dates.DateTime = UNSET_INI_TIME: Initial Time for the model solve.
  • time_series_cache_size::Int = IS.TIME_SERIES_CACHE_SIZE_BYTES: Size in bytes to cache for each time array. Default is 1 MiB. Set to 0 to disable.

Example

template = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)
+OpModel = EmulationModel(MockEmulationProblem, template, system)
source
PowerSimulations.EmulationModelMethod
EmulationModel(
+    ::Type{M<:PowerSimulations.EmulationProblem},
+    template::PowerSimulations.AbstractProblemTemplate,
+    sys::System;
+    ...
+) -> EmulationModel
+EmulationModel(
+    ::Type{M<:PowerSimulations.EmulationProblem},
+    template::PowerSimulations.AbstractProblemTemplate,
+    sys::System,
+    jump_model::Union{Nothing, JuMP.Model};
+    kwargs...
+) -> EmulationModel
+

Build the optimization problem of type M with the specific system and template

Arguments

  • ::Type{M} where M<:EmulationProblem: The abstract Emulation model type
  • template::AbstractProblemTemplate: The model reference made up of transmission, devices, branches, and services.
  • sys::PSY.System: the system created using Power Systems
  • jump_model::Union{Nothing, JuMP.Model}: Enables passing a custom JuMP model. Use with care

Example

template = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)
+problem = EmulationModel(MyEmProblemType, template, system, optimizer)
source
PowerSimulations.EmulationModelMethod
EmulationModel(
+    directory::AbstractString,
+    optimizer::MathOptInterface.OptimizerWithAttributes;
+    jump_model,
+    system,
+    kwargs...
+) -> Any
+

Construct an EmulationProblem from a serialized file.

Arguments

  • directory::AbstractString: Directory containing a serialized model.
  • optimizer::MOI.OptimizerWithAttributes: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.
  • jump_model::Union{Nothing, JuMP.Model} = nothing: The JuMP model does not get serialized. Callers should pass whatever they passed to the original problem.
  • system::Union{Nothing, PSY.System}: Optionally, the system used for the model. If nothing and systofile was set to true when the model was created, the system will be deserialized from a file.
source
PowerSimulations.build!Method
build!(
+    model::EmulationModel;
+    executions,
+    output_dir,
+    recorders,
+    console_level,
+    file_level,
+    disable_timer_outputs
+)
+

Implementation of build for any EmulationProblem

source
PowerSimulations.run!Method
run!(
+    model::EmulationModel;
+    export_problem_results,
+    console_level,
+    file_level,
+    disable_timer_outputs,
+    serialize,
+    kwargs...
+) -> InfrastructureSystems.Simulation.RunStatusModule.RunStatus
+

Default run method for problems that conform to the requirements of EmulationModel{<: EmulationProblem}

This will call build! on the model if it is not already built. It will forward all keyword arguments to that function.

Arguments

  • model::EmulationModel = model: Emulation model
  • optimizer::MOI.OptimizerWithAttributes: The optimizer that is used to solve the model
  • executions::Int: Number of executions for the emulator run
  • export_problem_results::Bool: If true, export OptimizationProblemResults DataFrames to CSV files.
  • output_dir::String: Required if the model is not already built, otherwise ignored
  • enable_progress_bar::Bool: Enables/Disable progress bar printing
  • serialize::Bool: If true, serialize the model to a file to allow re-execution later.

Examples

status = run!(model; optimizer = GLPK.Optimizer, executions = 10)
+status = run!(model; output_dir = ./model_output, optimizer = GLPK.Optimizer, executions = 10)
source
  + 

Service Models

List of structures and methods for Service models

PowerSimulations.ServiceModelType

Establishes the model for a particular services specified by type. Uses the keyword argument use_service_name to assign the model to a service with the same name as the name in the template. Uses the keyword argument feedforward to enable passing values between operation model at simulation time

Arguments

-::Type{D}: Power System Service Type -::Type{B}: Abstract Service Formulation

Accepted Key Words

  • feedforward::Array{<:AbstractAffectFeedforward} : use to pass parameters between models
  • use_service_name::Bool : use the name as the name for the service

Example

reserves = ServiceModel(PSY.VariableReserve{PSY.ReserveUp}, RangeReserve)

source
  + 

Simulation Models

Refer to the Simulations Page to explanations on how to setup a Simulation, with Sequencing and Feedforwards.

PowerSimulations.SimulationModelsType
SimulationModels(
+    decision_models::Vector{<:DecisionModel},
+    emulation_models::Union{Nothing, EmulationModel}
+)

Stores the OperationProblem definitions to be used in the simulation. When creating the SimulationModels, the order in which the models are created determines the order on which the simulation is executed.

Arguments

  • decision_models::Vector{<:DecisionModel}: Vector of decision models.
  • emulation_models::Union{Nothing, EmulationModel}: Optional argument to include

an EmulationModel in the Simulation

Example

template_uc = template_unit_commitment()
+template_ed = template_economic_dispatch()
+my_decision_model_uc = DecisionModel(template_1, sys_uc, optimizer, name = "UC")
+my_decision_model_ed = DecisionModel(template_ed, sys_ed, optimizer, name = "ED")
+models = SimulationModels(
+    decision_models = [
+        my_decision_model_uc,
+        my_decision_model_ed
+    ]
+)
source
PowerSimulations.SimulationSequenceType
SimulationSequence(
+    models::SimulationModels,
+    feedforward::Dict{String, Vector{<:AbstractAffectFeedforward}}
+    ini_cond_chronology::InitialConditionChronology
+)

Construct the simulation sequence between decision and emulation models.

Arguments

  • models::SimulationModels: Vector of decisions and emulation models.
  • feedforward = Dict{String, Vector{<:AbstractAffectFeedforward}}(): Optional dictionary to specify how information

and variables are exchanged between decision and emulation models.

  • ini_cond_chronology::nitialConditionChronology = InterProblemChronology(): TODO

Example

template_uc = template_unit_commitment()
+template_ed = template_economic_dispatch()
+my_decision_model_uc = DecisionModel(template_1, sys_uc, optimizer, name = "UC")
+my_decision_model_ed = DecisionModel(template_ed, sys_ed, optimizer, name = "ED")
+models = SimulationModels(
+    decision_models = [
+        my_decision_model_uc,
+        my_decision_model_ed
+    ]
+)
+# The following sequence set the commitment variables (`OnVariable`) for `ThermalStandard` units from UC to ED.
+sequence = SimulationSequence(;
+    models = models,
+    feedforwards = Dict(
+        "ED" => [
+            SemiContinuousFeedforward(;
+                component_type = ThermalStandard,
+                source = OnVariable,
+                affected_values = [ActivePowerVariable],
+            ),
+        ],
+    ),
+)
source
PowerSimulations.SimulationType
Simulation(
+    sequence::SimulationSequence,
+    name::String,
+    steps::Int
+    models::SimulationModels,
+    simulation_folder::String,
+    initial_time::Union{Nothing, Dates.DateTime}
+)

Construct the Simulation structure to run the sequence of decision and emulation models specified.

Arguments

-sequence::SimulationSequence: Simulation sequence that specify how the decision and emulation models will be executed. -name::String: Name of the Simulation -steps::Int: Number of steps on which the sequence of models will be executed -models::SimulationModels: List of Decision and Emulation Models -simulation_folder::String: Folder on which results will be stored -initial_time::Union{Nothing, Dates.DateTime} = nothing: Initial time of which the simulation starts. If nothing it will default to the first timestamp of time series of the system.

Example

template_uc = template_unit_commitment()
+template_ed = template_economic_dispatch()
+my_decision_model_uc = DecisionModel(template_1, sys_uc, optimizer, name = "UC")
+my_decision_model_ed = DecisionModel(template_ed, sys_ed, optimizer, name = "ED")
+models = SimulationModels(
+    decision_models = [
+        my_decision_model_uc,
+        my_decision_model_ed
+    ]
+)
+# The following sequence set the commitment variables (`OnVariable`) for `ThermalStandard` units from UC to ED.
+sequence = SimulationSequence(;
+    models = models,
+    feedforwards = Dict(
+        "ED" => [
+            SemiContinuousFeedforward(;
+                component_type = ThermalStandard,
+                source = OnVariable,
+                affected_values = [ActivePowerVariable],
+            ),
+        ],
+    ),
+)
+
+sim = Simulation(
+    sequence = sequence,
+    name = "Sim",
+    steps = 5,
+    models = models,
+    simulation_folder = mktempdir(cleanup=true),
+)
source
PowerSimulations.SimulationMethod
Simulation(directory::AbstractString, model_info::Dict)
+

Constructs Simulation from a serialized directory. Callers should pass any kwargs here that they passed to the original Simulation.

Arguments

  • directory::AbstractString: the directory returned from the call to serialize
  • model_info::Dict: Two-level dictionary containing model parameters that cannot be serialized. The outer dict should be keyed by the problem name. The inner dict must contain 'optimizer' and may contain 'jump_model'. These should be the same values used for the original simulation.
source
PowerSimulations.build!Method
build!(
+    sim::Simulation;
+    recorders,
+    console_level,
+    file_level,
+    serialize,
+    partitions,
+    index
+) -> InfrastructureSystems.Simulation.SimulationBuildStatusModule.SimulationBuildStatus
+

Build the Simulation, problems and the related folder structure.

Arguments

  • sim::Simulation: simulation object
  • recorders::Vector{Symbol} = []: recorder names to register
  • serialize::Bool = true: serializes the simulation objects in the simulation
  • console_level = Logging.Error:
  • file_level = Logging.Info:
source
PowerSimulations.execute!Method
execute!(
+    sim::Simulation;
+    kwargs...
+) -> InfrastructureSystems.Simulation.RunStatusModule.RunStatus
+

Solves the simulation model for sequential Simulations.

Arguments

  • sim::Simulation=sim: simulation object created by Simulation()

The optional keyword argument exports controls exporting of results to CSV files as the simulation runs.

Example

sim = Simulation("Test", 7, problems, "/Users/folder")
+execute!(sim::Simulation; kwargs...)
source
  + 

Variables

For a list of variables for each device refer to its Formulations page.

Common Variables

Thermal Unit Variables

Storage Unit Variables

Branches and Network Variables

Services Variables

PowerSimulations.ReserveRequirementSlackType

Struct to dispatch the creation of Reserve requirement slack variables. Used when there is not reserves in the system to satisfy the requirement.

Docs abbreviation: $r^\text{sl}$

source

Feedforward Variables

  + 

Constraints

Common Constraints

Network Constraints

Power Variable Limit Constraints

PowerSimulations.ActivePowerVariableLimitsConstraintType

Struct to create the constraint to limit active power expressions. For more information check Device Formulations.

The specified constraint depends on the UpperBound and LowerBound expressions, but in its most basic formulation is of the form:

\[P^\text{min} \le p_t \le P^\text{max}, \quad \forall t \in \{1,\dots,T\}\]

source

Services Constraints

PowerSimulations.RequirementConstraintType

Struct to create the constraint for satisfying active power reserve requirements. For more information check Service Formulations.

The constraint is as follows:

\[\sum_{d\in\mathcal{D}_s} r_{d,t} + r_t^\text{sl} \ge \text{Req},\quad \forall t\in \{1,\dots, T\} \quad \text{(for a ConstantReserve)} \\ +\sum_{d\in\mathcal{D}_s} r_{d,t} + r_t^\text{sl} \ge \text{RequirementTimeSeriesParameter}_{t},\quad \forall t\in \{1,\dots, T\} \quad \text{(for a VariableReserve)}\]

source
PowerSimulations.ParticipationFractionConstraintType

Struct to create the constraint to participation assignments limits in the active power reserves. For more information check Service Formulations.

The constraint is as follows:

\[r_{d,t} \le \text{Req} \cdot \text{PF} ,\quad \forall d\in \mathcal{D}_s, \forall t\in \{1,\dots, T\} \quad \text{(for a ConstantReserve)} \\ +r_{d,t} \le \text{RequirementTimeSeriesParameter}_{t} \cdot \text{PF}\quad \forall d\in \mathcal{D}_s, \forall t\in \{1,\dots, T\}, \quad \text{(for a VariableReserve)}\]

source
PowerSimulations.ReservePowerConstraintType

Struct to create the constraint for ensuring that NonSpinning Reserve can be delivered from turn-off thermal units.

For more information check Service Formulations for NonSpinningReserve.

The constraint is as follows:

\[r_{d,t} \le (1 - u_{d,t}^\text{th}) \cdot R^\text{limit}_d, \quad \forall d \in \mathcal{D}_s, \forall t \in \{1,\dots, T\}\]

source

Thermal Unit Constraints

PowerSimulations.ActiveRangeICConstraintType

Struct to create the constraint for starting up ThermalMultiStart units. For more information check ThermalGen Formulations for ThermalMultiStartUnitCommitment.

The specified constraint is formulated as:

\[\max\{P^\text{th,max} - P^\text{th,shdown}, 0\} \cdot w_1^\text{th} \le u^\text{th,init} (P^\text{th,max} - P^\text{th,min}) - P^\text{th,init}\]

source
PowerSimulations.CommitmentConstraintType

Struct to create the commitment constraint between the on, start, and stop variables. For more information check ThermalGen Formulations.

The specified constraints are formulated as:

\[u_1^\text{th} = u^\text{th,init} + v_1^\text{th} - w_1^\text{th} \\ +u_t^\text{th} = u_{t-1}^\text{th} + v_t^\text{th} - w_t^\text{th}, \quad \forall t \in \{2,\dots,T\} \\ +v_t^\text{th} + w_t^\text{th} \le 1, \quad \forall t \in \{1,\dots,T\}\]

source
PowerSimulations.RampConstraintType

Struct to create the RampConstraint associated with a specified thermal device or reserve service.

For thermal units, see more information in Thermal Formulations. The constraint is as follows:

\[-R^\text{th,dn} \le p_t^\text{th} - p_{t-1}^\text{th} \le R^\text{th,up}, \quad \forall t\in \{1, \dots, T\}\]

For Ramp Reserve, see more information in Service Formulations. The constraint is as follows:

\[r_{d,t} \le R^\text{th,up} \cdot \text{TF}\quad \forall d\in \mathcal{D}_s, \forall t\in \{1,\dots, T\}, \quad \text{(for ReserveUp)} \\ +r_{d,t} \le R^\text{th,dn} \cdot \text{TF}\quad \forall d\in \mathcal{D}_s, \forall t\in \{1,\dots, T\}, \quad \text{(for ReserveDown)}\]

source

Renewable Unit Constraints

PowerSimulations.EqualityConstraintType

Struct to create the constraint that sets the reactive power to the power factor in the RenewableConstantPowerFactor formulation for renewable units.

For more information check RenewableGen Formulations.

The specified constraint is formulated as:

\[q_t^\text{re} = \text{pf} \cdot p_t^\text{re}, \quad \forall t \in \{1,\dots, T\}\]

source

Branches Constraints

PowerSimulations.FlowLimitConstraintType

Struct to create the constraint that set the flow limits through a PhaseShiftingTransformer.

For more information check Branch Formulations.

The specified constraint is formulated as:

\[-R^\text{max} \le f_t \le R^\text{max}, \quad \forall t \in \{1,\dots,T\}\]

source
PowerSimulations.FlowRateConstraintType

Struct to create the constraint that set the flow limits through an HVDC two-terminal branch.

For more information check Branch Formulations.

The specified constraint is formulated as:

\[R^\text{min} \le f_t \le R^\text{max}, \quad \forall t \in \{1,\dots,T\}\]

source
PowerSimulations.FlowRateConstraintFromToType

Struct to create the constraint that set the flow from-to limits through an HVDC two-terminal branch.

For more information check Branch Formulations.

The specified constraint is formulated as:

\[R^\text{from,min} \le f_t^\text{from-to} \le R^\text{from,max}, \forall t \in \{1,\dots, T\}\]

source
PowerSimulations.FlowRateConstraintToFromType

Struct to create the constraint that set the flow to-from limits through an HVDC two-terminal branch.

For more information check Branch Formulations.

The specified constraint is formulated as:

\[R^\text{to,min} \le f_t^\text{to-from} \le R^\text{to,max},\quad \forall t \in \{1,\dots, T\}\]

source
PowerSimulations.HVDCLossesAbsoluteValueType

Struct to create the constraints that set the losses through a lossy HVDC two-terminal line.

For more information check Branch Formulations.

The specified constraints are formulated as:

\[\begin{align*} +& f_t^\text{to-from} - f_t^\text{from-to} \le \ell_t,\quad \forall t \in \{1,\dots, T\} \\ +& f_t^\text{from-to} - f_t^\text{to-from} \le \ell_t,\quad \forall t \in \{1,\dots, T\} +\end{align*}\]

source
PowerSimulations.HVDCPowerBalanceType

Struct to create the constraints that set the power balance across a lossy HVDC two-terminal line.

For more information check Branch Formulations.

The specified constraints are formulated as:

\[\begin{align*} +& f_t^\text{to-from} - f_t^\text{from-to} \le L_1 \cdot f_t^\text{to-from} - L_0,\quad \forall t \in \{1,\dots, T\} \\ +& f_t^\text{from-to} - f_t^\text{to-from} \ge L_1 \cdot f_t^\text{from-to} + L_0,\quad \forall t \in \{1,\dots, T\} \\ +& f_t^\text{from-to} - f_t^\text{to-from} \ge - M^\text{big} (1 - u^\text{dir}_t),\quad \forall t \in \{1,\dots, T\} \\ +& f_t^\text{to-from} - f_t^\text{from-to} \ge - M^\text{big} u^\text{dir}_t,\quad \forall t \in \{1,\dots, T\} \\ +\end{align*}\]

source
PowerSimulations.NetworkFlowConstraintType

Struct to create the constraint the AC branch flows depending on the network model. For more information check Branch Formulations.

The specified constraint depends on the network model chosen. The most common application is the StaticBranch in a PTDF Network Model:

\[f_t = \sum_{i=1}^N \text{PTDF}_{i,b} \cdot \text{Bal}_{i,t}, \quad \forall t \in \{1,\dots, T\}\]

source
PowerSimulations.RateLimitConstraintType

Struct to create the constraint that set the AC flow limits through branches.

For more information check Branch Formulations.

The specified constraint is formulated as:

\[\begin{align*} +& f_t - f_t^\text{sl,up} \le R^\text{max},\quad \forall t \in \{1,\dots, T\} \\ +& f_t + f_t^\text{sl,lo} \ge -R^\text{max},\quad \forall t \in \{1,\dots, T\} +\end{align*}\]

source
PowerSimulations.PhaseAngleControlLimitType

Struct to create the constraint that set the angle limits through a PhaseShiftingTransformer.

For more information check Branch Formulations.

The specified constraint is formulated as:

\[\Theta^\text{min} \le \theta^\text{shift}_t \le \Theta^\text{max}, \quad \forall t \in \{1,\dots,T\}\]

source

Feedforward Constraints

PowerSimulations.FeedforwardSemiContinuousConstraintType

Struct to create the constraint for semicontinuous feedforward limits.

For more information check Feedforward Formulations.

The specified constraint is formulated as:

\[\begin{align*} +& \text{ActivePowerRangeExpressionUB}_t := p_t^\text{th} - \text{on}_t^\text{th}P^\text{th,max} \le 0, \quad \forall t\in \{1, \dots, T\} \\ +& \text{ActivePowerRangeExpressionLB}_t := p_t^\text{th} - \text{on}_t^\text{th}P^\text{th,min} \ge 0, \quad \forall t\in \{1, \dots, T\} +\end{align*}\]

source
  + 

Parameters

Time Series Parameters

Variable Value Parameters

Objective Function Parameters

diff --git a/v0.28.3/assets/documenter.js b/v0.28.3/assets/documenter.js new file mode 100644 index 0000000000..6adfbbbf4b --- /dev/null +++ b/v0.28.3/assets/documenter.js @@ -0,0 +1,331 @@ +// Generated by Documenter.jl +requirejs.config({ + paths: { + 'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/languages/julia.min', + 'headroom': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/headroom.min', + 'jqueryui': 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min', + 'katex-auto-render': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.24/contrib/auto-render.min', + 'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min', + 'headroom-jquery': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/jQuery.headroom.min', + 'katex': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.13.24/katex.min', + 'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/highlight.min', + 'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.5.1/languages/julia-repl.min', + }, + shim: { + "highlight-julia": { + "deps": [ + "highlight" + ] + }, + "katex-auto-render": { + "deps": [ + "katex" + ] + }, + "headroom-jquery": { + "deps": [ + "jquery", + "headroom" + ] + }, + "highlight-julia-repl": { + "deps": [ + "highlight" + ] + } +} +}); +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'katex', 'katex-auto-render'], function($, katex, renderMathInElement) { +$(document).ready(function() { + renderMathInElement( + document.body, + { + "delimiters": [ + { + "left": "$", + "right": "$", + "display": false + }, + { + "left": "$$", + "right": "$$", + "display": true + }, + { + "left": "\\[", + "right": "\\]", + "display": true + } + ] +} + + ); +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'highlight', 'highlight-julia', 'highlight-julia-repl'], function($) { +$(document).ready(function() { + hljs.highlightAll(); +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require([], function() { +function addCopyButtonCallbacks() { + for (const el of document.getElementsByTagName("pre")) { + const button = document.createElement("button"); + button.classList.add("copy-button", "fas", "fa-copy"); + el.appendChild(button); + + const success = function () { + button.classList.add("success", "fa-check"); + button.classList.remove("fa-copy"); + }; + + const failure = function () { + button.classList.add("error", "fa-times"); + button.classList.remove("fa-copy"); + }; + + button.addEventListener("click", function () { + copyToClipboard(el.innerText).then(success, failure); + + setTimeout(function () { + button.classList.add("fa-copy"); + button.classList.remove("success", "fa-check", "fa-times"); + }, 5000); + }); + } +} + +function copyToClipboard(text) { + // clipboard API is only available in secure contexts + if (window.navigator && window.navigator.clipboard) { + return window.navigator.clipboard.writeText(text); + } else { + return new Promise(function (resolve, reject) { + try { + const el = document.createElement("textarea"); + el.textContent = text; + el.style.position = "fixed"; + el.style.opacity = 0; + document.body.appendChild(el); + el.select(); + document.execCommand("copy"); + + resolve(); + } catch (err) { + reject(err); + } finally { + document.body.removeChild(el); + } + }); + } +} + +if (document.readyState === "loading") { + document.addEventListener("DOMContentLoaded", addCopyButtonCallbacks); +} else { + addCopyButtonCallbacks(); +} + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'headroom', 'headroom-jquery'], function($, Headroom) { + +// Manages the top navigation bar (hides it when the user starts scrolling down on the +// mobile). +window.Headroom = Headroom; // work around buggy module loading? +$(document).ready(function() { + $('#documenter .docs-navbar').headroom({ + "tolerance": {"up": 10, "down": 10}, + }); +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// Modal settings dialog +$(document).ready(function() { + var settings = $('#documenter-settings'); + $('#documenter-settings-button').click(function(){ + settings.toggleClass('is-active'); + }); + // Close the dialog if X is clicked + $('#documenter-settings button.delete').click(function(){ + settings.removeClass('is-active'); + }); + // Close dialog if ESC is pressed + $(document).keyup(function(e) { + if (e.keyCode == 27) settings.removeClass('is-active'); + }); +}); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// Manages the showing and hiding of the sidebar. +$(document).ready(function() { + var sidebar = $("#documenter > .docs-sidebar"); + var sidebar_button = $("#documenter-sidebar-button") + sidebar_button.click(function(ev) { + ev.preventDefault(); + sidebar.toggleClass('visible'); + if (sidebar.hasClass('visible')) { + // Makes sure that the current menu item is visible in the sidebar. + $("#documenter .docs-menu a.is-active").focus(); + } + }); + $("#documenter > .docs-main").bind('click', function(ev) { + if ($(ev.target).is(sidebar_button)) { + return; + } + if (sidebar.hasClass('visible')) { + sidebar.removeClass('visible'); + } + }); +}) + +// Resizes the package name / sitename in the sidebar if it is too wide. +// Inspired by: https://github.com/davatron5000/FitText.js +$(document).ready(function() { + e = $("#documenter .docs-autofit"); + function resize() { + var L = parseInt(e.css('max-width'), 10); + var L0 = e.width(); + if(L0 > L) { + var h0 = parseInt(e.css('font-size'), 10); + e.css('font-size', L * h0 / L0); + // TODO: make sure it survives resizes? + } + } + // call once and then register events + resize(); + $(window).resize(resize); + $(window).on('orientationchange', resize); +}); + +// Scroll the navigation bar to the currently selected menu item +$(document).ready(function() { + var sidebar = $("#documenter .docs-menu").get(0); + var active = $("#documenter .docs-menu .is-active").get(0); + if(typeof active !== 'undefined') { + sidebar.scrollTop = active.offsetTop - sidebar.offsetTop - 15; + } +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +function set_theme(theme) { + var active = null; + var disabled = []; + for (var i = 0; i < document.styleSheets.length; i++) { + var ss = document.styleSheets[i]; + var themename = ss.ownerNode.getAttribute("data-theme-name"); + if(themename === null) continue; // ignore non-theme stylesheets + // Find the active theme + if(themename === theme) active = ss; + else disabled.push(ss); + } + if(active !== null) { + active.disabled = false; + if(active.ownerNode.getAttribute("data-theme-primary") === null) { + document.getElementsByTagName('html')[0].className = "theme--" + theme; + } else { + document.getElementsByTagName('html')[0].className = ""; + } + disabled.forEach(function(ss){ + ss.disabled = true; + }); + } + + // Store the theme in localStorage + if(typeof(window.localStorage) !== "undefined") { + window.localStorage.setItem("documenter-theme", theme); + } else { + console.error("Browser does not support window.localStorage"); + } +} + +// Theme picker setup +$(document).ready(function() { + // onchange callback + $('#documenter-themepicker').change(function themepick_callback(ev){ + var themename = $('#documenter-themepicker option:selected').attr('value'); + set_theme(themename); + }); + + // Make sure that the themepicker displays the correct theme when the theme is retrieved + // from localStorage + if(typeof(window.localStorage) !== "undefined") { + var theme = window.localStorage.getItem("documenter-theme"); + if(theme !== null) { + $('#documenter-themepicker option').each(function(i,e) { + e.selected = (e.value === theme); + }) + } else { + $('#documenter-themepicker option').each(function(i,e) { + e.selected = $("html").hasClass(`theme--${e.value}`); + }) + } + } +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// update the version selector with info from the siteinfo.js and ../versions.js files +$(document).ready(function() { + // If the version selector is disabled with DOCUMENTER_VERSION_SELECTOR_DISABLED in the + // siteinfo.js file, we just return immediately and not display the version selector. + if (typeof DOCUMENTER_VERSION_SELECTOR_DISABLED === 'boolean' && DOCUMENTER_VERSION_SELECTOR_DISABLED) { + return; + } + + var version_selector = $("#documenter .docs-version-selector"); + var version_selector_select = $("#documenter .docs-version-selector select"); + + version_selector_select.change(function(x) { + target_href = version_selector_select.children("option:selected").get(0).value; + window.location.href = target_href; + }); + + // add the current version to the selector based on siteinfo.js, but only if the selector is empty + if (typeof DOCUMENTER_CURRENT_VERSION !== 'undefined' && $('#version-selector > option').length == 0) { + var option = $(""); + version_selector_select.append(option); + } + + if (typeof DOC_VERSIONS !== 'undefined') { + var existing_versions = version_selector_select.children("option"); + var existing_versions_texts = existing_versions.map(function(i,x){return x.text}); + DOC_VERSIONS.forEach(function(each) { + var version_url = documenterBaseURL + "/../" + each; + var existing_id = $.inArray(each, existing_versions_texts); + // if not already in the version selector, add it as a new option, + // otherwise update the old option with the URL and enable it + if (existing_id == -1) { + var option = $(""); + version_selector_select.append(option); + } else { + var option = existing_versions[existing_id]; + option.value = version_url; + option.disabled = false; + } + }); + } + + // only show the version selector if the selector has been populated + if (version_selector_select.children("option").length > 0) { + version_selector.toggleClass("visible"); + } +}) + +}) diff --git a/v0.28.3/assets/logo.png b/v0.28.3/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c0c5d7d5949e7dfff418d3cd24bba209f785a49c GIT binary patch literal 7972 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 A$^ZZW literal 0 HcmV?d00001 diff --git a/v0.28.3/assets/search.js b/v0.28.3/assets/search.js new file mode 100644 index 0000000000..c133f74101 --- /dev/null +++ b/v0.28.3/assets/search.js @@ -0,0 +1,267 @@ +// Generated by Documenter.jl +requirejs.config({ + paths: { + 'lunr': 'https://cdnjs.cloudflare.com/ajax/libs/lunr.js/2.3.9/lunr.min', + 'lodash': 'https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min', + 'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min', + } +}); +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'lunr', 'lodash'], function($, lunr, _) { + +$(document).ready(function() { + // parseUri 1.2.2 + // (c) Steven Levithan + // MIT License + function parseUri (str) { + var o = parseUri.options, + m = o.parser[o.strictMode ? "strict" : "loose"].exec(str), + uri = {}, + i = 14; + + while (i--) uri[o.key[i]] = m[i] || ""; + + uri[o.q.name] = {}; + uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) { + if ($1) uri[o.q.name][$1] = $2; + }); + + return uri; + }; + parseUri.options = { + strictMode: false, + key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"], + q: { + name: "queryKey", + parser: /(?:^|&)([^&=]*)=?([^&]*)/g + }, + parser: { + strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/, + loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/ + } + }; + + $("#search-form").submit(function(e) { + e.preventDefault() + }) + + // list below is the lunr 2.1.3 list minus the intersect with names(Base) + // (all, any, get, in, is, only, which) and (do, else, for, let, where, while, with) + // ideally we'd just filter the original list but it's not available as a variable + lunr.stopWordFilter = lunr.generateStopWordFilter([ + 'a', + 'able', + 'about', + 'across', + 'after', + 'almost', + 'also', + 'am', + 'among', + 'an', + 'and', + 'are', + 'as', + 'at', + 'be', + 'because', + 'been', + 'but', + 'by', + 'can', + 'cannot', + 'could', + 'dear', + 'did', + 'does', + 'either', + 'ever', + 'every', + 'from', + 'got', + 'had', + 'has', + 'have', + 'he', + 'her', + 'hers', + 'him', + 'his', + 'how', + 'however', + 'i', + 'if', + 'into', + 'it', + 'its', + 'just', + 'least', + 'like', + 'likely', + 'may', + 'me', + 'might', + 'most', + 'must', + 'my', + 'neither', + 'no', + 'nor', + 'not', + 'of', + 'off', + 'often', + 'on', + 'or', + 'other', + 'our', + 'own', + 'rather', + 'said', + 'say', + 'says', + 'she', + 'should', + 'since', + 'so', + 'some', + 'than', + 'that', + 'the', + 'their', + 'them', + 'then', + 'there', + 'these', + 'they', + 'this', + 'tis', + 'to', + 'too', + 'twas', + 'us', + 'wants', + 'was', + 'we', + 'were', + 'what', + 'when', + 'who', + 'whom', + 'why', + 'will', + 'would', + 'yet', + 'you', + 'your' + ]) + + // add . as a separator, because otherwise "title": "Documenter.Anchors.add!" + // would not find anything if searching for "add!", only for the entire qualification + lunr.tokenizer.separator = /[\s\-\.]+/ + + // custom trimmer that doesn't strip @ and !, which are used in julia macro and function names + lunr.trimmer = function (token) { + return token.update(function (s) { + return s.replace(/^[^a-zA-Z0-9@!]+/, '').replace(/[^a-zA-Z0-9@!]+$/, '') + }) + } + + lunr.Pipeline.registerFunction(lunr.stopWordFilter, 'juliaStopWordFilter') + lunr.Pipeline.registerFunction(lunr.trimmer, 'juliaTrimmer') + + var index = lunr(function () { + this.ref('location') + this.field('title',{boost: 100}) + this.field('text') + documenterSearchIndex['docs'].forEach(function(e) { + this.add(e) + }, this) + }) + var store = {} + + documenterSearchIndex['docs'].forEach(function(e) { + store[e.location] = {title: e.title, category: e.category, page: e.page} + }) + + $(function(){ + searchresults = $('#documenter-search-results'); + searchinfo = $('#documenter-search-info'); + searchbox = $('#documenter-search-query'); + searchform = $('.docs-search'); + sidebar = $('.docs-sidebar'); + function update_search(querystring) { + tokens = lunr.tokenizer(querystring) + results = index.query(function (q) { + tokens.forEach(function (t) { + q.term(t.toString(), { + fields: ["title"], + boost: 100, + usePipeline: true, + editDistance: 0, + wildcard: lunr.Query.wildcard.NONE + }) + q.term(t.toString(), { + fields: ["title"], + boost: 10, + usePipeline: true, + editDistance: 2, + wildcard: lunr.Query.wildcard.NONE + }) + q.term(t.toString(), { + fields: ["text"], + boost: 1, + usePipeline: true, + editDistance: 0, + wildcard: lunr.Query.wildcard.NONE + }) + }) + }) + searchinfo.text("Number of results: " + results.length) + searchresults.empty() + results.forEach(function(result) { + data = store[result.ref] + link = $(''+data.title+'') + link.attr('href', documenterBaseURL+'/'+result.ref) + if (data.category != "page"){ + cat = $('('+data.category+', '+data.page+')') + } else { + cat = $('('+data.category+')') + } + li = $('
  • ').append(link).append(" ").append(cat) + searchresults.append(li) + }) + } + + function update_search_box() { + querystring = searchbox.val() + update_search(querystring) + } + + searchbox.keyup(_.debounce(update_search_box, 250)) + searchbox.change(update_search_box) + + // Disable enter-key form submission for the searchbox on the search page + // and just re-run search rather than refresh the whole page. + searchform.keypress( + function(event){ + if (event.which == '13') { + if (sidebar.hasClass('visible')) { + sidebar.removeClass('visible'); + } + update_search_box(); + event.preventDefault(); + } + } + ); + + search_query_uri = parseUri(window.location).queryKey["q"] + if(search_query_uri !== undefined) { + search_query = decodeURIComponent(search_query_uri.replace(/\+/g, '%20')) + searchbox.val(search_query) + } + update_search_box(); + }) +}) + +}) diff --git a/v0.28.3/assets/themes/documenter-dark.css b/v0.28.3/assets/themes/documenter-dark.css new file mode 100644 index 0000000000..c94a294dcf --- /dev/null +++ b/v0.28.3/assets/themes/documenter-dark.css @@ -0,0 +1,7 @@ +@keyframes spinAround{from{transform:rotate(0deg)}to{transform:rotate(359deg)}}html.theme--documenter-dark .tabs,html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark .breadcrumb,html.theme--documenter-dark .file,html.theme--documenter-dark .button,.is-unselectable,html.theme--documenter-dark .modal-close,html.theme--documenter-dark .delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.theme--documenter-dark .navbar-link:not(.is-arrowless)::after,html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading)::after{border:3px solid 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 .message:not(:last-child),html.theme--documenter-dark .list:not(:last-child),html.theme--documenter-dark .level:not(:last-child),html.theme--documenter-dark .breadcrumb:not(:last-child),html.theme--documenter-dark .highlight:not(:last-child),html.theme--documenter-dark .block:not(:last-child),html.theme--documenter-dark .title:not(:last-child),html.theme--documenter-dark .subtitle:not(:last-child),html.theme--documenter-dark .table-container:not(:last-child),html.theme--documenter-dark .table:not(:last-child),html.theme--documenter-dark .progress:not(:last-child),html.theme--documenter-dark .notification:not(:last-child),html.theme--documenter-dark .content:not(:last-child),html.theme--documenter-dark .box:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .modal-close,html.theme--documenter-dark .delete{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:290486px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:none;position:relative;vertical-align:top;width:20px}html.theme--documenter-dark .modal-close::before,html.theme--documenter-dark .delete::before,html.theme--documenter-dark .modal-close::after,html.theme--documenter-dark .delete::after{background-color:#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:290486px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}html.theme--documenter-dark .hero-video,html.theme--documenter-dark .modal-background,html.theme--documenter-dark .modal,html.theme--documenter-dark .image.is-square img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--documenter-dark .image.is-square .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--documenter-dark .image.is-1by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--documenter-dark .image.is-1by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--documenter-dark .image.is-5by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--documenter-dark .image.is-5by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--documenter-dark .image.is-4by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--documenter-dark .image.is-4by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--documenter-dark .image.is-3by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--documenter-dark .image.is-3by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--documenter-dark .image.is-5by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--documenter-dark .image.is-5by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--documenter-dark .image.is-16by9 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--documenter-dark .image.is-16by9 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--documenter-dark .image.is-2by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--documenter-dark .image.is-2by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--documenter-dark .image.is-3by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--documenter-dark .image.is-3by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--documenter-dark .image.is-4by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--documenter-dark .image.is-4by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--documenter-dark .image.is-3by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--documenter-dark .image.is-3by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--documenter-dark .image.is-2by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--documenter-dark .image.is-2by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--documenter-dark .image.is-3by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--documenter-dark .image.is-3by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--documenter-dark .image.is-9by16 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--documenter-dark .image.is-9by16 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--documenter-dark .image.is-1by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--documenter-dark .image.is-1by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--documenter-dark .image.is-1by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--documenter-dark .image.is-1by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio,.is-overlay{bottom:0;left:0;position:absolute;right:0;top:0}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark .file-cta,html.theme--documenter-dark .file-name,html.theme--documenter-dark .select select,html.theme--documenter-dark .textarea,html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark .button{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:.4em;box-shadow:none;display:inline-flex;font-size:15px;height:2.25em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.375em - 1px);padding-left:calc(0.625em - 1px);padding-right:calc(0.625em - 1px);padding-top:calc(0.375em - 1px);position:relative;vertical-align:top}html.theme--documenter-dark .pagination-previous:focus,html.theme--documenter-dark .pagination-next:focus,html.theme--documenter-dark .pagination-link:focus,html.theme--documenter-dark .pagination-ellipsis:focus,html.theme--documenter-dark .file-cta:focus,html.theme--documenter-dark .file-name:focus,html.theme--documenter-dark .select select:focus,html.theme--documenter-dark .textarea:focus,html.theme--documenter-dark .input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:focus,html.theme--documenter-dark .button:focus,html.theme--documenter-dark .is-focused.pagination-previous,html.theme--documenter-dark .is-focused.pagination-next,html.theme--documenter-dark .is-focused.pagination-link,html.theme--documenter-dark .is-focused.pagination-ellipsis,html.theme--documenter-dark .is-focused.file-cta,html.theme--documenter-dark .is-focused.file-name,html.theme--documenter-dark .select select.is-focused,html.theme--documenter-dark .is-focused.textarea,html.theme--documenter-dark .is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-focused.button,html.theme--documenter-dark .pagination-previous:active,html.theme--documenter-dark .pagination-next:active,html.theme--documenter-dark .pagination-link:active,html.theme--documenter-dark .pagination-ellipsis:active,html.theme--documenter-dark .file-cta:active,html.theme--documenter-dark .file-name:active,html.theme--documenter-dark .select select:active,html.theme--documenter-dark .textarea:active,html.theme--documenter-dark .input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:active,html.theme--documenter-dark .button:active,html.theme--documenter-dark .is-active.pagination-previous,html.theme--documenter-dark .is-active.pagination-next,html.theme--documenter-dark .is-active.pagination-link,html.theme--documenter-dark .is-active.pagination-ellipsis,html.theme--documenter-dark .is-active.file-cta,html.theme--documenter-dark .is-active.file-name,html.theme--documenter-dark .select select.is-active,html.theme--documenter-dark .is-active.textarea,html.theme--documenter-dark .is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--documenter-dark .is-active.button{outline:none}html.theme--documenter-dark .pagination-previous[disabled],html.theme--documenter-dark .pagination-next[disabled],html.theme--documenter-dark .pagination-link[disabled],html.theme--documenter-dark .pagination-ellipsis[disabled],html.theme--documenter-dark .file-cta[disabled],html.theme--documenter-dark .file-name[disabled],html.theme--documenter-dark .select select[disabled],html.theme--documenter-dark .textarea[disabled],html.theme--documenter-dark .input[disabled],html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled],html.theme--documenter-dark .button[disabled],fieldset[disabled] html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark fieldset[disabled] .pagination-previous,fieldset[disabled] html.theme--documenter-dark .pagination-next,html.theme--documenter-dark fieldset[disabled] .pagination-next,fieldset[disabled] html.theme--documenter-dark .pagination-link,html.theme--documenter-dark fieldset[disabled] .pagination-link,fieldset[disabled] html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark fieldset[disabled] .pagination-ellipsis,fieldset[disabled] html.theme--documenter-dark .file-cta,html.theme--documenter-dark fieldset[disabled] .file-cta,fieldset[disabled] html.theme--documenter-dark .file-name,html.theme--documenter-dark fieldset[disabled] .file-name,fieldset[disabled] html.theme--documenter-dark .select select,fieldset[disabled] html.theme--documenter-dark .textarea,fieldset[disabled] html.theme--documenter-dark .input,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark fieldset[disabled] .select select,html.theme--documenter-dark .select fieldset[disabled] select,html.theme--documenter-dark fieldset[disabled] .textarea,html.theme--documenter-dark fieldset[disabled] .input,html.theme--documenter-dark fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar fieldset[disabled] form.docs-search>input,fieldset[disabled] html.theme--documenter-dark .button,html.theme--documenter-dark fieldset[disabled] .button{cursor:not-allowed}/*! minireset.css v0.0.4 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,embed,iframe,object,video{height:auto;max-width:100%}audio{max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:left}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-clipped{overflow:hidden !important}.is-size-1{font-size:3rem !important}.is-size-2{font-size:2.5rem !important}.is-size-3{font-size:2rem !important}.is-size-4{font-size:1.5rem !important}.is-size-5{font-size:1.25rem !important}.is-size-6{font-size:15px !important}.is-size-7,html.theme--documenter-dark .docstring>section>a.docs-sourcelink{font-size:.85em !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:15px !important}.is-size-7-mobile{font-size:.85em !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:15px !important}.is-size-7-tablet{font-size:.85em !important}}@media screen and (max-width: 1055px){.is-size-1-touch{font-size:3rem !important}.is-size-2-touch{font-size:2.5rem !important}.is-size-3-touch{font-size:2rem !important}.is-size-4-touch{font-size:1.5rem !important}.is-size-5-touch{font-size:1.25rem !important}.is-size-6-touch{font-size:15px !important}.is-size-7-touch{font-size:.85em !important}}@media screen and (min-width: 1056px){.is-size-1-desktop{font-size:3rem !important}.is-size-2-desktop{font-size:2.5rem !important}.is-size-3-desktop{font-size:2rem !important}.is-size-4-desktop{font-size:1.5rem !important}.is-size-5-desktop{font-size:1.25rem !important}.is-size-6-desktop{font-size:15px !important}.is-size-7-desktop{font-size:.85em !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:15px !important}.is-size-7-widescreen{font-size:.85em !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:15px !important}.is-size-7-fullhd{font-size:.85em !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-centered-tablet-only{text-align:center !important}}@media screen and (max-width: 1055px){.has-text-centered-touch{text-align:center !important}}@media screen and (min-width: 1056px){.has-text-centered-desktop{text-align:center !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-centered-desktop-only{text-align:center !important}}@media screen and (min-width: 1216px){.has-text-centered-widescreen{text-align:center !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-centered-widescreen-only{text-align:center !important}}@media screen and (min-width: 1408px){.has-text-centered-fullhd{text-align:center !important}}@media screen and (max-width: 768px){.has-text-justified-mobile{text-align:justify !important}}@media screen and (min-width: 769px),print{.has-text-justified-tablet{text-align:justify !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-justified-tablet-only{text-align:justify !important}}@media screen and (max-width: 1055px){.has-text-justified-touch{text-align:justify !important}}@media screen and (min-width: 1056px){.has-text-justified-desktop{text-align:justify !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-justified-desktop-only{text-align:justify !important}}@media screen and (min-width: 1216px){.has-text-justified-widescreen{text-align:justify !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-justified-widescreen-only{text-align:justify !important}}@media screen and (min-width: 1408px){.has-text-justified-fullhd{text-align:justify !important}}@media screen and (max-width: 768px){.has-text-left-mobile{text-align:left !important}}@media screen and (min-width: 769px),print{.has-text-left-tablet{text-align:left !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-left-tablet-only{text-align:left !important}}@media screen and (max-width: 1055px){.has-text-left-touch{text-align:left !important}}@media screen and (min-width: 1056px){.has-text-left-desktop{text-align:left !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-left-desktop-only{text-align:left !important}}@media screen and (min-width: 1216px){.has-text-left-widescreen{text-align:left !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-left-widescreen-only{text-align:left !important}}@media screen and (min-width: 1408px){.has-text-left-fullhd{text-align:left !important}}@media screen and (max-width: 768px){.has-text-right-mobile{text-align:right !important}}@media screen and (min-width: 769px),print{.has-text-right-tablet{text-align:right !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-right-tablet-only{text-align:right !important}}@media screen and (max-width: 1055px){.has-text-right-touch{text-align:right !important}}@media screen and (min-width: 1056px){.has-text-right-desktop{text-align:right !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-right-desktop-only{text-align:right !important}}@media screen and (min-width: 1216px){.has-text-right-widescreen{text-align:right !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-right-widescreen-only{text-align:right !important}}@media screen and (min-width: 1408px){.has-text-right-fullhd{text-align:right !important}}.is-capitalized{text-transform:capitalize !important}.is-lowercase{text-transform:lowercase !important}.is-uppercase{text-transform:uppercase !important}.is-italic{font-style:italic !important}.has-text-white{color:#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-link{color:#1abc9c !important}a.has-text-link:hover,a.has-text-link:focus{color:#148f77 !important}.has-background-link{background-color:#1abc9c !important}.has-text-info{color:#024c7d !important}a.has-text-info:hover,a.has-text-info:focus{color:#012d4b !important}.has-background-info{background-color:#024c7d !important}.has-text-success{color:#008438 !important}a.has-text-success:hover,a.has-text-success:focus{color:#005122 !important}.has-background-success{background-color:#008438 !important}.has-text-warning{color:#ad8100 !important}a.has-text-warning:hover,a.has-text-warning:focus{color:#7a5b00 !important}.has-background-warning{background-color:#ad8100 !important}.has-text-danger{color:#9e1b0d !important}a.has-text-danger:hover,a.has-text-danger:focus{color:#6f1309 !important}.has-background-danger{background-color:#9e1b0d !important}.has-text-black-bis{color:#121212 !important}.has-background-black-bis{background-color:#121212 !important}.has-text-black-ter{color:#242424 !important}.has-background-black-ter{background-color:#242424 !important}.has-text-grey-darker{color:#282f2f !important}.has-background-grey-darker{background-color:#282f2f !important}.has-text-grey-dark{color:#343c3d !important}.has-background-grey-dark{background-color:#343c3d !important}.has-text-grey{color:#5e6d6f !important}.has-background-grey{background-color:#5e6d6f !important}.has-text-grey-light{color:#8c9b9d !important}.has-background-grey-light{background-color:#8c9b9d !important}.has-text-grey-lighter{color:#dbdee0 !important}.has-background-grey-lighter{background-color:#dbdee0 !important}.has-text-white-ter{color:#ecf0f1 !important}.has-background-white-ter{background-color:#ecf0f1 !important}.has-text-white-bis{color:#fafafa !important}.has-background-white-bis{background-color:#fafafa !important}.has-text-weight-light{font-weight:300 !important}.has-text-weight-normal{font-weight:400 !important}.has-text-weight-medium{font-weight:500 !important}.has-text-weight-semibold{font-weight:600 !important}.has-text-weight-bold{font-weight:700 !important}.is-family-primary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-secondary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-sans-serif{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-monospace{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-family-code{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-block{display:block !important}@media screen and (max-width: 768px){.is-block-mobile{display:block !important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-block-tablet-only{display:block !important}}@media screen and (max-width: 1055px){.is-block-touch{display:block !important}}@media screen and (min-width: 1056px){.is-block-desktop{display:block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-block-desktop-only{display:block !important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block !important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block !important}}.is-flex{display:flex !important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex !important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-flex-tablet-only{display:flex !important}}@media screen and (max-width: 1055px){.is-flex-touch{display:flex !important}}@media screen and (min-width: 1056px){.is-flex-desktop{display:flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-flex-desktop-only{display:flex !important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex !important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex !important}}.is-inline{display:inline !important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline !important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-tablet-only{display:inline !important}}@media screen and (max-width: 1055px){.is-inline-touch{display:inline !important}}@media screen and (min-width: 1056px){.is-inline-desktop{display:inline !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-desktop-only{display:inline !important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline !important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline !important}}.is-inline-block{display:inline-block !important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block !important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-block-tablet-only{display:inline-block !important}}@media screen and (max-width: 1055px){.is-inline-block-touch{display:inline-block !important}}@media screen and (min-width: 1056px){.is-inline-block-desktop{display:inline-block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block !important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block !important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block !important}}.is-inline-flex{display:inline-flex !important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex !important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-flex-tablet-only{display:inline-flex !important}}@media screen and (max-width: 1055px){.is-inline-flex-touch{display:inline-flex !important}}@media screen and (min-width: 1056px){.is-inline-flex-desktop{display:inline-flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex !important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex !important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex !important}}.is-hidden{display:none !important}.is-sr-only{border:none !important;clip:rect(0, 0, 0, 0) !important;height:0.01em !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:0.01em !important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none !important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-hidden-tablet-only{display:none !important}}@media screen and (max-width: 1055px){.is-hidden-touch{display:none !important}}@media screen and (min-width: 1056px){.is-hidden-desktop{display:none !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-hidden-desktop-only{display:none !important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none !important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none !important}}.is-invisible{visibility:hidden !important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden !important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-invisible-tablet-only{visibility:hidden !important}}@media screen and (max-width: 1055px){.is-invisible-touch{visibility:hidden !important}}@media screen and (min-width: 1056px){.is-invisible-desktop{visibility:hidden !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden !important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden !important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden !important}}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-relative{position:relative !important}html.theme--documenter-dark{/*! + 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 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:left}html.theme--documenter-dark table th{color:#f2f2f2}html.theme--documenter-dark .box{background-color:#343c3d;border-radius:8px;box-shadow:none;color:#fff;display:block;padding:1.25rem}html.theme--documenter-dark a.box:hover,html.theme--documenter-dark a.box:focus{box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px #1abc9c}html.theme--documenter-dark a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2),0 0 0 1px #1abc9c}html.theme--documenter-dark .button{background-color:#282f2f;border-color:#4c5759;border-width:1px;color:#375a7f;cursor:pointer;justify-content:center;padding-bottom:calc(0.375em - 1px);padding-left:.75em;padding-right:.75em;padding-top:calc(0.375em - 1px);text-align:center;white-space:nowrap}html.theme--documenter-dark .button strong{color:inherit}html.theme--documenter-dark .button .icon,html.theme--documenter-dark .button .icon.is-small,html.theme--documenter-dark .button #documenter .docs-sidebar form.docs-search>input.icon,html.theme--documenter-dark #documenter .docs-sidebar .button form.docs-search>input.icon,html.theme--documenter-dark .button .icon.is-medium,html.theme--documenter-dark .button .icon.is-large{height:1.5em;width:1.5em}html.theme--documenter-dark .button .icon:first-child:not(:last-child){margin-left:calc(-0.375em - 1px);margin-right:0.1875em}html.theme--documenter-dark .button .icon:last-child:not(:first-child){margin-left:0.1875em;margin-right:calc(-0.375em - 1px)}html.theme--documenter-dark .button .icon:first-child:last-child{margin-left:calc(-0.375em - 1px);margin-right:calc(-0.375em - 1px)}html.theme--documenter-dark .button:hover,html.theme--documenter-dark .button.is-hovered{border-color:#8c9b9d;color:#f2f2f2}html.theme--documenter-dark .button:focus,html.theme--documenter-dark .button.is-focused{border-color:#8c9b9d;color:#17a689}html.theme--documenter-dark .button:focus:not(:active),html.theme--documenter-dark .button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .button:active,html.theme--documenter-dark .button.is-active{border-color:#343c3d;color:#f2f2f2}html.theme--documenter-dark .button.is-text{background-color:transparent;border-color:transparent;color:#fff;text-decoration:underline}html.theme--documenter-dark .button.is-text:hover,html.theme--documenter-dark .button.is-text.is-hovered,html.theme--documenter-dark .button.is-text:focus,html.theme--documenter-dark .button.is-text.is-focused{background-color:#282f2f;color:#f2f2f2}html.theme--documenter-dark .button.is-text:active,html.theme--documenter-dark .button.is-text.is-active{background-color:#1d2122;color:#f2f2f2}html.theme--documenter-dark .button.is-text[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-white{background-color:#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:transparent;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:transparent;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:#282f2f}html.theme--documenter-dark .button.is-light:hover,html.theme--documenter-dark .button.is-light.is-hovered{background-color:#e5eaec;border-color:transparent;color:#282f2f}html.theme--documenter-dark .button.is-light:focus,html.theme--documenter-dark .button.is-light.is-focused{border-color:transparent;color:#282f2f}html.theme--documenter-dark .button.is-light:focus:not(:active),html.theme--documenter-dark .button.is-light.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(236,240,241,0.25)}html.theme--documenter-dark .button.is-light:active,html.theme--documenter-dark .button.is-light.is-active{background-color:#dde4e6;border-color:transparent;color:#282f2f}html.theme--documenter-dark .button.is-light[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light{background-color:#ecf0f1;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-light.is-inverted{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-inverted:hover,html.theme--documenter-dark .button.is-light.is-inverted.is-hovered{background-color:#1d2122}html.theme--documenter-dark .button.is-light.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light.is-inverted{background-color:#282f2f;border-color:transparent;box-shadow:none;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-loading::after{border-color:transparent transparent #282f2f #282f2f !important}html.theme--documenter-dark .button.is-light.is-outlined{background-color:transparent;border-color:#ecf0f1;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-outlined:hover,html.theme--documenter-dark .button.is-light.is-outlined.is-hovered,html.theme--documenter-dark .button.is-light.is-outlined:focus,html.theme--documenter-dark .button.is-light.is-outlined.is-focused{background-color:#ecf0f1;border-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #ecf0f1 #ecf0f1 !important}html.theme--documenter-dark .button.is-light.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-light.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-light.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-light.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #282f2f #282f2f !important}html.theme--documenter-dark .button.is-light.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light.is-outlined{background-color:transparent;border-color:#ecf0f1;box-shadow:none;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:#282f2f;color:#282f2f}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-focused{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ecf0f1 #ecf0f1 !important}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:#282f2f;box-shadow:none;color:#282f2f}html.theme--documenter-dark .button.is-dark,html.theme--documenter-dark .content kbd.button{background-color:#282f2f;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .button.is-dark:hover,html.theme--documenter-dark .content kbd.button:hover,html.theme--documenter-dark .button.is-dark.is-hovered,html.theme--documenter-dark .content kbd.button.is-hovered{background-color:#232829;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .button.is-dark:focus,html.theme--documenter-dark .content kbd.button:focus,html.theme--documenter-dark .button.is-dark.is-focused,html.theme--documenter-dark .content kbd.button.is-focused{border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .button.is-dark:focus:not(:active),html.theme--documenter-dark .content kbd.button:focus:not(:active),html.theme--documenter-dark .button.is-dark.is-focused:not(:active),html.theme--documenter-dark .content kbd.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(40,47,47,0.25)}html.theme--documenter-dark .button.is-dark:active,html.theme--documenter-dark .content kbd.button:active,html.theme--documenter-dark .button.is-dark.is-active,html.theme--documenter-dark .content kbd.button.is-active{background-color:#1d2122;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .button.is-dark[disabled],html.theme--documenter-dark .content kbd.button[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark,fieldset[disabled] html.theme--documenter-dark .content kbd.button{background-color:#282f2f;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-dark.is-inverted,html.theme--documenter-dark .content kbd.button.is-inverted{background-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-inverted:hover,html.theme--documenter-dark .content kbd.button.is-inverted:hover,html.theme--documenter-dark .button.is-dark.is-inverted.is-hovered,html.theme--documenter-dark .content kbd.button.is-inverted.is-hovered{background-color:#dde4e6}html.theme--documenter-dark .button.is-dark.is-inverted[disabled],html.theme--documenter-dark .content kbd.button.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-inverted,fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-inverted{background-color:#ecf0f1;border-color:transparent;box-shadow:none;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-loading::after,html.theme--documenter-dark .content kbd.button.is-loading::after{border-color:transparent transparent #ecf0f1 #ecf0f1 !important}html.theme--documenter-dark .button.is-dark.is-outlined,html.theme--documenter-dark .content kbd.button.is-outlined{background-color:transparent;border-color:#282f2f;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-outlined:hover,html.theme--documenter-dark .content kbd.button.is-outlined:hover,html.theme--documenter-dark .button.is-dark.is-outlined.is-hovered,html.theme--documenter-dark .content kbd.button.is-outlined.is-hovered,html.theme--documenter-dark .button.is-dark.is-outlined:focus,html.theme--documenter-dark .content kbd.button.is-outlined:focus,html.theme--documenter-dark .button.is-dark.is-outlined.is-focused,html.theme--documenter-dark .content kbd.button.is-outlined.is-focused{background-color:#282f2f;border-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .button.is-dark.is-outlined.is-loading::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading::after{border-color:transparent transparent #282f2f #282f2f !important}html.theme--documenter-dark .button.is-dark.is-outlined.is-loading:hover::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-dark.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-dark.is-outlined.is-loading:focus::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-dark.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ecf0f1 #ecf0f1 !important}html.theme--documenter-dark .button.is-dark.is-outlined[disabled],html.theme--documenter-dark .content kbd.button.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-outlined,fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-outlined{background-color:transparent;border-color:#282f2f;box-shadow:none;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#ecf0f1;color:#ecf0f1}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined:hover,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined:focus,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-focused,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-focused{background-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #282f2f #282f2f !important}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined[disabled],html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined,fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#ecf0f1;box-shadow:none;color:#ecf0f1}html.theme--documenter-dark .button.is-primary,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink{background-color:#375a7f;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary:hover,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-hovered.docs-sourcelink{background-color:#335476;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary:focus,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:focus,html.theme--documenter-dark .button.is-primary.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-focused.docs-sourcelink{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary:focus:not(:active),html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:focus:not(:active),html.theme--documenter-dark .button.is-primary.is-focused:not(:active),html.theme--documenter-dark .docstring>section>a.button.is-focused.docs-sourcelink:not(:active){box-shadow:0 0 0 0.125em rgba(55,90,127,0.25)}html.theme--documenter-dark .button.is-primary:active,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:active,html.theme--documenter-dark .button.is-primary.is-active,html.theme--documenter-dark .docstring>section>a.button.is-active.docs-sourcelink{background-color:#2f4d6d;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary[disabled],html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink{background-color:#375a7f;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-primary.is-inverted,html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-inverted:hover,html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-inverted.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-hovered.docs-sourcelink{background-color:#f2f2f2}html.theme--documenter-dark .button.is-primary.is-inverted[disabled],html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-inverted,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;border-color:transparent;box-shadow:none;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-loading::after,html.theme--documenter-dark .docstring>section>a.button.is-loading.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-primary.is-outlined,html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#375a7f;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-outlined:hover,html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-outlined.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-hovered.docs-sourcelink,html.theme--documenter-dark .button.is-primary.is-outlined:focus,html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink:focus,html.theme--documenter-dark .button.is-primary.is-outlined.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-focused.docs-sourcelink{background-color:#375a7f;border-color:#375a7f;color:#fff}html.theme--documenter-dark .button.is-primary.is-outlined.is-loading::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink::after{border-color:transparent transparent #375a7f #375a7f !important}html.theme--documenter-dark .button.is-primary.is-outlined.is-loading:hover::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--documenter-dark .button.is-primary.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--documenter-dark .button.is-primary.is-outlined.is-loading:focus::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--documenter-dark .button.is-primary.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-primary.is-outlined[disabled],html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-outlined,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#375a7f;box-shadow:none;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined:hover,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined:focus,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:focus,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-focused.docs-sourcelink{background-color:#fff;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #375a7f #375a7f !important}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined[disabled],html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-link{background-color:#1abc9c;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link:hover,html.theme--documenter-dark .button.is-link.is-hovered{background-color:#18b193;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link:focus,html.theme--documenter-dark .button.is-link.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link:focus:not(:active),html.theme--documenter-dark .button.is-link.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .button.is-link:active,html.theme--documenter-dark .button.is-link.is-active{background-color:#17a689;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link{background-color:#1abc9c;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-link.is-inverted{background-color:#fff;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-inverted:hover,html.theme--documenter-dark .button.is-link.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-link.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-link.is-outlined{background-color:transparent;border-color:#1abc9c;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-outlined:hover,html.theme--documenter-dark .button.is-link.is-outlined.is-hovered,html.theme--documenter-dark .button.is-link.is-outlined:focus,html.theme--documenter-dark .button.is-link.is-outlined.is-focused{background-color:#1abc9c;border-color:#1abc9c;color:#fff}html.theme--documenter-dark .button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #1abc9c #1abc9c !important}html.theme--documenter-dark .button.is-link.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-link.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-link.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-link.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-link.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link.is-outlined{background-color:transparent;border-color:#1abc9c;box-shadow:none;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-focused{background-color:#fff;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #1abc9c #1abc9c !important}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-info{background-color:#024c7d;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-info:hover,html.theme--documenter-dark .button.is-info.is-hovered{background-color:#024470;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-info:focus,html.theme--documenter-dark .button.is-info.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-info:focus:not(:active),html.theme--documenter-dark .button.is-info.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(2,76,125,0.25)}html.theme--documenter-dark .button.is-info:active,html.theme--documenter-dark .button.is-info.is-active{background-color:#023d64;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-info[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-info{background-color:#024c7d;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-info.is-inverted{background-color:#fff;color:#024c7d}html.theme--documenter-dark .button.is-info.is-inverted:hover,html.theme--documenter-dark .button.is-info.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-info.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-info.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#024c7d}html.theme--documenter-dark .button.is-info.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-info.is-outlined{background-color:transparent;border-color:#024c7d;color:#024c7d}html.theme--documenter-dark .button.is-info.is-outlined:hover,html.theme--documenter-dark .button.is-info.is-outlined.is-hovered,html.theme--documenter-dark .button.is-info.is-outlined:focus,html.theme--documenter-dark .button.is-info.is-outlined.is-focused{background-color:#024c7d;border-color:#024c7d;color:#fff}html.theme--documenter-dark .button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #024c7d #024c7d !important}html.theme--documenter-dark .button.is-info.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-info.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-info.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-info.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-info.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-info.is-outlined{background-color:transparent;border-color:#024c7d;box-shadow:none;color:#024c7d}html.theme--documenter-dark .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-info.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-focused{background-color:#fff;color:#024c7d}html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-info.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #024c7d #024c7d !important}html.theme--documenter-dark .button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-success{background-color:#008438;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-success:hover,html.theme--documenter-dark .button.is-success.is-hovered{background-color:#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:transparent;box-shadow:none}html.theme--documenter-dark .button.is-success.is-inverted{background-color:#fff;color:#008438}html.theme--documenter-dark .button.is-success.is-inverted:hover,html.theme--documenter-dark .button.is-success.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-success.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-success.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#008438}html.theme--documenter-dark .button.is-success.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-success.is-outlined{background-color:transparent;border-color:#008438;color:#008438}html.theme--documenter-dark .button.is-success.is-outlined:hover,html.theme--documenter-dark .button.is-success.is-outlined.is-hovered,html.theme--documenter-dark .button.is-success.is-outlined:focus,html.theme--documenter-dark .button.is-success.is-outlined.is-focused{background-color:#008438;border-color:#008438;color:#fff}html.theme--documenter-dark .button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #008438 #008438 !important}html.theme--documenter-dark .button.is-success.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-success.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-success.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-success.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-success.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-success.is-outlined{background-color:transparent;border-color:#008438;box-shadow:none;color:#008438}html.theme--documenter-dark .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-success.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-focused{background-color:#fff;color:#008438}html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-success.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #008438 #008438 !important}html.theme--documenter-dark .button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-warning{background-color:#ad8100;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-warning:hover,html.theme--documenter-dark .button.is-warning.is-hovered{background-color:#a07700;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-warning:focus,html.theme--documenter-dark .button.is-warning.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-warning:focus:not(:active),html.theme--documenter-dark .button.is-warning.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(173,129,0,0.25)}html.theme--documenter-dark .button.is-warning:active,html.theme--documenter-dark .button.is-warning.is-active{background-color:#946e00;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-warning[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-warning{background-color:#ad8100;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-warning.is-inverted{background-color:#fff;color:#ad8100}html.theme--documenter-dark .button.is-warning.is-inverted:hover,html.theme--documenter-dark .button.is-warning.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-warning.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-warning.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#ad8100}html.theme--documenter-dark .button.is-warning.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-warning.is-outlined{background-color:transparent;border-color:#ad8100;color:#ad8100}html.theme--documenter-dark .button.is-warning.is-outlined:hover,html.theme--documenter-dark .button.is-warning.is-outlined.is-hovered,html.theme--documenter-dark .button.is-warning.is-outlined:focus,html.theme--documenter-dark .button.is-warning.is-outlined.is-focused{background-color:#ad8100;border-color:#ad8100;color:#fff}html.theme--documenter-dark .button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #ad8100 #ad8100 !important}html.theme--documenter-dark .button.is-warning.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-warning.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-warning.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-warning.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-warning.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-warning.is-outlined{background-color:transparent;border-color:#ad8100;box-shadow:none;color:#ad8100}html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-focused{background-color:#fff;color:#ad8100}html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ad8100 #ad8100 !important}html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-danger{background-color:#9e1b0d;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-danger:hover,html.theme--documenter-dark .button.is-danger.is-hovered{background-color:#92190c;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-danger:focus,html.theme--documenter-dark .button.is-danger.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-danger:focus:not(:active),html.theme--documenter-dark .button.is-danger.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(158,27,13,0.25)}html.theme--documenter-dark .button.is-danger:active,html.theme--documenter-dark .button.is-danger.is-active{background-color:#86170b;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-danger[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-danger{background-color:#9e1b0d;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-danger.is-inverted{background-color:#fff;color:#9e1b0d}html.theme--documenter-dark .button.is-danger.is-inverted:hover,html.theme--documenter-dark .button.is-danger.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-danger.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-danger.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#9e1b0d}html.theme--documenter-dark .button.is-danger.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-danger.is-outlined{background-color:transparent;border-color:#9e1b0d;color:#9e1b0d}html.theme--documenter-dark .button.is-danger.is-outlined:hover,html.theme--documenter-dark .button.is-danger.is-outlined.is-hovered,html.theme--documenter-dark .button.is-danger.is-outlined:focus,html.theme--documenter-dark .button.is-danger.is-outlined.is-focused{background-color:#9e1b0d;border-color:#9e1b0d;color:#fff}html.theme--documenter-dark .button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #9e1b0d #9e1b0d !important}html.theme--documenter-dark .button.is-danger.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-danger.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-danger.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-danger.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-danger.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-danger.is-outlined{background-color:transparent;border-color:#9e1b0d;box-shadow:none;color:#9e1b0d}html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-focused{background-color:#fff;color:#9e1b0d}html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #9e1b0d #9e1b0d !important}html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.button{border-radius:3px;font-size:.85em}html.theme--documenter-dark .button.is-normal{font-size:15px}html.theme--documenter-dark .button.is-medium{font-size:1.25rem}html.theme--documenter-dark .button.is-large{font-size:1.5rem}html.theme--documenter-dark .button[disabled],fieldset[disabled] html.theme--documenter-dark .button{background-color:#8c9b9d;border-color:#dbdee0;box-shadow:none;opacity:.5}html.theme--documenter-dark .button.is-fullwidth{display:flex;width:100%}html.theme--documenter-dark .button.is-loading{color:transparent !important;pointer-events:none}html.theme--documenter-dark .button.is-loading::after{position:absolute;left:calc(50% - (1em / 2));top:calc(50% - (1em / 2));position:absolute !important}html.theme--documenter-dark .button.is-static{background-color:#282f2f;border-color:#5e6d6f;color:#dbdee0;box-shadow:none;pointer-events:none}html.theme--documenter-dark .button.is-rounded,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.button{border-radius:290486px;padding-left:1em;padding-right:1em}html.theme--documenter-dark .buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--documenter-dark .buttons .button{margin-bottom:0.5rem}html.theme--documenter-dark .buttons .button:not(:last-child):not(.is-fullwidth){margin-right:0.5rem}html.theme--documenter-dark .buttons:last-child{margin-bottom:-0.5rem}html.theme--documenter-dark .buttons:not(:last-child){margin-bottom:1rem}html.theme--documenter-dark .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){border-radius:3px;font-size:.85em}html.theme--documenter-dark .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}html.theme--documenter-dark .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}html.theme--documenter-dark .buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}html.theme--documenter-dark .buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}html.theme--documenter-dark .buttons.has-addons .button:last-child{margin-right:0}html.theme--documenter-dark .buttons.has-addons .button:hover,html.theme--documenter-dark .buttons.has-addons .button.is-hovered{z-index:2}html.theme--documenter-dark .buttons.has-addons .button:focus,html.theme--documenter-dark .buttons.has-addons .button.is-focused,html.theme--documenter-dark .buttons.has-addons .button:active,html.theme--documenter-dark .buttons.has-addons .button.is-active,html.theme--documenter-dark .buttons.has-addons .button.is-selected{z-index:3}html.theme--documenter-dark .buttons.has-addons .button:focus:hover,html.theme--documenter-dark .buttons.has-addons .button.is-focused:hover,html.theme--documenter-dark .buttons.has-addons .button:active:hover,html.theme--documenter-dark .buttons.has-addons .button.is-active:hover,html.theme--documenter-dark .buttons.has-addons .button.is-selected:hover{z-index:4}html.theme--documenter-dark .buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .buttons.is-centered{justify-content:center}html.theme--documenter-dark .buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}html.theme--documenter-dark .buttons.is-right{justify-content:flex-end}html.theme--documenter-dark .buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}html.theme--documenter-dark .container{flex-grow:1;margin:0 auto;position:relative;width:auto}@media screen and (min-width: 1056px){html.theme--documenter-dark .container{max-width:992px}html.theme--documenter-dark .container.is-fluid{margin-left:32px;margin-right:32px;max-width:none}}@media screen and (max-width: 1215px){html.theme--documenter-dark .container.is-widescreen{max-width:1152px}}@media screen and (max-width: 1407px){html.theme--documenter-dark .container.is-fullhd{max-width:1344px}}@media screen and (min-width: 1216px){html.theme--documenter-dark .container{max-width:1152px}}@media screen and (min-width: 1408px){html.theme--documenter-dark .container{max-width:1344px}}html.theme--documenter-dark .content li+li{margin-top:0.25em}html.theme--documenter-dark .content p:not(:last-child),html.theme--documenter-dark .content dl:not(:last-child),html.theme--documenter-dark .content ol:not(:last-child),html.theme--documenter-dark .content ul:not(:last-child),html.theme--documenter-dark .content blockquote:not(:last-child),html.theme--documenter-dark .content pre:not(:last-child),html.theme--documenter-dark .content table:not(:last-child){margin-bottom:1em}html.theme--documenter-dark .content h1,html.theme--documenter-dark .content h2,html.theme--documenter-dark .content h3,html.theme--documenter-dark .content h4,html.theme--documenter-dark .content h5,html.theme--documenter-dark .content h6{color:#f2f2f2;font-weight:600;line-height:1.125}html.theme--documenter-dark .content h1{font-size:2em;margin-bottom:0.5em}html.theme--documenter-dark .content h1:not(:first-child){margin-top:1em}html.theme--documenter-dark .content h2{font-size:1.75em;margin-bottom:0.5714em}html.theme--documenter-dark .content h2:not(:first-child){margin-top:1.1428em}html.theme--documenter-dark .content h3{font-size:1.5em;margin-bottom:0.6666em}html.theme--documenter-dark .content h3:not(:first-child){margin-top:1.3333em}html.theme--documenter-dark .content h4{font-size:1.25em;margin-bottom:0.8em}html.theme--documenter-dark .content h5{font-size:1.125em;margin-bottom:0.8888em}html.theme--documenter-dark .content h6{font-size:1em;margin-bottom:1em}html.theme--documenter-dark .content blockquote{background-color:#282f2f;border-left:5px solid #5e6d6f;padding:1.25em 1.5em}html.theme--documenter-dark .content ol{list-style-position:outside;margin-left:2em;margin-top:1em}html.theme--documenter-dark .content ol:not([type]){list-style-type:decimal}html.theme--documenter-dark .content ol.is-lower-alpha:not([type]){list-style-type:lower-alpha}html.theme--documenter-dark .content ol.is-lower-roman:not([type]){list-style-type:lower-roman}html.theme--documenter-dark .content ol.is-upper-alpha:not([type]){list-style-type:upper-alpha}html.theme--documenter-dark .content ol.is-upper-roman:not([type]){list-style-type:upper-roman}html.theme--documenter-dark .content ul{list-style:disc outside;margin-left:2em;margin-top:1em}html.theme--documenter-dark .content ul ul{list-style-type:circle;margin-top:0.5em}html.theme--documenter-dark .content ul ul ul{list-style-type:square}html.theme--documenter-dark .content dd{margin-left:2em}html.theme--documenter-dark .content figure{margin-left:2em;margin-right:2em;text-align:center}html.theme--documenter-dark .content figure:not(:first-child){margin-top:2em}html.theme--documenter-dark .content figure:not(:last-child){margin-bottom:2em}html.theme--documenter-dark .content figure img{display:inline-block}html.theme--documenter-dark .content figure figcaption{font-style:italic}html.theme--documenter-dark .content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:0;white-space:pre;word-wrap:normal}html.theme--documenter-dark .content sup,html.theme--documenter-dark .content sub{font-size:75%}html.theme--documenter-dark .content table{width:100%}html.theme--documenter-dark .content table td,html.theme--documenter-dark .content table th{border:1px solid #5e6d6f;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--documenter-dark .content table th{color:#f2f2f2}html.theme--documenter-dark .content table th:not([align]){text-align:left}html.theme--documenter-dark .content table thead td,html.theme--documenter-dark .content table thead th{border-width:0 0 2px;color:#f2f2f2}html.theme--documenter-dark .content table tfoot td,html.theme--documenter-dark .content table tfoot th{border-width:2px 0 0;color:#f2f2f2}html.theme--documenter-dark .content table tbody tr:last-child td,html.theme--documenter-dark .content table tbody tr:last-child th{border-bottom-width:0}html.theme--documenter-dark .content .tabs li+li{margin-top:0}html.theme--documenter-dark .content.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.content{font-size:.85em}html.theme--documenter-dark .content.is-medium{font-size:1.25rem}html.theme--documenter-dark .content.is-large{font-size:1.5rem}html.theme--documenter-dark .icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}html.theme--documenter-dark .icon.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.icon{height:1rem;width:1rem}html.theme--documenter-dark .icon.is-medium{height:2rem;width:2rem}html.theme--documenter-dark .icon.is-large{height:3rem;width:3rem}html.theme--documenter-dark .image,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img{display:block;position:relative}html.theme--documenter-dark .image img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img img{display:block;height:auto;width:100%}html.theme--documenter-dark .image img.is-rounded,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img img.is-rounded{border-radius:290486px}html.theme--documenter-dark .image.is-square img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--documenter-dark .image.is-square .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--documenter-dark .image.is-1by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--documenter-dark .image.is-1by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--documenter-dark .image.is-5by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--documenter-dark .image.is-5by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--documenter-dark .image.is-4by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--documenter-dark .image.is-4by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--documenter-dark .image.is-3by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--documenter-dark .image.is-3by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--documenter-dark .image.is-5by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--documenter-dark .image.is-5by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--documenter-dark .image.is-16by9 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--documenter-dark .image.is-16by9 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--documenter-dark .image.is-2by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--documenter-dark .image.is-2by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--documenter-dark .image.is-3by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--documenter-dark .image.is-3by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--documenter-dark .image.is-4by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--documenter-dark .image.is-4by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--documenter-dark .image.is-3by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--documenter-dark .image.is-3by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--documenter-dark .image.is-2by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--documenter-dark .image.is-2by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--documenter-dark .image.is-3by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--documenter-dark .image.is-3by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--documenter-dark .image.is-9by16 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--documenter-dark .image.is-9by16 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--documenter-dark .image.is-1by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--documenter-dark .image.is-1by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--documenter-dark .image.is-1by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--documenter-dark .image.is-1by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio{height:100%;width:100%}html.theme--documenter-dark .image.is-square,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square,html.theme--documenter-dark .image.is-1by1,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1{padding-top:100%}html.theme--documenter-dark .image.is-5by4,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4{padding-top:80%}html.theme--documenter-dark .image.is-4by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3{padding-top:75%}html.theme--documenter-dark .image.is-3by2,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2{padding-top:66.6666%}html.theme--documenter-dark .image.is-5by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3{padding-top:60%}html.theme--documenter-dark .image.is-16by9,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9{padding-top:56.25%}html.theme--documenter-dark .image.is-2by1,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1{padding-top:50%}html.theme--documenter-dark .image.is-3by1,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1{padding-top:33.3333%}html.theme--documenter-dark .image.is-4by5,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5{padding-top:125%}html.theme--documenter-dark .image.is-3by4,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4{padding-top:133.3333%}html.theme--documenter-dark .image.is-2by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3{padding-top:150%}html.theme--documenter-dark .image.is-3by5,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5{padding-top:166.6666%}html.theme--documenter-dark .image.is-9by16,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16{padding-top:177.7777%}html.theme--documenter-dark .image.is-1by2,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2{padding-top:200%}html.theme--documenter-dark .image.is-1by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3{padding-top:300%}html.theme--documenter-dark .image.is-16x16,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16x16{height:16px;width:16px}html.theme--documenter-dark .image.is-24x24,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-24x24{height:24px;width:24px}html.theme--documenter-dark .image.is-32x32,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-32x32{height:32px;width:32px}html.theme--documenter-dark .image.is-48x48,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-48x48{height:48px;width:48px}html.theme--documenter-dark .image.is-64x64,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-64x64{height:64px;width:64px}html.theme--documenter-dark .image.is-96x96,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-96x96{height:96px;width:96px}html.theme--documenter-dark .image.is-128x128,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-128x128{height:128px;width:128px}html.theme--documenter-dark .notification{background-color:#282f2f;border-radius:.4em;padding:1.25rem 2.5rem 1.25rem 1.5rem;position:relative}html.theme--documenter-dark .notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--documenter-dark .notification strong{color:currentColor}html.theme--documenter-dark .notification code,html.theme--documenter-dark .notification pre{background:#fff}html.theme--documenter-dark .notification pre code{background:transparent}html.theme--documenter-dark .notification>.delete{position:absolute;right:0.5rem;top:0.5rem}html.theme--documenter-dark .notification .title,html.theme--documenter-dark .notification .subtitle,html.theme--documenter-dark .notification .content{color:currentColor}html.theme--documenter-dark .notification.is-white{background-color:#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:#282f2f}html.theme--documenter-dark .notification.is-dark,html.theme--documenter-dark .content kbd.notification{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .notification.is-primary,html.theme--documenter-dark .docstring>section>a.notification.docs-sourcelink{background-color:#375a7f;color:#fff}html.theme--documenter-dark .notification.is-link{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .notification.is-info{background-color:#024c7d;color:#fff}html.theme--documenter-dark .notification.is-success{background-color:#008438;color:#fff}html.theme--documenter-dark .notification.is-warning{background-color:#ad8100;color:#fff}html.theme--documenter-dark .notification.is-danger{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:290486px;display:block;height:15px;overflow:hidden;padding:0;width:100%}html.theme--documenter-dark .progress::-webkit-progress-bar{background-color:#5e6d6f}html.theme--documenter-dark .progress::-webkit-progress-value{background-color:#dbdee0}html.theme--documenter-dark .progress::-moz-progress-bar{background-color:#dbdee0}html.theme--documenter-dark .progress::-ms-fill{background-color:#dbdee0;border:none}html.theme--documenter-dark .progress.is-white::-webkit-progress-value{background-color:#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%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-black::-webkit-progress-value{background-color:#0a0a0a}html.theme--documenter-dark .progress.is-black::-moz-progress-bar{background-color:#0a0a0a}html.theme--documenter-dark .progress.is-black::-ms-fill{background-color:#0a0a0a}html.theme--documenter-dark .progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-light::-webkit-progress-value{background-color:#ecf0f1}html.theme--documenter-dark .progress.is-light::-moz-progress-bar{background-color:#ecf0f1}html.theme--documenter-dark .progress.is-light::-ms-fill{background-color:#ecf0f1}html.theme--documenter-dark .progress.is-light:indeterminate{background-image:linear-gradient(to right, #ecf0f1 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-dark::-webkit-progress-value,html.theme--documenter-dark .content kbd.progress::-webkit-progress-value{background-color:#282f2f}html.theme--documenter-dark .progress.is-dark::-moz-progress-bar,html.theme--documenter-dark .content kbd.progress::-moz-progress-bar{background-color:#282f2f}html.theme--documenter-dark .progress.is-dark::-ms-fill,html.theme--documenter-dark .content kbd.progress::-ms-fill{background-color:#282f2f}html.theme--documenter-dark .progress.is-dark:indeterminate,html.theme--documenter-dark .content kbd.progress:indeterminate{background-image:linear-gradient(to right, #282f2f 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-primary::-webkit-progress-value,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink::-webkit-progress-value{background-color:#375a7f}html.theme--documenter-dark .progress.is-primary::-moz-progress-bar,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink::-moz-progress-bar{background-color:#375a7f}html.theme--documenter-dark .progress.is-primary::-ms-fill,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink::-ms-fill{background-color:#375a7f}html.theme--documenter-dark .progress.is-primary:indeterminate,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink:indeterminate{background-image:linear-gradient(to right, #375a7f 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-link::-webkit-progress-value{background-color:#1abc9c}html.theme--documenter-dark .progress.is-link::-moz-progress-bar{background-color:#1abc9c}html.theme--documenter-dark .progress.is-link::-ms-fill{background-color:#1abc9c}html.theme--documenter-dark .progress.is-link:indeterminate{background-image:linear-gradient(to right, #1abc9c 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-info::-webkit-progress-value{background-color:#024c7d}html.theme--documenter-dark .progress.is-info::-moz-progress-bar{background-color:#024c7d}html.theme--documenter-dark .progress.is-info::-ms-fill{background-color:#024c7d}html.theme--documenter-dark .progress.is-info:indeterminate{background-image:linear-gradient(to right, #024c7d 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-success::-webkit-progress-value{background-color:#008438}html.theme--documenter-dark .progress.is-success::-moz-progress-bar{background-color:#008438}html.theme--documenter-dark .progress.is-success::-ms-fill{background-color:#008438}html.theme--documenter-dark .progress.is-success:indeterminate{background-image:linear-gradient(to right, #008438 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-warning::-webkit-progress-value{background-color:#ad8100}html.theme--documenter-dark .progress.is-warning::-moz-progress-bar{background-color:#ad8100}html.theme--documenter-dark .progress.is-warning::-ms-fill{background-color:#ad8100}html.theme--documenter-dark .progress.is-warning:indeterminate{background-image:linear-gradient(to right, #ad8100 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress.is-danger::-webkit-progress-value{background-color:#9e1b0d}html.theme--documenter-dark .progress.is-danger::-moz-progress-bar{background-color:#9e1b0d}html.theme--documenter-dark .progress.is-danger::-ms-fill{background-color:#9e1b0d}html.theme--documenter-dark .progress.is-danger:indeterminate{background-image:linear-gradient(to right, #9e1b0d 30%, #5e6d6f 30%)}html.theme--documenter-dark .progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#5e6d6f;background-image:linear-gradient(to right, #fff 30%, #5e6d6f 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}html.theme--documenter-dark .progress:indeterminate::-webkit-progress-bar{background-color:transparent}html.theme--documenter-dark .progress:indeterminate::-moz-progress-bar{background-color:transparent}html.theme--documenter-dark .progress.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.progress{height:.85em}html.theme--documenter-dark .progress.is-medium{height:1.25rem}html.theme--documenter-dark .progress.is-large{height:1.5rem}@keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}html.theme--documenter-dark .table{background-color:#343c3d;color:#fff}html.theme--documenter-dark .table td,html.theme--documenter-dark .table th{border:1px solid #5e6d6f;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--documenter-dark .table td.is-white,html.theme--documenter-dark .table th.is-white{background-color:#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:#282f2f}html.theme--documenter-dark .table td.is-dark,html.theme--documenter-dark .table th.is-dark{background-color:#282f2f;border-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .table td.is-primary,html.theme--documenter-dark .table th.is-primary{background-color:#375a7f;border-color:#375a7f;color:#fff}html.theme--documenter-dark .table td.is-link,html.theme--documenter-dark .table th.is-link{background-color:#1abc9c;border-color:#1abc9c;color:#fff}html.theme--documenter-dark .table td.is-info,html.theme--documenter-dark .table th.is-info{background-color:#024c7d;border-color:#024c7d;color:#fff}html.theme--documenter-dark .table td.is-success,html.theme--documenter-dark .table th.is-success{background-color:#008438;border-color:#008438;color:#fff}html.theme--documenter-dark .table td.is-warning,html.theme--documenter-dark .table th.is-warning{background-color:#ad8100;border-color:#ad8100;color:#fff}html.theme--documenter-dark .table td.is-danger,html.theme--documenter-dark .table th.is-danger{background-color:#9e1b0d;border-color:#9e1b0d;color:#fff}html.theme--documenter-dark .table td.is-narrow,html.theme--documenter-dark .table th.is-narrow{white-space:nowrap;width:1%}html.theme--documenter-dark .table td.is-selected,html.theme--documenter-dark .table th.is-selected{background-color:#375a7f;color:#fff}html.theme--documenter-dark .table td.is-selected a,html.theme--documenter-dark .table td.is-selected strong,html.theme--documenter-dark .table th.is-selected a,html.theme--documenter-dark .table th.is-selected strong{color:currentColor}html.theme--documenter-dark .table th{color:#f2f2f2}html.theme--documenter-dark .table th:not([align]){text-align:left}html.theme--documenter-dark .table tr.is-selected{background-color:#375a7f;color:#fff}html.theme--documenter-dark .table tr.is-selected a,html.theme--documenter-dark .table tr.is-selected strong{color:currentColor}html.theme--documenter-dark .table tr.is-selected td,html.theme--documenter-dark .table tr.is-selected th{border-color:#fff;color:currentColor}html.theme--documenter-dark .table thead{background-color: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:0.5rem}html.theme--documenter-dark .tags:last-child{margin-bottom:-0.5rem}html.theme--documenter-dark .tags:not(:last-child){margin-bottom:1rem}html.theme--documenter-dark .tags.are-medium .tag:not(.is-normal):not(.is-large),html.theme--documenter-dark .tags.are-medium .content kbd:not(.is-normal):not(.is-large),html.theme--documenter-dark .content .tags.are-medium kbd:not(.is-normal):not(.is-large),html.theme--documenter-dark .tags.are-medium .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-large){font-size:15px}html.theme--documenter-dark .tags.are-large .tag:not(.is-normal):not(.is-medium),html.theme--documenter-dark .tags.are-large .content kbd:not(.is-normal):not(.is-medium),html.theme--documenter-dark .content .tags.are-large kbd:not(.is-normal):not(.is-medium),html.theme--documenter-dark .tags.are-large .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-medium){font-size:1.25rem}html.theme--documenter-dark .tags.is-centered{justify-content:center}html.theme--documenter-dark .tags.is-centered .tag,html.theme--documenter-dark .tags.is-centered .content kbd,html.theme--documenter-dark .content .tags.is-centered kbd,html.theme--documenter-dark .tags.is-centered .docstring>section>a.docs-sourcelink{margin-right:0.25rem;margin-left:0.25rem}html.theme--documenter-dark .tags.is-right{justify-content:flex-end}html.theme--documenter-dark .tags.is-right .tag:not(:first-child),html.theme--documenter-dark .tags.is-right .content kbd:not(:first-child),html.theme--documenter-dark .content .tags.is-right kbd:not(:first-child),html.theme--documenter-dark .tags.is-right .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0.5rem}html.theme--documenter-dark .tags.is-right .tag:not(:last-child),html.theme--documenter-dark .tags.is-right .content kbd:not(:last-child),html.theme--documenter-dark .content .tags.is-right kbd:not(:last-child),html.theme--documenter-dark .tags.is-right .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0}html.theme--documenter-dark .tags.has-addons .tag,html.theme--documenter-dark .tags.has-addons .content kbd,html.theme--documenter-dark .content .tags.has-addons kbd,html.theme--documenter-dark .tags.has-addons .docstring>section>a.docs-sourcelink{margin-right:0}html.theme--documenter-dark .tags.has-addons .tag:not(:first-child),html.theme--documenter-dark .tags.has-addons .content kbd:not(:first-child),html.theme--documenter-dark .content .tags.has-addons kbd:not(:first-child),html.theme--documenter-dark .tags.has-addons .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0;border-bottom-left-radius:0;border-top-left-radius:0}html.theme--documenter-dark .tags.has-addons .tag:not(:last-child),html.theme--documenter-dark .tags.has-addons .content kbd:not(:last-child),html.theme--documenter-dark .content .tags.has-addons kbd:not(:last-child),html.theme--documenter-dark .tags.has-addons .docstring>section>a.docs-sourcelink:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}html.theme--documenter-dark .tag:not(body),html.theme--documenter-dark .content kbd:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#282f2f;border-radius:.4em;color:#fff;display:inline-flex;font-size:.85em;height:2em;justify-content:center;line-height:1.5;padding-left:0.75em;padding-right:0.75em;white-space:nowrap}html.theme--documenter-dark .tag:not(body) .delete,html.theme--documenter-dark .content kbd:not(body) .delete,html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .delete{margin-left:0.25rem;margin-right:-0.375rem}html.theme--documenter-dark .tag.is-white:not(body),html.theme--documenter-dark .content kbd.is-white:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#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:#282f2f}html.theme--documenter-dark .tag.is-dark:not(body),html.theme--documenter-dark .content kbd:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-dark:not(body),html.theme--documenter-dark .content .docstring>section>kbd:not(body){background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .tag.is-primary:not(body),html.theme--documenter-dark .content kbd.is-primary:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body){background-color:#375a7f;color:#fff}html.theme--documenter-dark .tag.is-link:not(body),html.theme--documenter-dark .content kbd.is-link:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-link:not(body){background-color:#1abc9c;color:#fff}html.theme--documenter-dark .tag.is-info:not(body),html.theme--documenter-dark .content kbd.is-info:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-info:not(body){background-color:#024c7d;color:#fff}html.theme--documenter-dark .tag.is-success:not(body),html.theme--documenter-dark .content kbd.is-success:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-success:not(body){background-color:#008438;color:#fff}html.theme--documenter-dark .tag.is-warning:not(body),html.theme--documenter-dark .content kbd.is-warning:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-warning:not(body){background-color:#ad8100;color:#fff}html.theme--documenter-dark .tag.is-danger:not(body),html.theme--documenter-dark .content kbd.is-danger:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-danger:not(body){background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .tag.is-normal:not(body),html.theme--documenter-dark .content kbd.is-normal:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.85em}html.theme--documenter-dark .tag.is-medium:not(body),html.theme--documenter-dark .content kbd.is-medium:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-medium:not(body){font-size:15px}html.theme--documenter-dark .tag.is-large:not(body),html.theme--documenter-dark .content kbd.is-large:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-large:not(body){font-size:1.25rem}html.theme--documenter-dark .tag:not(body) .icon:first-child:not(:last-child),html.theme--documenter-dark .content kbd:not(body) .icon:first-child:not(:last-child),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:not(:last-child){margin-left:-0.375em;margin-right:0.1875em}html.theme--documenter-dark .tag:not(body) .icon:last-child:not(:first-child),html.theme--documenter-dark .content kbd:not(body) .icon:last-child:not(:first-child),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .icon:last-child:not(:first-child){margin-left:0.1875em;margin-right:-0.375em}html.theme--documenter-dark .tag:not(body) .icon:first-child:last-child,html.theme--documenter-dark .content kbd:not(body) .icon:first-child:last-child,html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:last-child{margin-left:-0.375em;margin-right:-0.375em}html.theme--documenter-dark .tag.is-delete:not(body),html.theme--documenter-dark .content kbd.is-delete:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body){margin-left:1px;padding:0;position:relative;width:2em}html.theme--documenter-dark .tag.is-delete:not(body)::before,html.theme--documenter-dark .content kbd.is-delete:not(body)::before,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::before,html.theme--documenter-dark .tag.is-delete:not(body)::after,html.theme--documenter-dark .content kbd.is-delete:not(body)::after,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::after{background-color:currentColor;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}html.theme--documenter-dark .tag.is-delete:not(body)::before,html.theme--documenter-dark .content kbd.is-delete:not(body)::before,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::before{height:1px;width:50%}html.theme--documenter-dark .tag.is-delete:not(body)::after,html.theme--documenter-dark .content kbd.is-delete:not(body)::after,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::after{height:50%;width:1px}html.theme--documenter-dark .tag.is-delete:not(body):hover,html.theme--documenter-dark .content kbd.is-delete:not(body):hover,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body):hover,html.theme--documenter-dark .tag.is-delete:not(body):focus,html.theme--documenter-dark .content kbd.is-delete:not(body):focus,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body):focus{background-color:#1d2122}html.theme--documenter-dark .tag.is-delete:not(body):active,html.theme--documenter-dark .content kbd.is-delete:not(body):active,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body):active{background-color:#111414}html.theme--documenter-dark .tag.is-rounded:not(body),html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:not(body),html.theme--documenter-dark .content kbd.is-rounded:not(body),html.theme--documenter-dark #documenter .docs-sidebar .content form.docs-search>input:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-rounded:not(body){border-radius:290486px}html.theme--documenter-dark a.tag:hover,html.theme--documenter-dark .docstring>section>a.docs-sourcelink:hover{text-decoration:underline}html.theme--documenter-dark .title,html.theme--documenter-dark .subtitle{word-break:break-word}html.theme--documenter-dark .title em,html.theme--documenter-dark .title span,html.theme--documenter-dark .subtitle em,html.theme--documenter-dark .subtitle span{font-weight:inherit}html.theme--documenter-dark .title sub,html.theme--documenter-dark .subtitle sub{font-size:.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+.highlight{margin-top:-0.75rem}html.theme--documenter-dark .title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}html.theme--documenter-dark .title.is-1{font-size:3rem}html.theme--documenter-dark .title.is-2{font-size:2.5rem}html.theme--documenter-dark .title.is-3{font-size:2rem}html.theme--documenter-dark .title.is-4{font-size:1.5rem}html.theme--documenter-dark .title.is-5{font-size:1.25rem}html.theme--documenter-dark .title.is-6{font-size:15px}html.theme--documenter-dark .title.is-7{font-size:.85em}html.theme--documenter-dark .subtitle{color:#8c9b9d;font-size:1.25rem;font-weight:400;line-height:1.25}html.theme--documenter-dark .subtitle strong{color:#8c9b9d;font-weight:600}html.theme--documenter-dark .subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}html.theme--documenter-dark .subtitle.is-1{font-size:3rem}html.theme--documenter-dark .subtitle.is-2{font-size:2.5rem}html.theme--documenter-dark .subtitle.is-3{font-size:2rem}html.theme--documenter-dark .subtitle.is-4{font-size:1.5rem}html.theme--documenter-dark .subtitle.is-5{font-size:1.25rem}html.theme--documenter-dark .subtitle.is-6{font-size:15px}html.theme--documenter-dark .subtitle.is-7{font-size:.85em}html.theme--documenter-dark .heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}html.theme--documenter-dark .highlight{font-weight:400;max-width:100%;overflow:hidden;padding:0}html.theme--documenter-dark .highlight pre{overflow:auto;max-width:100%}html.theme--documenter-dark .number{align-items:center;background-color:#282f2f;border-radius:290486px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:0.25rem 0.5rem;text-align:center;vertical-align:top}html.theme--documenter-dark .select select,html.theme--documenter-dark .textarea,html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{background-color:#1f2424;border-color:#5e6d6f;border-radius:.4em;color:#dbdee0}html.theme--documenter-dark .select select::-moz-placeholder,html.theme--documenter-dark .textarea::-moz-placeholder,html.theme--documenter-dark .input::-moz-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:rgba(219,222,224,0.3)}html.theme--documenter-dark .select select::-webkit-input-placeholder,html.theme--documenter-dark .textarea::-webkit-input-placeholder,html.theme--documenter-dark .input::-webkit-input-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:rgba(219,222,224,0.3)}html.theme--documenter-dark .select select:-moz-placeholder,html.theme--documenter-dark .textarea:-moz-placeholder,html.theme--documenter-dark .input:-moz-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:rgba(219,222,224,0.3)}html.theme--documenter-dark .select select:-ms-input-placeholder,html.theme--documenter-dark .textarea:-ms-input-placeholder,html.theme--documenter-dark .input:-ms-input-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:rgba(219,222,224,0.3)}html.theme--documenter-dark .select select:hover,html.theme--documenter-dark .textarea:hover,html.theme--documenter-dark .input:hover,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:hover,html.theme--documenter-dark .select select.is-hovered,html.theme--documenter-dark .is-hovered.textarea,html.theme--documenter-dark .is-hovered.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-hovered{border-color:#8c9b9d}html.theme--documenter-dark .select select:focus,html.theme--documenter-dark .textarea:focus,html.theme--documenter-dark .input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:focus,html.theme--documenter-dark .select select.is-focused,html.theme--documenter-dark .is-focused.textarea,html.theme--documenter-dark .is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .select select:active,html.theme--documenter-dark .textarea:active,html.theme--documenter-dark .input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:active,html.theme--documenter-dark .select select.is-active,html.theme--documenter-dark .is-active.textarea,html.theme--documenter-dark .is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{border-color:#1abc9c;box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .select select[disabled],html.theme--documenter-dark .textarea[disabled],html.theme--documenter-dark .input[disabled],html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled],fieldset[disabled] html.theme--documenter-dark .select select,fieldset[disabled] html.theme--documenter-dark .textarea,fieldset[disabled] html.theme--documenter-dark .input,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{background-color:#8c9b9d;border-color:#282f2f;box-shadow:none;color:#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 1px 2px rgba(10,10,10,0.1);max-width:100%;width:100%}html.theme--documenter-dark .textarea[readonly],html.theme--documenter-dark .input[readonly],html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[readonly]{box-shadow:none}html.theme--documenter-dark .is-white.textarea,html.theme--documenter-dark .is-white.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-white{border-color:#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:.85em}html.theme--documenter-dark .is-medium.textarea,html.theme--documenter-dark .is-medium.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-medium{font-size:1.25rem}html.theme--documenter-dark .is-large.textarea,html.theme--documenter-dark .is-large.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-large{font-size:1.5rem}html.theme--documenter-dark .is-fullwidth.textarea,html.theme--documenter-dark .is-fullwidth.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-fullwidth{display:block;width:100%}html.theme--documenter-dark .is-inline.textarea,html.theme--documenter-dark .is-inline.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-inline{display:inline;width:auto}html.theme--documenter-dark .input.is-rounded,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{border-radius:290486px;padding-left:1em;padding-right:1em}html.theme--documenter-dark .input.is-static,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-static{background-color:transparent;border-color:transparent;box-shadow:none;padding-left:0;padding-right:0}html.theme--documenter-dark .textarea{display:block;max-width:100%;min-width:100%;padding:0.625em;resize:vertical}html.theme--documenter-dark .textarea:not([rows]){max-height:600px;min-height:120px}html.theme--documenter-dark .textarea[rows]{height:initial}html.theme--documenter-dark .textarea.has-fixed-size{resize:none}html.theme--documenter-dark .radio,html.theme--documenter-dark .checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}html.theme--documenter-dark .radio input,html.theme--documenter-dark .checkbox input{cursor:pointer}html.theme--documenter-dark .radio:hover,html.theme--documenter-dark .checkbox:hover{color:#8c9b9d}html.theme--documenter-dark .radio[disabled],html.theme--documenter-dark .checkbox[disabled],fieldset[disabled] html.theme--documenter-dark .radio,fieldset[disabled] html.theme--documenter-dark .checkbox{color:#fff;cursor:not-allowed}html.theme--documenter-dark .radio+.radio{margin-left:0.5em}html.theme--documenter-dark .select{display:inline-block;max-width:100%;position:relative;vertical-align:top}html.theme--documenter-dark .select:not(.is-multiple){height:2.25em}html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading)::after{border-color:#1abc9c;right:1.125em;z-index:4}html.theme--documenter-dark .select.is-rounded select,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.select select{border-radius:290486px;padding-left:1em}html.theme--documenter-dark .select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}html.theme--documenter-dark .select select::-ms-expand{display:none}html.theme--documenter-dark .select select[disabled]:hover,fieldset[disabled] html.theme--documenter-dark .select select:hover{border-color:#282f2f}html.theme--documenter-dark .select select:not([multiple]){padding-right:2.5em}html.theme--documenter-dark .select select[multiple]{height:auto;padding:0}html.theme--documenter-dark .select select[multiple] option{padding:0.5em 1em}html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading):hover::after{border-color:#8c9b9d}html.theme--documenter-dark .select.is-white:not(:hover)::after{border-color:#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:.85em}html.theme--documenter-dark .select.is-medium{font-size:1.25rem}html.theme--documenter-dark .select.is-large{font-size:1.5rem}html.theme--documenter-dark .select.is-disabled::after{border-color:#fff}html.theme--documenter-dark .select.is-fullwidth{width:100%}html.theme--documenter-dark .select.is-fullwidth select{width:100%}html.theme--documenter-dark .select.is-loading::after{margin-top:0;position:absolute;right:0.625em;top:0.625em;transform:none}html.theme--documenter-dark .select.is-loading.is-small:after,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.85em}html.theme--documenter-dark .select.is-loading.is-medium:after{font-size:1.25rem}html.theme--documenter-dark .select.is-loading.is-large:after{font-size:1.5rem}html.theme--documenter-dark .file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}html.theme--documenter-dark .file.is-white .file-cta{background-color:#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:#282f2f}html.theme--documenter-dark .file.is-light:hover .file-cta,html.theme--documenter-dark .file.is-light.is-hovered .file-cta{background-color:#e5eaec;border-color:transparent;color:#282f2f}html.theme--documenter-dark .file.is-light:focus .file-cta,html.theme--documenter-dark .file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(236,240,241,0.25);color:#282f2f}html.theme--documenter-dark .file.is-light:active .file-cta,html.theme--documenter-dark .file.is-light.is-active .file-cta{background-color:#dde4e6;border-color:transparent;color:#282f2f}html.theme--documenter-dark .file.is-dark .file-cta,html.theme--documenter-dark .content kbd.file .file-cta{background-color:#282f2f;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .file.is-dark:hover .file-cta,html.theme--documenter-dark .content kbd.file:hover .file-cta,html.theme--documenter-dark .file.is-dark.is-hovered .file-cta,html.theme--documenter-dark .content kbd.file.is-hovered .file-cta{background-color:#232829;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .file.is-dark:focus .file-cta,html.theme--documenter-dark .content kbd.file:focus .file-cta,html.theme--documenter-dark .file.is-dark.is-focused .file-cta,html.theme--documenter-dark .content kbd.file.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(40,47,47,0.25);color:#ecf0f1}html.theme--documenter-dark .file.is-dark:active .file-cta,html.theme--documenter-dark .content kbd.file:active .file-cta,html.theme--documenter-dark .file.is-dark.is-active .file-cta,html.theme--documenter-dark .content kbd.file.is-active .file-cta{background-color:#1d2122;border-color:transparent;color:#ecf0f1}html.theme--documenter-dark .file.is-primary .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink .file-cta{background-color:#375a7f;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-primary:hover .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink:hover .file-cta,html.theme--documenter-dark .file.is-primary.is-hovered .file-cta,html.theme--documenter-dark .docstring>section>a.file.is-hovered.docs-sourcelink .file-cta{background-color:#335476;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-primary:focus .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink:focus .file-cta,html.theme--documenter-dark .file.is-primary.is-focused .file-cta,html.theme--documenter-dark .docstring>section>a.file.is-focused.docs-sourcelink .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(55,90,127,0.25);color:#fff}html.theme--documenter-dark .file.is-primary:active .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink:active .file-cta,html.theme--documenter-dark .file.is-primary.is-active .file-cta,html.theme--documenter-dark .docstring>section>a.file.is-active.docs-sourcelink .file-cta{background-color:#2f4d6d;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-link .file-cta{background-color:#1abc9c;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-link:hover .file-cta,html.theme--documenter-dark .file.is-link.is-hovered .file-cta{background-color:#18b193;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-link:focus .file-cta,html.theme--documenter-dark .file.is-link.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(26,188,156,0.25);color:#fff}html.theme--documenter-dark .file.is-link:active .file-cta,html.theme--documenter-dark .file.is-link.is-active .file-cta{background-color:#17a689;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-info .file-cta{background-color:#024c7d;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-info:hover .file-cta,html.theme--documenter-dark .file.is-info.is-hovered .file-cta{background-color:#024470;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-info:focus .file-cta,html.theme--documenter-dark .file.is-info.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(2,76,125,0.25);color:#fff}html.theme--documenter-dark .file.is-info:active .file-cta,html.theme--documenter-dark .file.is-info.is-active .file-cta{background-color:#023d64;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-success .file-cta{background-color:#008438;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-success:hover .file-cta,html.theme--documenter-dark .file.is-success.is-hovered .file-cta{background-color:#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:.85em}html.theme--documenter-dark .file.is-medium{font-size:1.25rem}html.theme--documenter-dark .file.is-medium .file-icon .fa{font-size:21px}html.theme--documenter-dark .file.is-large{font-size:1.5rem}html.theme--documenter-dark .file.is-large .file-icon .fa{font-size:28px}html.theme--documenter-dark .file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--documenter-dark .file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--documenter-dark .file.has-name.is-empty .file-cta{border-radius:.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:#e5eaec;color:#282f2f}html.theme--documenter-dark .file-label:hover .file-name{border-color:#596668}html.theme--documenter-dark .file-label:active .file-cta{background-color:#dde4e6;color:#282f2f}html.theme--documenter-dark .file-label:active .file-name{border-color:#535f61}html.theme--documenter-dark .file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}html.theme--documenter-dark .file-cta,html.theme--documenter-dark .file-name{border-color:#5e6d6f;border-radius:.4em;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}html.theme--documenter-dark .file-cta{background-color:#ecf0f1;color:#343c3d}html.theme--documenter-dark .file-name{border-color:#5e6d6f;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:left;text-overflow:ellipsis}html.theme--documenter-dark .file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:0.5em;width:1em}html.theme--documenter-dark .file-icon .fa{font-size:14px}html.theme--documenter-dark .label{color:#282f2f;display:block;font-size:15px;font-weight:700}html.theme--documenter-dark .label:not(:last-child){margin-bottom:0.5em}html.theme--documenter-dark .label.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.label{font-size:.85em}html.theme--documenter-dark .label.is-medium{font-size:1.25rem}html.theme--documenter-dark .label.is-large{font-size:1.5rem}html.theme--documenter-dark .help{display:block;font-size:.85em;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:0.75rem}html.theme--documenter-dark .field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .field.is-grouped.is-grouped-centered{justify-content:center}html.theme--documenter-dark .field.is-grouped.is-grouped-right{justify-content:flex-end}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline{flex-wrap:wrap}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline>.control:last-child,html.theme--documenter-dark .field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:0.75rem}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-0.75rem}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--documenter-dark .field.is-horizontal{display:flex}}html.theme--documenter-dark .field-label .label{font-size:inherit}@media screen and (max-width: 768px){html.theme--documenter-dark .field-label{margin-bottom:0.5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}html.theme--documenter-dark .field-label.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.field-label{font-size:.85em;padding-top:0.375em}html.theme--documenter-dark .field-label.is-normal{padding-top:0.375em}html.theme--documenter-dark .field-label.is-medium{font-size:1.25rem;padding-top:0.375em}html.theme--documenter-dark .field-label.is-large{font-size:1.5rem;padding-top:0.375em}}html.theme--documenter-dark .field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--documenter-dark .field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}html.theme--documenter-dark .field-body .field{margin-bottom:0}html.theme--documenter-dark .field-body>.field{flex-shrink:1}html.theme--documenter-dark .field-body>.field:not(.is-narrow){flex-grow:1}html.theme--documenter-dark .field-body>.field:not(:last-child){margin-right:0.75rem}}html.theme--documenter-dark .control{box-sizing:border-box;clear:both;font-size:15px;position:relative;text-align:left}html.theme--documenter-dark .control.has-icons-left .input:focus~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input:focus~.icon,html.theme--documenter-dark .control.has-icons-left .select:focus~.icon,html.theme--documenter-dark .control.has-icons-right .input:focus~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input:focus~.icon,html.theme--documenter-dark .control.has-icons-right .select:focus~.icon{color:#5e6d6f}html.theme--documenter-dark .control.has-icons-left .input.is-small~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input~.icon,html.theme--documenter-dark .control.has-icons-left .select.is-small~.icon,html.theme--documenter-dark .control.has-icons-right .input.is-small~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input~.icon,html.theme--documenter-dark .control.has-icons-right .select.is-small~.icon{font-size:.85em}html.theme--documenter-dark .control.has-icons-left .input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-left .select.is-medium~.icon,html.theme--documenter-dark .control.has-icons-right .input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}html.theme--documenter-dark .control.has-icons-left .input.is-large~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-large~.icon,html.theme--documenter-dark .control.has-icons-left .select.is-large~.icon,html.theme--documenter-dark .control.has-icons-right .input.is-large~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-large~.icon,html.theme--documenter-dark .control.has-icons-right .select.is-large~.icon{font-size:1.5rem}html.theme--documenter-dark .control.has-icons-left .icon,html.theme--documenter-dark .control.has-icons-right .icon{color:#dbdee0;height:2.25em;pointer-events:none;position:absolute;top:0;width:2.25em;z-index:4}html.theme--documenter-dark .control.has-icons-left .input,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input,html.theme--documenter-dark .control.has-icons-left .select select{padding-left:2.25em}html.theme--documenter-dark .control.has-icons-left .icon.is-left{left:0}html.theme--documenter-dark .control.has-icons-right .input,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input,html.theme--documenter-dark .control.has-icons-right .select select{padding-right:2.25em}html.theme--documenter-dark .control.has-icons-right .icon.is-right{right:0}html.theme--documenter-dark .control.is-loading::after{position:absolute !important;right:0.625em;top:0.625em;z-index:4}html.theme--documenter-dark .control.is-loading.is-small:after,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.85em}html.theme--documenter-dark .control.is-loading.is-medium:after{font-size:1.25rem}html.theme--documenter-dark .control.is-loading.is-large:after{font-size:1.5rem}html.theme--documenter-dark .breadcrumb{font-size:15px;white-space:nowrap}html.theme--documenter-dark .breadcrumb a{align-items:center;color:#1abc9c;display:flex;justify-content:center;padding:0 .75em}html.theme--documenter-dark .breadcrumb a:hover{color:#1dd2af}html.theme--documenter-dark .breadcrumb li{align-items:center;display:flex}html.theme--documenter-dark .breadcrumb li:first-child a{padding-left:0}html.theme--documenter-dark .breadcrumb li.is-active a{color:#f2f2f2;cursor:default;pointer-events:none}html.theme--documenter-dark .breadcrumb li+li::before{color:#8c9b9d;content:"\0002f"}html.theme--documenter-dark .breadcrumb ul,html.theme--documenter-dark .breadcrumb ol{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--documenter-dark .breadcrumb .icon:first-child{margin-right:0.5em}html.theme--documenter-dark .breadcrumb .icon:last-child{margin-left:0.5em}html.theme--documenter-dark .breadcrumb.is-centered ol,html.theme--documenter-dark .breadcrumb.is-centered ul{justify-content:center}html.theme--documenter-dark .breadcrumb.is-right ol,html.theme--documenter-dark .breadcrumb.is-right ul{justify-content:flex-end}html.theme--documenter-dark .breadcrumb.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.85em}html.theme--documenter-dark .breadcrumb.is-medium{font-size:1.25rem}html.theme--documenter-dark .breadcrumb.is-large{font-size:1.5rem}html.theme--documenter-dark .breadcrumb.has-arrow-separator li+li::before{content:"\02192"}html.theme--documenter-dark .breadcrumb.has-bullet-separator li+li::before{content:"\02022"}html.theme--documenter-dark .breadcrumb.has-dot-separator li+li::before{content:"\000b7"}html.theme--documenter-dark .breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}html.theme--documenter-dark .card{background-color:#fff;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1);color:#fff;max-width:100%;position:relative}html.theme--documenter-dark .card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 1px 2px rgba(10,10,10,0.1);display:flex}html.theme--documenter-dark .card-header-title{align-items:center;color:#f2f2f2;display:flex;flex-grow:1;font-weight:700;padding:.75rem}html.theme--documenter-dark .card-header-title.is-centered{justify-content:center}html.theme--documenter-dark .card-header-icon{align-items:center;cursor:pointer;display:flex;justify-content:center;padding:.75rem}html.theme--documenter-dark .card-image{display:block;position:relative}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 #5e6d6f;align-items:stretch;display:flex}html.theme--documenter-dark .card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}html.theme--documenter-dark .card-footer-item:not(:last-child){border-right:1px solid #5e6d6f}html.theme--documenter-dark .card .media:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .dropdown{display:inline-flex;position:relative;vertical-align:top}html.theme--documenter-dark .dropdown.is-active .dropdown-menu,html.theme--documenter-dark .dropdown.is-hoverable:hover .dropdown-menu{display:block}html.theme--documenter-dark .dropdown.is-right .dropdown-menu{left:auto;right:0}html.theme--documenter-dark .dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}html.theme--documenter-dark .dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}html.theme--documenter-dark .dropdown-content{background-color:#282f2f;border-radius:.4em;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1);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:left;white-space:nowrap;width:100%}html.theme--documenter-dark a.dropdown-item:hover,html.theme--documenter-dark button.dropdown-item:hover{background-color:#282f2f;color:#0a0a0a}html.theme--documenter-dark a.dropdown-item.is-active,html.theme--documenter-dark button.dropdown-item.is-active{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .dropdown-divider{background-color:#5e6d6f;border:none;display:block;height:1px;margin:0.5rem 0}html.theme--documenter-dark .level{align-items:center;justify-content:space-between}html.theme--documenter-dark .level code{border-radius:.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 .list{background-color:#fff;border-radius:.4em;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1)}html.theme--documenter-dark .list-item{display:block;padding:0.5em 1em}html.theme--documenter-dark .list-item:not(a){color:#fff}html.theme--documenter-dark .list-item:first-child{border-top-left-radius:.4em;border-top-right-radius:.4em}html.theme--documenter-dark .list-item:last-child{border-bottom-left-radius:.4em;border-bottom-right-radius:.4em}html.theme--documenter-dark .list-item:not(:last-child){border-bottom:1px solid #5e6d6f}html.theme--documenter-dark .list-item.is-active{background-color:#1abc9c;color:#fff}html.theme--documenter-dark a.list-item{background-color:#282f2f;cursor:pointer}html.theme--documenter-dark .media{align-items:flex-start;display:flex;text-align:left}html.theme--documenter-dark .media .content:not(:last-child){margin-bottom:0.75rem}html.theme--documenter-dark .media .media{border-top:1px solid rgba(94,109,111,0.5);display:flex;padding-top:0.75rem}html.theme--documenter-dark .media .media .content:not(:last-child),html.theme--documenter-dark .media .media .control:not(:last-child){margin-bottom:0.5rem}html.theme--documenter-dark .media .media .media{padding-top:0.5rem}html.theme--documenter-dark .media .media .media+.media{margin-top:0.5rem}html.theme--documenter-dark .media+.media{border-top:1px solid rgba(94,109,111,0.5);margin-top:1rem;padding-top:1rem}html.theme--documenter-dark .media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}html.theme--documenter-dark .media-left,html.theme--documenter-dark .media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--documenter-dark .media-left{margin-right:1rem}html.theme--documenter-dark .media-right{margin-left:1rem}html.theme--documenter-dark .media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:left}@media screen and (max-width: 768px){html.theme--documenter-dark .media-content{overflow-x:auto}}html.theme--documenter-dark .menu{font-size:15px}html.theme--documenter-dark .menu.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.menu{font-size:.85em}html.theme--documenter-dark .menu.is-medium{font-size:1.25rem}html.theme--documenter-dark .menu.is-large{font-size:1.5rem}html.theme--documenter-dark .menu-list{line-height:1.25}html.theme--documenter-dark .menu-list a{border-radius:3px;color:#fff;display:block;padding:0.5em 0.75em}html.theme--documenter-dark .menu-list a:hover{background-color:#282f2f;color:#f2f2f2}html.theme--documenter-dark .menu-list a.is-active{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .menu-list li ul{border-left:1px solid #5e6d6f;margin:.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:15px}html.theme--documenter-dark .message strong{color:currentColor}html.theme--documenter-dark .message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--documenter-dark .message.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.message{font-size:.85em}html.theme--documenter-dark .message.is-medium{font-size:1.25rem}html.theme--documenter-dark .message.is-large{font-size:1.5rem}html.theme--documenter-dark .message.is-white{background-color:#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;color:#4d4d4d}html.theme--documenter-dark .message.is-black{background-color:#fafafa}html.theme--documenter-dark .message.is-black .message-header{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .message.is-black .message-body{border-color:#0a0a0a;color:#090909}html.theme--documenter-dark .message.is-light{background-color:#f9fafb}html.theme--documenter-dark .message.is-light .message-header{background-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .message.is-light .message-body{border-color:#ecf0f1;color:#505050}html.theme--documenter-dark .message.is-dark,html.theme--documenter-dark .content kbd.message{background-color:#f9fafa}html.theme--documenter-dark .message.is-dark .message-header,html.theme--documenter-dark .content kbd.message .message-header{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .message.is-dark .message-body,html.theme--documenter-dark .content kbd.message .message-body{border-color:#282f2f;color:#212526}html.theme--documenter-dark .message.is-primary,html.theme--documenter-dark .docstring>section>a.message.docs-sourcelink{background-color:#f8fafc}html.theme--documenter-dark .message.is-primary .message-header,html.theme--documenter-dark .docstring>section>a.message.docs-sourcelink .message-header{background-color:#375a7f;color:#fff}html.theme--documenter-dark .message.is-primary .message-body,html.theme--documenter-dark .docstring>section>a.message.docs-sourcelink .message-body{border-color:#375a7f;color:#2b4159}html.theme--documenter-dark .message.is-link{background-color:#f6fefc}html.theme--documenter-dark .message.is-link .message-header{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .message.is-link .message-body{border-color:#1abc9c;color:#0b2f28}html.theme--documenter-dark .message.is-info{background-color:#f5fbff}html.theme--documenter-dark .message.is-info .message-header{background-color:#024c7d;color:#fff}html.theme--documenter-dark .message.is-info .message-body{border-color:#024c7d;color:#033659}html.theme--documenter-dark .message.is-success{background-color:#f5fff9}html.theme--documenter-dark .message.is-success .message-header{background-color:#008438;color:#fff}html.theme--documenter-dark .message.is-success .message-body{border-color:#008438;color:#023518}html.theme--documenter-dark .message.is-warning{background-color:#fffcf5}html.theme--documenter-dark .message.is-warning .message-header{background-color:#ad8100;color:#fff}html.theme--documenter-dark .message.is-warning .message-body{border-color:#ad8100;color:#3d2e03}html.theme--documenter-dark .message.is-danger{background-color:#fef6f6}html.theme--documenter-dark .message.is-danger .message-header{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .message.is-danger .message-body{border-color:#9e1b0d;color:#7a170c}html.theme--documenter-dark .message-header{align-items:center;background-color:#fff;border-radius:.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:0.75em}html.theme--documenter-dark .message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}html.theme--documenter-dark .message-body{border-color:#5e6d6f;border-radius:.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),print{html.theme--documenter-dark .modal-content,html.theme--documenter-dark .modal-card{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}html.theme--documenter-dark .modal-close{background:none;height:40px;position:fixed;right:20px;top:20px;width:40px}html.theme--documenter-dark .modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}html.theme--documenter-dark .modal-card-head,html.theme--documenter-dark .modal-card-foot{align-items:center;background-color:#282f2f;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}html.theme--documenter-dark .modal-card-head{border-bottom:1px solid #5e6d6f;border-top-left-radius:8px;border-top-right-radius:8px}html.theme--documenter-dark .modal-card-title{color:#f2f2f2;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}html.theme--documenter-dark .modal-card-foot{border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top:1px solid #5e6d6f}html.theme--documenter-dark .modal-card-foot .button:not(:last-child){margin-right:0.5em}html.theme--documenter-dark .modal-card-body{-webkit-overflow-scrolling:touch;background-color:#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:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link{color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-light .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-light .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link.is-active{background-color:#dde4e6;color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link::after{border-color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-burger{color:#282f2f}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-light .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-light .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link{color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-light .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-light .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-light .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-light .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-light .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link.is-active{background-color:#dde4e6;color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link::after{border-color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{background-color:#dde4e6;color:#282f2f}html.theme--documenter-dark .navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#ecf0f1;color:#282f2f}}html.theme--documenter-dark .navbar.is-dark,html.theme--documenter-dark .content kbd.navbar{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-brand>.navbar-item,html.theme--documenter-dark .content kbd.navbar .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link{color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .content kbd.navbar .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-dark .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .content kbd.navbar .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-dark .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link:focus,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link:hover,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link.is-active{background-color:#1d2122;color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link::after,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link::after{border-color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-burger,html.theme--documenter-dark .content kbd.navbar .navbar-burger{color:#ecf0f1}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-dark .navbar-start>.navbar-item,html.theme--documenter-dark .content kbd.navbar .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-dark .navbar-end>.navbar-item,html.theme--documenter-dark .content kbd.navbar .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link{color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .content kbd.navbar .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-dark .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .content kbd.navbar .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-dark .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link:focus,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link:hover,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .content kbd.navbar .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-dark .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .content kbd.navbar .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-dark .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link:focus,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link:hover,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link.is-active{background-color:#1d2122;color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link::after,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link::after,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link::after{border-color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link{background-color:#1d2122;color:#ecf0f1}html.theme--documenter-dark .navbar.is-dark .navbar-dropdown a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#282f2f;color:#ecf0f1}}html.theme--documenter-dark .navbar.is-primary,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink{background-color:#375a7f;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-brand>.navbar-item,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-primary .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-primary .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link::after,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-burger,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-primary .navbar-start>.navbar-item,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-primary .navbar-end>.navbar-item,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-primary .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-primary .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-primary .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-primary .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link::after,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link::after,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#375a7f;color:#fff}}html.theme--documenter-dark .navbar.is-link{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-link .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-link .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link.is-active{background-color:#17a689;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-link .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-link .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-link .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-link .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-link .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-link .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-link .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link.is-active{background-color:#17a689;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link{background-color:#17a689;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:#1abc9c;color:#fff}}html.theme--documenter-dark .navbar.is-info{background-color:#024c7d;color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-info .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-info .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link.is-active{background-color:#023d64;color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-info .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-info .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-info .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-info .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-info .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-info .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-info .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link.is-active{background-color:#023d64;color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-info .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link{background-color:#023d64;color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:#024c7d;color:#fff}}html.theme--documenter-dark .navbar.is-success{background-color:#008438;color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-success .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-success .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link.is-active{background-color:#006b2d;color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-success .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-success .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-success .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-success .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-success .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-success .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-success .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link.is-active{background-color:#006b2d;color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-success .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link{background-color:#006b2d;color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:#008438;color:#fff}}html.theme--documenter-dark .navbar.is-warning{background-color:#ad8100;color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-warning .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-warning .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link.is-active{background-color:#946e00;color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-warning .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-warning .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-warning .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-warning .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-warning .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-warning .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-warning .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link.is-active{background-color:#946e00;color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-warning .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link{background-color:#946e00;color:#fff}html.theme--documenter-dark .navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:#ad8100;color:#fff}}html.theme--documenter-dark .navbar.is-danger{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-danger .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-danger .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link.is-active{background-color:#86170b;color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-danger .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-danger .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-danger .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-danger .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-danger .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-danger .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-danger .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link.is-active{background-color:#86170b;color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-danger .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link{background-color:#86170b;color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:#9e1b0d;color:#fff}}html.theme--documenter-dark .navbar>.container{align-items:stretch;display:flex;min-height:4rem;width:100%}html.theme--documenter-dark .navbar.has-shadow{box-shadow:0 2px 0 0 #282f2f}html.theme--documenter-dark .navbar.is-fixed-bottom,html.theme--documenter-dark .navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}html.theme--documenter-dark .navbar.is-fixed-bottom{bottom:0}html.theme--documenter-dark .navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #282f2f}html.theme--documenter-dark .navbar.is-fixed-top{top:0}html.theme--documenter-dark html.has-navbar-fixed-top,html.theme--documenter-dark body.has-navbar-fixed-top{padding-top:4rem}html.theme--documenter-dark html.has-navbar-fixed-bottom,html.theme--documenter-dark body.has-navbar-fixed-bottom{padding-bottom:4rem}html.theme--documenter-dark .navbar-brand,html.theme--documenter-dark .navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:4rem}html.theme--documenter-dark .navbar-brand a.navbar-item:focus,html.theme--documenter-dark .navbar-brand a.navbar-item:hover{background-color:transparent}html.theme--documenter-dark .navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}html.theme--documenter-dark .navbar-burger{color:#fff;cursor:pointer;display:block;height:4rem;position:relative;width:4rem;margin-left:auto}html.theme--documenter-dark .navbar-burger span{background-color:currentColor;display:block;height:1px;left:calc(50% - 8px);position:absolute;transform-origin:center;transition-duration:86ms;transition-property:background-color, opacity, transform;transition-timing-function:ease-out;width:16px}html.theme--documenter-dark .navbar-burger span:nth-child(1){top:calc(50% - 6px)}html.theme--documenter-dark .navbar-burger span:nth-child(2){top:calc(50% - 1px)}html.theme--documenter-dark .navbar-burger span:nth-child(3){top:calc(50% + 4px)}html.theme--documenter-dark .navbar-burger:hover{background-color:rgba(0,0,0,0.05)}html.theme--documenter-dark .navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}html.theme--documenter-dark .navbar-burger.is-active span:nth-child(2){opacity:0}html.theme--documenter-dark .navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}html.theme--documenter-dark .navbar-menu{display:none}html.theme--documenter-dark .navbar-item,html.theme--documenter-dark .navbar-link{color:#fff;display:block;line-height:1.5;padding:0.5rem 0.75rem;position:relative}html.theme--documenter-dark .navbar-item .icon:only-child,html.theme--documenter-dark .navbar-link .icon:only-child{margin-left:-0.25rem;margin-right:-0.25rem}html.theme--documenter-dark a.navbar-item,html.theme--documenter-dark .navbar-link{cursor:pointer}html.theme--documenter-dark a.navbar-item:focus,html.theme--documenter-dark a.navbar-item:focus-within,html.theme--documenter-dark a.navbar-item:hover,html.theme--documenter-dark a.navbar-item.is-active,html.theme--documenter-dark .navbar-link:focus,html.theme--documenter-dark .navbar-link:focus-within,html.theme--documenter-dark .navbar-link:hover,html.theme--documenter-dark .navbar-link.is-active{background-color:rgba(0,0,0,0);color:#1abc9c}html.theme--documenter-dark .navbar-item{display:block;flex-grow:0;flex-shrink:0}html.theme--documenter-dark .navbar-item img{max-height:1.75rem}html.theme--documenter-dark .navbar-item.has-dropdown{padding:0}html.theme--documenter-dark .navbar-item.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .navbar-item.is-tab{border-bottom:1px solid transparent;min-height:4rem;padding-bottom:calc(0.5rem - 1px)}html.theme--documenter-dark .navbar-item.is-tab:focus,html.theme--documenter-dark .navbar-item.is-tab:hover{background-color: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{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:15px;margin:-.25rem}html.theme--documenter-dark .pagination.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination{font-size:.85em}html.theme--documenter-dark .pagination.is-medium{font-size:1.25rem}html.theme--documenter-dark .pagination.is-large{font-size:1.5rem}html.theme--documenter-dark .pagination.is-rounded .pagination-previous,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination .pagination-previous,html.theme--documenter-dark .pagination.is-rounded .pagination-next,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination .pagination-next{padding-left:1em;padding-right:1em;border-radius:290486px}html.theme--documenter-dark .pagination.is-rounded .pagination-link,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:290486px}html.theme--documenter-dark .pagination,html.theme--documenter-dark .pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis{font-size:1em;justify-content:center;margin:.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.25em}html.theme--documenter-dark .pagination-previous:hover,html.theme--documenter-dark .pagination-next:hover,html.theme--documenter-dark .pagination-link:hover{border-color:#8c9b9d;color:#1dd2af}html.theme--documenter-dark .pagination-previous:focus,html.theme--documenter-dark .pagination-next:focus,html.theme--documenter-dark .pagination-link:focus{border-color:#8c9b9d}html.theme--documenter-dark .pagination-previous:active,html.theme--documenter-dark .pagination-next:active,html.theme--documenter-dark .pagination-link:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2)}html.theme--documenter-dark .pagination-previous[disabled],html.theme--documenter-dark .pagination-next[disabled],html.theme--documenter-dark .pagination-link[disabled]{background-color:#dbdee0;border-color:#dbdee0;box-shadow:none;color:#5e6d6f;opacity:0.5}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next{padding-left:0.75em;padding-right:0.75em;white-space:nowrap}html.theme--documenter-dark .pagination-link.is-current{background-color:#1abc9c;border-color:#1abc9c;color:#fff}html.theme--documenter-dark .pagination-ellipsis{color:#8c9b9d;pointer-events:none}html.theme--documenter-dark .pagination-list{flex-wrap:wrap}@media screen and (max-width: 768px){html.theme--documenter-dark .pagination{flex-wrap:wrap}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}html.theme--documenter-dark .pagination-previous{order:2}html.theme--documenter-dark .pagination-next{order:3}html.theme--documenter-dark .pagination{justify-content:space-between}html.theme--documenter-dark .pagination.is-centered .pagination-previous{order:1}html.theme--documenter-dark .pagination.is-centered .pagination-list{justify-content:center;order:2}html.theme--documenter-dark .pagination.is-centered .pagination-next{order:3}html.theme--documenter-dark .pagination.is-right .pagination-previous{order:1}html.theme--documenter-dark .pagination.is-right .pagination-next{order:2}html.theme--documenter-dark .pagination.is-right .pagination-list{justify-content:flex-end;order:3}}html.theme--documenter-dark .panel{font-size:15px}html.theme--documenter-dark .panel:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .panel-heading,html.theme--documenter-dark .panel-tabs,html.theme--documenter-dark .panel-block{border-bottom:1px solid #5e6d6f;border-left:1px solid #5e6d6f;border-right:1px solid #5e6d6f}html.theme--documenter-dark .panel-heading:first-child,html.theme--documenter-dark .panel-tabs:first-child,html.theme--documenter-dark .panel-block:first-child{border-top:1px solid #5e6d6f}html.theme--documenter-dark .panel-heading{background-color:#282f2f;border-radius:.4em .4em 0 0;color:#f2f2f2;font-size:1.25em;font-weight:300;line-height:1.25;padding:0.5em 0.75em}html.theme--documenter-dark .panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}html.theme--documenter-dark .panel-tabs a{border-bottom:1px solid #5e6d6f;margin-bottom:-1px;padding:0.5em}html.theme--documenter-dark .panel-tabs a.is-active{border-bottom-color:#343c3d;color:#17a689}html.theme--documenter-dark .panel-list a{color:#fff}html.theme--documenter-dark .panel-list a:hover{color:#1abc9c}html.theme--documenter-dark .panel-block{align-items:center;color:#f2f2f2;display:flex;justify-content:flex-start;padding:0.5em 0.75em}html.theme--documenter-dark .panel-block input[type="checkbox"]{margin-right:0.75em}html.theme--documenter-dark .panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}html.theme--documenter-dark .panel-block.is-wrapped{flex-wrap:wrap}html.theme--documenter-dark .panel-block.is-active{border-left-color:#1abc9c;color:#17a689}html.theme--documenter-dark .panel-block.is-active .panel-icon{color:#1abc9c}html.theme--documenter-dark a.panel-block,html.theme--documenter-dark label.panel-block{cursor:pointer}html.theme--documenter-dark a.panel-block:hover,html.theme--documenter-dark label.panel-block:hover{background-color:#282f2f}html.theme--documenter-dark .panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#fff;margin-right:0.75em}html.theme--documenter-dark .panel-icon .fa{font-size:inherit;line-height:inherit}html.theme--documenter-dark .tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:15px;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}html.theme--documenter-dark .tabs a{align-items:center;border-bottom-color:#5e6d6f;border-bottom-style:solid;border-bottom-width:1px;color:#fff;display:flex;justify-content:center;margin-bottom:-1px;padding:0.5em 1em;vertical-align:top}html.theme--documenter-dark .tabs a:hover{border-bottom-color:#f2f2f2;color:#f2f2f2}html.theme--documenter-dark .tabs li{display:block}html.theme--documenter-dark .tabs li.is-active a{border-bottom-color:#1abc9c;color:#1abc9c}html.theme--documenter-dark .tabs ul{align-items:center;border-bottom-color:#5e6d6f;border-bottom-style:solid;border-bottom-width:1px;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}html.theme--documenter-dark .tabs ul.is-left{padding-right:0.75em}html.theme--documenter-dark .tabs ul.is-center{flex:none;justify-content:center;padding-left:0.75em;padding-right:0.75em}html.theme--documenter-dark .tabs ul.is-right{justify-content:flex-end;padding-left:0.75em}html.theme--documenter-dark .tabs .icon:first-child{margin-right:0.5em}html.theme--documenter-dark .tabs .icon:last-child{margin-left:0.5em}html.theme--documenter-dark .tabs.is-centered ul{justify-content:center}html.theme--documenter-dark .tabs.is-right ul{justify-content:flex-end}html.theme--documenter-dark .tabs.is-boxed a{border:1px solid transparent;border-radius:.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-radius:.4em 0 0 .4em}html.theme--documenter-dark .tabs.is-toggle li:last-child a{border-radius:0 .4em .4em 0}html.theme--documenter-dark .tabs.is-toggle li.is-active a{background-color:#1abc9c;border-color:#1abc9c;color:#fff;z-index:1}html.theme--documenter-dark .tabs.is-toggle ul{border-bottom:none}html.theme--documenter-dark .tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:290486px;border-top-left-radius:290486px;padding-left:1.25em}html.theme--documenter-dark .tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:290486px;border-top-right-radius:290486px;padding-right:1.25em}html.theme--documenter-dark .tabs.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.tabs{font-size:.85em}html.theme--documenter-dark .tabs.is-medium{font-size:1.25rem}html.theme--documenter-dark .tabs.is-large{font-size:1.5rem}html.theme--documenter-dark .column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>html.theme--documenter-dark .column.is-narrow{flex:none}.columns.is-mobile>html.theme--documenter-dark .column.is-full{flex:none;width:100%}.columns.is-mobile>html.theme--documenter-dark .column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>html.theme--documenter-dark .column.is-half{flex:none;width:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>html.theme--documenter-dark .column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>html.theme--documenter-dark .column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>html.theme--documenter-dark .column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>html.theme--documenter-dark .column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-half{margin-left:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>html.theme--documenter-dark .column.is-0{flex:none;width:0%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-0{margin-left:0%}.columns.is-mobile>html.theme--documenter-dark .column.is-1{flex:none;width:8.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-1{margin-left:8.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-2{flex:none;width:16.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-2{margin-left:16.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-3{flex:none;width:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-3{margin-left:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-4{flex:none;width:33.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-4{margin-left:33.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-5{flex:none;width:41.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-5{margin-left:41.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-6{flex:none;width:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-6{margin-left:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-7{flex:none;width:58.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-7{margin-left:58.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-8{flex:none;width:66.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-8{margin-left:66.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-9{flex:none;width:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-9{margin-left:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-10{flex:none;width:83.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-10{margin-left:83.3333333333%}.columns.is-mobile>html.theme--documenter-dark .column.is-11{flex:none;width:91.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-11{margin-left:91.6666666667%}.columns.is-mobile>html.theme--documenter-dark .column.is-12{flex:none;width:100%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){html.theme--documenter-dark .column.is-narrow-mobile{flex:none}html.theme--documenter-dark .column.is-full-mobile{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-mobile{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-mobile{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-mobile{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-mobile{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-mobile{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-mobile{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-mobile{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-mobile{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-mobile{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-mobile{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-mobile{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-mobile{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-mobile{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-mobile{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-mobile{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-mobile{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-mobile{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-mobile{margin-left:80%}html.theme--documenter-dark .column.is-0-mobile{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-mobile{margin-left:0%}html.theme--documenter-dark .column.is-1-mobile{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1-mobile{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2-mobile{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2-mobile{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3-mobile{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-mobile{margin-left:25%}html.theme--documenter-dark .column.is-4-mobile{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4-mobile{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5-mobile{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5-mobile{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6-mobile{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-mobile{margin-left:50%}html.theme--documenter-dark .column.is-7-mobile{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7-mobile{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8-mobile{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8-mobile{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9-mobile{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-mobile{margin-left:75%}html.theme--documenter-dark .column.is-10-mobile{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10-mobile{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11-mobile{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11-mobile{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12-mobile{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .column.is-narrow,html.theme--documenter-dark .column.is-narrow-tablet{flex:none}html.theme--documenter-dark .column.is-full,html.theme--documenter-dark .column.is-full-tablet{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters,html.theme--documenter-dark .column.is-three-quarters-tablet{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds,html.theme--documenter-dark .column.is-two-thirds-tablet{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half,html.theme--documenter-dark .column.is-half-tablet{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third,html.theme--documenter-dark .column.is-one-third-tablet{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter,html.theme--documenter-dark .column.is-one-quarter-tablet{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth,html.theme--documenter-dark .column.is-one-fifth-tablet{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths,html.theme--documenter-dark .column.is-two-fifths-tablet{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths,html.theme--documenter-dark .column.is-three-fifths-tablet{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths,html.theme--documenter-dark .column.is-four-fifths-tablet{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters,html.theme--documenter-dark .column.is-offset-three-quarters-tablet{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds,html.theme--documenter-dark .column.is-offset-two-thirds-tablet{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half,html.theme--documenter-dark .column.is-offset-half-tablet{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third,html.theme--documenter-dark .column.is-offset-one-third-tablet{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter,html.theme--documenter-dark .column.is-offset-one-quarter-tablet{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth,html.theme--documenter-dark .column.is-offset-one-fifth-tablet{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths,html.theme--documenter-dark .column.is-offset-two-fifths-tablet{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths,html.theme--documenter-dark .column.is-offset-three-fifths-tablet{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths,html.theme--documenter-dark .column.is-offset-four-fifths-tablet{margin-left:80%}html.theme--documenter-dark .column.is-0,html.theme--documenter-dark .column.is-0-tablet{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0,html.theme--documenter-dark .column.is-offset-0-tablet{margin-left:0%}html.theme--documenter-dark .column.is-1,html.theme--documenter-dark .column.is-1-tablet{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1,html.theme--documenter-dark .column.is-offset-1-tablet{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2,html.theme--documenter-dark .column.is-2-tablet{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2,html.theme--documenter-dark .column.is-offset-2-tablet{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3,html.theme--documenter-dark .column.is-3-tablet{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3,html.theme--documenter-dark .column.is-offset-3-tablet{margin-left:25%}html.theme--documenter-dark .column.is-4,html.theme--documenter-dark .column.is-4-tablet{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4,html.theme--documenter-dark .column.is-offset-4-tablet{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5,html.theme--documenter-dark .column.is-5-tablet{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5,html.theme--documenter-dark .column.is-offset-5-tablet{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6,html.theme--documenter-dark .column.is-6-tablet{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6,html.theme--documenter-dark .column.is-offset-6-tablet{margin-left:50%}html.theme--documenter-dark .column.is-7,html.theme--documenter-dark .column.is-7-tablet{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7,html.theme--documenter-dark .column.is-offset-7-tablet{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8,html.theme--documenter-dark .column.is-8-tablet{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8,html.theme--documenter-dark .column.is-offset-8-tablet{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9,html.theme--documenter-dark .column.is-9-tablet{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9,html.theme--documenter-dark .column.is-offset-9-tablet{margin-left:75%}html.theme--documenter-dark .column.is-10,html.theme--documenter-dark .column.is-10-tablet{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10,html.theme--documenter-dark .column.is-offset-10-tablet{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11,html.theme--documenter-dark .column.is-11-tablet{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11,html.theme--documenter-dark .column.is-offset-11-tablet{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12,html.theme--documenter-dark .column.is-12-tablet{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12,html.theme--documenter-dark .column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1055px){html.theme--documenter-dark .column.is-narrow-touch{flex:none}html.theme--documenter-dark .column.is-full-touch{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-touch{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-touch{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-touch{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-touch{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-touch{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-touch{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-touch{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-touch{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-touch{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-touch{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-touch{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-touch{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-touch{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-touch{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-touch{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-touch{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-touch{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-touch{margin-left:80%}html.theme--documenter-dark .column.is-0-touch{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-touch{margin-left:0%}html.theme--documenter-dark .column.is-1-touch{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1-touch{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2-touch{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2-touch{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3-touch{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-touch{margin-left:25%}html.theme--documenter-dark .column.is-4-touch{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4-touch{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5-touch{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5-touch{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6-touch{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-touch{margin-left:50%}html.theme--documenter-dark .column.is-7-touch{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7-touch{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8-touch{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8-touch{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9-touch{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-touch{margin-left:75%}html.theme--documenter-dark .column.is-10-touch{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10-touch{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11-touch{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11-touch{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12-touch{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1056px){html.theme--documenter-dark .column.is-narrow-desktop{flex:none}html.theme--documenter-dark .column.is-full-desktop{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-desktop{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-desktop{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-desktop{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-desktop{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-desktop{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-desktop{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-desktop{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-desktop{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-desktop{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-desktop{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-desktop{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-desktop{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-desktop{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-desktop{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-desktop{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-desktop{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-desktop{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-desktop{margin-left:80%}html.theme--documenter-dark .column.is-0-desktop{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-desktop{margin-left:0%}html.theme--documenter-dark .column.is-1-desktop{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1-desktop{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2-desktop{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2-desktop{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3-desktop{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-desktop{margin-left:25%}html.theme--documenter-dark .column.is-4-desktop{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4-desktop{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5-desktop{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5-desktop{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6-desktop{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-desktop{margin-left:50%}html.theme--documenter-dark .column.is-7-desktop{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7-desktop{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8-desktop{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8-desktop{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9-desktop{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-desktop{margin-left:75%}html.theme--documenter-dark .column.is-10-desktop{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10-desktop{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11-desktop{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11-desktop{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12-desktop{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){html.theme--documenter-dark .column.is-narrow-widescreen{flex:none}html.theme--documenter-dark .column.is-full-widescreen{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-widescreen{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-widescreen{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-widescreen{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-widescreen{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-widescreen{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-widescreen{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-widescreen{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-widescreen{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-widescreen{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-widescreen{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-widescreen{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-widescreen{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-widescreen{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-widescreen{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-widescreen{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-widescreen{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-widescreen{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-widescreen{margin-left:80%}html.theme--documenter-dark .column.is-0-widescreen{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-widescreen{margin-left:0%}html.theme--documenter-dark .column.is-1-widescreen{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1-widescreen{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2-widescreen{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2-widescreen{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3-widescreen{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-widescreen{margin-left:25%}html.theme--documenter-dark .column.is-4-widescreen{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4-widescreen{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5-widescreen{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5-widescreen{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6-widescreen{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-widescreen{margin-left:50%}html.theme--documenter-dark .column.is-7-widescreen{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7-widescreen{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8-widescreen{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8-widescreen{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9-widescreen{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-widescreen{margin-left:75%}html.theme--documenter-dark .column.is-10-widescreen{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10-widescreen{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11-widescreen{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11-widescreen{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12-widescreen{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){html.theme--documenter-dark .column.is-narrow-fullhd{flex:none}html.theme--documenter-dark .column.is-full-fullhd{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-fullhd{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-fullhd{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-fullhd{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-fullhd{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-fullhd{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-fullhd{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-fullhd{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-fullhd{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-fullhd{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-fullhd{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-fullhd{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-fullhd{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-fullhd{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-fullhd{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-fullhd{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-fullhd{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-fullhd{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-fullhd{margin-left:80%}html.theme--documenter-dark .column.is-0-fullhd{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-fullhd{margin-left:0%}html.theme--documenter-dark .column.is-1-fullhd{flex:none;width:8.3333333333%}html.theme--documenter-dark .column.is-offset-1-fullhd{margin-left:8.3333333333%}html.theme--documenter-dark .column.is-2-fullhd{flex:none;width:16.6666666667%}html.theme--documenter-dark .column.is-offset-2-fullhd{margin-left:16.6666666667%}html.theme--documenter-dark .column.is-3-fullhd{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-fullhd{margin-left:25%}html.theme--documenter-dark .column.is-4-fullhd{flex:none;width:33.3333333333%}html.theme--documenter-dark .column.is-offset-4-fullhd{margin-left:33.3333333333%}html.theme--documenter-dark .column.is-5-fullhd{flex:none;width:41.6666666667%}html.theme--documenter-dark .column.is-offset-5-fullhd{margin-left:41.6666666667%}html.theme--documenter-dark .column.is-6-fullhd{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-fullhd{margin-left:50%}html.theme--documenter-dark .column.is-7-fullhd{flex:none;width:58.3333333333%}html.theme--documenter-dark .column.is-offset-7-fullhd{margin-left:58.3333333333%}html.theme--documenter-dark .column.is-8-fullhd{flex:none;width:66.6666666667%}html.theme--documenter-dark .column.is-offset-8-fullhd{margin-left:66.6666666667%}html.theme--documenter-dark .column.is-9-fullhd{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-fullhd{margin-left:75%}html.theme--documenter-dark .column.is-10-fullhd{flex:none;width:83.3333333333%}html.theme--documenter-dark .column.is-offset-10-fullhd{margin-left:83.3333333333%}html.theme--documenter-dark .column.is-11-fullhd{flex:none;width:91.6666666667%}html.theme--documenter-dark .column.is-offset-11-fullhd{margin-left:91.6666666667%}html.theme--documenter-dark .column.is-12-fullhd{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-fullhd{margin-left:100%}}html.theme--documenter-dark .columns{margin-left:-.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.3333333333%}html.theme--documenter-dark .tile.is-2{flex:none;width:16.6666666667%}html.theme--documenter-dark .tile.is-3{flex:none;width:25%}html.theme--documenter-dark .tile.is-4{flex:none;width:33.3333333333%}html.theme--documenter-dark .tile.is-5{flex:none;width:41.6666666667%}html.theme--documenter-dark .tile.is-6{flex:none;width:50%}html.theme--documenter-dark .tile.is-7{flex:none;width:58.3333333333%}html.theme--documenter-dark .tile.is-8{flex:none;width:66.6666666667%}html.theme--documenter-dark .tile.is-9{flex:none;width:75%}html.theme--documenter-dark .tile.is-10{flex:none;width:83.3333333333%}html.theme--documenter-dark .tile.is-11{flex:none;width:91.6666666667%}html.theme--documenter-dark .tile.is-12{flex:none;width:100%}}html.theme--documenter-dark .hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}html.theme--documenter-dark .hero .navbar{background:none}html.theme--documenter-dark .hero .tabs ul{border-bottom:none}html.theme--documenter-dark .hero.is-white{background-color:#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{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{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:#282f2f}html.theme--documenter-dark .hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-light strong{color:inherit}html.theme--documenter-dark .hero.is-light .title{color:#282f2f}html.theme--documenter-dark .hero.is-light .subtitle{color:rgba(40,47,47,0.9)}html.theme--documenter-dark .hero.is-light .subtitle a:not(.button),html.theme--documenter-dark .hero.is-light .subtitle strong{color:#282f2f}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-light .navbar-menu{background-color:#ecf0f1}}html.theme--documenter-dark .hero.is-light .navbar-item,html.theme--documenter-dark .hero.is-light .navbar-link{color:rgba(40,47,47,0.7)}html.theme--documenter-dark .hero.is-light a.navbar-item:hover,html.theme--documenter-dark .hero.is-light a.navbar-item.is-active,html.theme--documenter-dark .hero.is-light .navbar-link:hover,html.theme--documenter-dark .hero.is-light .navbar-link.is-active{background-color:#dde4e6;color:#282f2f}html.theme--documenter-dark .hero.is-light .tabs a{color:#282f2f;opacity:0.9}html.theme--documenter-dark .hero.is-light .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-light .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-light .tabs.is-boxed a,html.theme--documenter-dark .hero.is-light .tabs.is-toggle a{color:#282f2f}html.theme--documenter-dark .hero.is-light .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-light .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-light .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-light .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:#282f2f;border-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .hero.is-light.is-bold{background-image:linear-gradient(141deg, #cadfe0 0%, #ecf0f1 71%, #fafbfc 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg, #cadfe0 0%, #ecf0f1 71%, #fafbfc 100%)}}html.theme--documenter-dark .hero.is-dark,html.theme--documenter-dark .content kbd.hero{background-color:#282f2f;color:#ecf0f1}html.theme--documenter-dark .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-dark strong,html.theme--documenter-dark .content kbd.hero strong{color:inherit}html.theme--documenter-dark .hero.is-dark .title,html.theme--documenter-dark .content kbd.hero .title{color:#ecf0f1}html.theme--documenter-dark .hero.is-dark .subtitle,html.theme--documenter-dark .content kbd.hero .subtitle{color:rgba(236,240,241,0.9)}html.theme--documenter-dark .hero.is-dark .subtitle a:not(.button),html.theme--documenter-dark .content kbd.hero .subtitle a:not(.button),html.theme--documenter-dark .hero.is-dark .subtitle strong,html.theme--documenter-dark .content kbd.hero .subtitle strong{color:#ecf0f1}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-dark .navbar-menu,html.theme--documenter-dark .content kbd.hero .navbar-menu{background-color:#282f2f}}html.theme--documenter-dark .hero.is-dark .navbar-item,html.theme--documenter-dark .content kbd.hero .navbar-item,html.theme--documenter-dark .hero.is-dark .navbar-link,html.theme--documenter-dark .content kbd.hero .navbar-link{color:rgba(236,240,241,0.7)}html.theme--documenter-dark .hero.is-dark a.navbar-item:hover,html.theme--documenter-dark .content kbd.hero a.navbar-item:hover,html.theme--documenter-dark .hero.is-dark a.navbar-item.is-active,html.theme--documenter-dark .content kbd.hero a.navbar-item.is-active,html.theme--documenter-dark .hero.is-dark .navbar-link:hover,html.theme--documenter-dark .content kbd.hero .navbar-link:hover,html.theme--documenter-dark .hero.is-dark .navbar-link.is-active,html.theme--documenter-dark .content kbd.hero .navbar-link.is-active{background-color:#1d2122;color:#ecf0f1}html.theme--documenter-dark .hero.is-dark .tabs a,html.theme--documenter-dark .content kbd.hero .tabs a{color:#ecf0f1;opacity:0.9}html.theme--documenter-dark .hero.is-dark .tabs a:hover,html.theme--documenter-dark .content kbd.hero .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-dark .tabs li.is-active a,html.theme--documenter-dark .content kbd.hero .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-dark .tabs.is-boxed a,html.theme--documenter-dark .content kbd.hero .tabs.is-boxed a,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle a,html.theme--documenter-dark .content kbd.hero .tabs.is-toggle a{color:#ecf0f1}html.theme--documenter-dark .hero.is-dark .tabs.is-boxed a:hover,html.theme--documenter-dark .content kbd.hero .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle a:hover,html.theme--documenter-dark .content kbd.hero .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-dark .tabs.is-boxed li.is-active a,html.theme--documenter-dark .content kbd.hero .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-dark .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle li.is-active a,html.theme--documenter-dark .content kbd.hero .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle li.is-active a:hover{background-color:#ecf0f1;border-color:#ecf0f1;color:#282f2f}html.theme--documenter-dark .hero.is-dark.is-bold,html.theme--documenter-dark .content kbd.hero.is-bold{background-image:linear-gradient(141deg, #0f1615 0%, #282f2f 71%, #313c40 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-dark.is-bold .navbar-menu,html.theme--documenter-dark .content kbd.hero.is-bold .navbar-menu{background-image:linear-gradient(141deg, #0f1615 0%, #282f2f 71%, #313c40 100%)}}html.theme--documenter-dark .hero.is-primary,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink{background-color:#375a7f;color:#fff}html.theme--documenter-dark .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-primary strong,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink strong{color:inherit}html.theme--documenter-dark .hero.is-primary .title,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .title{color:#fff}html.theme--documenter-dark .hero.is-primary .subtitle,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-primary .subtitle a:not(.button),html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .subtitle a:not(.button),html.theme--documenter-dark .hero.is-primary .subtitle strong,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-primary .navbar-menu,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-menu{background-color:#375a7f}}html.theme--documenter-dark .hero.is-primary .navbar-item,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-item,html.theme--documenter-dark .hero.is-primary .navbar-link,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-primary a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink a.navbar-item:hover,html.theme--documenter-dark .hero.is-primary a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink a.navbar-item.is-active,html.theme--documenter-dark .hero.is-primary .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-link:hover,html.theme--documenter-dark .hero.is-primary .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-link.is-active{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .hero.is-primary .tabs a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-primary .tabs a:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-primary .tabs li.is-active a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-primary .tabs.is-boxed a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-primary .tabs.is-boxed a:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle a:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-primary .tabs.is-boxed li.is-active a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-primary .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle li.is-active a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#375a7f}html.theme--documenter-dark .hero.is-primary.is-bold,html.theme--documenter-dark .docstring>section>a.hero.is-bold.docs-sourcelink{background-image:linear-gradient(141deg, #214b62 0%, #375a7f 71%, #3a5796 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-primary.is-bold .navbar-menu,html.theme--documenter-dark .docstring>section>a.hero.is-bold.docs-sourcelink .navbar-menu{background-image:linear-gradient(141deg, #214b62 0%, #375a7f 71%, #3a5796 100%)}}html.theme--documenter-dark .hero.is-link{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-link strong{color:inherit}html.theme--documenter-dark .hero.is-link .title{color:#fff}html.theme--documenter-dark .hero.is-link .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-link .subtitle a:not(.button),html.theme--documenter-dark .hero.is-link .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-link .navbar-menu{background-color:#1abc9c}}html.theme--documenter-dark .hero.is-link .navbar-item,html.theme--documenter-dark .hero.is-link .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-link a.navbar-item:hover,html.theme--documenter-dark .hero.is-link a.navbar-item.is-active,html.theme--documenter-dark .hero.is-link .navbar-link:hover,html.theme--documenter-dark .hero.is-link .navbar-link.is-active{background-color:#17a689;color:#fff}html.theme--documenter-dark .hero.is-link .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-link .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-link .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-link .tabs.is-boxed a,html.theme--documenter-dark .hero.is-link .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-link .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-link .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-link .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-link .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#1abc9c}html.theme--documenter-dark .hero.is-link.is-bold{background-image:linear-gradient(141deg, #0c9764 0%, #1abc9c 71%, #17d8d2 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg, #0c9764 0%, #1abc9c 71%, #17d8d2 100%)}}html.theme--documenter-dark .hero.is-info{background-color:#024c7d;color:#fff}html.theme--documenter-dark .hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-info strong{color:inherit}html.theme--documenter-dark .hero.is-info .title{color:#fff}html.theme--documenter-dark .hero.is-info .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-info .subtitle a:not(.button),html.theme--documenter-dark .hero.is-info .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-info .navbar-menu{background-color:#024c7d}}html.theme--documenter-dark .hero.is-info .navbar-item,html.theme--documenter-dark .hero.is-info .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-info a.navbar-item:hover,html.theme--documenter-dark .hero.is-info a.navbar-item.is-active,html.theme--documenter-dark .hero.is-info .navbar-link:hover,html.theme--documenter-dark .hero.is-info .navbar-link.is-active{background-color:#023d64;color:#fff}html.theme--documenter-dark .hero.is-info .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-info .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-info .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-info .tabs.is-boxed a,html.theme--documenter-dark .hero.is-info .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-info .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-info .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-info .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-info .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-info .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#024c7d}html.theme--documenter-dark .hero.is-info.is-bold{background-image:linear-gradient(141deg, #003a4c 0%, #024c7d 71%, #004299 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg, #003a4c 0%, #024c7d 71%, #004299 100%)}}html.theme--documenter-dark .hero.is-success{background-color:#008438;color:#fff}html.theme--documenter-dark .hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-success strong{color:inherit}html.theme--documenter-dark .hero.is-success .title{color:#fff}html.theme--documenter-dark .hero.is-success .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-success .subtitle a:not(.button),html.theme--documenter-dark .hero.is-success .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-success .navbar-menu{background-color:#008438}}html.theme--documenter-dark .hero.is-success .navbar-item,html.theme--documenter-dark .hero.is-success .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-success a.navbar-item:hover,html.theme--documenter-dark .hero.is-success a.navbar-item.is-active,html.theme--documenter-dark .hero.is-success .navbar-link:hover,html.theme--documenter-dark .hero.is-success .navbar-link.is-active{background-color:#006b2d;color:#fff}html.theme--documenter-dark .hero.is-success .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-success .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-success .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-success .tabs.is-boxed a,html.theme--documenter-dark .hero.is-success .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-success .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-success .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-success .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-success .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-success .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#008438}html.theme--documenter-dark .hero.is-success.is-bold{background-image:linear-gradient(141deg, #005115 0%, #008438 71%, #009e5d 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg, #005115 0%, #008438 71%, #009e5d 100%)}}html.theme--documenter-dark .hero.is-warning{background-color:#ad8100;color:#fff}html.theme--documenter-dark .hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-warning strong{color:inherit}html.theme--documenter-dark .hero.is-warning .title{color:#fff}html.theme--documenter-dark .hero.is-warning .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-warning .subtitle a:not(.button),html.theme--documenter-dark .hero.is-warning .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-warning .navbar-menu{background-color:#ad8100}}html.theme--documenter-dark .hero.is-warning .navbar-item,html.theme--documenter-dark .hero.is-warning .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-warning a.navbar-item:hover,html.theme--documenter-dark .hero.is-warning a.navbar-item.is-active,html.theme--documenter-dark .hero.is-warning .navbar-link:hover,html.theme--documenter-dark .hero.is-warning .navbar-link.is-active{background-color:#946e00;color:#fff}html.theme--documenter-dark .hero.is-warning .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-warning .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-warning .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-warning .tabs.is-boxed a,html.theme--documenter-dark .hero.is-warning .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-warning .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-warning .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-warning .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-warning .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-warning .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-warning .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#ad8100}html.theme--documenter-dark .hero.is-warning.is-bold{background-image:linear-gradient(141deg, #7a4700 0%, #ad8100 71%, #c7b500 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg, #7a4700 0%, #ad8100 71%, #c7b500 100%)}}html.theme--documenter-dark .hero.is-danger{background-color:#9e1b0d;color:#fff}html.theme--documenter-dark .hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-danger strong{color:inherit}html.theme--documenter-dark .hero.is-danger .title{color:#fff}html.theme--documenter-dark .hero.is-danger .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-danger .subtitle a:not(.button),html.theme--documenter-dark .hero.is-danger .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-danger .navbar-menu{background-color:#9e1b0d}}html.theme--documenter-dark .hero.is-danger .navbar-item,html.theme--documenter-dark .hero.is-danger .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-danger a.navbar-item:hover,html.theme--documenter-dark .hero.is-danger a.navbar-item.is-active,html.theme--documenter-dark .hero.is-danger .navbar-link:hover,html.theme--documenter-dark .hero.is-danger .navbar-link.is-active{background-color:#86170b;color:#fff}html.theme--documenter-dark .hero.is-danger .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-danger .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-danger .tabs li.is-active a{opacity:1}html.theme--documenter-dark .hero.is-danger .tabs.is-boxed a,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-danger .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-danger .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-danger .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#9e1b0d}html.theme--documenter-dark .hero.is-danger.is-bold{background-image:linear-gradient(141deg, #75030b 0%, #9e1b0d 71%, #ba380a 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg, #75030b 0%, #9e1b0d 71%, #ba380a 100%)}}html.theme--documenter-dark .hero.is-small .hero-body,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.hero .hero-body{padding-bottom:1.5rem;padding-top:1.5rem}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero.is-medium .hero-body{padding-bottom:9rem;padding-top:9rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero.is-large .hero-body{padding-bottom:18rem;padding-top:18rem}}html.theme--documenter-dark .hero.is-halfheight .hero-body,html.theme--documenter-dark .hero.is-fullheight .hero-body,html.theme--documenter-dark .hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}html.theme--documenter-dark .hero.is-halfheight .hero-body>.container,html.theme--documenter-dark .hero.is-fullheight .hero-body>.container,html.theme--documenter-dark .hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .hero.is-halfheight{min-height:50vh}html.theme--documenter-dark .hero.is-fullheight{min-height:100vh}html.theme--documenter-dark .hero-video{overflow:hidden}html.theme--documenter-dark .hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%, -50%, 0)}html.theme--documenter-dark .hero-video.is-transparent{opacity:0.3}@media screen and (max-width: 768px){html.theme--documenter-dark .hero-video{display:none}}html.theme--documenter-dark .hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){html.theme--documenter-dark .hero-buttons .button{display:flex}html.theme--documenter-dark .hero-buttons .button:not(:last-child){margin-bottom:0.75rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero-buttons{display:flex;justify-content:center}html.theme--documenter-dark .hero-buttons .button:not(:last-child){margin-right:1.5rem}}html.theme--documenter-dark .hero-head,html.theme--documenter-dark .hero-foot{flex-grow:0;flex-shrink:0}html.theme--documenter-dark .hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}html.theme--documenter-dark .section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){html.theme--documenter-dark .section.is-medium{padding:9rem 1.5rem}html.theme--documenter-dark .section.is-large{padding:18rem 1.5rem}}html.theme--documenter-dark .footer{background-color:#282f2f;padding:3rem 1.5rem 6rem}html.theme--documenter-dark hr{height:1px}html.theme--documenter-dark h6{text-transform:uppercase;letter-spacing:0.5px}html.theme--documenter-dark .hero{background-color:#343c3d}html.theme--documenter-dark a{transition:all 200ms ease}html.theme--documenter-dark .button{transition:all 200ms ease;border-width:1px;color:#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:#282f2f;text-decoration:underline}html.theme--documenter-dark .notification.is-dark a:not(.button),html.theme--documenter-dark .content kbd.notification a:not(.button){color:#ecf0f1;text-decoration:underline}html.theme--documenter-dark .notification.is-primary a:not(.button),html.theme--documenter-dark .docstring>section>a.notification.docs-sourcelink a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-link a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-info a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-success a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-warning a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-danger a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .tag,html.theme--documenter-dark .content kbd,html.theme--documenter-dark .docstring>section>a.docs-sourcelink{border-radius:.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 5 Free";font-weight:900;content:"\f0c1"}html.theme--documenter-dark h1:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h2:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h3:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h4:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h5:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h6:hover .docs-heading-anchor-permalink{visibility:visible}html.theme--documenter-dark .docs-light-only{display:none !important}html.theme--documenter-dark pre{position:relative;overflow:hidden}html.theme--documenter-dark pre code,html.theme--documenter-dark pre code.hljs{padding:0 .75rem !important;overflow:auto;display:block}html.theme--documenter-dark pre code:first-of-type,html.theme--documenter-dark pre code.hljs:first-of-type{padding-top:0.5rem !important}html.theme--documenter-dark pre code:last-of-type,html.theme--documenter-dark pre code.hljs:last-of-type{padding-bottom:0.5rem !important}html.theme--documenter-dark pre .copy-button{opacity:0.2;transition:opacity 0.2s;position:absolute;right:0em;top:0em;padding:0.5em;width:2.5em;height:2.5em;background:transparent;border:none;font-family:"Font Awesome 5 Free";color:#fff;cursor:pointer;text-align:center}html.theme--documenter-dark pre .copy-button:focus,html.theme--documenter-dark pre .copy-button:hover{opacity:1;background:rgba(255,255,255,0.1);color:#1abc9c}html.theme--documenter-dark pre .copy-button.success{color:#259a12;opacity:1}html.theme--documenter-dark pre .copy-button.error{color:#cb3c33;opacity:1}html.theme--documenter-dark pre:hover .copy-button{opacity:1}html.theme--documenter-dark .admonition{background-color:#282f2f;border-style:solid;border-width:1px;border-color:#5e6d6f;border-radius:.4em;font-size:15px}html.theme--documenter-dark .admonition strong{color:currentColor}html.theme--documenter-dark .admonition.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.admonition{font-size:.85em}html.theme--documenter-dark .admonition.is-medium{font-size:1.25rem}html.theme--documenter-dark .admonition.is-large{font-size:1.5rem}html.theme--documenter-dark .admonition.is-default{background-color:#282f2f;border-color:#5e6d6f}html.theme--documenter-dark .admonition.is-default>.admonition-header{background-color:#5e6d6f;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 5 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}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{display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#282f2f;box-shadow:0 1px 2px rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #5e6d6f}html.theme--documenter-dark .docstring>header code{background-color:transparent}html.theme--documenter-dark .docstring>header .docstring-binding{margin-right:0.3em}html.theme--documenter-dark .docstring>header .docstring-category{margin-left:0.3em}html.theme--documenter-dark .docstring>section{position:relative;padding:.75rem .75rem;border-bottom:1px solid #5e6d6f}html.theme--documenter-dark .docstring>section:last-child{border-bottom:none}html.theme--documenter-dark .docstring>section>a.docs-sourcelink{transition:opacity 0.3s;opacity:0;position:absolute;right:.375rem;bottom:.375rem}html.theme--documenter-dark .docstring>section>a.docs-sourcelink:focus{opacity:1 !important}html.theme--documenter-dark .docstring:hover>section>a.docs-sourcelink{opacity:0.2}html.theme--documenter-dark .docstring:focus-within>section>a.docs-sourcelink{opacity:0.2}html.theme--documenter-dark .docstring>section:hover a.docs-sourcelink{opacity:1}html.theme--documenter-dark .documenter-example-output{background-color:#1f2424}html.theme--documenter-dark .outdated-warning-overlay{position:fixed;top:0;left:0;right:0;box-shadow:0 0 10px rgba(0,0,0,0.3);z-index:999;background-color:#282f2f;color:#fff;border-bottom:3px solid #9e1b0d;padding:10px 35px;text-align:center;font-size:15px}html.theme--documenter-dark .outdated-warning-overlay .outdated-warning-closer{position:absolute;top:calc(50% - 10px);right:18px;cursor:pointer;width:12px}html.theme--documenter-dark .outdated-warning-overlay a{color:#1abc9c}html.theme--documenter-dark .outdated-warning-overlay a:hover{color:#1dd2af}html.theme--documenter-dark .content pre{border:1px solid #5e6d6f}html.theme--documenter-dark .content code{font-weight:inherit}html.theme--documenter-dark .content a code{color:#1abc9c}html.theme--documenter-dark .content h1 code,html.theme--documenter-dark .content h2 code,html.theme--documenter-dark .content h3 code,html.theme--documenter-dark .content h4 code,html.theme--documenter-dark .content h5 code,html.theme--documenter-dark .content h6 code{color:#f2f2f2}html.theme--documenter-dark .content table{display:block;width:initial;max-width:100%;overflow-x:auto}html.theme--documenter-dark .content blockquote>ul:first-child,html.theme--documenter-dark .content blockquote>ol:first-child,html.theme--documenter-dark .content .admonition-body>ul:first-child,html.theme--documenter-dark .content .admonition-body>ol:first-child{margin-top:0}html.theme--documenter-dark pre,html.theme--documenter-dark code{font-variant-ligatures:no-contextual}html.theme--documenter-dark .breadcrumb a.is-disabled{cursor:default;pointer-events:none}html.theme--documenter-dark .breadcrumb a.is-disabled,html.theme--documenter-dark .breadcrumb a.is-disabled:hover{color:#f2f2f2}html.theme--documenter-dark .hljs{background:initial !important}html.theme--documenter-dark .katex .katex-mathml{top:0;right:0}html.theme--documenter-dark .katex-display,html.theme--documenter-dark mjx-container,html.theme--documenter-dark .MathJax_Display{margin:0.5em 0 !important}html.theme--documenter-dark html{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto}html.theme--documenter-dark li.no-marker{list-style:none}html.theme--documenter-dark #documenter .docs-main>article{overflow-wrap:break-word}html.theme--documenter-dark #documenter .docs-main>article .math-container{overflow-x:auto;overflow-y:hidden}@media screen and (min-width: 1056px){html.theme--documenter-dark #documenter .docs-main{max-width:52rem;margin-left:20rem;padding-right:1rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-main{width:100%}html.theme--documenter-dark #documenter .docs-main>article{max-width:52rem;margin-left:auto;margin-right:auto;margin-bottom:1rem;padding:0 1rem}html.theme--documenter-dark #documenter .docs-main>header,html.theme--documenter-dark #documenter .docs-main>nav{max-width:100%;width:100%;margin:0}}html.theme--documenter-dark #documenter .docs-main header.docs-navbar{background-color:#1f2424;border-bottom:1px solid #5e6d6f;z-index:2;min-height:4rem;margin-bottom:1rem;display:flex}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .breadcrumb{flex-grow:1}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-icon,html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-label,html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button{display:inline-block}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-settings-button{margin:auto 0 auto 1rem}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button{font-size:1.5rem;margin:auto 0 auto 1rem}html.theme--documenter-dark #documenter .docs-main header.docs-navbar>*{margin:auto 0}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-main header.docs-navbar{position:sticky;top:0;padding:0 1rem;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:15px;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:14.25px;margin-left:1em;border-left:1px solid #5e6d6f}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input.collapse-toggle{display:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.collapsed{display:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input:checked~ul.collapsed{display:block}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem{display:flex}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label{flex-grow:2}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron{display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;font-size:11.25px;margin-left:1rem;margin-top:auto;margin-bottom:auto}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f054"}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input:checked~label.tocitem .docs-chevron::before{content:"\f078"}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem{display:block;padding:0.5rem 0.5rem}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem,html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem:hover{color:#fff;background:#282f2f}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu a.tocitem:hover,html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem:hover{color:#fff;background-color:#32393a}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active{border-top:1px solid #5e6d6f;border-bottom:1px solid #5e6d6f;background-color:#1f2424}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem,html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover{background-color:#1f2424;color:#fff}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover{background-color:#32393a;color:#fff}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu>li.is-active:first-child{border-top:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal{margin:0 0.5rem 0.5rem;border-top:1px solid #5e6d6f}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal li{font-size:12.75px;border-left:none;margin-left:0;margin-top:0.5rem}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem{width:100%;padding:0}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before{content:"⚬";margin-right:0.4em}html.theme--documenter-dark #documenter .docs-sidebar form.docs-search{margin:auto;margin-top:0.5rem;margin-bottom:0.5rem}html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{width:14.4rem}@media screen and (min-width: 1056px){html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar{width:.3rem;background:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#3b4445}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover{background:#4e5a5c}}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-sidebar{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar{width:.3rem;background:none}html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#3b4445}html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar-thumb:hover{background:#4e5a5c}}html.theme--documenter-dark #documenter .docs-main #documenter-search-info{margin-bottom:1rem}html.theme--documenter-dark #documenter .docs-main #documenter-search-results{list-style-type:circle;list-style-position:outside}html.theme--documenter-dark #documenter .docs-main #documenter-search-results li{margin-left:2rem}html.theme--documenter-dark #documenter .docs-main #documenter-search-results .docs-highlight{background-color:yellow}html.theme--documenter-dark{background-color:#1f2424;font-size:16px;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}html.theme--documenter-dark .ansi span.sgr1{font-weight:bolder}html.theme--documenter-dark .ansi span.sgr2{font-weight:lighter}html.theme--documenter-dark .ansi span.sgr3{font-style:italic}html.theme--documenter-dark .ansi span.sgr4{text-decoration:underline}html.theme--documenter-dark .ansi span.sgr7{color:#1f2424;background-color:#fff}html.theme--documenter-dark .ansi span.sgr8{color:transparent}html.theme--documenter-dark .ansi span.sgr8 span{color:transparent}html.theme--documenter-dark .ansi span.sgr9{text-decoration:line-through}html.theme--documenter-dark .ansi span.sgr30{color:#242424}html.theme--documenter-dark .ansi span.sgr31{color:#f6705f}html.theme--documenter-dark .ansi span.sgr32{color:#4fb43a}html.theme--documenter-dark .ansi span.sgr33{color:#f4c72f}html.theme--documenter-dark .ansi span.sgr34{color:#7587f0}html.theme--documenter-dark .ansi span.sgr35{color:#bc89d3}html.theme--documenter-dark .ansi span.sgr36{color:#49b6ca}html.theme--documenter-dark .ansi span.sgr37{color:#b3bdbe}html.theme--documenter-dark .ansi span.sgr40{background-color:#242424}html.theme--documenter-dark .ansi span.sgr41{background-color:#f6705f}html.theme--documenter-dark .ansi span.sgr42{background-color:#4fb43a}html.theme--documenter-dark .ansi span.sgr43{background-color:#f4c72f}html.theme--documenter-dark .ansi span.sgr44{background-color:#7587f0}html.theme--documenter-dark .ansi span.sgr45{background-color:#bc89d3}html.theme--documenter-dark .ansi span.sgr46{background-color:#49b6ca}html.theme--documenter-dark .ansi span.sgr47{background-color:#b3bdbe}html.theme--documenter-dark .ansi span.sgr90{color:#92a0a2}html.theme--documenter-dark .ansi span.sgr91{color:#ff8674}html.theme--documenter-dark .ansi span.sgr92{color:#79d462}html.theme--documenter-dark .ansi span.sgr93{color:#ffe76b}html.theme--documenter-dark .ansi span.sgr94{color:#8a98ff}html.theme--documenter-dark .ansi span.sgr95{color:#d2a4e6}html.theme--documenter-dark .ansi span.sgr96{color:#6bc8db}html.theme--documenter-dark .ansi span.sgr97{color:#ecf0f1}html.theme--documenter-dark .ansi span.sgr100{background-color:#92a0a2}html.theme--documenter-dark .ansi span.sgr101{background-color:#ff8674}html.theme--documenter-dark .ansi span.sgr102{background-color:#79d462}html.theme--documenter-dark .ansi span.sgr103{background-color:#ffe76b}html.theme--documenter-dark .ansi span.sgr104{background-color:#8a98ff}html.theme--documenter-dark .ansi span.sgr105{background-color:#d2a4e6}html.theme--documenter-dark .ansi span.sgr106{background-color:#6bc8db}html.theme--documenter-dark .ansi span.sgr107{background-color:#ecf0f1}html.theme--documenter-dark code.language-julia-repl>span.hljs-meta{color:#4fb43a;font-weight:bolder}html.theme--documenter-dark .hljs{background:#2b2b2b;color:#f8f8f2}html.theme--documenter-dark .hljs-comment,html.theme--documenter-dark .hljs-quote{color:#d4d0ab}html.theme--documenter-dark .hljs-variable,html.theme--documenter-dark .hljs-template-variable,html.theme--documenter-dark .hljs-tag,html.theme--documenter-dark .hljs-name,html.theme--documenter-dark .hljs-selector-id,html.theme--documenter-dark .hljs-selector-class,html.theme--documenter-dark .hljs-regexp,html.theme--documenter-dark .hljs-deletion{color:#ffa07a}html.theme--documenter-dark .hljs-number,html.theme--documenter-dark .hljs-built_in,html.theme--documenter-dark .hljs-literal,html.theme--documenter-dark .hljs-type,html.theme--documenter-dark .hljs-params,html.theme--documenter-dark .hljs-meta,html.theme--documenter-dark .hljs-link{color:#f5ab35}html.theme--documenter-dark .hljs-attribute{color:#ffd700}html.theme--documenter-dark .hljs-string,html.theme--documenter-dark .hljs-symbol,html.theme--documenter-dark .hljs-bullet,html.theme--documenter-dark .hljs-addition{color:#abe338}html.theme--documenter-dark .hljs-title,html.theme--documenter-dark .hljs-section{color:#00e0e0}html.theme--documenter-dark .hljs-keyword,html.theme--documenter-dark .hljs-selector-tag{color:#dcc6e0}html.theme--documenter-dark .hljs-emphasis{font-style:italic}html.theme--documenter-dark .hljs-strong{font-weight:bold}@media screen and (-ms-high-contrast: active){html.theme--documenter-dark .hljs-addition,html.theme--documenter-dark .hljs-attribute,html.theme--documenter-dark .hljs-built_in,html.theme--documenter-dark .hljs-bullet,html.theme--documenter-dark .hljs-comment,html.theme--documenter-dark .hljs-link,html.theme--documenter-dark .hljs-literal,html.theme--documenter-dark .hljs-meta,html.theme--documenter-dark .hljs-number,html.theme--documenter-dark .hljs-params,html.theme--documenter-dark .hljs-string,html.theme--documenter-dark .hljs-symbol,html.theme--documenter-dark .hljs-type,html.theme--documenter-dark .hljs-quote{color:highlight}html.theme--documenter-dark .hljs-keyword,html.theme--documenter-dark .hljs-selector-tag{font-weight:bold}}html.theme--documenter-dark .hljs-subst{color:#f8f8f2} diff --git a/v0.28.3/assets/themes/documenter-light.css b/v0.28.3/assets/themes/documenter-light.css new file mode 100644 index 0000000000..9b9a14b043 --- /dev/null +++ b/v0.28.3/assets/themes/documenter-light.css @@ -0,0 +1,9 @@ +@keyframes spinAround{from{transform:rotate(0deg)}to{transform:rotate(359deg)}}.tabs,.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis,.breadcrumb,.file,.button,.is-unselectable,.modal-close,.delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.navbar-link:not(.is-arrowless)::after,.select:not(.is-multiple):not(.is-loading)::after{border:3px solid 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),.message:not(:last-child),.list:not(:last-child),.level:not(:last-child),.breadcrumb:not(:last-child),.highlight:not(:last-child),.block:not(:last-child),.title:not(:last-child),.subtitle:not(:last-child),.table-container:not(:last-child),.table:not(:last-child),.progress:not(:last-child),.notification:not(:last-child),.content:not(:last-child),.box:not(:last-child){margin-bottom:1.5rem}.modal-close,.delete{-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:290486px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:none;position:relative;vertical-align:top;width:20px}.modal-close::before,.delete::before,.modal-close::after,.delete::after{background-color:#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:290486px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}.hero-video,.modal-background,.modal,.image.is-square img,#documenter .docs-sidebar .docs-logo>img.is-square img,.image.is-square .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,.image.is-1by1 img,#documenter .docs-sidebar .docs-logo>img.is-1by1 img,.image.is-1by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,.image.is-5by4 img,#documenter .docs-sidebar .docs-logo>img.is-5by4 img,.image.is-5by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,.image.is-4by3 img,#documenter .docs-sidebar .docs-logo>img.is-4by3 img,.image.is-4by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,.image.is-3by2 img,#documenter .docs-sidebar .docs-logo>img.is-3by2 img,.image.is-3by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,.image.is-5by3 img,#documenter .docs-sidebar .docs-logo>img.is-5by3 img,.image.is-5by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,.image.is-16by9 img,#documenter .docs-sidebar .docs-logo>img.is-16by9 img,.image.is-16by9 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,.image.is-2by1 img,#documenter .docs-sidebar .docs-logo>img.is-2by1 img,.image.is-2by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,.image.is-3by1 img,#documenter .docs-sidebar .docs-logo>img.is-3by1 img,.image.is-3by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,.image.is-4by5 img,#documenter .docs-sidebar .docs-logo>img.is-4by5 img,.image.is-4by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,.image.is-3by4 img,#documenter .docs-sidebar .docs-logo>img.is-3by4 img,.image.is-3by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,.image.is-2by3 img,#documenter .docs-sidebar .docs-logo>img.is-2by3 img,.image.is-2by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,.image.is-3by5 img,#documenter .docs-sidebar .docs-logo>img.is-3by5 img,.image.is-3by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,.image.is-9by16 img,#documenter .docs-sidebar .docs-logo>img.is-9by16 img,.image.is-9by16 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,.image.is-1by2 img,#documenter .docs-sidebar .docs-logo>img.is-1by2 img,.image.is-1by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,.image.is-1by3 img,#documenter .docs-sidebar .docs-logo>img.is-1by3 img,.image.is-1by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio,.is-overlay{bottom:0;left:0;position:absolute;right:0;top:0}.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis,.file-cta,.file-name,.select select,.textarea,.input,#documenter .docs-sidebar form.docs-search>input,.button{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:4px;box-shadow:none;display:inline-flex;font-size:1rem;height:2.25em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.375em - 1px);padding-left:calc(0.625em - 1px);padding-right:calc(0.625em - 1px);padding-top:calc(0.375em - 1px);position:relative;vertical-align:top}.pagination-previous:focus,.pagination-next:focus,.pagination-link:focus,.pagination-ellipsis:focus,.file-cta:focus,.file-name:focus,.select select:focus,.textarea:focus,.input:focus,#documenter .docs-sidebar form.docs-search>input:focus,.button:focus,.is-focused.pagination-previous,.is-focused.pagination-next,.is-focused.pagination-link,.is-focused.pagination-ellipsis,.is-focused.file-cta,.is-focused.file-name,.select select.is-focused,.is-focused.textarea,.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-focused.button,.pagination-previous:active,.pagination-next:active,.pagination-link:active,.pagination-ellipsis:active,.file-cta:active,.file-name:active,.select select:active,.textarea:active,.input:active,#documenter .docs-sidebar form.docs-search>input:active,.button:active,.is-active.pagination-previous,.is-active.pagination-next,.is-active.pagination-link,.is-active.pagination-ellipsis,.is-active.file-cta,.is-active.file-name,.select select.is-active,.is-active.textarea,.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active,.is-active.button{outline:none}.pagination-previous[disabled],.pagination-next[disabled],.pagination-link[disabled],.pagination-ellipsis[disabled],.file-cta[disabled],.file-name[disabled],.select select[disabled],.textarea[disabled],.input[disabled],#documenter .docs-sidebar form.docs-search>input[disabled],.button[disabled],fieldset[disabled] .pagination-previous,fieldset[disabled] .pagination-next,fieldset[disabled] .pagination-link,fieldset[disabled] .pagination-ellipsis,fieldset[disabled] .file-cta,fieldset[disabled] .file-name,fieldset[disabled] .select select,.select fieldset[disabled] select,fieldset[disabled] .textarea,fieldset[disabled] .input,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input,fieldset[disabled] .button{cursor:not-allowed}/*! minireset.css v0.0.4 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,embed,iframe,object,video{height:auto;max-width:100%}audio{max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:left}html{background-color:#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,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:left}table th{color:#222}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-clipped{overflow:hidden !important}.is-size-1{font-size:3rem !important}.is-size-2{font-size:2.5rem !important}.is-size-3{font-size:2rem !important}.is-size-4{font-size:1.5rem !important}.is-size-5{font-size:1.25rem !important}.is-size-6{font-size:1rem !important}.is-size-7,.docstring>section>a.docs-sourcelink{font-size:.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}.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-link{color:#2e63b8 !important}a.has-text-link:hover,a.has-text-link:focus{color:#244d8f !important}.has-background-link{background-color:#2e63b8 !important}.has-text-info{color:#209cee !important}a.has-text-info:hover,a.has-text-info:focus{color:#1081cb !important}.has-background-info{background-color:#209cee !important}.has-text-success{color:#22c35b !important}a.has-text-success:hover,a.has-text-success:focus{color:#1a9847 !important}.has-background-success{background-color:#22c35b !important}.has-text-warning{color:#ffdd57 !important}a.has-text-warning:hover,a.has-text-warning:focus{color:#ffd324 !important}.has-background-warning{background-color:#ffdd57 !important}.has-text-danger{color:#da0b00 !important}a.has-text-danger:hover,a.has-text-danger:focus{color:#a70800 !important}.has-background-danger{background-color:#da0b00 !important}.has-text-black-bis{color:#121212 !important}.has-background-black-bis{background-color:#121212 !important}.has-text-black-ter{color:#242424 !important}.has-background-black-ter{background-color:#242424 !important}.has-text-grey-darker{color:#363636 !important}.has-background-grey-darker{background-color:#363636 !important}.has-text-grey-dark{color:#4a4a4a !important}.has-background-grey-dark{background-color:#4a4a4a !important}.has-text-grey{color:#6b6b6b !important}.has-background-grey{background-color:#6b6b6b !important}.has-text-grey-light{color:#b5b5b5 !important}.has-background-grey-light{background-color:#b5b5b5 !important}.has-text-grey-lighter{color:#dbdbdb !important}.has-background-grey-lighter{background-color:#dbdbdb !important}.has-text-white-ter{color:#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}.has-text-weight-light{font-weight:300 !important}.has-text-weight-normal{font-weight:400 !important}.has-text-weight-medium{font-weight:500 !important}.has-text-weight-semibold{font-weight:600 !important}.has-text-weight-bold{font-weight:700 !important}.is-family-primary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-secondary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-sans-serif{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-monospace{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-family-code{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-block{display:block !important}@media screen and (max-width: 768px){.is-block-mobile{display:block !important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-block-tablet-only{display:block !important}}@media screen and (max-width: 1055px){.is-block-touch{display:block !important}}@media screen and (min-width: 1056px){.is-block-desktop{display:block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-block-desktop-only{display:block !important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block !important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block !important}}.is-flex{display:flex !important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex !important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-flex-tablet-only{display:flex !important}}@media screen and (max-width: 1055px){.is-flex-touch{display:flex !important}}@media screen and (min-width: 1056px){.is-flex-desktop{display:flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-flex-desktop-only{display:flex !important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex !important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex !important}}.is-inline{display:inline !important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline !important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-tablet-only{display:inline !important}}@media screen and (max-width: 1055px){.is-inline-touch{display:inline !important}}@media screen and (min-width: 1056px){.is-inline-desktop{display:inline !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-desktop-only{display:inline !important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline !important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline !important}}.is-inline-block{display:inline-block !important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block !important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-block-tablet-only{display:inline-block !important}}@media screen and (max-width: 1055px){.is-inline-block-touch{display:inline-block !important}}@media screen and (min-width: 1056px){.is-inline-block-desktop{display:inline-block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block !important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block !important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block !important}}.is-inline-flex{display:inline-flex !important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex !important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-flex-tablet-only{display:inline-flex !important}}@media screen and (max-width: 1055px){.is-inline-flex-touch{display:inline-flex !important}}@media screen and (min-width: 1056px){.is-inline-flex-desktop{display:inline-flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex !important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex !important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex !important}}.is-hidden{display:none !important}.is-sr-only{border:none !important;clip:rect(0, 0, 0, 0) !important;height:0.01em !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:0.01em !important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none !important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-hidden-tablet-only{display:none !important}}@media screen and (max-width: 1055px){.is-hidden-touch{display:none !important}}@media screen and (min-width: 1056px){.is-hidden-desktop{display:none !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-hidden-desktop-only{display:none !important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none !important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none !important}}.is-invisible{visibility:hidden !important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden !important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-invisible-tablet-only{visibility:hidden !important}}@media screen and (max-width: 1055px){.is-invisible-touch{visibility:hidden !important}}@media screen and (min-width: 1056px){.is-invisible-desktop{visibility:hidden !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden !important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden !important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden !important}}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-relative{position:relative !important}.box{background-color:#fff;border-radius:6px;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1);color:#222;display:block;padding:1.25rem}a.box:hover,a.box:focus{box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px #2e63b8}a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2),0 0 0 1px #2e63b8}.button{background-color:#fff;border-color:#dbdbdb;border-width:1px;color:#363636;cursor:pointer;justify-content:center;padding-bottom:calc(0.375em - 1px);padding-left:.75em;padding-right:.75em;padding-top:calc(0.375em - 1px);text-align:center;white-space:nowrap}.button strong{color:inherit}.button .icon,.button .icon.is-small,.button #documenter .docs-sidebar form.docs-search>input.icon,#documenter .docs-sidebar .button form.docs-search>input.icon,.button .icon.is-medium,.button .icon.is-large{height:1.5em;width:1.5em}.button .icon:first-child:not(:last-child){margin-left:calc(-0.375em - 1px);margin-right:0.1875em}.button .icon:last-child:not(:first-child){margin-left:0.1875em;margin-right:calc(-0.375em - 1px)}.button .icon:first-child:last-child{margin-left:calc(-0.375em - 1px);margin-right:calc(-0.375em - 1px)}.button:hover,.button.is-hovered{border-color:#b5b5b5;color:#363636}.button:focus,.button.is-focused{border-color:#3c5dcd;color:#363636}.button:focus:not(:active),.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.button:active,.button.is-active{border-color:#4a4a4a;color:#363636}.button.is-text{background-color:transparent;border-color:transparent;color:#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-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:transparent;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:transparent;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:#363636}.button.is-light:hover,.button.is-light.is-hovered{background-color:#eee;border-color:transparent;color:#363636}.button.is-light:focus,.button.is-light.is-focused{border-color:transparent;color:#363636}.button.is-light:focus:not(:active),.button.is-light.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}.button.is-light:active,.button.is-light.is-active{background-color:#e8e8e8;border-color:transparent;color:#363636}.button.is-light[disabled],fieldset[disabled] .button.is-light{background-color:#f5f5f5;border-color:transparent;box-shadow:none}.button.is-light.is-inverted{background-color:#363636;color:#f5f5f5}.button.is-light.is-inverted:hover,.button.is-light.is-inverted.is-hovered{background-color:#292929}.button.is-light.is-inverted[disabled],fieldset[disabled] .button.is-light.is-inverted{background-color:#363636;border-color:transparent;box-shadow:none;color:#f5f5f5}.button.is-light.is-loading::after{border-color:transparent transparent #363636 #363636 !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:#363636}.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 #363636 #363636 !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:#363636;color:#363636}.button.is-light.is-inverted.is-outlined:hover,.button.is-light.is-inverted.is-outlined.is-hovered,.button.is-light.is-inverted.is-outlined:focus,.button.is-light.is-inverted.is-outlined.is-focused{background-color:#363636;color:#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:#363636;box-shadow:none;color:#363636}.button.is-dark,.content kbd.button{background-color:#363636;border-color:transparent;color:#f5f5f5}.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:#f5f5f5}.button.is-dark:focus,.content kbd.button:focus,.button.is-dark.is-focused,.content kbd.button.is-focused{border-color:transparent;color:#f5f5f5}.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:#f5f5f5}.button.is-dark[disabled],.content kbd.button[disabled],fieldset[disabled] .button.is-dark,fieldset[disabled] .content kbd.button,.content fieldset[disabled] kbd.button{background-color:#363636;border-color:transparent;box-shadow:none}.button.is-dark.is-inverted,.content kbd.button.is-inverted{background-color:#f5f5f5;color:#363636}.button.is-dark.is-inverted:hover,.content kbd.button.is-inverted:hover,.button.is-dark.is-inverted.is-hovered,.content kbd.button.is-inverted.is-hovered{background-color:#e8e8e8}.button.is-dark.is-inverted[disabled],.content kbd.button.is-inverted[disabled],fieldset[disabled] .button.is-dark.is-inverted,fieldset[disabled] .content kbd.button.is-inverted,.content fieldset[disabled] kbd.button.is-inverted{background-color:#f5f5f5;border-color:transparent;box-shadow:none;color:#363636}.button.is-dark.is-loading::after,.content kbd.button.is-loading::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !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:#f5f5f5}.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 #f5f5f5 #f5f5f5 !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:#f5f5f5;color:#f5f5f5}.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:#f5f5f5;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:#f5f5f5;box-shadow:none;color:#f5f5f5}.button.is-primary,.docstring>section>a.button.docs-sourcelink{background-color:#4eb5de;border-color:transparent;color:#fff}.button.is-primary:hover,.docstring>section>a.button.docs-sourcelink:hover,.button.is-primary.is-hovered,.docstring>section>a.button.is-hovered.docs-sourcelink{background-color:#43b1dc;border-color:transparent;color:#fff}.button.is-primary:focus,.docstring>section>a.button.docs-sourcelink:focus,.button.is-primary.is-focused,.docstring>section>a.button.is-focused.docs-sourcelink{border-color:transparent;color:#fff}.button.is-primary:focus:not(:active),.docstring>section>a.button.docs-sourcelink:focus:not(:active),.button.is-primary.is-focused:not(:active),.docstring>section>a.button.is-focused.docs-sourcelink:not(:active){box-shadow:0 0 0 0.125em rgba(78,181,222,0.25)}.button.is-primary:active,.docstring>section>a.button.docs-sourcelink:active,.button.is-primary.is-active,.docstring>section>a.button.is-active.docs-sourcelink{background-color:#39acda;border-color:transparent;color:#fff}.button.is-primary[disabled],.docstring>section>a.button.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary,fieldset[disabled] .docstring>section>a.button.docs-sourcelink{background-color:#4eb5de;border-color:transparent;box-shadow:none}.button.is-primary.is-inverted,.docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;color:#4eb5de}.button.is-primary.is-inverted:hover,.docstring>section>a.button.is-inverted.docs-sourcelink:hover,.button.is-primary.is-inverted.is-hovered,.docstring>section>a.button.is-inverted.is-hovered.docs-sourcelink{background-color:#f2f2f2}.button.is-primary.is-inverted[disabled],.docstring>section>a.button.is-inverted.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary.is-inverted,fieldset[disabled] .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;border-color:transparent;box-shadow:none;color:#4eb5de}.button.is-primary.is-loading::after,.docstring>section>a.button.is-loading.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}.button.is-primary.is-outlined,.docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#4eb5de;color:#4eb5de}.button.is-primary.is-outlined:hover,.docstring>section>a.button.is-outlined.docs-sourcelink:hover,.button.is-primary.is-outlined.is-hovered,.docstring>section>a.button.is-outlined.is-hovered.docs-sourcelink,.button.is-primary.is-outlined:focus,.docstring>section>a.button.is-outlined.docs-sourcelink:focus,.button.is-primary.is-outlined.is-focused,.docstring>section>a.button.is-outlined.is-focused.docs-sourcelink{background-color:#4eb5de;border-color:#4eb5de;color:#fff}.button.is-primary.is-outlined.is-loading::after,.docstring>section>a.button.is-outlined.is-loading.docs-sourcelink::after{border-color:transparent transparent #4eb5de #4eb5de !important}.button.is-primary.is-outlined.is-loading:hover::after,.docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:hover::after,.button.is-primary.is-outlined.is-loading.is-hovered::after,.docstring>section>a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after,.button.is-primary.is-outlined.is-loading:focus::after,.docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:focus::after,.button.is-primary.is-outlined.is-loading.is-focused::after,.docstring>section>a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}.button.is-primary.is-outlined[disabled],.docstring>section>a.button.is-outlined.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary.is-outlined,fieldset[disabled] .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#4eb5de;box-shadow:none;color:#4eb5de}.button.is-primary.is-inverted.is-outlined,.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;color:#fff}.button.is-primary.is-inverted.is-outlined:hover,.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:hover,.button.is-primary.is-inverted.is-outlined.is-hovered,.docstring>section>a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink,.button.is-primary.is-inverted.is-outlined:focus,.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:focus,.button.is-primary.is-inverted.is-outlined.is-focused,.docstring>section>a.button.is-inverted.is-outlined.is-focused.docs-sourcelink{background-color:#fff;color:#4eb5de}.button.is-primary.is-inverted.is-outlined.is-loading:hover::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after,.button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after,.button.is-primary.is-inverted.is-outlined.is-loading:focus::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after,.button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #4eb5de #4eb5de !important}.button.is-primary.is-inverted.is-outlined[disabled],.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary.is-inverted.is-outlined,fieldset[disabled] .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-link{background-color:#2e63b8;border-color:transparent;color:#fff}.button.is-link:hover,.button.is-link.is-hovered{background-color:#2b5eae;border-color:transparent;color:#fff}.button.is-link:focus,.button.is-link.is-focused{border-color:transparent;color:#fff}.button.is-link:focus:not(:active),.button.is-link.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.button.is-link:active,.button.is-link.is-active{background-color:#2958a4;border-color:transparent;color:#fff}.button.is-link[disabled],fieldset[disabled] .button.is-link{background-color:#2e63b8;border-color:transparent;box-shadow:none}.button.is-link.is-inverted{background-color:#fff;color:#2e63b8}.button.is-link.is-inverted:hover,.button.is-link.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-link.is-inverted[disabled],fieldset[disabled] .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#2e63b8}.button.is-link.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-link.is-outlined{background-color:transparent;border-color:#2e63b8;color:#2e63b8}.button.is-link.is-outlined:hover,.button.is-link.is-outlined.is-hovered,.button.is-link.is-outlined:focus,.button.is-link.is-outlined.is-focused{background-color:#2e63b8;border-color:#2e63b8;color:#fff}.button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #2e63b8 #2e63b8 !important}.button.is-link.is-outlined.is-loading:hover::after,.button.is-link.is-outlined.is-loading.is-hovered::after,.button.is-link.is-outlined.is-loading:focus::after,.button.is-link.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-link.is-outlined[disabled],fieldset[disabled] .button.is-link.is-outlined{background-color:transparent;border-color:#2e63b8;box-shadow:none;color:#2e63b8}.button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-link.is-inverted.is-outlined:hover,.button.is-link.is-inverted.is-outlined.is-hovered,.button.is-link.is-inverted.is-outlined:focus,.button.is-link.is-inverted.is-outlined.is-focused{background-color:#fff;color:#2e63b8}.button.is-link.is-inverted.is-outlined.is-loading:hover::after,.button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-link.is-inverted.is-outlined.is-loading:focus::after,.button.is-link.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #2e63b8 #2e63b8 !important}.button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-info{background-color:#209cee;border-color:transparent;color:#fff}.button.is-info:hover,.button.is-info.is-hovered{background-color:#1497ed;border-color:transparent;color:#fff}.button.is-info:focus,.button.is-info.is-focused{border-color:transparent;color:#fff}.button.is-info:focus:not(:active),.button.is-info.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(32,156,238,0.25)}.button.is-info:active,.button.is-info.is-active{background-color:#1190e3;border-color:transparent;color:#fff}.button.is-info[disabled],fieldset[disabled] .button.is-info{background-color:#209cee;border-color:transparent;box-shadow:none}.button.is-info.is-inverted{background-color:#fff;color:#209cee}.button.is-info.is-inverted:hover,.button.is-info.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-info.is-inverted[disabled],fieldset[disabled] .button.is-info.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#209cee}.button.is-info.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-info.is-outlined{background-color:transparent;border-color:#209cee;color:#209cee}.button.is-info.is-outlined:hover,.button.is-info.is-outlined.is-hovered,.button.is-info.is-outlined:focus,.button.is-info.is-outlined.is-focused{background-color:#209cee;border-color:#209cee;color:#fff}.button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #209cee #209cee !important}.button.is-info.is-outlined.is-loading:hover::after,.button.is-info.is-outlined.is-loading.is-hovered::after,.button.is-info.is-outlined.is-loading:focus::after,.button.is-info.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-info.is-outlined[disabled],fieldset[disabled] .button.is-info.is-outlined{background-color:transparent;border-color:#209cee;box-shadow:none;color:#209cee}.button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-info.is-inverted.is-outlined:hover,.button.is-info.is-inverted.is-outlined.is-hovered,.button.is-info.is-inverted.is-outlined:focus,.button.is-info.is-inverted.is-outlined.is-focused{background-color:#fff;color:#209cee}.button.is-info.is-inverted.is-outlined.is-loading:hover::after,.button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-info.is-inverted.is-outlined.is-loading:focus::after,.button.is-info.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #209cee #209cee !important}.button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-success{background-color:#22c35b;border-color:transparent;color:#fff}.button.is-success:hover,.button.is-success.is-hovered{background-color:#20b856;border-color:transparent;color:#fff}.button.is-success:focus,.button.is-success.is-focused{border-color:transparent;color:#fff}.button.is-success:focus:not(:active),.button.is-success.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(34,195,91,0.25)}.button.is-success:active,.button.is-success.is-active{background-color:#1ead51;border-color:transparent;color:#fff}.button.is-success[disabled],fieldset[disabled] .button.is-success{background-color:#22c35b;border-color:transparent;box-shadow:none}.button.is-success.is-inverted{background-color:#fff;color:#22c35b}.button.is-success.is-inverted:hover,.button.is-success.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-success.is-inverted[disabled],fieldset[disabled] .button.is-success.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#22c35b}.button.is-success.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-success.is-outlined{background-color:transparent;border-color:#22c35b;color:#22c35b}.button.is-success.is-outlined:hover,.button.is-success.is-outlined.is-hovered,.button.is-success.is-outlined:focus,.button.is-success.is-outlined.is-focused{background-color:#22c35b;border-color:#22c35b;color:#fff}.button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #22c35b #22c35b !important}.button.is-success.is-outlined.is-loading:hover::after,.button.is-success.is-outlined.is-loading.is-hovered::after,.button.is-success.is-outlined.is-loading:focus::after,.button.is-success.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-success.is-outlined[disabled],fieldset[disabled] .button.is-success.is-outlined{background-color:transparent;border-color:#22c35b;box-shadow:none;color:#22c35b}.button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-success.is-inverted.is-outlined:hover,.button.is-success.is-inverted.is-outlined.is-hovered,.button.is-success.is-inverted.is-outlined:focus,.button.is-success.is-inverted.is-outlined.is-focused{background-color:#fff;color:#22c35b}.button.is-success.is-inverted.is-outlined.is-loading:hover::after,.button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-success.is-inverted.is-outlined.is-loading:focus::after,.button.is-success.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #22c35b #22c35b !important}.button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-warning{background-color:#ffdd57;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-warning:hover,.button.is-warning.is-hovered{background-color:#ffda4a;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-warning:focus,.button.is-warning.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-warning:focus:not(:active),.button.is-warning.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(255,221,87,0.25)}.button.is-warning:active,.button.is-warning.is-active{background-color:#ffd83e;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-warning[disabled],fieldset[disabled] .button.is-warning{background-color:#ffdd57;border-color:transparent;box-shadow:none}.button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);color:#ffdd57}.button.is-warning.is-inverted:hover,.button.is-warning.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}.button.is-warning.is-inverted[disabled],fieldset[disabled] .button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#ffdd57}.button.is-warning.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}.button.is-warning.is-outlined{background-color:transparent;border-color:#ffdd57;color:#ffdd57}.button.is-warning.is-outlined:hover,.button.is-warning.is-outlined.is-hovered,.button.is-warning.is-outlined:focus,.button.is-warning.is-outlined.is-focused{background-color:#ffdd57;border-color:#ffdd57;color:rgba(0,0,0,0.7)}.button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #ffdd57 #ffdd57 !important}.button.is-warning.is-outlined.is-loading:hover::after,.button.is-warning.is-outlined.is-loading.is-hovered::after,.button.is-warning.is-outlined.is-loading:focus::after,.button.is-warning.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}.button.is-warning.is-outlined[disabled],fieldset[disabled] .button.is-warning.is-outlined{background-color:transparent;border-color:#ffdd57;box-shadow:none;color:#ffdd57}.button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}.button.is-warning.is-inverted.is-outlined:hover,.button.is-warning.is-inverted.is-outlined.is-hovered,.button.is-warning.is-inverted.is-outlined:focus,.button.is-warning.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#ffdd57}.button.is-warning.is-inverted.is-outlined.is-loading:hover::after,.button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-warning.is-inverted.is-outlined.is-loading:focus::after,.button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ffdd57 #ffdd57 !important}.button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}.button.is-danger{background-color:#da0b00;border-color:transparent;color:#fff}.button.is-danger:hover,.button.is-danger.is-hovered{background-color:#cd0a00;border-color:transparent;color:#fff}.button.is-danger:focus,.button.is-danger.is-focused{border-color:transparent;color:#fff}.button.is-danger:focus:not(:active),.button.is-danger.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(218,11,0,0.25)}.button.is-danger:active,.button.is-danger.is-active{background-color:#c10a00;border-color:transparent;color:#fff}.button.is-danger[disabled],fieldset[disabled] .button.is-danger{background-color:#da0b00;border-color:transparent;box-shadow:none}.button.is-danger.is-inverted{background-color:#fff;color:#da0b00}.button.is-danger.is-inverted:hover,.button.is-danger.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-danger.is-inverted[disabled],fieldset[disabled] .button.is-danger.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#da0b00}.button.is-danger.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-danger.is-outlined{background-color:transparent;border-color:#da0b00;color:#da0b00}.button.is-danger.is-outlined:hover,.button.is-danger.is-outlined.is-hovered,.button.is-danger.is-outlined:focus,.button.is-danger.is-outlined.is-focused{background-color:#da0b00;border-color:#da0b00;color:#fff}.button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #da0b00 #da0b00 !important}.button.is-danger.is-outlined.is-loading:hover::after,.button.is-danger.is-outlined.is-loading.is-hovered::after,.button.is-danger.is-outlined.is-loading:focus::after,.button.is-danger.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-danger.is-outlined[disabled],fieldset[disabled] .button.is-danger.is-outlined{background-color:transparent;border-color:#da0b00;box-shadow:none;color:#da0b00}.button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-danger.is-inverted.is-outlined:hover,.button.is-danger.is-inverted.is-outlined.is-hovered,.button.is-danger.is-inverted.is-outlined:focus,.button.is-danger.is-inverted.is-outlined.is-focused{background-color:#fff;color:#da0b00}.button.is-danger.is-inverted.is-outlined.is-loading:hover::after,.button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-danger.is-inverted.is-outlined.is-loading:focus::after,.button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #da0b00 #da0b00 !important}.button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-small,#documenter .docs-sidebar form.docs-search>input.button{border-radius:2px;font-size:.75rem}.button.is-normal{font-size:1rem}.button.is-medium{font-size:1.25rem}.button.is-large{font-size:1.5rem}.button[disabled],fieldset[disabled] .button{background-color:#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 / 2));top:calc(50% - (1em / 2));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:290486px;padding-left:1em;padding-right:1em}.buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.buttons .button{margin-bottom:0.5rem}.buttons .button:not(:last-child):not(.is-fullwidth){margin-right:0.5rem}.buttons:last-child{margin-bottom:-0.5rem}.buttons:not(:last-child){margin-bottom:1rem}.buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){border-radius:2px;font-size:.75rem}.buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}.buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}.buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}.buttons.has-addons .button:last-child{margin-right:0}.buttons.has-addons .button:hover,.buttons.has-addons .button.is-hovered{z-index:2}.buttons.has-addons .button:focus,.buttons.has-addons .button.is-focused,.buttons.has-addons .button:active,.buttons.has-addons .button.is-active,.buttons.has-addons .button.is-selected{z-index:3}.buttons.has-addons .button:focus:hover,.buttons.has-addons .button.is-focused:hover,.buttons.has-addons .button:active:hover,.buttons.has-addons .button.is-active:hover,.buttons.has-addons .button.is-selected:hover{z-index:4}.buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}.buttons.is-centered{justify-content:center}.buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}.buttons.is-right{justify-content:flex-end}.buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}.container{flex-grow:1;margin:0 auto;position:relative;width:auto}@media screen and (min-width: 1056px){.container{max-width:992px}.container.is-fluid{margin-left:32px;margin-right:32px;max-width:none}}@media screen and (max-width: 1215px){.container.is-widescreen{max-width:1152px}}@media screen and (max-width: 1407px){.container.is-fullhd{max-width:1344px}}@media screen and (min-width: 1216px){.container{max-width:1152px}}@media screen and (min-width: 1408px){.container{max-width:1344px}}.content li+li{margin-top:0.25em}.content p:not(:last-child),.content dl:not(:last-child),.content ol:not(:last-child),.content ul:not(:last-child),.content blockquote:not(:last-child),.content pre:not(:last-child),.content table:not(:last-child){margin-bottom:1em}.content h1,.content h2,.content h3,.content h4,.content h5,.content h6{color:#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:left}.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-medium{font-size:1.25rem}.content.is-large{font-size:1.5rem}.icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}.icon.is-small,#documenter .docs-sidebar form.docs-search>input.icon{height:1rem;width:1rem}.icon.is-medium{height:2rem;width:2rem}.icon.is-large{height:3rem;width:3rem}.image,#documenter .docs-sidebar .docs-logo>img{display:block;position:relative}.image img,#documenter .docs-sidebar .docs-logo>img img{display:block;height:auto;width:100%}.image img.is-rounded,#documenter .docs-sidebar .docs-logo>img img.is-rounded{border-radius:290486px}.image.is-square img,#documenter .docs-sidebar .docs-logo>img.is-square img,.image.is-square .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,.image.is-1by1 img,#documenter .docs-sidebar .docs-logo>img.is-1by1 img,.image.is-1by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,.image.is-5by4 img,#documenter .docs-sidebar .docs-logo>img.is-5by4 img,.image.is-5by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,.image.is-4by3 img,#documenter .docs-sidebar .docs-logo>img.is-4by3 img,.image.is-4by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,.image.is-3by2 img,#documenter .docs-sidebar .docs-logo>img.is-3by2 img,.image.is-3by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,.image.is-5by3 img,#documenter .docs-sidebar .docs-logo>img.is-5by3 img,.image.is-5by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,.image.is-16by9 img,#documenter .docs-sidebar .docs-logo>img.is-16by9 img,.image.is-16by9 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,.image.is-2by1 img,#documenter .docs-sidebar .docs-logo>img.is-2by1 img,.image.is-2by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,.image.is-3by1 img,#documenter .docs-sidebar .docs-logo>img.is-3by1 img,.image.is-3by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,.image.is-4by5 img,#documenter .docs-sidebar .docs-logo>img.is-4by5 img,.image.is-4by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,.image.is-3by4 img,#documenter .docs-sidebar .docs-logo>img.is-3by4 img,.image.is-3by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,.image.is-2by3 img,#documenter .docs-sidebar .docs-logo>img.is-2by3 img,.image.is-2by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,.image.is-3by5 img,#documenter .docs-sidebar .docs-logo>img.is-3by5 img,.image.is-3by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,.image.is-9by16 img,#documenter .docs-sidebar .docs-logo>img.is-9by16 img,.image.is-9by16 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,.image.is-1by2 img,#documenter .docs-sidebar .docs-logo>img.is-1by2 img,.image.is-1by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,.image.is-1by3 img,#documenter .docs-sidebar .docs-logo>img.is-1by3 img,.image.is-1by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio{height:100%;width:100%}.image.is-square,#documenter .docs-sidebar .docs-logo>img.is-square,.image.is-1by1,#documenter .docs-sidebar .docs-logo>img.is-1by1{padding-top:100%}.image.is-5by4,#documenter .docs-sidebar .docs-logo>img.is-5by4{padding-top:80%}.image.is-4by3,#documenter .docs-sidebar .docs-logo>img.is-4by3{padding-top:75%}.image.is-3by2,#documenter .docs-sidebar .docs-logo>img.is-3by2{padding-top:66.6666%}.image.is-5by3,#documenter .docs-sidebar .docs-logo>img.is-5by3{padding-top:60%}.image.is-16by9,#documenter .docs-sidebar .docs-logo>img.is-16by9{padding-top:56.25%}.image.is-2by1,#documenter .docs-sidebar .docs-logo>img.is-2by1{padding-top:50%}.image.is-3by1,#documenter .docs-sidebar .docs-logo>img.is-3by1{padding-top:33.3333%}.image.is-4by5,#documenter .docs-sidebar .docs-logo>img.is-4by5{padding-top:125%}.image.is-3by4,#documenter .docs-sidebar .docs-logo>img.is-3by4{padding-top:133.3333%}.image.is-2by3,#documenter .docs-sidebar .docs-logo>img.is-2by3{padding-top:150%}.image.is-3by5,#documenter .docs-sidebar .docs-logo>img.is-3by5{padding-top:166.6666%}.image.is-9by16,#documenter .docs-sidebar .docs-logo>img.is-9by16{padding-top:177.7777%}.image.is-1by2,#documenter .docs-sidebar .docs-logo>img.is-1by2{padding-top:200%}.image.is-1by3,#documenter .docs-sidebar .docs-logo>img.is-1by3{padding-top:300%}.image.is-16x16,#documenter .docs-sidebar .docs-logo>img.is-16x16{height:16px;width:16px}.image.is-24x24,#documenter .docs-sidebar .docs-logo>img.is-24x24{height:24px;width:24px}.image.is-32x32,#documenter .docs-sidebar .docs-logo>img.is-32x32{height:32px;width:32px}.image.is-48x48,#documenter .docs-sidebar .docs-logo>img.is-48x48{height:48px;width:48px}.image.is-64x64,#documenter .docs-sidebar .docs-logo>img.is-64x64{height:64px;width:64px}.image.is-96x96,#documenter .docs-sidebar .docs-logo>img.is-96x96{height:96px;width:96px}.image.is-128x128,#documenter .docs-sidebar .docs-logo>img.is-128x128{height:128px;width:128px}.notification{background-color:#f5f5f5;border-radius:4px;padding:1.25rem 2.5rem 1.25rem 1.5rem;position:relative}.notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}.notification strong{color:currentColor}.notification code,.notification pre{background:#fff}.notification pre code{background:transparent}.notification>.delete{position:absolute;right:0.5rem;top:0.5rem}.notification .title,.notification .subtitle,.notification .content{color:currentColor}.notification.is-white{background-color:#fff;color:#0a0a0a}.notification.is-black{background-color:#0a0a0a;color:#fff}.notification.is-light{background-color:#f5f5f5;color:#363636}.notification.is-dark,.content kbd.notification{background-color:#363636;color:#f5f5f5}.notification.is-primary,.docstring>section>a.notification.docs-sourcelink{background-color:#4eb5de;color:#fff}.notification.is-link{background-color:#2e63b8;color:#fff}.notification.is-info{background-color:#209cee;color:#fff}.notification.is-success{background-color:#22c35b;color:#fff}.notification.is-warning{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.notification.is-danger{background-color:#da0b00;color:#fff}.progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:290486px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}.progress::-webkit-progress-bar{background-color:#dbdbdb}.progress::-webkit-progress-value{background-color:#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%, #dbdbdb 30%)}.progress.is-black::-webkit-progress-value{background-color:#0a0a0a}.progress.is-black::-moz-progress-bar{background-color:#0a0a0a}.progress.is-black::-ms-fill{background-color:#0a0a0a}.progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #dbdbdb 30%)}.progress.is-light::-webkit-progress-value{background-color:#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%, #dbdbdb 30%)}.progress.is-dark::-webkit-progress-value,.content kbd.progress::-webkit-progress-value{background-color:#363636}.progress.is-dark::-moz-progress-bar,.content kbd.progress::-moz-progress-bar{background-color:#363636}.progress.is-dark::-ms-fill,.content kbd.progress::-ms-fill{background-color:#363636}.progress.is-dark:indeterminate,.content kbd.progress:indeterminate{background-image:linear-gradient(to right, #363636 30%, #dbdbdb 30%)}.progress.is-primary::-webkit-progress-value,.docstring>section>a.progress.docs-sourcelink::-webkit-progress-value{background-color:#4eb5de}.progress.is-primary::-moz-progress-bar,.docstring>section>a.progress.docs-sourcelink::-moz-progress-bar{background-color:#4eb5de}.progress.is-primary::-ms-fill,.docstring>section>a.progress.docs-sourcelink::-ms-fill{background-color:#4eb5de}.progress.is-primary:indeterminate,.docstring>section>a.progress.docs-sourcelink:indeterminate{background-image:linear-gradient(to right, #4eb5de 30%, #dbdbdb 30%)}.progress.is-link::-webkit-progress-value{background-color:#2e63b8}.progress.is-link::-moz-progress-bar{background-color:#2e63b8}.progress.is-link::-ms-fill{background-color:#2e63b8}.progress.is-link:indeterminate{background-image:linear-gradient(to right, #2e63b8 30%, #dbdbdb 30%)}.progress.is-info::-webkit-progress-value{background-color:#209cee}.progress.is-info::-moz-progress-bar{background-color:#209cee}.progress.is-info::-ms-fill{background-color:#209cee}.progress.is-info:indeterminate{background-image:linear-gradient(to right, #209cee 30%, #dbdbdb 30%)}.progress.is-success::-webkit-progress-value{background-color:#22c35b}.progress.is-success::-moz-progress-bar{background-color:#22c35b}.progress.is-success::-ms-fill{background-color:#22c35b}.progress.is-success:indeterminate{background-image:linear-gradient(to right, #22c35b 30%, #dbdbdb 30%)}.progress.is-warning::-webkit-progress-value{background-color:#ffdd57}.progress.is-warning::-moz-progress-bar{background-color:#ffdd57}.progress.is-warning::-ms-fill{background-color:#ffdd57}.progress.is-warning:indeterminate{background-image:linear-gradient(to right, #ffdd57 30%, #dbdbdb 30%)}.progress.is-danger::-webkit-progress-value{background-color:#da0b00}.progress.is-danger::-moz-progress-bar{background-color:#da0b00}.progress.is-danger::-ms-fill{background-color:#da0b00}.progress.is-danger:indeterminate{background-image:linear-gradient(to right, #da0b00 30%, #dbdbdb 30%)}.progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#dbdbdb;background-image:linear-gradient(to right, #222 30%, #dbdbdb 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}.progress:indeterminate::-webkit-progress-bar{background-color:transparent}.progress:indeterminate::-moz-progress-bar{background-color:transparent}.progress.is-small,#documenter .docs-sidebar form.docs-search>input.progress{height:.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:#363636}.table td,.table th{border:1px solid #dbdbdb;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}.table td.is-white,.table th.is-white{background-color:#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:#363636}.table td.is-dark,.table th.is-dark{background-color:#363636;border-color:#363636;color:#f5f5f5}.table td.is-primary,.table th.is-primary{background-color:#4eb5de;border-color:#4eb5de;color:#fff}.table td.is-link,.table th.is-link{background-color:#2e63b8;border-color:#2e63b8;color:#fff}.table td.is-info,.table th.is-info{background-color:#209cee;border-color:#209cee;color:#fff}.table td.is-success,.table th.is-success{background-color:#22c35b;border-color:#22c35b;color:#fff}.table td.is-warning,.table th.is-warning{background-color:#ffdd57;border-color:#ffdd57;color:rgba(0,0,0,0.7)}.table td.is-danger,.table th.is-danger{background-color:#da0b00;border-color:#da0b00;color:#fff}.table td.is-narrow,.table th.is-narrow{white-space:nowrap;width:1%}.table td.is-selected,.table th.is-selected{background-color:#4eb5de;color:#fff}.table td.is-selected a,.table td.is-selected strong,.table th.is-selected a,.table th.is-selected strong{color:currentColor}.table th{color:#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:0.5rem}.tags:last-child{margin-bottom:-0.5rem}.tags:not(:last-child){margin-bottom:1rem}.tags.are-medium .tag:not(.is-normal):not(.is-large),.tags.are-medium .content kbd:not(.is-normal):not(.is-large),.content .tags.are-medium kbd:not(.is-normal):not(.is-large),.tags.are-medium .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-large){font-size:1rem}.tags.are-large .tag:not(.is-normal):not(.is-medium),.tags.are-large .content kbd:not(.is-normal):not(.is-medium),.content .tags.are-large kbd:not(.is-normal):not(.is-medium),.tags.are-large .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-medium){font-size:1.25rem}.tags.is-centered{justify-content:center}.tags.is-centered .tag,.tags.is-centered .content kbd,.content .tags.is-centered kbd,.tags.is-centered .docstring>section>a.docs-sourcelink{margin-right:0.25rem;margin-left:0.25rem}.tags.is-right{justify-content:flex-end}.tags.is-right .tag:not(:first-child),.tags.is-right .content kbd:not(:first-child),.content .tags.is-right kbd:not(:first-child),.tags.is-right .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0.5rem}.tags.is-right .tag:not(:last-child),.tags.is-right .content kbd:not(:last-child),.content .tags.is-right kbd:not(:last-child),.tags.is-right .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0}.tags.has-addons .tag,.tags.has-addons .content kbd,.content .tags.has-addons kbd,.tags.has-addons .docstring>section>a.docs-sourcelink{margin-right:0}.tags.has-addons .tag:not(:first-child),.tags.has-addons .content kbd:not(:first-child),.content .tags.has-addons kbd:not(:first-child),.tags.has-addons .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0;border-bottom-left-radius:0;border-top-left-radius:0}.tags.has-addons .tag:not(:last-child),.tags.has-addons .content kbd:not(:last-child),.content .tags.has-addons kbd:not(:last-child),.tags.has-addons .docstring>section>a.docs-sourcelink:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.tag:not(body),.content kbd:not(body),.docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#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:0.25rem;margin-right:-0.375rem}.tag.is-white:not(body),.content kbd.is-white:not(body),.docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#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:#363636}.tag.is-dark:not(body),.content kbd:not(body),.docstring>section>a.docs-sourcelink.is-dark:not(body),.content .docstring>section>kbd:not(body){background-color:#363636;color:#f5f5f5}.tag.is-primary:not(body),.content kbd.is-primary:not(body),.docstring>section>a.docs-sourcelink:not(body){background-color:#4eb5de;color:#fff}.tag.is-link:not(body),.content kbd.is-link:not(body),.docstring>section>a.docs-sourcelink.is-link:not(body){background-color:#2e63b8;color:#fff}.tag.is-info:not(body),.content kbd.is-info:not(body),.docstring>section>a.docs-sourcelink.is-info:not(body){background-color:#209cee;color:#fff}.tag.is-success:not(body),.content kbd.is-success:not(body),.docstring>section>a.docs-sourcelink.is-success:not(body){background-color:#22c35b;color:#fff}.tag.is-warning:not(body),.content kbd.is-warning:not(body),.docstring>section>a.docs-sourcelink.is-warning:not(body){background-color:#ffdd57;color:rgba(0,0,0,0.7)}.tag.is-danger:not(body),.content kbd.is-danger:not(body),.docstring>section>a.docs-sourcelink.is-danger:not(body){background-color:#da0b00;color:#fff}.tag.is-normal:not(body),.content kbd.is-normal:not(body),.docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.75rem}.tag.is-medium:not(body),.content kbd.is-medium:not(body),.docstring>section>a.docs-sourcelink.is-medium:not(body){font-size:1rem}.tag.is-large:not(body),.content kbd.is-large:not(body),.docstring>section>a.docs-sourcelink.is-large:not(body){font-size:1.25rem}.tag:not(body) .icon:first-child:not(:last-child),.content kbd:not(body) .icon:first-child:not(:last-child),.docstring>section>a.docs-sourcelink:not(body) .icon:first-child:not(:last-child){margin-left:-0.375em;margin-right:0.1875em}.tag:not(body) .icon:last-child:not(:first-child),.content kbd:not(body) .icon:last-child:not(:first-child),.docstring>section>a.docs-sourcelink:not(body) .icon:last-child:not(:first-child){margin-left:0.1875em;margin-right:-0.375em}.tag:not(body) .icon:first-child:last-child,.content kbd:not(body) .icon:first-child:last-child,.docstring>section>a.docs-sourcelink:not(body) .icon:first-child:last-child{margin-left:-0.375em;margin-right:-0.375em}.tag.is-delete:not(body),.content kbd.is-delete:not(body),.docstring>section>a.docs-sourcelink.is-delete:not(body){margin-left:1px;padding:0;position:relative;width:2em}.tag.is-delete:not(body)::before,.content kbd.is-delete:not(body)::before,.docstring>section>a.docs-sourcelink.is-delete:not(body)::before,.tag.is-delete:not(body)::after,.content kbd.is-delete:not(body)::after,.docstring>section>a.docs-sourcelink.is-delete:not(body)::after{background-color:currentColor;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.tag.is-delete:not(body)::before,.content kbd.is-delete:not(body)::before,.docstring>section>a.docs-sourcelink.is-delete:not(body)::before{height:1px;width:50%}.tag.is-delete:not(body)::after,.content kbd.is-delete:not(body)::after,.docstring>section>a.docs-sourcelink.is-delete:not(body)::after{height:50%;width:1px}.tag.is-delete:not(body):hover,.content kbd.is-delete:not(body):hover,.docstring>section>a.docs-sourcelink.is-delete:not(body):hover,.tag.is-delete:not(body):focus,.content kbd.is-delete:not(body):focus,.docstring>section>a.docs-sourcelink.is-delete:not(body):focus{background-color:#e8e8e8}.tag.is-delete:not(body):active,.content kbd.is-delete:not(body):active,.docstring>section>a.docs-sourcelink.is-delete:not(body):active{background-color:#dbdbdb}.tag.is-rounded:not(body),#documenter .docs-sidebar form.docs-search>input:not(body),.content kbd.is-rounded:not(body),#documenter .docs-sidebar .content form.docs-search>input:not(body),.docstring>section>a.docs-sourcelink.is-rounded:not(body){border-radius:290486px}a.tag:hover,.docstring>section>a.docs-sourcelink:hover{text-decoration:underline}.title,.subtitle{word-break:break-word}.title em,.title span,.subtitle em,.subtitle span{font-weight:inherit}.title sub,.subtitle sub{font-size:.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:#363636;font-size:2rem;font-weight:600;line-height:1.125}.title strong{color:inherit;font-weight:inherit}.title+.highlight{margin-top:-0.75rem}.title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}.title.is-1{font-size:3rem}.title.is-2{font-size:2.5rem}.title.is-3{font-size:2rem}.title.is-4{font-size:1.5rem}.title.is-5{font-size:1.25rem}.title.is-6{font-size:1rem}.title.is-7{font-size:.75rem}.subtitle{color:#4a4a4a;font-size:1.25rem;font-weight:400;line-height:1.25}.subtitle strong{color:#363636;font-weight:600}.subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}.subtitle.is-1{font-size:3rem}.subtitle.is-2{font-size:2.5rem}.subtitle.is-3{font-size:2rem}.subtitle.is-4{font-size:1.5rem}.subtitle.is-5{font-size:1.25rem}.subtitle.is-6{font-size:1rem}.subtitle.is-7{font-size:.75rem}.heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}.highlight{font-weight:400;max-width:100%;overflow:hidden;padding:0}.highlight pre{overflow:auto;max-width:100%}.number{align-items:center;background-color:#f5f5f5;border-radius:290486px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:0.25rem 0.5rem;text-align:center;vertical-align:top}.select select,.textarea,.input,#documenter .docs-sidebar form.docs-search>input{background-color:#fff;border-color:#dbdbdb;border-radius:4px;color:#363636}.select select::-moz-placeholder,.textarea::-moz-placeholder,.input::-moz-placeholder,#documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:rgba(54,54,54,0.3)}.select select::-webkit-input-placeholder,.textarea::-webkit-input-placeholder,.input::-webkit-input-placeholder,#documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:rgba(54,54,54,0.3)}.select select:-moz-placeholder,.textarea:-moz-placeholder,.input:-moz-placeholder,#documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:rgba(54,54,54,0.3)}.select select:-ms-input-placeholder,.textarea:-ms-input-placeholder,.input:-ms-input-placeholder,#documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:rgba(54,54,54,0.3)}.select select:hover,.textarea:hover,.input:hover,#documenter .docs-sidebar form.docs-search>input:hover,.select select.is-hovered,.is-hovered.textarea,.is-hovered.input,#documenter .docs-sidebar form.docs-search>input.is-hovered{border-color:#b5b5b5}.select select:focus,.textarea:focus,.input:focus,#documenter .docs-sidebar form.docs-search>input:focus,.select select.is-focused,.is-focused.textarea,.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.select select:active,.textarea:active,.input:active,#documenter .docs-sidebar form.docs-search>input:active,.select select.is-active,.is-active.textarea,.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{border-color:#2e63b8;box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.select select[disabled],.textarea[disabled],.input[disabled],#documenter .docs-sidebar form.docs-search>input[disabled],fieldset[disabled] .select select,.select fieldset[disabled] select,fieldset[disabled] .textarea,fieldset[disabled] .input,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input{background-color:#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 1px 2px rgba(10,10,10,0.1);max-width:100%;width:100%}.textarea[readonly],.input[readonly],#documenter .docs-sidebar form.docs-search>input[readonly]{box-shadow:none}.is-white.textarea,.is-white.input,#documenter .docs-sidebar form.docs-search>input.is-white{border-color:#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:290486px;padding-left:1em;padding-right:1em}.input.is-static,#documenter .docs-sidebar form.docs-search>input.is-static{background-color:transparent;border-color:transparent;box-shadow:none;padding-left:0;padding-right:0}.textarea{display:block;max-width:100%;min-width:100%;padding:0.625em;resize:vertical}.textarea:not([rows]){max-height:600px;min-height:120px}.textarea[rows]{height:initial}.textarea.has-fixed-size{resize:none}.radio,.checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}.radio input,.checkbox input{cursor:pointer}.radio:hover,.checkbox:hover{color:#363636}.radio[disabled],.checkbox[disabled],fieldset[disabled] .radio,fieldset[disabled] .checkbox{color:#6b6b6b;cursor:not-allowed}.radio+.radio{margin-left:0.5em}.select{display:inline-block;max-width:100%;position:relative;vertical-align:top}.select:not(.is-multiple){height:2.25em}.select:not(.is-multiple):not(.is-loading)::after{border-color:#2e63b8;right:1.125em;z-index:4}.select.is-rounded select,#documenter .docs-sidebar form.docs-search>input.select select{border-radius:290486px;padding-left:1em}.select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}.select select::-ms-expand{display:none}.select select[disabled]:hover,fieldset[disabled] .select select:hover{border-color:#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:#363636}.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}.select.is-fullwidth{width:100%}.select.is-fullwidth select{width:100%}.select.is-loading::after{margin-top:0;position:absolute;right:0.625em;top:0.625em;transform:none}.select.is-loading.is-small:after,#documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.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:#363636}.file.is-light:hover .file-cta,.file.is-light.is-hovered .file-cta{background-color:#eee;border-color:transparent;color:#363636}.file.is-light:focus .file-cta,.file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(245,245,245,0.25);color:#363636}.file.is-light:active .file-cta,.file.is-light.is-active .file-cta{background-color:#e8e8e8;border-color:transparent;color:#363636}.file.is-dark .file-cta,.content kbd.file .file-cta{background-color:#363636;border-color:transparent;color:#f5f5f5}.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:#f5f5f5}.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:#f5f5f5}.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:#f5f5f5}.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-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:#363636}.file-label:hover .file-name{border-color:#d5d5d5}.file-label:active .file-cta{background-color:#e8e8e8;color:#363636}.file-label:active .file-name{border-color:#cfcfcf}.file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}.file-cta,.file-name{border-color:#dbdbdb;border-radius:4px;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}.file-cta{background-color:#f5f5f5;color:#4a4a4a}.file-name{border-color:#dbdbdb;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:left;text-overflow:ellipsis}.file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:0.5em;width:1em}.file-icon .fa{font-size:14px}.label{color:#363636;display:block;font-size:1rem;font-weight:700}.label:not(:last-child){margin-bottom:0.5em}.label.is-small,#documenter .docs-sidebar form.docs-search>input.label{font-size:.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:0.75rem}.field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}.field.is-grouped.is-grouped-centered{justify-content:center}.field.is-grouped.is-grouped-right{justify-content:flex-end}.field.is-grouped.is-grouped-multiline{flex-wrap:wrap}.field.is-grouped.is-grouped-multiline>.control:last-child,.field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:0.75rem}.field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-0.75rem}.field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{.field.is-horizontal{display:flex}}.field-label .label{font-size:inherit}@media screen and (max-width: 768px){.field-label{margin-bottom:0.5rem}}@media screen and (min-width: 769px),print{.field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}.field-label.is-small,#documenter .docs-sidebar form.docs-search>input.field-label{font-size:.75rem;padding-top:0.375em}.field-label.is-normal{padding-top:0.375em}.field-label.is-medium{font-size:1.25rem;padding-top:0.375em}.field-label.is-large{font-size:1.5rem;padding-top:0.375em}}.field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{.field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}.field-body .field{margin-bottom:0}.field-body>.field{flex-shrink:1}.field-body>.field:not(.is-narrow){flex-grow:1}.field-body>.field:not(:last-child){margin-right:0.75rem}}.control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:left}.control.has-icons-left .input:focus~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input:focus~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input:focus~.icon,.control.has-icons-left .select:focus~.icon,.control.has-icons-right .input:focus~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input:focus~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input:focus~.icon,.control.has-icons-right .select:focus~.icon{color:#6b6b6b}.control.has-icons-left .input.is-small~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input~.icon,.control.has-icons-left .select.is-small~.icon,.control.has-icons-right .input.is-small~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input~.icon,.control.has-icons-right .select.is-small~.icon{font-size:.75rem}.control.has-icons-left .input.is-medium~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-medium~.icon,.control.has-icons-left .select.is-medium~.icon,.control.has-icons-right .input.is-medium~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-medium~.icon,.control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}.control.has-icons-left .input.is-large~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-large~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-large~.icon,.control.has-icons-left .select.is-large~.icon,.control.has-icons-right .input.is-large~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-large~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-large~.icon,.control.has-icons-right .select.is-large~.icon{font-size:1.5rem}.control.has-icons-left .icon,.control.has-icons-right .icon{color:#dbdbdb;height:2.25em;pointer-events:none;position:absolute;top:0;width:2.25em;z-index:4}.control.has-icons-left .input,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input,.control.has-icons-left .select select{padding-left:2.25em}.control.has-icons-left .icon.is-left{left:0}.control.has-icons-right .input,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input,.control.has-icons-right .select select{padding-right:2.25em}.control.has-icons-right .icon.is-right{right:0}.control.is-loading::after{position:absolute !important;right:0.625em;top:0.625em;z-index:4}.control.is-loading.is-small:after,#documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.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:0.5em}.breadcrumb .icon:last-child{margin-left:0.5em}.breadcrumb.is-centered ol,.breadcrumb.is-centered ul{justify-content:center}.breadcrumb.is-right ol,.breadcrumb.is-right ul{justify-content:flex-end}.breadcrumb.is-small,#documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.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;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1);color:#222;max-width:100%;position:relative}.card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 1px 2px 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:.75rem}.card-header-title.is-centered{justify-content:center}.card-header-icon{align-items:center;cursor:pointer;display:flex;justify-content:center;padding:.75rem}.card-image{display:block;position:relative}.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 #dbdbdb;align-items:stretch;display:flex}.card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}.card-footer-item:not(:last-child){border-right:1px solid #dbdbdb}.card .media:not(:last-child){margin-bottom:1.5rem}.dropdown{display:inline-flex;position:relative;vertical-align:top}.dropdown.is-active .dropdown-menu,.dropdown.is-hoverable:hover .dropdown-menu{display:block}.dropdown.is-right .dropdown-menu{left:auto;right:0}.dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}.dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}.dropdown-content{background-color:#fff;border-radius:4px;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1);padding-bottom:.5rem;padding-top:.5rem}.dropdown-item{color:#4a4a4a;display:block;font-size:0.875rem;line-height:1.5;padding:0.375rem 1rem;position:relative}a.dropdown-item,button.dropdown-item{padding-right:3rem;text-align:left;white-space:nowrap;width:100%}a.dropdown-item:hover,button.dropdown-item:hover{background-color:#f5f5f5;color:#0a0a0a}a.dropdown-item.is-active,button.dropdown-item.is-active{background-color:#2e63b8;color:#fff}.dropdown-divider{background-color:#dbdbdb;border:none;display:block;height:1px;margin:0.5rem 0}.level{align-items:center;justify-content:space-between}.level code{border-radius:4px}.level img{display:inline-block;vertical-align:top}.level.is-mobile{display:flex}.level.is-mobile .level-left,.level.is-mobile .level-right{display:flex}.level.is-mobile .level-left+.level-right{margin-top:0}.level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:.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}}.list{background-color:#fff;border-radius:4px;box-shadow:0 2px 3px rgba(10,10,10,0.1),0 0 0 1px rgba(10,10,10,0.1)}.list-item{display:block;padding:0.5em 1em}.list-item:not(a){color:#222}.list-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-item:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.list-item:not(:last-child){border-bottom:1px solid #dbdbdb}.list-item.is-active{background-color:#2e63b8;color:#fff}a.list-item{background-color:#f5f5f5;cursor:pointer}.media{align-items:flex-start;display:flex;text-align:left}.media .content:not(:last-child){margin-bottom:0.75rem}.media .media{border-top:1px solid rgba(219,219,219,0.5);display:flex;padding-top:0.75rem}.media .media .content:not(:last-child),.media .media .control:not(:last-child){margin-bottom:0.5rem}.media .media .media{padding-top:0.5rem}.media .media .media+.media{margin-top:0.5rem}.media+.media{border-top:1px solid rgba(219,219,219,0.5);margin-top:1rem;padding-top:1rem}.media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}.media-left,.media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}.media-left{margin-right:1rem}.media-right{margin-left:1rem}.media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:left}@media screen and (max-width: 768px){.media-content{overflow-x:auto}}.menu{font-size:1rem}.menu.is-small,#documenter .docs-sidebar form.docs-search>input.menu{font-size:.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;color:#4d4d4d}.message.is-black{background-color:#fafafa}.message.is-black .message-header{background-color:#0a0a0a;color:#fff}.message.is-black .message-body{border-color:#0a0a0a;color:#090909}.message.is-light{background-color:#fafafa}.message.is-light .message-header{background-color:#f5f5f5;color:#363636}.message.is-light .message-body{border-color:#f5f5f5;color:#505050}.message.is-dark,.content kbd.message{background-color:#fafafa}.message.is-dark .message-header,.content kbd.message .message-header{background-color:#363636;color:#f5f5f5}.message.is-dark .message-body,.content kbd.message .message-body{border-color:#363636;color:#2a2a2a}.message.is-primary,.docstring>section>a.message.docs-sourcelink{background-color:#f6fbfd}.message.is-primary .message-header,.docstring>section>a.message.docs-sourcelink .message-header{background-color:#4eb5de;color:#fff}.message.is-primary .message-body,.docstring>section>a.message.docs-sourcelink .message-body{border-color:#4eb5de;color:#1f556a}.message.is-link{background-color:#f7f9fd}.message.is-link .message-header{background-color:#2e63b8;color:#fff}.message.is-link .message-body{border-color:#2e63b8;color:#264981}.message.is-info{background-color:#f6fbfe}.message.is-info .message-header{background-color:#209cee;color:#fff}.message.is-info .message-body{border-color:#209cee;color:#12537d}.message.is-success{background-color:#f6fdf9}.message.is-success .message-header{background-color:#22c35b;color:#fff}.message.is-success .message-body{border-color:#22c35b;color:#0f361d}.message.is-warning{background-color:#fffdf5}.message.is-warning .message-header{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.message.is-warning .message-body{border-color:#ffdd57;color:#3c3108}.message.is-danger{background-color:#fff5f5}.message.is-danger .message-header{background-color:#da0b00;color:#fff}.message.is-danger .message-body{border-color:#da0b00;color:#9b0c04}.message-header{align-items:center;background-color:#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:0.75em}.message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}.message-body{border-color:#dbdbdb;border-radius:4px;border-style:solid;border-width:0 0 0 4px;color:#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),print{.modal-content,.modal-card{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}.modal-close{background:none;height:40px;position:fixed;right:20px;top:20px;width:40px}.modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}.modal-card-head,.modal-card-foot{align-items:center;background-color:#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:0.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:#363636}.navbar.is-light .navbar-brand>.navbar-item,.navbar.is-light .navbar-brand .navbar-link{color:#363636}.navbar.is-light .navbar-brand>a.navbar-item:focus,.navbar.is-light .navbar-brand>a.navbar-item:hover,.navbar.is-light .navbar-brand>a.navbar-item.is-active,.navbar.is-light .navbar-brand .navbar-link:focus,.navbar.is-light .navbar-brand .navbar-link:hover,.navbar.is-light .navbar-brand .navbar-link.is-active{background-color:#e8e8e8;color:#363636}.navbar.is-light .navbar-brand .navbar-link::after{border-color:#363636}.navbar.is-light .navbar-burger{color:#363636}@media screen and (min-width: 1056px){.navbar.is-light .navbar-start>.navbar-item,.navbar.is-light .navbar-start .navbar-link,.navbar.is-light .navbar-end>.navbar-item,.navbar.is-light .navbar-end .navbar-link{color:#363636}.navbar.is-light .navbar-start>a.navbar-item:focus,.navbar.is-light .navbar-start>a.navbar-item:hover,.navbar.is-light .navbar-start>a.navbar-item.is-active,.navbar.is-light .navbar-start .navbar-link:focus,.navbar.is-light .navbar-start .navbar-link:hover,.navbar.is-light .navbar-start .navbar-link.is-active,.navbar.is-light .navbar-end>a.navbar-item:focus,.navbar.is-light .navbar-end>a.navbar-item:hover,.navbar.is-light .navbar-end>a.navbar-item.is-active,.navbar.is-light .navbar-end .navbar-link:focus,.navbar.is-light .navbar-end .navbar-link:hover,.navbar.is-light .navbar-end .navbar-link.is-active{background-color:#e8e8e8;color:#363636}.navbar.is-light .navbar-start .navbar-link::after,.navbar.is-light .navbar-end .navbar-link::after{border-color:#363636}.navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{background-color:#e8e8e8;color:#363636}.navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:#363636}}.navbar.is-dark,.content kbd.navbar{background-color:#363636;color:#f5f5f5}.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:#f5f5f5}.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:#f5f5f5}.navbar.is-dark .navbar-brand .navbar-link::after,.content kbd.navbar .navbar-brand .navbar-link::after{border-color:#f5f5f5}.navbar.is-dark .navbar-burger,.content kbd.navbar .navbar-burger{color:#f5f5f5}@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:#f5f5f5}.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:#f5f5f5}.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:#f5f5f5}.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:#f5f5f5}.navbar.is-dark .navbar-dropdown a.navbar-item.is-active,.content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#363636;color:#f5f5f5}}.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:#4a4a4a;cursor:pointer;display:block;height:3.25rem;position:relative;width:3.25rem;margin-left:auto}.navbar-burger span{background-color:currentColor;display:block;height:1px;left:calc(50% - 8px);position:absolute;transform-origin:center;transition-duration:86ms;transition-property:background-color, opacity, transform;transition-timing-function:ease-out;width:16px}.navbar-burger span:nth-child(1){top:calc(50% - 6px)}.navbar-burger span:nth-child(2){top:calc(50% - 1px)}.navbar-burger span:nth-child(3){top:calc(50% + 4px)}.navbar-burger:hover{background-color:rgba(0,0,0,0.05)}.navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}.navbar-burger.is-active span:nth-child(2){opacity:0}.navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}.navbar-menu{display:none}.navbar-item,.navbar-link{color:#4a4a4a;display:block;line-height:1.5;padding:0.5rem 0.75rem;position:relative}.navbar-item .icon:only-child,.navbar-link .icon:only-child{margin-left:-0.25rem;margin-right:-0.25rem}a.navbar-item,.navbar-link{cursor:pointer}a.navbar-item:focus,a.navbar-item:focus-within,a.navbar-item:hover,a.navbar-item.is-active,.navbar-link:focus,.navbar-link:focus-within,.navbar-link:hover,.navbar-link.is-active{background-color:#fafafa;color:#2e63b8}.navbar-item{display:block;flex-grow:0;flex-shrink:0}.navbar-item img{max-height:1.75rem}.navbar-item.has-dropdown{padding:0}.navbar-item.is-expanded{flex-grow:1;flex-shrink:1}.navbar-item.is-tab{border-bottom:1px solid transparent;min-height:3.25rem;padding-bottom:calc(0.5rem - 1px)}.navbar-item.is-tab:focus,.navbar-item.is-tab:hover{background-color: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{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:290486px}.pagination.is-rounded .pagination-link,#documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:290486px}.pagination,.pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis{font-size:1em;justify-content:center;margin:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}.pagination-previous,.pagination-next,.pagination-link{border-color:#dbdbdb;color:#363636;min-width:2.25em}.pagination-previous:hover,.pagination-next:hover,.pagination-link:hover{border-color:#b5b5b5;color:#363636}.pagination-previous:focus,.pagination-next:focus,.pagination-link:focus{border-color:#3c5dcd}.pagination-previous:active,.pagination-next:active,.pagination-link:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2)}.pagination-previous[disabled],.pagination-next[disabled],.pagination-link[disabled]{background-color:#dbdbdb;border-color:#dbdbdb;box-shadow:none;color:#6b6b6b;opacity:0.5}.pagination-previous,.pagination-next{padding-left:0.75em;padding-right:0.75em;white-space:nowrap}.pagination-link.is-current{background-color:#2e63b8;border-color:#2e63b8;color:#fff}.pagination-ellipsis{color:#b5b5b5;pointer-events:none}.pagination-list{flex-wrap:wrap}@media screen and (max-width: 768px){.pagination{flex-wrap:wrap}.pagination-previous,.pagination-next{flex-grow:1;flex-shrink:1}.pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{.pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}.pagination-previous{order:2}.pagination-next{order:3}.pagination{justify-content:space-between}.pagination.is-centered .pagination-previous{order:1}.pagination.is-centered .pagination-list{justify-content:center;order:2}.pagination.is-centered .pagination-next{order:3}.pagination.is-right .pagination-previous{order:1}.pagination.is-right .pagination-next{order:2}.pagination.is-right .pagination-list{justify-content:flex-end;order:3}}.panel{font-size:1rem}.panel:not(:last-child){margin-bottom:1.5rem}.panel-heading,.panel-tabs,.panel-block{border-bottom:1px solid #dbdbdb;border-left:1px solid #dbdbdb;border-right:1px solid #dbdbdb}.panel-heading:first-child,.panel-tabs:first-child,.panel-block:first-child{border-top:1px solid #dbdbdb}.panel-heading{background-color:#f5f5f5;border-radius:4px 4px 0 0;color:#222;font-size:1.25em;font-weight:300;line-height:1.25;padding:0.5em 0.75em}.panel-tabs{align-items:flex-end;display:flex;font-size:.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:0.75em}.panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}.panel-block.is-wrapped{flex-wrap:wrap}.panel-block.is-active{border-left-color:#2e63b8;color:#363636}.panel-block.is-active .panel-icon{color:#2e63b8}a.panel-block,label.panel-block{cursor:pointer}a.panel-block:hover,label.panel-block:hover{background-color:#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:0.75em}.panel-icon .fa{font-size:inherit;line-height:inherit}.tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:1rem;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}.tabs a{align-items:center;border-bottom-color:#dbdbdb;border-bottom-style:solid;border-bottom-width:1px;color:#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:0.5em}.tabs .icon:last-child{margin-left:0.5em}.tabs.is-centered ul{justify-content:center}.tabs.is-right ul{justify-content:flex-end}.tabs.is-boxed a{border:1px solid transparent;border-radius:4px 4px 0 0}.tabs.is-boxed a:hover{background-color:#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-radius:4px 0 0 4px}.tabs.is-toggle li:last-child a{border-radius:0 4px 4px 0}.tabs.is-toggle li.is-active a{background-color:#2e63b8;border-color:#2e63b8;color:#fff;z-index:1}.tabs.is-toggle ul{border-bottom:none}.tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:290486px;border-top-left-radius:290486px;padding-left:1.25em}.tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:290486px;border-top-right-radius:290486px;padding-right:1.25em}.tabs.is-small,#documenter .docs-sidebar form.docs-search>input.tabs{font-size:.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}.columns.is-mobile>.column.is-full{flex:none;width:100%}.columns.is-mobile>.column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>.column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>.column.is-half{flex:none;width:50%}.columns.is-mobile>.column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>.column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>.column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>.column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>.column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>.column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>.column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>.column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>.column.is-offset-half{margin-left:50%}.columns.is-mobile>.column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>.column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>.column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>.column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>.column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>.column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>.column.is-0{flex:none;width:0%}.columns.is-mobile>.column.is-offset-0{margin-left:0%}.columns.is-mobile>.column.is-1{flex:none;width:8.3333333333%}.columns.is-mobile>.column.is-offset-1{margin-left:8.3333333333%}.columns.is-mobile>.column.is-2{flex:none;width:16.6666666667%}.columns.is-mobile>.column.is-offset-2{margin-left:16.6666666667%}.columns.is-mobile>.column.is-3{flex:none;width:25%}.columns.is-mobile>.column.is-offset-3{margin-left:25%}.columns.is-mobile>.column.is-4{flex:none;width:33.3333333333%}.columns.is-mobile>.column.is-offset-4{margin-left:33.3333333333%}.columns.is-mobile>.column.is-5{flex:none;width:41.6666666667%}.columns.is-mobile>.column.is-offset-5{margin-left:41.6666666667%}.columns.is-mobile>.column.is-6{flex:none;width:50%}.columns.is-mobile>.column.is-offset-6{margin-left:50%}.columns.is-mobile>.column.is-7{flex:none;width:58.3333333333%}.columns.is-mobile>.column.is-offset-7{margin-left:58.3333333333%}.columns.is-mobile>.column.is-8{flex:none;width:66.6666666667%}.columns.is-mobile>.column.is-offset-8{margin-left:66.6666666667%}.columns.is-mobile>.column.is-9{flex:none;width:75%}.columns.is-mobile>.column.is-offset-9{margin-left:75%}.columns.is-mobile>.column.is-10{flex:none;width:83.3333333333%}.columns.is-mobile>.column.is-offset-10{margin-left:83.3333333333%}.columns.is-mobile>.column.is-11{flex:none;width:91.6666666667%}.columns.is-mobile>.column.is-offset-11{margin-left:91.6666666667%}.columns.is-mobile>.column.is-12{flex:none;width:100%}.columns.is-mobile>.column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){.column.is-narrow-mobile{flex:none}.column.is-full-mobile{flex:none;width:100%}.column.is-three-quarters-mobile{flex:none;width:75%}.column.is-two-thirds-mobile{flex:none;width:66.6666%}.column.is-half-mobile{flex:none;width:50%}.column.is-one-third-mobile{flex:none;width:33.3333%}.column.is-one-quarter-mobile{flex:none;width:25%}.column.is-one-fifth-mobile{flex:none;width:20%}.column.is-two-fifths-mobile{flex:none;width:40%}.column.is-three-fifths-mobile{flex:none;width:60%}.column.is-four-fifths-mobile{flex:none;width:80%}.column.is-offset-three-quarters-mobile{margin-left:75%}.column.is-offset-two-thirds-mobile{margin-left:66.6666%}.column.is-offset-half-mobile{margin-left:50%}.column.is-offset-one-third-mobile{margin-left:33.3333%}.column.is-offset-one-quarter-mobile{margin-left:25%}.column.is-offset-one-fifth-mobile{margin-left:20%}.column.is-offset-two-fifths-mobile{margin-left:40%}.column.is-offset-three-fifths-mobile{margin-left:60%}.column.is-offset-four-fifths-mobile{margin-left:80%}.column.is-0-mobile{flex:none;width:0%}.column.is-offset-0-mobile{margin-left:0%}.column.is-1-mobile{flex:none;width:8.3333333333%}.column.is-offset-1-mobile{margin-left:8.3333333333%}.column.is-2-mobile{flex:none;width:16.6666666667%}.column.is-offset-2-mobile{margin-left:16.6666666667%}.column.is-3-mobile{flex:none;width:25%}.column.is-offset-3-mobile{margin-left:25%}.column.is-4-mobile{flex:none;width:33.3333333333%}.column.is-offset-4-mobile{margin-left:33.3333333333%}.column.is-5-mobile{flex:none;width:41.6666666667%}.column.is-offset-5-mobile{margin-left:41.6666666667%}.column.is-6-mobile{flex:none;width:50%}.column.is-offset-6-mobile{margin-left:50%}.column.is-7-mobile{flex:none;width:58.3333333333%}.column.is-offset-7-mobile{margin-left:58.3333333333%}.column.is-8-mobile{flex:none;width:66.6666666667%}.column.is-offset-8-mobile{margin-left:66.6666666667%}.column.is-9-mobile{flex:none;width:75%}.column.is-offset-9-mobile{margin-left:75%}.column.is-10-mobile{flex:none;width:83.3333333333%}.column.is-offset-10-mobile{margin-left:83.3333333333%}.column.is-11-mobile{flex:none;width:91.6666666667%}.column.is-offset-11-mobile{margin-left:91.6666666667%}.column.is-12-mobile{flex:none;width:100%}.column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{.column.is-narrow,.column.is-narrow-tablet{flex:none}.column.is-full,.column.is-full-tablet{flex:none;width:100%}.column.is-three-quarters,.column.is-three-quarters-tablet{flex:none;width:75%}.column.is-two-thirds,.column.is-two-thirds-tablet{flex:none;width:66.6666%}.column.is-half,.column.is-half-tablet{flex:none;width:50%}.column.is-one-third,.column.is-one-third-tablet{flex:none;width:33.3333%}.column.is-one-quarter,.column.is-one-quarter-tablet{flex:none;width:25%}.column.is-one-fifth,.column.is-one-fifth-tablet{flex:none;width:20%}.column.is-two-fifths,.column.is-two-fifths-tablet{flex:none;width:40%}.column.is-three-fifths,.column.is-three-fifths-tablet{flex:none;width:60%}.column.is-four-fifths,.column.is-four-fifths-tablet{flex:none;width:80%}.column.is-offset-three-quarters,.column.is-offset-three-quarters-tablet{margin-left:75%}.column.is-offset-two-thirds,.column.is-offset-two-thirds-tablet{margin-left:66.6666%}.column.is-offset-half,.column.is-offset-half-tablet{margin-left:50%}.column.is-offset-one-third,.column.is-offset-one-third-tablet{margin-left:33.3333%}.column.is-offset-one-quarter,.column.is-offset-one-quarter-tablet{margin-left:25%}.column.is-offset-one-fifth,.column.is-offset-one-fifth-tablet{margin-left:20%}.column.is-offset-two-fifths,.column.is-offset-two-fifths-tablet{margin-left:40%}.column.is-offset-three-fifths,.column.is-offset-three-fifths-tablet{margin-left:60%}.column.is-offset-four-fifths,.column.is-offset-four-fifths-tablet{margin-left:80%}.column.is-0,.column.is-0-tablet{flex:none;width:0%}.column.is-offset-0,.column.is-offset-0-tablet{margin-left:0%}.column.is-1,.column.is-1-tablet{flex:none;width:8.3333333333%}.column.is-offset-1,.column.is-offset-1-tablet{margin-left:8.3333333333%}.column.is-2,.column.is-2-tablet{flex:none;width:16.6666666667%}.column.is-offset-2,.column.is-offset-2-tablet{margin-left:16.6666666667%}.column.is-3,.column.is-3-tablet{flex:none;width:25%}.column.is-offset-3,.column.is-offset-3-tablet{margin-left:25%}.column.is-4,.column.is-4-tablet{flex:none;width:33.3333333333%}.column.is-offset-4,.column.is-offset-4-tablet{margin-left:33.3333333333%}.column.is-5,.column.is-5-tablet{flex:none;width:41.6666666667%}.column.is-offset-5,.column.is-offset-5-tablet{margin-left:41.6666666667%}.column.is-6,.column.is-6-tablet{flex:none;width:50%}.column.is-offset-6,.column.is-offset-6-tablet{margin-left:50%}.column.is-7,.column.is-7-tablet{flex:none;width:58.3333333333%}.column.is-offset-7,.column.is-offset-7-tablet{margin-left:58.3333333333%}.column.is-8,.column.is-8-tablet{flex:none;width:66.6666666667%}.column.is-offset-8,.column.is-offset-8-tablet{margin-left:66.6666666667%}.column.is-9,.column.is-9-tablet{flex:none;width:75%}.column.is-offset-9,.column.is-offset-9-tablet{margin-left:75%}.column.is-10,.column.is-10-tablet{flex:none;width:83.3333333333%}.column.is-offset-10,.column.is-offset-10-tablet{margin-left:83.3333333333%}.column.is-11,.column.is-11-tablet{flex:none;width:91.6666666667%}.column.is-offset-11,.column.is-offset-11-tablet{margin-left:91.6666666667%}.column.is-12,.column.is-12-tablet{flex:none;width:100%}.column.is-offset-12,.column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1055px){.column.is-narrow-touch{flex:none}.column.is-full-touch{flex:none;width:100%}.column.is-three-quarters-touch{flex:none;width:75%}.column.is-two-thirds-touch{flex:none;width:66.6666%}.column.is-half-touch{flex:none;width:50%}.column.is-one-third-touch{flex:none;width:33.3333%}.column.is-one-quarter-touch{flex:none;width:25%}.column.is-one-fifth-touch{flex:none;width:20%}.column.is-two-fifths-touch{flex:none;width:40%}.column.is-three-fifths-touch{flex:none;width:60%}.column.is-four-fifths-touch{flex:none;width:80%}.column.is-offset-three-quarters-touch{margin-left:75%}.column.is-offset-two-thirds-touch{margin-left:66.6666%}.column.is-offset-half-touch{margin-left:50%}.column.is-offset-one-third-touch{margin-left:33.3333%}.column.is-offset-one-quarter-touch{margin-left:25%}.column.is-offset-one-fifth-touch{margin-left:20%}.column.is-offset-two-fifths-touch{margin-left:40%}.column.is-offset-three-fifths-touch{margin-left:60%}.column.is-offset-four-fifths-touch{margin-left:80%}.column.is-0-touch{flex:none;width:0%}.column.is-offset-0-touch{margin-left:0%}.column.is-1-touch{flex:none;width:8.3333333333%}.column.is-offset-1-touch{margin-left:8.3333333333%}.column.is-2-touch{flex:none;width:16.6666666667%}.column.is-offset-2-touch{margin-left:16.6666666667%}.column.is-3-touch{flex:none;width:25%}.column.is-offset-3-touch{margin-left:25%}.column.is-4-touch{flex:none;width:33.3333333333%}.column.is-offset-4-touch{margin-left:33.3333333333%}.column.is-5-touch{flex:none;width:41.6666666667%}.column.is-offset-5-touch{margin-left:41.6666666667%}.column.is-6-touch{flex:none;width:50%}.column.is-offset-6-touch{margin-left:50%}.column.is-7-touch{flex:none;width:58.3333333333%}.column.is-offset-7-touch{margin-left:58.3333333333%}.column.is-8-touch{flex:none;width:66.6666666667%}.column.is-offset-8-touch{margin-left:66.6666666667%}.column.is-9-touch{flex:none;width:75%}.column.is-offset-9-touch{margin-left:75%}.column.is-10-touch{flex:none;width:83.3333333333%}.column.is-offset-10-touch{margin-left:83.3333333333%}.column.is-11-touch{flex:none;width:91.6666666667%}.column.is-offset-11-touch{margin-left:91.6666666667%}.column.is-12-touch{flex:none;width:100%}.column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1056px){.column.is-narrow-desktop{flex:none}.column.is-full-desktop{flex:none;width:100%}.column.is-three-quarters-desktop{flex:none;width:75%}.column.is-two-thirds-desktop{flex:none;width:66.6666%}.column.is-half-desktop{flex:none;width:50%}.column.is-one-third-desktop{flex:none;width:33.3333%}.column.is-one-quarter-desktop{flex:none;width:25%}.column.is-one-fifth-desktop{flex:none;width:20%}.column.is-two-fifths-desktop{flex:none;width:40%}.column.is-three-fifths-desktop{flex:none;width:60%}.column.is-four-fifths-desktop{flex:none;width:80%}.column.is-offset-three-quarters-desktop{margin-left:75%}.column.is-offset-two-thirds-desktop{margin-left:66.6666%}.column.is-offset-half-desktop{margin-left:50%}.column.is-offset-one-third-desktop{margin-left:33.3333%}.column.is-offset-one-quarter-desktop{margin-left:25%}.column.is-offset-one-fifth-desktop{margin-left:20%}.column.is-offset-two-fifths-desktop{margin-left:40%}.column.is-offset-three-fifths-desktop{margin-left:60%}.column.is-offset-four-fifths-desktop{margin-left:80%}.column.is-0-desktop{flex:none;width:0%}.column.is-offset-0-desktop{margin-left:0%}.column.is-1-desktop{flex:none;width:8.3333333333%}.column.is-offset-1-desktop{margin-left:8.3333333333%}.column.is-2-desktop{flex:none;width:16.6666666667%}.column.is-offset-2-desktop{margin-left:16.6666666667%}.column.is-3-desktop{flex:none;width:25%}.column.is-offset-3-desktop{margin-left:25%}.column.is-4-desktop{flex:none;width:33.3333333333%}.column.is-offset-4-desktop{margin-left:33.3333333333%}.column.is-5-desktop{flex:none;width:41.6666666667%}.column.is-offset-5-desktop{margin-left:41.6666666667%}.column.is-6-desktop{flex:none;width:50%}.column.is-offset-6-desktop{margin-left:50%}.column.is-7-desktop{flex:none;width:58.3333333333%}.column.is-offset-7-desktop{margin-left:58.3333333333%}.column.is-8-desktop{flex:none;width:66.6666666667%}.column.is-offset-8-desktop{margin-left:66.6666666667%}.column.is-9-desktop{flex:none;width:75%}.column.is-offset-9-desktop{margin-left:75%}.column.is-10-desktop{flex:none;width:83.3333333333%}.column.is-offset-10-desktop{margin-left:83.3333333333%}.column.is-11-desktop{flex:none;width:91.6666666667%}.column.is-offset-11-desktop{margin-left:91.6666666667%}.column.is-12-desktop{flex:none;width:100%}.column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){.column.is-narrow-widescreen{flex:none}.column.is-full-widescreen{flex:none;width:100%}.column.is-three-quarters-widescreen{flex:none;width:75%}.column.is-two-thirds-widescreen{flex:none;width:66.6666%}.column.is-half-widescreen{flex:none;width:50%}.column.is-one-third-widescreen{flex:none;width:33.3333%}.column.is-one-quarter-widescreen{flex:none;width:25%}.column.is-one-fifth-widescreen{flex:none;width:20%}.column.is-two-fifths-widescreen{flex:none;width:40%}.column.is-three-fifths-widescreen{flex:none;width:60%}.column.is-four-fifths-widescreen{flex:none;width:80%}.column.is-offset-three-quarters-widescreen{margin-left:75%}.column.is-offset-two-thirds-widescreen{margin-left:66.6666%}.column.is-offset-half-widescreen{margin-left:50%}.column.is-offset-one-third-widescreen{margin-left:33.3333%}.column.is-offset-one-quarter-widescreen{margin-left:25%}.column.is-offset-one-fifth-widescreen{margin-left:20%}.column.is-offset-two-fifths-widescreen{margin-left:40%}.column.is-offset-three-fifths-widescreen{margin-left:60%}.column.is-offset-four-fifths-widescreen{margin-left:80%}.column.is-0-widescreen{flex:none;width:0%}.column.is-offset-0-widescreen{margin-left:0%}.column.is-1-widescreen{flex:none;width:8.3333333333%}.column.is-offset-1-widescreen{margin-left:8.3333333333%}.column.is-2-widescreen{flex:none;width:16.6666666667%}.column.is-offset-2-widescreen{margin-left:16.6666666667%}.column.is-3-widescreen{flex:none;width:25%}.column.is-offset-3-widescreen{margin-left:25%}.column.is-4-widescreen{flex:none;width:33.3333333333%}.column.is-offset-4-widescreen{margin-left:33.3333333333%}.column.is-5-widescreen{flex:none;width:41.6666666667%}.column.is-offset-5-widescreen{margin-left:41.6666666667%}.column.is-6-widescreen{flex:none;width:50%}.column.is-offset-6-widescreen{margin-left:50%}.column.is-7-widescreen{flex:none;width:58.3333333333%}.column.is-offset-7-widescreen{margin-left:58.3333333333%}.column.is-8-widescreen{flex:none;width:66.6666666667%}.column.is-offset-8-widescreen{margin-left:66.6666666667%}.column.is-9-widescreen{flex:none;width:75%}.column.is-offset-9-widescreen{margin-left:75%}.column.is-10-widescreen{flex:none;width:83.3333333333%}.column.is-offset-10-widescreen{margin-left:83.3333333333%}.column.is-11-widescreen{flex:none;width:91.6666666667%}.column.is-offset-11-widescreen{margin-left:91.6666666667%}.column.is-12-widescreen{flex:none;width:100%}.column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){.column.is-narrow-fullhd{flex:none}.column.is-full-fullhd{flex:none;width:100%}.column.is-three-quarters-fullhd{flex:none;width:75%}.column.is-two-thirds-fullhd{flex:none;width:66.6666%}.column.is-half-fullhd{flex:none;width:50%}.column.is-one-third-fullhd{flex:none;width:33.3333%}.column.is-one-quarter-fullhd{flex:none;width:25%}.column.is-one-fifth-fullhd{flex:none;width:20%}.column.is-two-fifths-fullhd{flex:none;width:40%}.column.is-three-fifths-fullhd{flex:none;width:60%}.column.is-four-fifths-fullhd{flex:none;width:80%}.column.is-offset-three-quarters-fullhd{margin-left:75%}.column.is-offset-two-thirds-fullhd{margin-left:66.6666%}.column.is-offset-half-fullhd{margin-left:50%}.column.is-offset-one-third-fullhd{margin-left:33.3333%}.column.is-offset-one-quarter-fullhd{margin-left:25%}.column.is-offset-one-fifth-fullhd{margin-left:20%}.column.is-offset-two-fifths-fullhd{margin-left:40%}.column.is-offset-three-fifths-fullhd{margin-left:60%}.column.is-offset-four-fifths-fullhd{margin-left:80%}.column.is-0-fullhd{flex:none;width:0%}.column.is-offset-0-fullhd{margin-left:0%}.column.is-1-fullhd{flex:none;width:8.3333333333%}.column.is-offset-1-fullhd{margin-left:8.3333333333%}.column.is-2-fullhd{flex:none;width:16.6666666667%}.column.is-offset-2-fullhd{margin-left:16.6666666667%}.column.is-3-fullhd{flex:none;width:25%}.column.is-offset-3-fullhd{margin-left:25%}.column.is-4-fullhd{flex:none;width:33.3333333333%}.column.is-offset-4-fullhd{margin-left:33.3333333333%}.column.is-5-fullhd{flex:none;width:41.6666666667%}.column.is-offset-5-fullhd{margin-left:41.6666666667%}.column.is-6-fullhd{flex:none;width:50%}.column.is-offset-6-fullhd{margin-left:50%}.column.is-7-fullhd{flex:none;width:58.3333333333%}.column.is-offset-7-fullhd{margin-left:58.3333333333%}.column.is-8-fullhd{flex:none;width:66.6666666667%}.column.is-offset-8-fullhd{margin-left:66.6666666667%}.column.is-9-fullhd{flex:none;width:75%}.column.is-offset-9-fullhd{margin-left:75%}.column.is-10-fullhd{flex:none;width:83.3333333333%}.column.is-offset-10-fullhd{margin-left:83.3333333333%}.column.is-11-fullhd{flex:none;width:91.6666666667%}.column.is-offset-11-fullhd{margin-left:91.6666666667%}.column.is-12-fullhd{flex:none;width:100%}.column.is-offset-12-fullhd{margin-left:100%}}.columns{margin-left:-.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.3333333333%}.tile.is-2{flex:none;width:16.6666666667%}.tile.is-3{flex:none;width:25%}.tile.is-4{flex:none;width:33.3333333333%}.tile.is-5{flex:none;width:41.6666666667%}.tile.is-6{flex:none;width:50%}.tile.is-7{flex:none;width:58.3333333333%}.tile.is-8{flex:none;width:66.6666666667%}.tile.is-9{flex:none;width:75%}.tile.is-10{flex:none;width:83.3333333333%}.tile.is-11{flex:none;width:91.6666666667%}.tile.is-12{flex:none;width:100%}}.hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}.hero .navbar{background:none}.hero .tabs ul{border-bottom:none}.hero.is-white{background-color:#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{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{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:#363636}.hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-light strong{color:inherit}.hero.is-light .title{color:#363636}.hero.is-light .subtitle{color:rgba(54,54,54,0.9)}.hero.is-light .subtitle a:not(.button),.hero.is-light .subtitle strong{color:#363636}@media screen and (max-width: 1055px){.hero.is-light .navbar-menu{background-color:#f5f5f5}}.hero.is-light .navbar-item,.hero.is-light .navbar-link{color:rgba(54,54,54,0.7)}.hero.is-light a.navbar-item:hover,.hero.is-light a.navbar-item.is-active,.hero.is-light .navbar-link:hover,.hero.is-light .navbar-link.is-active{background-color:#e8e8e8;color:#363636}.hero.is-light .tabs a{color:#363636;opacity:0.9}.hero.is-light .tabs a:hover{opacity:1}.hero.is-light .tabs li.is-active a{opacity:1}.hero.is-light .tabs.is-boxed a,.hero.is-light .tabs.is-toggle a{color:#363636}.hero.is-light .tabs.is-boxed a:hover,.hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-light .tabs.is-boxed li.is-active a,.hero.is-light .tabs.is-boxed li.is-active a:hover,.hero.is-light .tabs.is-toggle li.is-active a,.hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:#363636;border-color:#363636;color:#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:#f5f5f5}.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:#f5f5f5}.hero.is-dark .subtitle,.content kbd.hero .subtitle{color:rgba(245,245,245,0.9)}.hero.is-dark .subtitle a:not(.button),.content kbd.hero .subtitle a:not(.button),.hero.is-dark .subtitle strong,.content kbd.hero .subtitle strong{color:#f5f5f5}@media screen and (max-width: 1055px){.hero.is-dark .navbar-menu,.content kbd.hero .navbar-menu{background-color:#363636}}.hero.is-dark .navbar-item,.content kbd.hero .navbar-item,.hero.is-dark .navbar-link,.content kbd.hero .navbar-link{color:rgba(245,245,245,0.7)}.hero.is-dark a.navbar-item:hover,.content kbd.hero a.navbar-item:hover,.hero.is-dark a.navbar-item.is-active,.content kbd.hero a.navbar-item.is-active,.hero.is-dark .navbar-link:hover,.content kbd.hero .navbar-link:hover,.hero.is-dark .navbar-link.is-active,.content kbd.hero .navbar-link.is-active{background-color:#292929;color:#f5f5f5}.hero.is-dark .tabs a,.content kbd.hero .tabs a{color:#f5f5f5;opacity:0.9}.hero.is-dark .tabs a:hover,.content kbd.hero .tabs a:hover{opacity:1}.hero.is-dark .tabs li.is-active a,.content kbd.hero .tabs li.is-active a{opacity:1}.hero.is-dark .tabs.is-boxed a,.content kbd.hero .tabs.is-boxed a,.hero.is-dark .tabs.is-toggle a,.content kbd.hero .tabs.is-toggle a{color:#f5f5f5}.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:#f5f5f5;border-color:#f5f5f5;color:#363636}.hero.is-dark.is-bold,.content kbd.hero.is-bold{background-image:linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%)}@media screen and (max-width: 768px){.hero.is-dark.is-bold .navbar-menu,.content kbd.hero.is-bold .navbar-menu{background-image:linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%)}}.hero.is-primary,.docstring>section>a.hero.docs-sourcelink{background-color:#4eb5de;color:#fff}.hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.docstring>section>a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-primary strong,.docstring>section>a.hero.docs-sourcelink strong{color:inherit}.hero.is-primary .title,.docstring>section>a.hero.docs-sourcelink .title{color:#fff}.hero.is-primary .subtitle,.docstring>section>a.hero.docs-sourcelink .subtitle{color:rgba(255,255,255,0.9)}.hero.is-primary .subtitle a:not(.button),.docstring>section>a.hero.docs-sourcelink .subtitle a:not(.button),.hero.is-primary .subtitle strong,.docstring>section>a.hero.docs-sourcelink .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-primary .navbar-menu,.docstring>section>a.hero.docs-sourcelink .navbar-menu{background-color:#4eb5de}}.hero.is-primary .navbar-item,.docstring>section>a.hero.docs-sourcelink .navbar-item,.hero.is-primary .navbar-link,.docstring>section>a.hero.docs-sourcelink .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-primary a.navbar-item:hover,.docstring>section>a.hero.docs-sourcelink a.navbar-item:hover,.hero.is-primary a.navbar-item.is-active,.docstring>section>a.hero.docs-sourcelink a.navbar-item.is-active,.hero.is-primary .navbar-link:hover,.docstring>section>a.hero.docs-sourcelink .navbar-link:hover,.hero.is-primary .navbar-link.is-active,.docstring>section>a.hero.docs-sourcelink .navbar-link.is-active{background-color:#39acda;color:#fff}.hero.is-primary .tabs a,.docstring>section>a.hero.docs-sourcelink .tabs a{color:#fff;opacity:0.9}.hero.is-primary .tabs a:hover,.docstring>section>a.hero.docs-sourcelink .tabs a:hover{opacity:1}.hero.is-primary .tabs li.is-active a,.docstring>section>a.hero.docs-sourcelink .tabs li.is-active a{opacity:1}.hero.is-primary .tabs.is-boxed a,.docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a,.hero.is-primary .tabs.is-toggle a,.docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a{color:#fff}.hero.is-primary .tabs.is-boxed a:hover,.docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a:hover,.hero.is-primary .tabs.is-toggle a:hover,.docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-primary .tabs.is-boxed li.is-active a,.docstring>section>a.hero.docs-sourcelink .tabs.is-boxed li.is-active a,.hero.is-primary .tabs.is-boxed li.is-active a:hover,.hero.is-primary .tabs.is-toggle li.is-active a,.docstring>section>a.hero.docs-sourcelink .tabs.is-toggle li.is-active a,.hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#4eb5de}.hero.is-primary.is-bold,.docstring>section>a.hero.is-bold.docs-sourcelink{background-image:linear-gradient(141deg, #1bc7de 0%, #4eb5de 71%, #5fa9e7 100%)}@media screen and (max-width: 768px){.hero.is-primary.is-bold .navbar-menu,.docstring>section>a.hero.is-bold.docs-sourcelink .navbar-menu{background-image:linear-gradient(141deg, #1bc7de 0%, #4eb5de 71%, #5fa9e7 100%)}}.hero.is-link{background-color:#2e63b8;color:#fff}.hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-link strong{color:inherit}.hero.is-link .title{color:#fff}.hero.is-link .subtitle{color:rgba(255,255,255,0.9)}.hero.is-link .subtitle a:not(.button),.hero.is-link .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-link .navbar-menu{background-color:#2e63b8}}.hero.is-link .navbar-item,.hero.is-link .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-link a.navbar-item:hover,.hero.is-link a.navbar-item.is-active,.hero.is-link .navbar-link:hover,.hero.is-link .navbar-link.is-active{background-color:#2958a4;color:#fff}.hero.is-link .tabs a{color:#fff;opacity:0.9}.hero.is-link .tabs a:hover{opacity:1}.hero.is-link .tabs li.is-active a{opacity:1}.hero.is-link .tabs.is-boxed a,.hero.is-link .tabs.is-toggle a{color:#fff}.hero.is-link .tabs.is-boxed a:hover,.hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-link .tabs.is-boxed li.is-active a,.hero.is-link .tabs.is-boxed li.is-active a:hover,.hero.is-link .tabs.is-toggle li.is-active a,.hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#2e63b8}.hero.is-link.is-bold{background-image:linear-gradient(141deg, #1b6098 0%, #2e63b8 71%, #2d51d2 100%)}@media screen and (max-width: 768px){.hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg, #1b6098 0%, #2e63b8 71%, #2d51d2 100%)}}.hero.is-info{background-color:#209cee;color:#fff}.hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-info strong{color:inherit}.hero.is-info .title{color:#fff}.hero.is-info .subtitle{color:rgba(255,255,255,0.9)}.hero.is-info .subtitle a:not(.button),.hero.is-info .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-info .navbar-menu{background-color:#209cee}}.hero.is-info .navbar-item,.hero.is-info .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-info a.navbar-item:hover,.hero.is-info a.navbar-item.is-active,.hero.is-info .navbar-link:hover,.hero.is-info .navbar-link.is-active{background-color:#1190e3;color:#fff}.hero.is-info .tabs a{color:#fff;opacity:0.9}.hero.is-info .tabs a:hover{opacity:1}.hero.is-info .tabs li.is-active a{opacity:1}.hero.is-info .tabs.is-boxed a,.hero.is-info .tabs.is-toggle a{color:#fff}.hero.is-info .tabs.is-boxed a:hover,.hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-info .tabs.is-boxed li.is-active a,.hero.is-info .tabs.is-boxed li.is-active a:hover,.hero.is-info .tabs.is-toggle li.is-active a,.hero.is-info .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#209cee}.hero.is-info.is-bold{background-image:linear-gradient(141deg, #05a6d6 0%, #209cee 71%, #3287f5 100%)}@media screen and (max-width: 768px){.hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg, #05a6d6 0%, #209cee 71%, #3287f5 100%)}}.hero.is-success{background-color:#22c35b;color:#fff}.hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-success strong{color:inherit}.hero.is-success .title{color:#fff}.hero.is-success .subtitle{color:rgba(255,255,255,0.9)}.hero.is-success .subtitle a:not(.button),.hero.is-success .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-success .navbar-menu{background-color:#22c35b}}.hero.is-success .navbar-item,.hero.is-success .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-success a.navbar-item:hover,.hero.is-success a.navbar-item.is-active,.hero.is-success .navbar-link:hover,.hero.is-success .navbar-link.is-active{background-color:#1ead51;color:#fff}.hero.is-success .tabs a{color:#fff;opacity:0.9}.hero.is-success .tabs a:hover{opacity:1}.hero.is-success .tabs li.is-active a{opacity:1}.hero.is-success .tabs.is-boxed a,.hero.is-success .tabs.is-toggle a{color:#fff}.hero.is-success .tabs.is-boxed a:hover,.hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-success .tabs.is-boxed li.is-active a,.hero.is-success .tabs.is-boxed li.is-active a:hover,.hero.is-success .tabs.is-toggle li.is-active a,.hero.is-success .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#22c35b}.hero.is-success.is-bold{background-image:linear-gradient(141deg, #12a02c 0%, #22c35b 71%, #1fdf83 100%)}@media screen and (max-width: 768px){.hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg, #12a02c 0%, #22c35b 71%, #1fdf83 100%)}}.hero.is-warning{background-color:#ffdd57;color:rgba(0,0,0,0.7)}.hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-warning strong{color:inherit}.hero.is-warning .title{color:rgba(0,0,0,0.7)}.hero.is-warning .subtitle{color:rgba(0,0,0,0.9)}.hero.is-warning .subtitle a:not(.button),.hero.is-warning .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){.hero.is-warning .navbar-menu{background-color:#ffdd57}}.hero.is-warning .navbar-item,.hero.is-warning .navbar-link{color:rgba(0,0,0,0.7)}.hero.is-warning a.navbar-item:hover,.hero.is-warning a.navbar-item.is-active,.hero.is-warning .navbar-link:hover,.hero.is-warning .navbar-link.is-active{background-color:#ffd83e;color:rgba(0,0,0,0.7)}.hero.is-warning .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}.hero.is-warning .tabs a:hover{opacity:1}.hero.is-warning .tabs li.is-active a{opacity:1}.hero.is-warning .tabs.is-boxed a,.hero.is-warning .tabs.is-toggle a{color:rgba(0,0,0,0.7)}.hero.is-warning .tabs.is-boxed a:hover,.hero.is-warning .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-warning .tabs.is-boxed li.is-active a,.hero.is-warning .tabs.is-boxed li.is-active a:hover,.hero.is-warning .tabs.is-toggle li.is-active a,.hero.is-warning .tabs.is-toggle li.is-active a:hover{background-color:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);color:#ffdd57}.hero.is-warning.is-bold{background-image:linear-gradient(141deg, #ffae24 0%, #ffdd57 71%, #fffa71 100%)}@media screen and (max-width: 768px){.hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg, #ffae24 0%, #ffdd57 71%, #fffa71 100%)}}.hero.is-danger{background-color:#da0b00;color:#fff}.hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-danger strong{color:inherit}.hero.is-danger .title{color:#fff}.hero.is-danger .subtitle{color:rgba(255,255,255,0.9)}.hero.is-danger .subtitle a:not(.button),.hero.is-danger .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-danger .navbar-menu{background-color:#da0b00}}.hero.is-danger .navbar-item,.hero.is-danger .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-danger a.navbar-item:hover,.hero.is-danger a.navbar-item.is-active,.hero.is-danger .navbar-link:hover,.hero.is-danger .navbar-link.is-active{background-color:#c10a00;color:#fff}.hero.is-danger .tabs a{color:#fff;opacity:0.9}.hero.is-danger .tabs a:hover{opacity:1}.hero.is-danger .tabs li.is-active a{opacity:1}.hero.is-danger .tabs.is-boxed a,.hero.is-danger .tabs.is-toggle a{color:#fff}.hero.is-danger .tabs.is-boxed a:hover,.hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-danger .tabs.is-boxed li.is-active a,.hero.is-danger .tabs.is-boxed li.is-active a:hover,.hero.is-danger .tabs.is-toggle li.is-active a,.hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#da0b00}.hero.is-danger.is-bold{background-image:linear-gradient(141deg, #a70013 0%, #da0b00 71%, #f43500 100%)}@media screen and (max-width: 768px){.hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg, #a70013 0%, #da0b00 71%, #f43500 100%)}}.hero.is-small .hero-body,#documenter .docs-sidebar form.docs-search>input.hero .hero-body{padding-bottom:1.5rem;padding-top:1.5rem}@media screen and (min-width: 769px),print{.hero.is-medium .hero-body{padding-bottom:9rem;padding-top:9rem}}@media screen and (min-width: 769px),print{.hero.is-large .hero-body{padding-bottom:18rem;padding-top:18rem}}.hero.is-halfheight .hero-body,.hero.is-fullheight .hero-body,.hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}.hero.is-halfheight .hero-body>.container,.hero.is-fullheight .hero-body>.container,.hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}.hero.is-halfheight{min-height:50vh}.hero.is-fullheight{min-height:100vh}.hero-video{overflow:hidden}.hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%, -50%, 0)}.hero-video.is-transparent{opacity:0.3}@media screen and (max-width: 768px){.hero-video{display:none}}.hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){.hero-buttons .button{display:flex}.hero-buttons .button:not(:last-child){margin-bottom:0.75rem}}@media screen and (min-width: 769px),print{.hero-buttons{display:flex;justify-content:center}.hero-buttons .button:not(:last-child){margin-right:1.5rem}}.hero-head,.hero-foot{flex-grow:0;flex-shrink:0}.hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}.section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){.section.is-medium{padding:9rem 1.5rem}.section.is-large{padding:18rem 1.5rem}}.footer{background-color:#fafafa;padding:3rem 1.5rem 6rem}h1 .docs-heading-anchor,h1 .docs-heading-anchor:hover,h1 .docs-heading-anchor:visited,h2 .docs-heading-anchor,h2 .docs-heading-anchor:hover,h2 .docs-heading-anchor:visited,h3 .docs-heading-anchor,h3 .docs-heading-anchor:hover,h3 .docs-heading-anchor:visited,h4 .docs-heading-anchor,h4 .docs-heading-anchor:hover,h4 .docs-heading-anchor:visited,h5 .docs-heading-anchor,h5 .docs-heading-anchor:hover,h5 .docs-heading-anchor:visited,h6 .docs-heading-anchor,h6 .docs-heading-anchor:hover,h6 .docs-heading-anchor:visited{color:#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 5 Free";font-weight:900;content:"\f0c1"}h1:hover .docs-heading-anchor-permalink,h2:hover .docs-heading-anchor-permalink,h3:hover .docs-heading-anchor-permalink,h4:hover .docs-heading-anchor-permalink,h5:hover .docs-heading-anchor-permalink,h6:hover .docs-heading-anchor-permalink{visibility:visible}.docs-dark-only{display:none !important}pre{position:relative;overflow:hidden}pre code,pre code.hljs{padding:0 .75rem !important;overflow:auto;display:block}pre code:first-of-type,pre code.hljs:first-of-type{padding-top:0.5rem !important}pre code:last-of-type,pre code.hljs:last-of-type{padding-bottom:0.5rem !important}pre .copy-button{opacity:0.2;transition:opacity 0.2s;position:absolute;right:0em;top:0em;padding:0.5em;width:2.5em;height:2.5em;background:transparent;border:none;font-family:"Font Awesome 5 Free";color:#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 5 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}.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{display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#f5f5f5;box-shadow:0 1px 2px rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #dbdbdb}.docstring>header code{background-color:transparent}.docstring>header .docstring-binding{margin-right:0.3em}.docstring>header .docstring-category{margin-left:0.3em}.docstring>section{position:relative;padding:.75rem .75rem;border-bottom:1px solid #dbdbdb}.docstring>section:last-child{border-bottom:none}.docstring>section>a.docs-sourcelink{transition:opacity 0.3s;opacity:0;position:absolute;right:.375rem;bottom:.375rem}.docstring>section>a.docs-sourcelink:focus{opacity:1 !important}.docstring:hover>section>a.docs-sourcelink{opacity:0.2}.docstring:focus-within>section>a.docs-sourcelink{opacity:0.2}.docstring>section:hover a.docs-sourcelink{opacity:1}.documenter-example-output{background-color:#fff}.outdated-warning-overlay{position:fixed;top:0;left:0;right:0;box-shadow:0 0 10px rgba(0,0,0,0.3);z-index:999;background-color:#ffaba7;color:rgba(0,0,0,0.7);border-bottom:3px solid #da0b00;padding:10px 35px;text-align:center;font-size:15px}.outdated-warning-overlay .outdated-warning-closer{position:absolute;top:calc(50% - 10px);right:18px;cursor:pointer;width:12px}.outdated-warning-overlay a{color:#2e63b8}.outdated-warning-overlay a:hover{color:#363636}.content pre{border:1px solid #dbdbdb}.content code{font-weight:inherit}.content a code{color:#2e63b8}.content h1 code,.content h2 code,.content h3 code,.content h4 code,.content h5 code,.content h6 code{color:#222}.content table{display:block;width:initial;max-width:100%;overflow-x:auto}.content blockquote>ul:first-child,.content blockquote>ol:first-child,.content .admonition-body>ul:first-child,.content .admonition-body>ol:first-child{margin-top:0}pre,code{font-variant-ligatures:no-contextual}.breadcrumb a.is-disabled{cursor:default;pointer-events:none}.breadcrumb a.is-disabled,.breadcrumb a.is-disabled:hover{color:#222}.hljs{background:initial !important}.katex .katex-mathml{top:0;right:0}.katex-display,mjx-container,.MathJax_Display{margin:0.5em 0 !important}html{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto}li.no-marker{list-style:none}#documenter .docs-main>article{overflow-wrap:break-word}#documenter .docs-main>article .math-container{overflow-x:auto;overflow-y:hidden}@media screen and (min-width: 1056px){#documenter .docs-main{max-width:52rem;margin-left:20rem;padding-right:1rem}}@media screen and (max-width: 1055px){#documenter .docs-main{width:100%}#documenter .docs-main>article{max-width:52rem;margin-left:auto;margin-right:auto;margin-bottom:1rem;padding:0 1rem}#documenter .docs-main>header,#documenter .docs-main>nav{max-width:100%;width:100%;margin:0}}#documenter .docs-main header.docs-navbar{background-color:#fff;border-bottom:1px solid #dbdbdb;z-index:2;min-height:4rem;margin-bottom:1rem;display:flex}#documenter .docs-main header.docs-navbar .breadcrumb{flex-grow:1}#documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap}#documenter .docs-main header.docs-navbar .docs-right .docs-icon,#documenter .docs-main header.docs-navbar .docs-right .docs-label,#documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button{display:inline-block}#documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}#documenter .docs-main header.docs-navbar .docs-right .docs-settings-button{margin:auto 0 auto 1rem}#documenter .docs-main header.docs-navbar .docs-right .docs-sidebar-button{font-size:1.5rem;margin:auto 0 auto 1rem}#documenter .docs-main header.docs-navbar>*{margin:auto 0}@media screen and (max-width: 1055px){#documenter .docs-main header.docs-navbar{position:sticky;top:0;padding:0 1rem;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 5 Free";font-weight:900;content:"\f054"}#documenter .docs-sidebar ul.docs-menu input:checked~label.tocitem .docs-chevron::before{content:"\f078"}#documenter .docs-sidebar ul.docs-menu .tocitem{display:block;padding:0.5rem 0.5rem}#documenter .docs-sidebar ul.docs-menu .tocitem,#documenter .docs-sidebar ul.docs-menu .tocitem:hover{color:#0a0a0a;background:#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}@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}}#documenter .docs-main #documenter-search-info{margin-bottom:1rem}#documenter .docs-main #documenter-search-results{list-style-type:circle;list-style-position:outside}#documenter .docs-main #documenter-search-results li{margin-left:2rem}#documenter .docs-main #documenter-search-results .docs-highlight{background-color:yellow}.ansi span.sgr1{font-weight:bolder}.ansi span.sgr2{font-weight:lighter}.ansi span.sgr3{font-style:italic}.ansi span.sgr4{text-decoration:underline}.ansi span.sgr7{color:#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}code.hljs{padding:3px 5px}.hljs{background:#F0F0F0;color:#444}.hljs-comment{color:#888888}.hljs-tag,.hljs-punctuation{color:#444a}.hljs-tag .hljs-name,.hljs-tag .hljs-attr{color:#444}.hljs-keyword,.hljs-attribute,.hljs-selector-tag,.hljs-meta .hljs-keyword,.hljs-doctag,.hljs-name{font-weight:bold}.hljs-type,.hljs-string,.hljs-number,.hljs-selector-id,.hljs-selector-class,.hljs-quote,.hljs-template-tag,.hljs-deletion{color:#880000}.hljs-title,.hljs-section{color:#880000;font-weight:bold}.hljs-regexp,.hljs-symbol,.hljs-variable,.hljs-template-variable,.hljs-link,.hljs-selector-attr,.hljs-operator,.hljs-selector-pseudo{color:#BC6060}.hljs-literal{color:#78A960}.hljs-built_in,.hljs-bullet,.hljs-code,.hljs-addition{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:bold} diff --git a/v0.28.3/assets/themeswap.js b/v0.28.3/assets/themeswap.js new file mode 100644 index 0000000000..c58e993e3e --- /dev/null +++ b/v0.28.3/assets/themeswap.js @@ -0,0 +1,66 @@ +// Small function to quickly swap out themes. Gets put into the tag.. +function set_theme_from_local_storage() { + // Intialize the theme to null, which means default + var theme = null; + // If the browser supports the localstorage and is not disabled then try to get the + // documenter theme + if(window.localStorage != null) { + // Get the user-picked theme from localStorage. May be `null`, which means the default + // theme. + theme = window.localStorage.getItem("documenter-theme"); + } + // Check if the browser supports user color preference + var darkPreference = false; + // Check if the users preference is for dark color scheme + if(window.matchMedia('(prefers-color-scheme: dark)').matches === true) { + darkPreference = true; + } + // Initialize a few variables for the loop: + // + // - active: will contain the index of the theme that should be active. Note that there + // is no guarantee that localStorage contains sane values. If `active` stays `null` + // we either could not find the theme or it is the default (primary) theme anyway. + // Either way, we then need to stick to the primary theme. + // + // - disabled: style sheets that should be disabled (i.e. all the theme style sheets + // that are not the currently active theme) + var active = null; var disabled = []; var darkTheme = null; + for (var i = 0; i < document.styleSheets.length; i++) { + var ss = document.styleSheets[i]; + // The tag of each style sheet is expected to have a data-theme-name attribute + // which must contain the name of the theme. The names in localStorage much match this. + var themename = ss.ownerNode.getAttribute("data-theme-name"); + // attribute not set => non-theme stylesheet => ignore + if(themename === null) continue; + // To distinguish the default (primary) theme, it needs to have the data-theme-primary + // attribute set. + var isprimary = (ss.ownerNode.getAttribute("data-theme-primary") !== null); + // Check if the theme is primary dark theme + var isDarkTheme = (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null); + // If ss is for dark theme then set the value of darkTheme to the name of the theme + if(isDarkTheme) darkTheme = themename; + // If we find a matching theme (and it's not the default), we'll set active to non-null + if(themename === theme) active = i; + // Store the style sheets of inactive themes so that we could disable them + if(themename !== theme) disabled.push(ss); + } + if(active !== null) { + // If we did find an active theme, we'll (1) add the theme--$(theme) class to + document.getElementsByTagName('html')[0].className = "theme--" + theme; + // and (2) disable all the other theme stylesheets + disabled.forEach(function(ss){ + ss.disabled = true; + }); + } + else if(darkTheme !== null && darkPreference === true) { + // If we did find an active theme, we'll (1) add the theme--$(theme) class to + document.getElementsByTagName('html')[0].className = "theme--" + darkTheme; + // and (2) disable all the other theme stylesheets + disabled.forEach(function(ss){ + if (ss.ownerNode.getAttribute("data-theme-name") !== darkTheme) { + ss.disabled = true; + } + }); + } +} +set_theme_from_local_storage(); diff --git a/v0.28.3/assets/warner.js b/v0.28.3/assets/warner.js new file mode 100644 index 0000000000..5531c8851b --- /dev/null +++ b/v0.28.3/assets/warner.js @@ -0,0 +1,49 @@ +function maybeAddWarning () { + // DOCUMENTER_NEWEST is defined in versions.js, DOCUMENTER_CURRENT_VERSION and DOCUMENTER_STABLE + // in siteinfo.js. + // If either of these are undefined something went horribly wrong, so we abort. + if ( + window.DOCUMENTER_NEWEST === undefined || + window.DOCUMENTER_CURRENT_VERSION === undefined || + window.DOCUMENTER_STABLE === undefined + ) { + return + }; + + // Current version is not a version number, so we can't tell if it's the newest version. Abort. + if (!/v(\d+\.)*\d+/.test(window.DOCUMENTER_CURRENT_VERSION)) { + return + }; + + // Current version is newest version, so no need to add a warning. + if (window.DOCUMENTER_NEWEST === window.DOCUMENTER_CURRENT_VERSION) { + return + }; + + // Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs. + if (document.body.querySelector('meta[name="robots"]') === null) { + const meta = document.createElement('meta'); + meta.name = 'robots'; + meta.content = 'noindex'; + + document.getElementsByTagName('head')[0].appendChild(meta); + }; + + const div = document.createElement('div'); + div.classList.add('outdated-warning-overlay'); + const closer = document.createElement('button'); + closer.classList.add('outdated-warning-closer', 'delete'); + closer.addEventListener('click', function () { + document.body.removeChild(div); + }); + const href = window.documenterBaseURL + '/../' + window.DOCUMENTER_STABLE; + div.innerHTML = 'This documentation is not for the latest stable release, but for either the development version or an older release.
    Click here to go to the documentation for the latest stable release.'; + div.appendChild(closer); + document.body.appendChild(div); +}; + +if (document.readyState === 'loading') { + document.addEventListener('DOMContentLoaded', maybeAddWarning); +} else { + maybeAddWarning(); +}; diff --git a/v0.28.3/code_base_developer_guide/developer/index.html b/v0.28.3/code_base_developer_guide/developer/index.html new file mode 100644 index 0000000000..a99a1c5d7d --- /dev/null +++ b/v0.28.3/code_base_developer_guide/developer/index.html @@ -0,0 +1,2 @@ + +Developer Guide · PowerSimulations.jl
    diff --git a/v0.28.3/code_base_developer_guide/extending_powersimulations/index.html b/v0.28.3/code_base_developer_guide/extending_powersimulations/index.html new file mode 100644 index 0000000000..4a02d21723 --- /dev/null +++ b/v0.28.3/code_base_developer_guide/extending_powersimulations/index.html @@ -0,0 +1,36 @@ + +Extending Source Code Functionalities · PowerSimulations.jl

    Extending Source Code Functionalities

    Enable other recorder events

    Other types of recorder events can be enabled with a possible performance impact. To do this pass in the specific recorder names to be enabled when you call build.

    sim = Simulation(...)
    +recorders = [:execution]
    +build!(sim; recorders = recorders)
    +execute!(sim)

    Now we can examine InitialConditionUpdateEvents for specific steps and stages.

    show_simulation_events(
    +    PSI.InitialConditionUpdateEvent,
    +    "./output/aggregation/1",
    +    x -> x.initial_condition_type == "DeviceStatus";
    +    step = 2,
    +    stage = 1
    +)
    +┌─────────────────────────────┬─────────────────────┬────────────────────────┬─────────────────┬─────────────┬─────┬──────────────┐
    +│                        name │     simulation_time │ initial_condition_type │     device_type │ device_name │ val │ stage_number │
    +├─────────────────────────────┼─────────────────────┼────────────────────────┼─────────────────┼─────────────┼─────┼──────────────┤
    +│ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │           DeviceStatus │ ThermalStandard │    Solitude │ 0.0 │            1 │
    +│ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │           DeviceStatus │ ThermalStandard │   Park City │ 1.0 │            1 │
    +│ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │           DeviceStatus │ ThermalStandard │        Alta │ 1.0 │            1 │
    +│ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │           DeviceStatus │ ThermalStandard │    Brighton │ 1.0 │            1 │
    +│ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │           DeviceStatus │ ThermalStandard │    Sundance │ 0.0 │            1 │
    +└─────────────────────────────┴─────────────────────┴────────────────────────┴─────────────────┴─────────────┴─────┴──────────────┘

    Show the wall time with your events

    Sometimes you might want to see how the events line up with the wall time.

    show_simulation_events(
    +    PSI.InitialConditionUpdateEvent,
    +    "./output/aggregation/1",
    +    x -> x.initial_condition_type == "DeviceStatus";
    +    step = 2,
    +    stage = 1,
    +    wall_time = true
    +)
    +┌─────────────────────────┬─────────────────────────────┬─────────────────────┬────────────────────────┬─────────────────┬─────────────┬─────┬──────────────┐
    +│               timestamp │                        name │     simulation_time │ initial_condition_type │     device_type │ device_name │ val │ stage_number │
    +├─────────────────────────┼─────────────────────────────┼─────────────────────┼────────────────────────┼─────────────────┼─────────────┼─────┼──────────────┤
    +│ 2020-04-07T15:08:32.711 │ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │           DeviceStatus │ ThermalStandard │    Solitude │ 0.0 │            1 │
    +│ 2020-04-07T15:08:32.711 │ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │           DeviceStatus │ ThermalStandard │   Park City │ 1.0 │            1 │
    +│ 2020-04-07T15:08:32.711 │ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │           DeviceStatus │ ThermalStandard │        Alta │ 1.0 │            1 │
    +│ 2020-04-07T15:08:32.711 │ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │           DeviceStatus │ ThermalStandard │    Brighton │ 1.0 │            1 │
    +│ 2020-04-07T15:08:32.711 │ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │           DeviceStatus │ ThermalStandard │    Sundance │ 0.0 │            1 │
    +└─────────────────────────┴─────────────────────────────┴─────────────────────┴────────────────────────┴─────────────────┴─────────────┴─────┴──────────────┘
    diff --git a/v0.28.3/code_base_developer_guide/troubleshooting/index.html b/v0.28.3/code_base_developer_guide/troubleshooting/index.html new file mode 100644 index 0000000000..664f682417 --- /dev/null +++ b/v0.28.3/code_base_developer_guide/troubleshooting/index.html @@ -0,0 +1,2 @@ + +Troubleshooting · PowerSimulations.jl diff --git a/v0.28.3/formulation_library/Branch/index.html b/v0.28.3/formulation_library/Branch/index.html new file mode 100644 index 0000000000..41f7da7c16 --- /dev/null +++ b/v0.28.3/formulation_library/Branch/index.html @@ -0,0 +1,38 @@ + +Branch · PowerSimulations.jl

    PowerSystems.Branch Formulations

    Note

    The use of reactive power variables and constraints will depend on the network model used, i.e., whether it uses (or does not use) reactive power. If the network model is purely active power-based, reactive power variables and related constraints are not created.

    Table of contents

    1. StaticBranch
    2. StaticBranchBounds
    3. StaticBranchUnbounded
    4. HVDCTwoTerminalUnbounded
    5. HVDCTwoTerminalLossless
    6. HVDCTwoTerminalDispatch
    7. PhaseAngleControl
    8. Valid configurations

    StaticBranch

    Formulation valid for PTDFPowerModel Network model

    Variables:

    If Slack variables are enabled:

    Static Parameters

    • $R^\text{max}$ = PowerSystems.get_rating(branch)

    Objective:

    Add a large proportional cost to the objective function if rate constraint slack variables are used $+ (f^\text{sl,up} + f^\text{sl,lo}) \cdot 2 \cdot 10^5$

    Expressions:

    No expressions are used.

    Constraints:

    For each branch $b \in \{1,\dots, B\}$ (in a system with $N$ buses) the constraints are given by:

    \[\begin{aligned} +& f_t = \sum_{i=1}^N \text{PTDF}_{i,b} \cdot \text{Bal}_{i,t}, \quad \forall t \in \{1,\dots, T\}\\ +& f_t - f_t^\text{sl,up} \le R^\text{max},\quad \forall t \in \{1,\dots, T\} \\ +& f_t + f_t^\text{sl,lo} \ge -R^\text{max},\quad \forall t \in \{1,\dots, T\} +\end{aligned}\]

    on which $\text{PTDF}$ is the $N \times B$ system Power Transfer Distribution Factors (PTDF) matrix, and $\text{Bal}_{i,t}$ is the active power bus balance expression (i.e. $\text{Generation}_{i,t} - \text{Demand}_{i,t}$) at bus $i$ at time-step $t$.


    StaticBranchBounds

    Formulation valid for PTDFPowerModel Network model

    Variables:

    Static Parameters

    • $R^\text{max}$ = PowerSystems.get_rating(branch)

    Objective:

    No cost is added to the objective function.

    Expressions:

    No expressions are used.

    Constraints:

    For each branch $b \in \{1,\dots, B\}$ (in a system with $N$ buses) the constraints are given by:

    \[\begin{aligned} +& f_t = \sum_{i=1}^N \text{PTDF}_{i,b} \cdot \text{Bal}_{i,t}, \quad \forall t \in \{1,\dots, T\} +\end{aligned}\]

    on which $\text{PTDF}$ is the $N \times B$ system Power Transfer Distribution Factors (PTDF) matrix, and $\text{Bal}_{i,t}$ is the active power bus balance expression (i.e. $\text{Generation}_{i,t} - \text{Demand}_{i,t}$) at bus $i$ at time-step $t$.


    StaticBranchUnbounded

    Formulation valid for PTDFPowerModel Network model

    Objective:

    No cost is added to the objective function.

    Expressions:

    No expressions are used.

    Constraints:

    For each branch $b \in \{1,\dots, B\}$ (in a system with $N$ buses) the constraints are given by:

    \[\begin{aligned} +& f_t = \sum_{i=1}^N \text{PTDF}_{i,b} \cdot \text{Bal}_{i,t}, \quad \forall t \in \{1,\dots, T\} +\end{aligned}\]

    on which $\text{PTDF}$ is the $N \times B$ system Power Transfer Distribution Factors (PTDF) matrix, and $\text{Bal}_{i,t}$ is the active power bus balance expression (i.e. $\text{Generation}_{i,t} - \text{Demand}_{i,t}$) at bus $i$ at time-step $t$.


    HVDCTwoTerminalUnbounded

    Formulation valid for PTDFPowerModel Network model

    This model assumes that it can transfer power from two AC buses without losses and no limits.

    Variables:

    Objective:

    No cost is added to the objective function.

    Expressions:

    The variable FlowActivePowerVariable $f$ is added to the nodal balance expression ActivePowerBalance, by adding the flow $f$ in the receiving bus and subtracting it from the sending bus. This is used then to compute the AC flows using the PTDF equation.

    Constraints:

    No constraints are added.


    HVDCTwoTerminalLossless

    Formulation valid for PTDFPowerModel Network model

    This model assumes that it can transfer power from two AC buses without losses.

    Variables:

    Static Parameters

    • $R^\text{from,min}$ = PowerSystems.get_active_power_limits_from(branch).min
    • $R^\text{from,max}$ = PowerSystems.get_active_power_limits_from(branch).max
    • $R^\text{to,min}$ = PowerSystems.get_active_power_limits_to(branch).min
    • $R^\text{to,max}$ = PowerSystems.get_active_power_limits_to(branch).max

    Objective:

    No cost is added to the objective function.

    Expressions:

    The variable FlowActivePowerVariable $f$ is added to the nodal balance expression ActivePowerBalance, by adding the flow $f$ in the receiving bus and subtracting it from the sending bus. This is used then to compute the AC flows using the PTDF equation.

    Constraints:

    \[\begin{align*} +& R^\text{min} \le f_t \le R^\text{max},\quad \forall t \in \{1,\dots, T\} \\ +\end{align*}\]

    where:

    \[\begin{align*} +& R^\text{min} = \begin{cases} + \min\left(R^\text{from,min}, R^\text{to,min}\right), & \text{if } R^\text{from,min} \ge 0 \text{ and } R^\text{to,min} \ge 0 \\ + \max\left(R^\text{from,min}, R^\text{to,min}\right), & \text{if } R^\text{from,min} \le 0 \text{ and } R^\text{to,min} \le 0 \\ + R^\text{from,min},& \text{if } R^\text{from,min} \le 0 \text{ and } R^\text{to,min} \ge 0 \\ + R^\text{to,min},& \text{if } R^\text{from,min} \ge 0 \text{ and } R^\text{to,min} \le 0 + \end{cases} +\end{align*}\]

    and

    \[\begin{align*} +& R^\text{max} = \begin{cases} + \min\left(R^\text{from,max}, R^\text{to,max}\right), & \text{if } R^\text{from,max} \ge 0 \text{ and } R^\text{to,max} \ge 0 \\ + \max\left(R^\text{from,max}, R^\text{to,max}\right), & \text{if } R^\text{from,max} \le 0 \text{ and } R^\text{to,max} \le 0 \\ + R^\text{from,max},& \text{if } R^\text{from,max} \le 0 \text{ and } R^\text{to,max} \ge 0 \\ + R^\text{to,max},& \text{if } R^\text{from,max} \ge 0 \text{ and } R^\text{to,max} \le 0 + \end{cases} +\end{align*}\]


    HVDCTwoTerminalDispatch

    Formulation valid for PTDFPowerModel Network model

    Variables

    Static Parameters

    • $R^\text{from,min}$ = PowerSystems.get_active_power_limits_from(branch).min
    • $R^\text{from,max}$ = PowerSystems.get_active_power_limits_from(branch).max
    • $R^\text{to,min}$ = PowerSystems.get_active_power_limits_to(branch).min
    • $R^\text{to,max}$ = PowerSystems.get_active_power_limits_to(branch).max
    • $L_0$ = PowerSystems.get_loss(branch).l0
    • $L_1$ = PowerSystems.get_loss(branch).l1

    Objective:

    No cost is added to the objective function.

    Expressions:

    Each FlowActivePowerToFromVariable $f^\text{to-from}$ and FlowActivePowerFromToVariable $f^\text{from-to}$ is added to the nodal balance expression ActivePowerBalance, by adding the respective flow in the receiving bus and subtracting it from the sending bus. That is, $f^\text{to-from}$ adds the flow to the from bus, and subtracts the flow from the to bus, while $f^\text{from-to}$ adds the flow to the to bus, and subtracts the flow from the from bus This is used then to compute the AC flows using the PTDF equation.

    In addition, the HVDCLosses are subtracted to the from bus in the ActivePowerBalance expression.

    Constraints:

    \[\begin{align*} +& R^\text{from,min} \le f_t^\text{from-to} \le R^\text{from,max}, \forall t \in \{1,\dots, T\} \\ +& R^\text{to,min} \le f_t^\text{to-from} \le R^\text{to,max},\quad \forall t \in \{1,\dots, T\} \\ +& f_t^\text{to-from} - f_t^\text{from-to} \le L_1 \cdot f_t^\text{to-from} - L_0,\quad \forall t \in \{1,\dots, T\} \\ +& f_t^\text{from-to} - f_t^\text{to-from} \ge L_1 \cdot f_t^\text{from-to} + L_0,\quad \forall t \in \{1,\dots, T\} \\ +& f_t^\text{from-to} - f_t^\text{to-from} \ge - M^\text{big} (1 - u^\text{dir}_t),\quad \forall t \in \{1,\dots, T\} \\ +& f_t^\text{to-from} - f_t^\text{from-to} \ge - M^\text{big} u^\text{dir}_t,\quad \forall t \in \{1,\dots, T\} \\ +& f_t^\text{to-from} - f_t^\text{from-to} \le \ell_t,\quad \forall t \in \{1,\dots, T\} \\ +& f_t^\text{from-to} - f_t^\text{to-from} \le \ell_t,\quad \forall t \in \{1,\dots, T\} +\end{align*}\]


    PhaseAngleControl

    Formulation valid for PTDFPowerModel Network model

    Variables:

    Static Parameters

    • $R^\text{max}$ = PowerSystems.get_rating(branch)
    • $\Theta^\text{min}$ = PowerSystems.get_phase_angle_limits(branch).min
    • $\Theta^\text{max}$ = PowerSystems.get_phase_angle_limits(branch).max
    • $X$ = PowerSystems.get_x(branch) (series reactance)

    Objective:

    No changes to objective function

    Expressions:

    Adds to the ActivePowerBalance expression the term $-\theta^\text{shift} /X$ to the from bus and $+\theta^\text{shift} /X$ to the to bus, that the PhaseShiftingTransformer is connected.

    Constraints:

    For each branch $b \in \{1,\dots, B\}$ (in a system with $N$ buses) the constraints are given by:

    \[\begin{aligned} +& f_t = \sum_{i=1}^N \text{PTDF}_{i,b} \cdot \text{Bal}_{i,t} + \frac{\theta^\text{shift}_t}{X}, \quad \forall t \in \{1,\dots, T\}\\ +& -R^\text{max} \le f_t \le R^\text{max},\quad \forall t \in \{1,\dots, T\} +\end{aligned}\]

    on which $\text{PTDF}$ is the $N \times B$ system Power Transfer Distribution Factors (PTDF) matrix, and $\text{Bal}_{i,t}$ is the active power bus balance expression (i.e. $\text{Generation}_{i,t} - \text{Demand}_{i,t}$) at bus $i$ at time-step $t$.


    Valid configurations

    Valid DeviceModels for subtypes of Branch include the following:

    Valid DeviceModelDevice TypeFormulation
    DeviceModel(PhaseShiftingTransformer, PhaseAngleControl)PhaseShiftingTransformerPhaseAngleControl
    DeviceModel(TwoTerminalHVDCLine, HVDCTwoTerminalDispatch)TwoTerminalHVDCLineHVDCTwoTerminalDispatch
    DeviceModel(TwoTerminalVSCDCLine, HVDCTwoTerminalDispatch)TwoTerminalVSCDCLineHVDCTwoTerminalDispatch
    DeviceModel(TwoTerminalHVDCLine, HVDCTwoTerminalLossless)TwoTerminalHVDCLineHVDCTwoTerminalLossless
    DeviceModel(TwoTerminalVSCDCLine, HVDCTwoTerminalLossless)TwoTerminalVSCDCLineHVDCTwoTerminalLossless
    DeviceModel(TwoTerminalHVDCLine, HVDCTwoTerminalUnbounded)TwoTerminalHVDCLineHVDCTwoTerminalUnbounded
    DeviceModel(TwoTerminalVSCDCLine, HVDCTwoTerminalUnbounded)TwoTerminalVSCDCLineHVDCTwoTerminalUnbounded
    DeviceModel(Line, StaticBranch)LineStaticBranch
    DeviceModel(MonitoredLine, StaticBranch)MonitoredLineStaticBranch
    DeviceModel(PhaseShiftingTransformer, StaticBranch)PhaseShiftingTransformerStaticBranch
    DeviceModel(TapTransformer, StaticBranch)TapTransformerStaticBranch
    DeviceModel(Transformer2W, StaticBranch)Transformer2WStaticBranch
    DeviceModel(TwoTerminalHVDCLine, StaticBranch)TwoTerminalHVDCLineStaticBranch
    DeviceModel(TwoTerminalVSCDCLine, StaticBranch)TwoTerminalVSCDCLineStaticBranch
    DeviceModel(AreaInterchange, StaticBranch)AreaInterchangeStaticBranch
    DeviceModel(Line, StaticBranchBounds)LineStaticBranchBounds
    DeviceModel(MonitoredLine, StaticBranchBounds)MonitoredLineStaticBranchBounds
    DeviceModel(PhaseShiftingTransformer, StaticBranchBounds)PhaseShiftingTransformerStaticBranchBounds
    DeviceModel(TapTransformer, StaticBranchBounds)TapTransformerStaticBranchBounds
    DeviceModel(Transformer2W, StaticBranchBounds)Transformer2WStaticBranchBounds
    DeviceModel(TwoTerminalHVDCLine, StaticBranchBounds)TwoTerminalHVDCLineStaticBranchBounds
    DeviceModel(TwoTerminalVSCDCLine, StaticBranchBounds)TwoTerminalVSCDCLineStaticBranchBounds
    DeviceModel(Line, StaticBranchUnbounded)LineStaticBranchUnbounded
    DeviceModel(MonitoredLine, StaticBranchUnbounded)MonitoredLineStaticBranchUnbounded
    DeviceModel(PhaseShiftingTransformer, StaticBranchUnbounded)PhaseShiftingTransformerStaticBranchUnbounded
    DeviceModel(TapTransformer, StaticBranchUnbounded)TapTransformerStaticBranchUnbounded
    DeviceModel(Transformer2W, StaticBranchUnbounded)Transformer2WStaticBranchUnbounded
    DeviceModel(TwoTerminalHVDCLine, StaticBranchUnbounded)TwoTerminalHVDCLineStaticBranchUnbounded
    DeviceModel(TwoTerminalVSCDCLine, StaticBranchUnbounded)TwoTerminalVSCDCLineStaticBranchUnbounded
    DeviceModel(AreaInterchange, StaticBranchUnbounded)AreaInterchangeStaticBranchUnbounded
    diff --git a/v0.28.3/formulation_library/Feedforward/index.html b/v0.28.3/formulation_library/Feedforward/index.html new file mode 100644 index 0000000000..890a9dc8e2 --- /dev/null +++ b/v0.28.3/formulation_library/Feedforward/index.html @@ -0,0 +1,33 @@ + +Feedforwards · PowerSimulations.jl

    FeedForward Formulations

    FeedForwards are the mechanism to define how information is shared between models. Specifically, a FeedForward defines what to do with information passed with an inter-stage chronology in a Simulation. The most common FeedForward is the SemiContinuousFeedForward that affects the semi-continuous range constraints of thermal generators in the economic dispatch problems based on the value of the (already solved) unit-commitment variables.

    The creation of a FeedForward requires at least specifying the component_type on which the FeedForward will be applied. The source variable specifies which variable will be taken from the problem solved, for example, the commitment variable of the thermal unit in the unit commitment problem. Finally, the affected_values specify which variables will be affected in the problem to be solved, for example, the next economic dispatch problem.

    Table of contents

    1. SemiContinuousFeedforward
    2. FixValueFeedforward
    3. UpperBoundFeedforward
    4. LowerBoundFeedforward

    SemiContinuousFeedforward

    PowerSimulations.SemiContinuousFeedforwardType
    SemiContinuousFeedforward(
    +    component_type::Type{<:PSY.Component},
    +    source::Type{T},
    +    affected_values::Vector{DataType},
    +    meta = CONTAINER_KEY_EMPTY_META
    +) where {T}

    It allows to enable/disable bounds to 0.0 for a specified variable. Commonly used to limit the ActivePowerVariable in an Economic Dispatch problem by the commitment decision taken in an another problem (typically a Unit Commitment problem).

    Arguments:

    • component_type::Type{<:PSY.Component} : Specify the type of component on which the Feedforward will be applied
    • source::Type{T} : Specify the VariableType, ParameterType or AuxVariableType as the source of values for the Feedforward
    • affected_values::Vector{DataType} : Specify the variable on which the semicontinuous limit will be applied using the source values
    source

    Variables:

    No variables are created

    Parameters:

    • $\text{on}^\text{th}$ = OnStatusParameter obtained from the source variable, typically the commitment variable of the unit commitment problem $u^\text{th}$.

    Objective:

    No changes to the objective function.

    Expressions:

    Adds $-\text{on}^\text{th}P^\text{th,max}$ to the ActivePowerRangeExpressionUB expression and $-\text{on}^\text{th}P^\text{th,min}$ to the ActivePowerRangeExpressionLB expression.

    Constraints:

    Limits the ActivePowerRangeExpressionUB and ActivePowerRangeExpressionLB by zero as:

    \[\begin{align*} +& \text{ActivePowerRangeExpressionUB}_t := p_t^\text{th} - \text{on}_t^\text{th}P^\text{th,max} \le 0, \quad \forall t\in \{1, \dots, T\} \\ +& \text{ActivePowerRangeExpressionLB}_t := p_t^\text{th} - \text{on}_t^\text{th}P^\text{th,min} \ge 0, \quad \forall t\in \{1, \dots, T\} +\end{align*}\]

    Thus, if the commitment parameter is zero, the dispatch is limited to zero, forcing to turn off the generator without introducing binary variables in the economic dispatch problem.


    FixValueFeedforward

    PowerSimulations.FixValueFeedforwardType
    FixValueFeedforward(
    +    component_type::Type{<:PSY.Component},
    +    source::Type{T},
    +    affected_values::Vector{DataType},
    +    meta = CONTAINER_KEY_EMPTY_META
    +) where {T}

    Fixes a Variable or Parameter Value in the model from another problem. Is the only Feed Forward that can be used with a Parameter or a Variable as the affected value.

    Arguments:

    • component_type::Type{<:PSY.Component} : Specify the type of component on which the Feedforward will be applied
    • source::Type{T} : Specify the VariableType, ParameterType or AuxVariableType as the source of values for the Feedforward
    • affected_values::Vector{DataType} : Specify the variable on which the fix value will be applied using the source values
    source

    Variables:

    No variables are created

    Parameters:

    The parameter FixValueParameter is used to match the result obtained from the source variable (from the simulation state).

    Objective:

    No changes to the objective function.

    Expressions:

    No changes on expressions.

    Constraints:

    Set the VariableType from the affected_values to be equal to the source parameter store in FixValueParameter

    \[\begin{align*} +& \text{AffectedVariable}_t = \text{SourceVariableParameter}_t, \quad \forall t \in \{1,\dots, T\} +\end{align*}\]


    UpperBoundFeedforward

    PowerSimulations.UpperBoundFeedforwardType
    UpperBoundFeedforward(
    +    component_type::Type{<:PSY.Component},
    +    source::Type{T},
    +    affected_values::Vector{DataType},
    +    add_slacks::Bool = false,
    +    meta = CONTAINER_KEY_EMPTY_META
    +) where {T}

    Constructs a parameterized upper bound constraint to implement feedforward from other models.

    Arguments:

    • component_type::Type{<:PSY.Component} : Specify the type of component on which the Feedforward will be applied
    • source::Type{T} : Specify the VariableType, ParameterType or AuxVariableType as the source of values for the Feedforward
    • affected_values::Vector{DataType} : Specify the variable on which the upper bound will be applied using the source values
    • add_slacks::Bool = false : Add slacks variables to relax the upper bound constraint.
    source

    Variables:

    If slack variables are enabled:

    Parameters:

    The parameter UpperBoundValueParameter stores the result obtained from the source variable (from the simulation state) that will be used as an upper bound to the affected variable.

    Objective:

    The slack variable is added to the objective function using its large default cost $+ p^\text{ff,ubsl} \cdot 10^6$

    Expressions:

    No changes on expressions.

    Constraints:

    Set the VariableType from the affected_values to be lower than the source parameter store in UpperBoundValueParameter.

    \[\begin{align*} +& \text{AffectedVariable}_t - p_t^\text{ff,ubsl} \le \text{SourceVariableParameter}_t, \quad \forall t \in \{1,\dots, T\} +\end{align*}\]


    LowerBoundFeedforward

    PowerSimulations.LowerBoundFeedforwardType
    LowerBoundFeedforward(
    +    component_type::Type{<:PSY.Component},
    +    source::Type{T},
    +    affected_values::Vector{DataType},
    +    add_slacks::Bool = false,
    +    meta = CONTAINER_KEY_EMPTY_META
    +) where {T}

    Constructs a parameterized lower bound constraint to implement feedforward from other models.

    Arguments:

    • component_type::Type{<:PSY.Component} : Specify the type of component on which the Feedforward will be applied
    • source::Type{T} : Specify the VariableType, ParameterType or AuxVariableType as the source of values for the Feedforward
    • affected_values::Vector{DataType} : Specify the variable on which the lower bound will be applied using the source values
    • add_slacks::Bool = false : Add slacks variables to relax the lower bound constraint.
    source

    Variables:

    If slack variables are enabled:

    Parameters:

    The parameter LowerBoundValueParameter stores the result obtained from the source variable (from the simulation state) that will be used as a lower bound to the affected variable.

    Objective:

    The slack variable is added to the objective function using its large default cost $+ p^\text{ff,lbsl} \cdot 10^6$

    Expressions:

    No changes on expressions.

    Constraints:

    Set the VariableType from the affected_values to be greater than the source parameter store in LowerBoundValueParameter.

    \[\begin{align*} +& \text{AffectedVariable}_t + p_t^\text{ff,lbsl} \ge \text{SourceVariableParameter}_t, \quad \forall t \in \{1,\dots, T\} +\end{align*}\]

    diff --git a/v0.28.3/formulation_library/General/index.html b/v0.28.3/formulation_library/General/index.html new file mode 100644 index 0000000000..8be0de858c --- /dev/null +++ b/v0.28.3/formulation_library/General/index.html @@ -0,0 +1,10 @@ + +General · PowerSimulations.jl

    Formulations

    Modeling formulations are created by dispatching on abstract subtypes of PowerSimulations.AbstractDeviceFormulation

    FixedOutput

    Variables:

    No variables are created for DeviceModel(<:DeviceType, FixedOutput)

    Static Parameters:

    • ThermalGen:
      • $P^\text{th,max}$ = PowerSystems.get_max_active_power(device)
      • $Q^\text{th,max}$ = PowerSystems.get_max_reactive_power(device)
    • Storage:
      • $P^\text{st,max}$ = PowerSystems.get_max_active_power(device)
      • $Q^\text{st,max}$ = PowerSystems.get_max_reactive_power(device)

    Time Series Parameters:

    Device TypeParameterDefault Time Series Name
    RenewableGenReactivePowerTimeSeriesParametermax_active_power
    RenewableGenActivePowerTimeSeriesParametermax_active_power
    HydroGenReactivePowerTimeSeriesParametermax_active_power
    HydroGenActivePowerTimeSeriesParametermax_active_power
    ElectricLoadReactivePowerTimeSeriesParametermax_active_power
    ElectricLoadActivePowerTimeSeriesParametermax_active_power

    Objective:

    No objective terms are created for DeviceModel(<:DeviceType, FixedOutput)

    Expressions:

    Adds the active and reactive parameters listed for specific device types above to the respective active and reactive power balance expressions created by the selected Network Formulations.

    Constraints:

    No constraints are created for DeviceModel(<:DeviceType, FixedOutput)


    FunctionData Options

    PowerSimulations can represent variable costs using a variety of different methods depending on the data available in each device. The following describes the objective function terms that are populated for each variable cost option.

    LinearFunctionData

    variable_cost = LinearFunctionData(c): creates a fixed marginal cost term in the objective function

    \[\begin{aligned} +& \text{min} \sum_{t} c * G_t +\end{aligned}\]

    QuadraticFunctionData and PolynomialFunctionData

    variable_cost::QuadraticFunctionData and variable_cost::PolynomialFunctionData: create a polynomial cost term in the objective function

    \[\begin{aligned} +& \text{min} \sum_{t} \sum_{n} C_n * G_t^n +\end{aligned}\]

    where

    • For QuadraticFunctionData:
      • $C_0$ = get_constant_term(variable_cost)
      • $C_1$ = get_proportional_term(variable_cost)
      • $C_2$ = get_quadratic_term(variable_cost)
    • For PolynomialFunctionData:
      • $C_n$ = get_coefficients(variable_cost)[n]

    `andPiecewiseLinearSlopeData`

    variable_cost::PiecewiseLinearData and variable_cost::PiecewiseLinearSlopeData: create a piecewise linear cost term in the objective function

    \[\begin{aligned} +& \text{min} \sum_{t} f(G_t) +\end{aligned}\]

    where

    • For variable_cost::PiecewiseLinearData, $f(x)$ is the piecewise linear function obtained by connecting the (x, y) points get_points(variable_cost) in order.
    • For variable_cost = PiecewiseLinearSlopeData([x0, x1, x2, ...], y0, [s0, s1, s2, ...]), $f(x)$ is the piecewise linear function obtained by starting at (x0, y0), drawing a segment at slope s0 to x=x1, drawing a segment at slope s1 to x=x2, etc.

    StorageCost

    Adds an objective function cost term according to:

    \[\begin{aligned} +& \text{min} \sum_{t} \quad [E^{surplus}_t * C^{penalty} - E^{shortage}_t * C^{value}] +\end{aligned}\]

    Impact of different cost configurations:

    The following table describes all possible configurations of the StorageCost with the target constraint in hydro or storage device models. Cases 1(a) & 2(a) will not impact the model's operations, and the target constraint will be rendered useless. In most cases that have no energy target and a non-zero value for $C^{value}$, if this cost is too high ($C^{value} >> 0$) or too low ($C^{value} <<0$) can result in either the model holding on to stored energy till the end of the model not storing any energy in the device. This is caused by the fact that when the energy target is zero, we have $E_t = - E^{shortage}_t$, and $- E^{shortage}_t * C^{value}$ in the objective function is replaced by $E_t * C^{value}$, thus resulting in $C^{value}$ to be seen as the cost of stored energy.

    CaseEnergy TargetEnergy Shortage CostEnergy Value / Energy Surplus costEffect
    Case 1(a)$\hat{E}=0$$C^{penalty}=0$$C^{value}=0$no change
    Case 1(b)$\hat{E}=0$$C^{penalty}=0$$C^{value}<0$penalty for storing energy
    Case 1(c)$\hat{E}=0$$C^{penalty}>0$$C^{value}=0$no penalties or incentives applied
    Case 1(d)$\hat{E}=0$$C^{penalty}=0$$C^{value}>0$incentive for storing energy
    Case 1(e)$\hat{E}=0$$C^{penalty}>0$$C^{value}<0$penalty for storing energy
    Case 1(f)$\hat{E}=0$$C^{penalty}>0$$C^{value}>0$incentive for storing energy
    Case 2(a)$\hat{E}>0$$C^{penalty}=0$$C^{value}=0$no change
    Case 2(b)$\hat{E}>0$$C^{penalty}=0$$C^{value}<0$penalty on energy storage in excess of target
    Case 2(c)$\hat{E}>0$$C^{penalty}>0$$C^{value}=0$penalty on energy storage short of target
    Case 2(d)$\hat{E}>0$$C^{penalty}=0$$C^{value}>0$incentive on excess energy
    Case 2(e)$\hat{E}>0$$C^{penalty}>0$$C^{value}<0$penalty on both excess/shortage of energy
    Case 2(f)$\hat{E}>0$$C^{penalty}>0$$C^{value}>0$penalty for shortage, incentive for excess energy
    diff --git a/v0.28.3/formulation_library/Introduction/index.html b/v0.28.3/formulation_library/Introduction/index.html new file mode 100644 index 0000000000..bf187e7674 --- /dev/null +++ b/v0.28.3/formulation_library/Introduction/index.html @@ -0,0 +1,15 @@ + +Introduction · PowerSimulations.jl

    Formulations Introduction

    PowerSimulations.jl enables modularity in its formulations by assigning a DeviceModel to each PowerSystems.jl component type existing in a defined system.

    PowerSimulations.jl has a multiple AbstractDeviceFormulation subtypes that can be applied to different PowerSystems.jl device types, each dispatching to different methods for populating the optimization problem variables, objective function, expressions and constraints.

    Example Formulation

    For example a typical optimization problem in a DecisionModel in PowerSimulations.jl with three DeviceModel has the abstract form of:

    \[\begin{align*} + &\min_{\boldsymbol{x}}~ \text{Objective\_DeviceModelA} + \text{Objective\_DeviceModelB} + \text{Objective\_DeviceModelC} \\ + & ~~\text{s.t.} \\ + & \hspace{0.9cm} \text{Constraints\_NetworkModel} \\ + & \hspace{0.9cm} \text{Constraints\_DeviceModelA} \\ + & \hspace{0.9cm} \text{Constraints\_DeviceModelB} \\ + & \hspace{0.9cm} \text{Constraints\_DeviceModelC} +\end{align*}\]

    Suppose this is a system with the following characteristics:

    • Horizon: 48 hours
    • Interval: 24 hours
    • Resolution: 1 hour
    • Three Buses: 1, 2 and 3
    • One ThermalStandard (device A) unit at bus 1
    • One RenewableDispatch (device B) unit at bus 2
    • One PowerLoad (device C) at bus 3
    • Three Line that connects all the buses

    Now, we assign the following DeviceModel to each PowerSystems.jl with:

    TypeFormulation
    NetworkCopperPlatePowerModel
    ThermalStandardThermalDispatchNoMin
    RenewableDispatchRenewableFullDispatch
    PowerLoadStaticPowerLoad

    Note that we did not assign any DeviceModel to Line since the CopperPlatePowerModel used for the network assumes that everything is lumped in the same node (like a copper plate with infinite capacity), and hence there are no flows between buses that branches can limit.

    Each DeviceModel formulation is described in specific in their respective page, but the overall optimization problem will end-up as:

    \[\begin{align*} + &\min_{\boldsymbol{p}^\text{th}, \boldsymbol{p}^\text{re}}~ \sum_{t=1}^{48} C^\text{th} p_t^\text{th} - C^\text{re} p_t^\text{re} \\ + & ~~\text{s.t.} \\ + & \hspace{0.9cm} p_t^\text{th} + p_t^\text{re} = P_t^\text{load}, \quad \forall t \in {1,\dots, 48} \\ + & \hspace{0.9cm} 0 \le p_t^\text{th} \le P^\text{th,max} \\ + & \hspace{0.9cm} 0 \le p_t^\text{re} \le \text{ActivePowerTimeSeriesParameter}_t +\end{align*}\]

    Note that the StaticPowerLoad does not impose any cost to the objective function or constraint but adds its power demand to the supply-balance demand of the CopperPlatePowerModel used. Since we are using the ThermalDispatchNoMin formulation for the thermal generation, the lower bound for the power is 0, instead of $P^\text{th,min}$. In addition, we are assuming a linear cost $C^\text{th}$. Finally, the RenewableFullDispatch formulation allows the dispatch of the renewable unit between 0 and its maximum injection time series $p_t^\text{re,param}$.

    Nomenclature

    In the formulations described in the other pages, the nomenclature is as follows:

    • Lowercase letters are used for variables, e.g., $p$ for power.
    • Uppercase letters are used for parameters, e.g., $C$ for costs.
    • Subscripts are used for indexing, e.g., $(\cdot)_t$ for indexing at time $t$.
    • Superscripts are used for descriptions, e.g., $(\cdot)^\text{th}$ to describe a thermal (th) variable/parameter.
    • Bold letters are used for vectors, e.g., $\boldsymbol{p} = \{p\}_{1,\dots,24}$.
    diff --git a/v0.28.3/formulation_library/Load/index.html b/v0.28.3/formulation_library/Load/index.html new file mode 100644 index 0000000000..26fa45bc48 --- /dev/null +++ b/v0.28.3/formulation_library/Load/index.html @@ -0,0 +1,8 @@ + +Load · PowerSimulations.jl

    PowerSystems.ElectricLoad Formulations

    Electric load formulations define the optimization models that describe load units (demand) mathematical model in different operational settings, such as economic dispatch and unit commitment.

    Note

    The use of reactive power variables and constraints will depend on the network model used, i.e., whether it uses (or does not use) reactive power. If the network model is purely active power-based, reactive power variables and related constraints are not created.

    Table of contents

    1. StaticPowerLoad
    2. PowerLoadInterruption
    3. PowerLoadDispatch
    4. Valid configurations

    StaticPowerLoad

    Variables:

    No variables are created

    Time Series Parameters:

    Uses the max_active_power timeseries parameter to determine the demand value at each time-step

    ParameterDefault Time Series Name
    ReactivePowerTimeSeriesParametermax_active_power
    ActivePowerTimeSeriesParametermax_active_power

    Expressions:

    Subtracts the parameters listed above from the respective active and reactive power balance expressions created by the selected Network Formulations.

    Constraints:

    No constraints are created


    PowerLoadInterruption

    Variables:

    Static Parameters:

    • $P^\text{ld,max}$ = PowerSystems.get_max_active_power(device)
    • $Q^\text{ld,max}$ = PowerSystems.get_max_reactive_power(device)

    Time Series Parameters:

    ParameterDefault Time Series Name
    ReactivePowerTimeSeriesParametermax_active_power
    ActivePowerTimeSeriesParametermax_active_power

    Objective:

    Creates an objective function term based on the FunctionData Options where the quantity term is defined as $p^\text{ld}$.

    Expressions:

    • Subtract$p^\text{ld}$ and $q^\text{ld}$ terms and to the respective active and reactive power balance expressions created by the selected Network Formulations

    Constraints:

    \[\begin{aligned} +& p_t^\text{ld} \le u_t^\text{ld} \cdot \text{ActivePowerTimeSeriesParameter}_t, \quad \forall t \in \{1,\dots, T\} \\ +& q_t^\text{re} = \text{pf} \cdot p_t^\text{re}, \quad \forall t \in \{1,\dots, T\} +\end{aligned}\]

    on which $\text{pf} = \sin(\arctan(Q^\text{ld,max}/P^\text{ld,max}))$.


    PowerLoadDispatch

    Variables:

    • ActivePowerVariable:
      • Bounds: [0.0, ]
      • Default initial value: PowerSystems.get_active_power(device)
      • Symbol: $p^\text{ld}$
    • ReactivePowerVariable:
      • Bounds: [0.0, ]
      • Default initial value: PowerSystems.get_reactive_power(device)
      • Symbol: $q^\text{ld}$

    Static Parameters:

    • $P^\text{ld,max}$ = PowerSystems.get_max_active_power(device)
    • $Q^\text{ld,max}$ = PowerSystems.get_max_reactive_power(device)

    Time Series Parameters:

    ParameterDefault Time Series Name
    ReactivePowerTimeSeriesParametermax_active_power
    ActivePowerTimeSeriesParametermax_active_power

    Objective:

    Creates an objective function term based on the FunctionData Options where the quantity term is defined as $p^\text{ld}$.

    Expressions:

    • Subtract$p^\text{ld}$ and $q^\text{ld}$ terms and to the respective active and reactive power balance expressions created by the selected Network Formulations

    Constraints:

    \[\begin{aligned} +& p_t^\text{ld} \le \text{ActivePowerTimeSeriesParameter}_t, \quad \forall t \in \{1,\dots, T\}\\ +& q_t^\text{ld} = \text{pf} \cdot p_t^\text{ld}, \quad \forall t \in \{1,\dots, T\}\\ +\end{aligned}\]

    on which $\text{pf} = \sin(\arctan(Q^\text{ld,max}/P^\text{ld,max}))$.

    Valid configurations

    Valid DeviceModels for subtypes of ElectricLoad include the following:

    Valid DeviceModelDevice TypeFormulation
    DeviceModel(InterruptiblePowerLoad, PowerLoadDispatch)InterruptiblePowerLoadPowerLoadDispatch
    DeviceModel(ExponentialLoad, PowerLoadDispatch)ExponentialLoadPowerLoadDispatch
    DeviceModel(PowerLoad, PowerLoadDispatch)PowerLoadPowerLoadDispatch
    DeviceModel(StandardLoad, PowerLoadDispatch)StandardLoadPowerLoadDispatch
    DeviceModel(InterruptiblePowerLoad, PowerLoadInterruption)InterruptiblePowerLoadPowerLoadInterruption
    DeviceModel(ExponentialLoad, PowerLoadInterruption)ExponentialLoadPowerLoadInterruption
    DeviceModel(PowerLoad, PowerLoadInterruption)PowerLoadPowerLoadInterruption
    DeviceModel(StandardLoad, PowerLoadInterruption)StandardLoadPowerLoadInterruption
    DeviceModel(FixedAdmittance, StaticPowerLoad)FixedAdmittanceStaticPowerLoad
    DeviceModel(InterruptiblePowerLoad, StaticPowerLoad)InterruptiblePowerLoadStaticPowerLoad
    DeviceModel(ExponentialLoad, StaticPowerLoad)ExponentialLoadStaticPowerLoad
    DeviceModel(PowerLoad, StaticPowerLoad)PowerLoadStaticPowerLoad
    DeviceModel(StandardLoad, StaticPowerLoad)StandardLoadStaticPowerLoad
    DeviceModel(SwitchedAdmittance, StaticPowerLoad)SwitchedAdmittanceStaticPowerLoad
    diff --git a/v0.28.3/formulation_library/Network/index.html b/v0.28.3/formulation_library/Network/index.html new file mode 100644 index 0000000000..c6dd1bbb8c --- /dev/null +++ b/v0.28.3/formulation_library/Network/index.html @@ -0,0 +1,8 @@ + +Network · PowerSimulations.jl

    Network Formulations

    Network formulations are used to describe how the network and buses are handled when constructing constraints. The most common constraint decided by the network formulation is the supply-demand balance constraint. Available Network Models are:

    FormulationDescription
    CopperPlatePowerModelCopper plate connection between all components, i.e. infinite transmission capacity
    AreaBalancePowerModelNetwork model approximation to represent inter-area flow with each area represented as a single node
    PTDFPowerModelUses the PTDF factor matrix to compute the fraction of power transferred in the network across the branches
    AreaPTDFPowerModelUses the PTDF factor matrix to compute the fraction of power transferred in the network across the branches and balances power by Area instead of system-wide

    PowerModels.jl available formulations:

    • Exact non-convex models: ACPPowerModel, ACRPowerModel, ACTPowerModel.
    • Linear approximations: DCPPowerModel, NFAPowerModel.
    • Quadratic approximations: DCPLLPowerModel, LPACCPowerModel
    • Quadratic relaxations: SOCWRPowerModel, SOCWRConicPowerModel, SOCBFPowerModel, SOCBFConicPowerModel, QCRMPowerModel, QCLSPowerModel.
    • SDP relaxations: SDPWRMPowerModel, SparseSDPWRMPowerModel.

    All of these formulations are described in the PowerModels.jl documentation and will not be described here.


    CopperPlatePowerModel

    Variables:

    If Slack variables are enabled:

    • SystemBalanceSlackUp:
      • Bounds: [0.0, ]
      • Default initial value: 0.0
      • Default proportional cost: 1e6
      • Symbol: $p^\text{sl,up}$
    • SystemBalanceSlackDown:
      • Bounds: [0.0, ]
      • Default initial value: 0.0
      • Default proportional cost: 1e6
      • Symbol: $p^\text{sl,dn}$

    Objective:

    Add a large proportional cost to the objective function if slack variables are used $+ (p^\text{sl,up} + p^\text{sl,dn}) \cdot 10^6$

    Expressions:

    Adds $p^\text{sl,up}$ and $p^\text{sl,dn}$ terms to the respective active power balance expressions ActivePowerBalance created by this CopperPlatePowerModel network formulation.

    Constraints:

    Adds the CopperPlateBalanceConstraint to balance the active power of all components available in the system

    \[\begin{align} +& \sum_{c \in \text{components}} p_t^c = 0, \quad \forall t \in \{1, \dots, T\} +\end{align}\]


    AreaBalancePowerModel

    Variables: If Slack variables are enabled:

    • SystemBalanceSlackUp by area:
      • Bounds: [0.0, ]
      • Default initial value: 0.0
      • Default proportional cost: 1e6
      • Symbol: $p^\text{sl,up}$
    • SystemBalanceSlackDown by area:
      • Bounds: [0.0, ]
      • Default initial value: 0.0
      • Default proportional cost: 1e6
      • Symbol: $p^\text{sl,dn}$

    Objective:

    Adds $p^\text{sl,up}$ and $p^\text{sl,dn}$ terms to the respective active power balance expressions ActivePowerBalance per area.

    Expressions:

    Creates ActivePowerBalance expressions for each area that then are used to balance active power for all buses within a single area.

    Constraints:

    Adds the CopperPlateBalanceConstraint to balance the active power of all components available in an area.

    \[\begin{align} +& \sum_{c \in \text{components}_a} p_t^c = 0, \quad \forall a\in \{1,\dots, A\}, t \in \{1, \dots, T\} +\end{align}\]


    PTDFPowerModel

    Variables:

    If Slack variables are enabled:

    • SystemBalanceSlackUp:
      • Bounds: [0.0, ]
      • Default initial value: 0.0
      • Default proportional cost: 1e6
      • Symbol: $p^\text{sl,up}$
    • SystemBalanceSlackDown:
      • Bounds: [0.0, ]
      • Default initial value: 0.0
      • Default proportional cost: 1e6
      • Symbol: $p^\text{sl,dn}$

    Objective:

    Add a large proportional cost to the objective function if slack variables are used $+ (p^\text{sl,up} + p^\text{sl,dn}) \cdot 10^6$

    Expressions:

    Adds $p^\text{sl,up}$ and $p^\text{sl,dn}$ terms to the respective system-wide active power balance expressions ActivePowerBalance created by this CopperPlatePowerModel network formulation. In addition, it creates ActivePowerBalance expressions for each bus to be used in the calculation of branch flows.

    Constraints:

    Adds the CopperPlateBalanceConstraint to balance the active power of all components available in the system

    \[\begin{align} +& \sum_{c \in \text{components}} p_t^c = 0, \quad \forall t \in \{1, \dots, T\} +\end{align}\]

    In addition creates NodalBalanceActiveConstraint for HVDC buses balance, if DC components are connected to an HVDC network.

    diff --git a/v0.28.3/formulation_library/Piecewise/index.html b/v0.28.3/formulation_library/Piecewise/index.html new file mode 100644 index 0000000000..db03329931 --- /dev/null +++ b/v0.28.3/formulation_library/Piecewise/index.html @@ -0,0 +1,30 @@ + +Piecewise Linear Cost · PowerSimulations.jl

    Piecewise linear cost functions

    The choice for piecewise-linear (PWL) cost representation in PowerSimulations.jl is equivalent to the so-called λ-model from the paper The Impacts of Convex Piecewise Linear Cost Formulations on AC Optimal Power Flow. The SOS constraints in each model are only implemented if the data for PWL is not convex.

    Special Ordered Set (SOS) Constraints

    A special ordered set (SOS) is an ordered set of variables used as an additional way to specify integrality conditions in an optimization model.

    • Special Ordered Sets of type 1 (SOS1) are a set of variables, at most one of which can take a non-zero value, all others being at 0. They most frequently applications is in a a set of variables that are actually binary variables: in other words, we have to choose at most one from a set of possibilities.
    • Special Ordered Sets of type 2 (SOS2) are an ordered set of non-negative variables, of which at most two can be non-zero, and if two are non-zero these must be consecutive in their ordering. Special Ordered Sets of type 2 are typically used to model non-linear functions of a variable in a linear model, such as non-convex quadratic functions using PWL functions.

    Standard representation of PWL costs

    Piecewise-linear costs are defined by a sequence of points representing the line segments for each generator: $(P_k^\text{max}, C_k)$ on which we assume $C_k$ is the cost of generating $P_k^\text{max}$ power, and $k \in \{1,\dots, K\}$ are the number of segments each generator cost function has.

    Note

    PowerSystems has more options to specify cost functions for each thermal unit. Independent of which form of the cost data is provided, PowerSimulations.jl will internally transform the data to use the λ-model formulation. See TODO: ADD PSY COST DOCS for more information.

    Commitment formulation

    With this the standard representation of PWL costs for a thermal unit commitment is given by:

    \[\begin{align*} + \min_{\substack{p_{t}, \delta_{k,t}}} + & \sum_{t \in \mathcal{T}} \left(\sum_{k \in \mathcal{K}} C_{k,t} \delta_{k,t} \right) \Delta t\\ + & \sum_{k \in \mathcal{K}} P_{k}^{\text{max}} \delta_{k,t} = p_{t} & \forall t \in \mathcal{T}\\ + & \sum_{k \in \mathcal{K}} \delta_{k,t} = u_{t} & \forall t \in \mathcal{T}\\ + & P^{\text{min}} u_{t} \leq p_{t} \leq P^{\text{max}} u_{t} & \forall t \in \mathcal{T}\\ + &\left \{\delta_{1,t}, \dots, \delta_{K,t} \right \} \in \text{SOS}_{2} & \forall t \in \mathcal{T} +\end{align*}\]

    on which $\delta_{k,t} \in [0,1]$ is the interpolation variable, $p$ is the active power of the generator and $u \in \{0,1\}$ is the commitment variable of the generator. In the case of a PWL convex costs, i.e. increasing slopes, the SOS constraint is omitted.

    Dispatch formulation

    \[\begin{align*} + \min_{\substack{p_{t}, \delta_{k,t}}} + & \sum_{t \in \mathcal{T}} \left(\sum_{k \in \mathcal{K}} C_{k,t} \delta_{k,t} \right) \Delta t\\ + & \sum_{k \in \mathcal{K}} P_{k}^{\text{max}} \delta_{k,t} = p_{t} & \forall t \in \mathcal{T}\\ + & \sum_{k \in \mathcal{K}} \delta_{k,t} = \text{on}_{t} & \forall t \in \mathcal{T}\\ + & P^{\text{min}} \text{on}_{t} \leq p_{t} \leq P^{\text{max}} \text{on}_{t} & \forall t \in \mathcal{T}\\ + &\left \{\delta_{i,t}, \dots, \delta_{k,t} \right \} \in \text{SOS}_{2} & \forall t \in \mathcal{T} +\end{align*}\]

    on which $\delta_{k,t} \in [0,1]$ is the interpolation variable, $p$ is the active power of the generator and $\text{on} \in \{0,1\}$ is the parameter that decides if the generator is available or not. In the case of a PWL convex costs, i.e. increasing slopes, the SOS constraint is omitted.

    Compact representation of PWL costs

    Commitment Formulation

    \[\begin{align*} + \min_{\substack{p_{t}, \delta_{k,t}}} + & \sum_{t \in \mathcal{T}} \left(\sum_{k \in \mathcal{K}} C_{k,t} \delta_{k,t} \right) \Delta t\\ + & \sum_{k \in \mathcal{K}} P_{k}^{\text{max}} \delta_{k,t} = P^{\text{min}} u_{t} + \Delta p_{t} & \forall t \in \mathcal{T}\\ + & \sum_{k \in \mathcal{K}} \delta_{k,t} = u_{t} & \forall t \in \mathcal{T}\\ + & 0 \leq \Delta p_{t} \leq \left( P^{\text{max}} - P^{\text{min}} \right)u_{t} & \forall t \in \mathcal{T}\\ + &\left \{\delta_{i,t} \dots \delta_{k,t} \right \} \in \text{SOS}_{2} & \forall t \in \mathcal{T} +\end{align*}\]

    on which $\delta_{k,t} \in [0,1]$ is the interpolation variable, $\Delta p$ is the active power of the generator above the minimum power and $u \in \{0,1\}$ is the commitment variable of the generator. In the case of a PWL convex costs, i.e. increasing slopes, the SOS constraint is omitted.

    Dispatch formulation

    \[\begin{align*} + \min_{\substack{p_{t}, \delta_{k,t}}} + & \sum_{t \in \mathcal{T}} \left(\sum_{k \in \mathcal{K}} C_{k,t} \delta_{k,t} \right) \Delta t\\ + & \sum_{k \in \mathcal{K}} P_{k}^{\text{max}} \delta_{k,t} = P^{\text{min}} \text{on}_{t} + \Delta p_{t} & \forall t \in \mathcal{T}\\ + & \sum_{k \in \mathcal{K}} \delta_{k,t} = \text{on}_{t} & \forall t \in \mathcal{T}\\ + & 0 \leq \Delta p_{t} \leq \left( P^{\text{max}} - P^{\text{min}} \right)\text{on}_{t} & \forall t \in \mathcal{T}\\ + &\left \{\delta_{i,t} \dots \delta_{k,t} \right \} \in \text{SOS}_{2} & \forall t \in \mathcal{T} +\end{align*}\]

    on which $\delta_{k,t} \in [0,1]$ is the interpolation variable, $\Delta p$ is the active power of the generator above the minimum power and $u \in \{0,1\}$ is the commitment variable of the generator. In the case of a PWL convex costs, i.e. increasing slopes, the SOS constraint is omitted.

    diff --git a/v0.28.3/formulation_library/README/index.html b/v0.28.3/formulation_library/README/index.html new file mode 100644 index 0000000000..40a30109f8 --- /dev/null +++ b/v0.28.3/formulation_library/README/index.html @@ -0,0 +1,2 @@ + +Formulation documentation guide · PowerSimulations.jl

    Formulation documentation guide

    Formulation documentation should roughly follow the template established by RenewableGen.md

    Auto generated items

    • Valid DeviceModel table: just change the device category in the filter function
    • Time Series Parameters: just change the device category and formulation in the get_default_time_series_names method call

    Linked items

    • Formulations in the Valid DeviceModel table must have a docstring in src/core/formulations.jl
    • The Formulation in the @docs block must have a docstring in src/core/formulations.jl
    • The Variables must have docstrings in src/core/variables.jl
    • The Time Series Parameters must have docstrings in src/core/parameters.jl
    diff --git a/v0.28.3/formulation_library/RenewableGen/index.html b/v0.28.3/formulation_library/RenewableGen/index.html new file mode 100644 index 0000000000..ef3b27a977 --- /dev/null +++ b/v0.28.3/formulation_library/RenewableGen/index.html @@ -0,0 +1,8 @@ + +Renewable Generation · PowerSimulations.jl

    PowerSystems.RenewableGen Formulations

    Renewable generation formulations define the optimization models that describe renewable units mathematical model in different operational settings, such as economic dispatch and unit commitment.

    Note

    The use of reactive power variables and constraints will depend on the network model used, i.e., whether it uses (or does not use) reactive power. If the network model is purely active power-based, reactive power variables and related constraints are not created.

    Note

    Reserve variables for services are not included in the formulation, albeit their inclusion change the variables, expressions, constraints and objective functions created. A detailed description of the implications in the optimization models is described in the Service formulation section.

    Table of contents

    1. RenewableFullDispatch
    2. RenewableConstantPowerFactor
    3. Valid configurations

    RenewableFullDispatch

    Variables:

    Static Parameters:

    • $P^\text{re,min}$ = PowerSystems.get_active_power_limits(device).min
    • $Q^\text{re,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{re,max}$ = PowerSystems.get_reactive_power_limits(device).max

    Time Series Parameters:

    Uses the max_active_power timeseries parameter to limit the available active power at each time-step.

    ParameterDefault Time Series Name
    ReactivePowerTimeSeriesParametermax_active_power
    ActivePowerTimeSeriesParametermax_active_power

    Objective:

    Creates an objective function term based on the FunctionData Options where the quantity term is defined as $- p^\text{re}$ to incentivize generation from RenewableGen devices.

    Expressions:

    Adds $p^\text{re}$ and $q^\text{re}$ terms to the respective active and reactive power balance expressions created by the selected Network Formulations.

    Constraints:

    \[\begin{aligned} +& P^\text{re,min} \le p_t^\text{re} \le \text{ActivePowerTimeSeriesParameter}_t, \quad \forall t \in \{1,\dots, T\} \\ +& Q^\text{re,min} \le q_t^\text{re} \le Q^\text{re,max}, \quad \forall t \in \{1,\dots, T\} +\end{aligned}\]


    RenewableConstantPowerFactor

    Variables:

    • ActivePowerVariable:
      • Bounds: [0.0, ]
      • Default initial value: PowerSystems.get_active_power(device)
      • Symbol: $p^\text{re}$
    • ReactivePowerVariable:
      • Bounds: [0.0, ]
      • Default initial value: PowerSystems.get_reactive_power(device)
      • Symbol: $q^\text{re}$

    Static Parameters:

    • $P^\text{re,min}$ = PowerSystems.get_active_power_limits(device).min
    • $Q^\text{re,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{re,max}$ = PowerSystems.get_reactive_power_limits(device).max
    • $\text{pf}$ = PowerSystems.get_power_factor(device)

    Time Series Parameters:

    ParameterDefault Time Series Name
    ReactivePowerTimeSeriesParametermax_active_power
    ActivePowerTimeSeriesParametermax_active_power

    Objective:

    Creates an objective function term based on the FunctionData Options where the quantity term is defined as $- p_t^\text{re}$ to incentivize generation from RenewableGen devices.

    Expressions:

    Adds $p^\text{re}$ and $q^\text{re}$ terms to the respective active and reactive power balance expressions created by the selected Network Formulations

    Constraints:

    \[\begin{aligned} +& P^\text{re,min} \le p_t^\text{re} \le \text{ActivePowerTimeSeriesParameter}_t, \quad \forall t \in \{1,\dots, T\} \\ +& q_t^\text{re} = \text{pf} \cdot p_t^\text{re}, \quad \forall t \in \{1,\dots, T\} +\end{aligned}\]


    Valid configurations

    Valid DeviceModels for subtypes of RenewableGen include the following:

    Valid DeviceModelDevice TypeFormulation
    DeviceModel(RenewableDispatch, FixedOutput)RenewableDispatchFixedOutput
    DeviceModel(RenewableNonDispatch, FixedOutput)RenewableNonDispatchFixedOutput
    DeviceModel(RenewableDispatch, RenewableConstantPowerFactor)RenewableDispatchRenewableConstantPowerFactor
    DeviceModel(RenewableNonDispatch, RenewableConstantPowerFactor)RenewableNonDispatchRenewableConstantPowerFactor
    DeviceModel(RenewableDispatch, RenewableFullDispatch)RenewableDispatchRenewableFullDispatch
    DeviceModel(RenewableNonDispatch, RenewableFullDispatch)RenewableNonDispatchRenewableFullDispatch
    diff --git a/v0.28.3/formulation_library/Service/index.html b/v0.28.3/formulation_library/Service/index.html new file mode 100644 index 0000000000..8643a9658a --- /dev/null +++ b/v0.28.3/formulation_library/Service/index.html @@ -0,0 +1,18 @@ + +Services · PowerSimulations.jl

    PowerSystems.Service Formulations

    Services (or ancillary services) are models used to ensure that there is necessary support to the power grid from generators to consumers, in order to ensure reliable operation of the system.

    The most common application for ancillary services are reserves, i.e., generation (or load) that is not currently being used, but can be quickly made available in case of unexpected changes of grid conditions, for example a sudden loss of load or generation.

    A key challenge of adding services to a system, from a mathematical perspective, is specifying which units contribute to the specified requirement of a service, that implies the creation of new variables (such as reserve variables) and modification of constraints.

    In this documentation, we first specify the available Services in the grid, and what requirements impose in the system, and later we discuss the implication on device formulations for specific units.

    Table of contents

    1. RangeReserve
    2. StepwiseCostReserve
    3. GroupReserve
    4. RampReserve
    5. NonSpinningReserve
    6. ConstantMaxInterfaceFlow
    7. Changes on Expressions

    RangeReserve

    For each service $s$ of the model type RangeReserve the following variables are created:

    Variables:

    • ActivePowerReserveVariable:
      • Bounds: [0.0, ]
      • Default proportional cost: $1.0 / \text{SystemBasePower}$
      • Symbol: $r_{d}$ for $d$ in contributing devices to the service $s$

    If slacks are enabled:

    Depending on the PowerSystems.jl type associated to the RangeReserve formulation model, the parameters are:

    Static Parameters

    • $\text{PF}$ = PowerSystems.get_max_participation_factor(service)

    For a ConstantReserve PowerSystems type:

    • $\text{Req}$ = PowerSystems.get_requirement(service)

    Time Series Parameters

    For a VariableReserve PowerSystems type:

    ParameterDefault Time Series Name
    RequirementTimeSeriesParameterrequirement

    Relevant Methods:

    • $\mathcal{D}_s$ = PowerSystems.get_contributing_devices(system, service): Set (vector) of all contributing devices to the service $s$ in the system.

    Objective:

    Add a large proportional cost to the objective function if slack variables are used $+ r^\text{sl} \cdot 10^5$. In addition adds the default cost for ActivePowerReserveVariables as a proportional cost.

    Expressions:

    Adds the ActivePowerReserveVariable for upper/lower bound expressions of contributing devices.

    For ReserveUp types, the variable is added to ActivePowerRangeExpressionUB, such that this expression considers both the ActivePowerVariable and its reserve variable. Similarly, For ReserveDown types, the variable is added to ActivePowerRangeExpressionLB, such that this expression considers both the ActivePowerVariable and its reserve variable

    Example: for a thermal unit $d$ contributing to two different ReserveUp $s_1, s_2$ services (e.g. Reg-Up and Spin):

    \[\text{ActivePowerRangeExpressionUB}_{t} = p_t^\text{th} + r_{s_1,t} + r_{s_2, t} \le P^\text{th,max}\]

    similarly if $s_3$ is a ReserveDown service (e.g. Reg-Down):

    \[\text{ActivePowerRangeExpressionLB}_{t} = p_t^\text{th} - r_{s_3,t} \ge P^\text{th,min}\]

    Constraints:

    A RangeReserve implements two fundamental constraints. The first is that the sum of all reserves of contributing devices must be larger than the RangeReserve requirement. Thus, for a service $s$:

    \[\sum_{d\in\mathcal{D}_s} r_{d,t} + r_t^\text{sl} \ge \text{Req},\quad \forall t\in \{1,\dots, T\} \quad \text{(for a ConstantReserve)} \\ +\sum_{d\in\mathcal{D}_s} r_{d,t} + r_t^\text{sl} \ge \text{RequirementTimeSeriesParameter}_{t},\quad \forall t\in \{1,\dots, T\} \quad \text{(for a VariableReserve)}\]

    In addition, there is a restriction on how much each contributing device $d$ can contribute to the requirement, based on the max participation factor allowed.

    \[r_{d,t} \le \text{Req} \cdot \text{PF} ,\quad \forall d\in \mathcal{D}_s, \forall t\in \{1,\dots, T\} \quad \text{(for a ConstantReserve)} \\ +r_{d,t} \le \text{RequirementTimeSeriesParameter}_{t} \cdot \text{PF}\quad \forall d\in \mathcal{D}_s, \forall t\in \{1,\dots, T\}, \quad \text{(for a VariableReserve)}\]


    StepwiseCostReserve

    Service must be used with ReserveDemandCurve PowerSystems.jl type. This service model is used to model ORDC (Operating Reserve Demand Curve) in ERCOT.

    For each service $s$ of the model type ReserveDemandCurve the following variables are created:

    Variables:

    Time Series Parameters

    For a ReserveDemandCurve PowerSystems type:

    | Parameter | Default Time Series Name |

    Relevant Methods:

    • $\mathcal{D}_s$ = PowerSystems.get_contributing_devices(system, service): Set (vector) of all contributing devices to the service $s$ in the system.

    Objective:

    The ServiceRequirementVariable is added as a piecewise linear cost based on the decreasing offers listed in the variable_cost time series. These decreasing cost represent the scarcity prices of not having sufficient reserves. For example, if the variable $\text{req} = 0$, then a really high cost is paid for not having enough reserves, and if $\text{req}$ is larger, then a lower cost (or even zero) is paid.

    Expressions:

    Adds the ActivePowerReserveVariable for upper/lower bound expressions of contributing devices.

    For ReserveUp types, the variable is added to ActivePowerRangeExpressionUB, such that this expression considers both the ActivePowerVariable and its reserve variable. Similarly, For ReserveDown types, the variable is added to ActivePowerRangeExpressionLB, such that this expression considers both the ActivePowerVariable and its reserve variable

    Example: for a thermal unit $d$ contributing to two different ReserveUp $s_1, s_2$ services (e.g. Reg-Up and Spin):

    \[\text{ActivePowerRangeExpressionUB}_{t} = p_t^\text{th} + r_{s_1,t} + r_{s_2, t} \le P^\text{th,max}\]

    similarly if $s_3$ is a ReserveDown service (e.g. Reg-Down):

    \[\text{ActivePowerRangeExpressionLB}_{t} = p_t^\text{th} - r_{s_3,t} \ge P^\text{th,min}\]

    Constraints:

    A StepwiseCostReserve implements a single constraint, such that the sum of all reserves of contributing devices must be larger than the ServiceRequirementVariable variable. Thus, for a service $s$:

    \[\sum_{d\in\mathcal{D}_s} r_{d,t} \ge \text{req}_t,\quad \forall t\in \{1,\dots, T\} \]

    GroupReserve

    Service must be used with ConstantReserveGroup PowerSystems.jl type. This service model is used to model an aggregation of services.

    For each service $s$ of the model type GroupReserve the following variables are created:

    Variables:

    No variables are created, but the services associated with the GroupReserve must have created variables.

    Static Parameters

    • $\text{Req}$ = PowerSystems.get_requirement(service)

    Relevant Methods:

    • $\mathcal{S}_s$ = PowerSystems.get_contributing_services(system, service): Set (vector) of all contributing services to the group service $s$ in the system.
    • $\mathcal{D}_{s_i}$ = PowerSystems.get_contributing_devices(system, service_aux): Set (vector) of all contributing devices to the service $s_i$ in the system.

    Objective:

    Does not modify the objective function, besides the changes to the objective function due to the other services associated to the group service.

    Expressions:

    No changes, besides the changes to the expressions due to the other services associated to the group service.

    Constraints:

    A GroupReserve implements that the sum of all reserves of contributing devices, of all contributing services, must be larger than the GroupReserve requirement. Thus, for a GroupReserve service $s$:

    \[\sum_{d\in\mathcal{D}_{s_i}} \sum_{i \in \mathcal{S}_s} r_{d,t} \ge \text{Req},\quad \forall t\in \{1,\dots, T\} \]


    RampReserve

    For each service $s$ of the model type RampReserve the following variables are created:

    Variables:

    • ActivePowerReserveVariable:
      • Bounds: [0.0, ]
      • Default proportional cost: $1.0 / \text{SystemBasePower}$
      • Symbol: $r_{d}$ for $d$ in contributing devices to the service $s$

    If slacks are enabled:

    RampReserve only accepts VariableReserve PowerSystems.jl type. With that, the parameters are:

    Static Parameters

    • $\text{TF}$ = PowerSystems.get_time_frame(service)
    • $R^\text{th,up}$ = PowerSystems.get_ramp_limits(device).up for thermal contributing devices
    • $R^\text{th,dn}$ = PowerSystems.get_ramp_limits(device).down for thermal contributing devices

    Time Series Parameters

    For a VariableReserve PowerSystems type:

    ParameterDefault Time Series Name
    RequirementTimeSeriesParameterrequirement

    Relevant Methods:

    • $\mathcal{D}_s$ = PowerSystems.get_contributing_devices(system, service): Set (vector) of all contributing devices to the service $s$ in the system.

    Objective:

    Add a large proportional cost to the objective function if slack variables are used $+ r^\text{sl} \cdot 10^5$. In addition adds the default cost for ActivePowerReserveVariables as a proportional cost.

    Expressions:

    Adds the ActivePowerReserveVariable for upper/lower bound expressions of contributing devices.

    For ReserveUp types, the variable is added to ActivePowerRangeExpressionUB, such that this expression considers both the ActivePowerVariable and its reserve variable. Similarly, For ReserveDown types, the variable is added to ActivePowerRangeExpressionLB, such that this expression considers both the ActivePowerVariable and its reserve variable

    Example: for a thermal unit $d$ contributing to two different ReserveUp $s_1, s_2$ services (e.g. Reg-Up and Spin):

    \[\text{ActivePowerRangeExpressionUB}_{t} = p_t^\text{th} + r_{s_1,t} + r_{s_2, t} \le P^\text{th,max}\]

    similarly if $s_3$ is a ReserveDown service (e.g. Reg-Down):

    \[\text{ActivePowerRangeExpressionLB}_{t} = p_t^\text{th} - r_{s_3,t} \ge P^\text{th,min}\]

    Constraints:

    A RampReserve implements three fundamental constraints. The first is that the sum of all reserves of contributing devices must be larger than the RampReserve requirement. Thus, for a service $s$:

    \[\sum_{d\in\mathcal{D}_s} r_{d,t} + r_t^\text{sl} \ge \text{RequirementTimeSeriesParameter}_{t},\quad \forall t\in \{1,\dots, T\}\]

    Finally, there is a restriction based on the ramp limits of the contributing devices:

    \[r_{d,t} \le R^\text{th,up} \cdot \text{TF}\quad \forall d\in \mathcal{D}_s, \forall t\in \{1,\dots, T\}, \quad \text{(for ReserveUp)} \\ +r_{d,t} \le R^\text{th,dn} \cdot \text{TF}\quad \forall d\in \mathcal{D}_s, \forall t\in \{1,\dots, T\}, \quad \text{(for ReserveDown)}\]


    NonSpinningReserve

    For each service $s$ of the model type NonSpinningReserve, the following variables are created:

    Variables:

    • ActivePowerReserveVariable:
      • Bounds: [0.0, ]
      • Default proportional cost: $1.0 / \text{SystemBasePower}$
      • Symbol: $r_{d}$ for $d$ in contributing devices to the service $s$

    If slacks are enabled:

    NonSpinningReserve only accepts VariableReserve PowerSystems.jl type. With that, the parameters are:

    Static Parameters

    • $\text{PF}$ = PowerSystems.get_max_participation_factor(service)
    • $\text{TF}$ = PowerSystems.get_time_frame(service)
    • $P^\text{th,min}$ = PowerSystems.get_active_power_limits(device).min for thermal contributing devices
    • $T^\text{st,up}$ = PowerSystems.get_time_limits(d).up for thermal contributing devices
    • $R^\text{th,up}$ = PowerSystems.get_ramp_limits(device).down for thermal contributing devices

    Other parameters:

    • $\Delta T$: Resolution of the problem in minutes.

    Time Series Parameters

    For a VariableReserve PowerSystems type:

    | Parameter | Default Time Series Name |

    Relevant Methods:

    • $\mathcal{D}_s$ = PowerSystems.get_contributing_devices(system, service): Set (vector) of all contributing devices to the service $s$ in the system.

    Objective:

    Add a large proportional cost to the objective function if slack variables are used $+ r^\text{sl} \cdot 10^5$. In addition adds the default cost for ActivePowerReserveVariables as a proportional cost.

    Expressions:

    Adds the ActivePowerReserveVariable for upper/lower bound expressions of contributing devices.

    For ReserveUp types, the variable is added to ActivePowerRangeExpressionUB, such that this expression considers both the ActivePowerVariable and its reserve variable. Similarly, For ReserveDown types, the variable is added to ActivePowerRangeExpressionLB, such that this expression considers both the ActivePowerVariable and its reserve variable

    Example: for a thermal unit $d$ contributing to two different ReserveUp $s_1, s_2$ services (e.g. Reg-Up and Spin):

    \[\text{ActivePowerRangeExpressionUB}_{t} = p_t^\text{th} + r_{s_1,t} + r_{s_2, t} \le P^\text{th,max}\]

    similarly if $s_3$ is a ReserveDown service (e.g. Reg-Down):

    \[\text{ActivePowerRangeExpressionLB}_{t} = p_t^\text{th} - r_{s_3,t} \ge P^\text{th,min}\]

    Constraints:

    A NonSpinningReserve implements three fundamental constraints. The first is that the sum of all reserves of contributing devices must be larger than the NonSpinningReserve requirement. Thus, for a service $s$:

    \[\sum_{d\in\mathcal{D}_s} r_{d,t} + r_t^\text{sl} \ge \text{RequirementTimeSeriesParameter}_{t},\quad \forall t\in \{1,\dots, T\}\]

    In addition, there is a restriction on how much each contributing device $d$ can contribute to the requirement, based on the max participation factor allowed.

    \[r_{d,t} \le \text{RequirementTimeSeriesParameter}_{t} \cdot \text{PF}\quad \forall d\in \mathcal{D}_s, \forall t\in \{1,\dots, T\},\]

    Finally, there is a restriction based on the reserve response time for the non-spinning reserve if the unit is off. To do so, compute $R^\text{limit}_d$ as the reserve response limit as:

    \[R^\text{limit}_d = \begin{cases} +0 & \text{ if TF } \le T^\text{st,up}_d \\ +P^\text{th,min}_d + (\text{TF}_s - T^\text{st,up}_d) \cdot R^\text{th,up}_d \Delta T \cdot R^\text{th,up}_d & \text{ if TF } > T^\text{st,up}_d +\end{cases}, \quad \forall d\in \mathcal{D}_s\]

    Then, the constraint depends on the commitment variable $u_t^\text{th}$ as:

    \[r_{d,t} \le (1 - u_{d,t}^\text{th}) \cdot R^\text{limit}_d, \quad \forall d \in \mathcal{D}_s, \forall t \in \{1,\dots, T\}\]


    ConstantMaxInterfaceFlow

    This Service model only accepts the PowerSystems.jl TransmissionInterface type to properly function. It is used to model a collection of branches that make up an interface or corridor with a maximum transfer of power.

    Variables

    If slacks are used:

    Static Parameters

    • $F^\text{max}$ = PowerSystems.get_active_power_flow_limits(service).max
    • $F^\text{min}$ = PowerSystems.get_active_power_flow_limits(service).min
    • $C^\text{flow}$ = PowerSystems.get_violation_penalty(service)
    • $\mathcal{M}_s$ = PowerSystems.get_direction_mapping(service). Dictionary of contributing branches with its specified direction ($\text{Dir}_d = 1$ or $\text{Dir}_d = -1$) with respect to the interface.

    Relevant Methods

    • $\mathcal{D}_s$ = PowerSystems.get_contributing_devices(system, service): Set (vector) of all contributing branches to the service $s$ in the system.

    Objective:

    Add the violation penalty proportional cost to the objective function if slack variables are used $+ (f^\text{sl,up} + f^\text{sl,dn}) \cdot C^\text{flow}$.

    Expressions:

    Creates the expression InterfaceTotalFlow to keep track of all FlowActivePowerVariable of contributing branches to the transmission interface.

    Constraints:

    It adds the constraint to limit the InterfaceTotalFlow by the specified bounds of the service $s$:

    \[F^\text{min} \le f^\text{sl,up}_t - f^\text{sl,dn}_t + \sum_{d\in\mathcal{D}_s} \text{Dir}_d f_{d,t} \le F^\text{max}, \quad \forall t \in \{1,\dots,T\}\]

    Changes on Expressions due to Service models

    It is important to note that by adding a service to a Optimization Problem, variables for each contributing device must be created. For example, for every contributing generator $d \in \mathcal{D}$ that is participating in services $s_1,s_2,s_3$, it is required to create three set of ActivePowerReserveVariable variables:

    \[r_{s_1,d,t},~ r_{s_2,d,t},~ r_{s_3,d,t},\quad \forall d \in \mathcal{D}, \forall t \in \{1,\dots, T\}\]

    Changes on UpperBound (UB) and LowerBound (LB) limits

    Each contributing generator $d$ has active power limits that the reserve variables affect. In simple terms, the limits are implemented using expressions ActivePowerRangeExpressionUB and ActivePowerRangeExpressionLB as:

    \[\text{ActivePowerRangeExpressionUB}_t \le P^\text{max} \\ +\text{ActivePowerRangeExpressionLB}_t \ge P^\text{min}\]

    ReserveUp type variables contribute to the upper bound expression, while ReserveDown variables contribute to the lower bound expressions. So if $s_1,s_2$ are ReserveUp services, and $s_3$ is a ReserveDown service, then for a thermal generator $d$ using a ThermalStandardDispatch:

    \[\begin{align*} +& p_{d,t}^\text{th} + r_{s_1,d,t} + r_{s_2,d,t} \le P^\text{th,max},\quad \forall d\in \mathcal{D}^\text{th}, \forall t \in \{1,\dots,T\} \\ +& p_{d,t}^\text{th} - r_{s_3,d,t} \ge P^\text{th,min},\quad \forall d\in \mathcal{D}^\text{th}, \forall t \in \{1,\dots,T\} +\end{align*}\]

    while for a renewable generator $d$ using a RenewableFullDispatch:

    \[\begin{align*} +& p_{d,t}^\text{re} + r_{s_1,d,t} + r_{s_2,d,t} \le \text{ActivePowerTimeSeriesParameter}_t,\quad \forall d\in \mathcal{D}^\text{re}, \forall t \in \{1,\dots,T\}\\ +& p_{d,t}^\text{re} - r_{s_3,d,t} \ge 0,\quad \forall d\in \mathcal{D}^\text{re}, \forall t \in \{1,\dots,T\} +\end{align*}\]

    Changes in Ramp limits

    For the case of Ramp Limits (of formulation that model these limits), the reserve variables only affect the current time, and not the previous time. Then, for the same example as before:

    \[\begin{align*} +& p_{d,t}^\text{th} + r_{s_1,d,t} + r_{s_2,d,t} - p_{d,t-1}^\text{th}\le R^\text{th,up},\quad \forall d\in \mathcal{D}^\text{th}, \forall t \in \{1,\dots,T\}\\ +& p_{d,t}^\text{th} - r_{s_3,d,t} - p_{d,t-1}^\text{th} \ge -R^\text{th,dn},\quad \forall d\in \mathcal{D}^\text{th}, \forall t \in \{1,\dots,T\} +\end{align*}\]

    diff --git a/v0.28.3/formulation_library/ThermalGen/index.html b/v0.28.3/formulation_library/ThermalGen/index.html new file mode 100644 index 0000000000..aef85760f0 --- /dev/null +++ b/v0.28.3/formulation_library/ThermalGen/index.html @@ -0,0 +1,93 @@ + +Thermal Generation · PowerSimulations.jl

    ThermalGen Formulations

    Thermal generation formulations define the optimization models that describe thermal units mathematical model in different operational settings, such as economic dispatch and unit commitment.

    Note

    Thermal units can include multiple terms added to the objective function, such as no-load cost, turn-on/off cost, fixed cost and variable cost. In addition, variable costs can be linear, quadratic or piecewise-linear formulations. These methods are properly described in the cost function page.

    Note

    The use of reactive power variables and constraints will depend on the network model used, i.e., whether it uses (or does not use) reactive power. If the network model is purely active power-based, reactive power variables and related constraints are not created.

    Note

    Reserve variables for services are not included in the formulation, albeit their inclusion change the variables, expressions, constraints and objective functions created. A detailed description of the implications in the optimization models is described in the Service formulation section.

    Table of Contents

    1. ThermalBasicDispatch
    2. ThermalDispatchNoMin
    3. ThermalCompactDispatch
    4. ThermalStandardDispatch
    5. ThermalBasicUnitCommitment
    6. ThermalBasicCompactUnitCommitment
    7. ThermalStandardUnitCommitment
    8. ThermalMultiStartUnitCommitment
    9. Valid configurations

    ThermalBasicDispatch

    Variables:

    Static Parameters:

    • $P^\text{th,min}$ = PowerSystems.get_active_power_limits(device).min
    • $P^\text{th,max}$ = PowerSystems.get_active_power_limits(device).max
    • $Q^\text{th,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{th,max}$ = PowerSystems.get_reactive_power_limits(device).max

    Objective:

    Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.

    Expressions:

    Adds $p^\text{th}$ to the ActivePowerBalance expression and $q^\text{th}$ to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.

    Constraints:

    For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters.

    \[\begin{align*} +& P^\text{th,min} \le p^\text{th}_t \le P^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& Q^\text{th,min} \le q^\text{th}_t \le Q^\text{th,max}, \quad \forall t\in \{1, \dots, T\} +\end{align*}\]


    ThermalDispatchNoMin

    Variables:

    Static Parameters:

    • $P^\text{th,max}$ = PowerSystems.get_active_power_limits(device).max
    • $Q^\text{th,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{th,max}$ = PowerSystems.get_reactive_power_limits(device).max

    Objective:

    Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.

    Expressions:

    Adds $p^\text{th}$ to the ActivePowerBalance expression and $q^\text{th}$ to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.

    Constraints:

    For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters.

    \[\begin{align} +& 0 \le p^\text{th}_t \le P^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& Q^\text{th,min} \le q^\text{th}_t \le Q^\text{th,max}, \quad \forall t\in \{1, \dots, T\} +\end{align}\]


    ThermalCompactDispatch

    Variables:

    Auxiliary Variables:

    • PowerOutput:
      • Symbol: $P^\text{th}$
      • Definition: $P^\text{th} = \text{on}^\text{th}P^\text{min} + \Delta p^\text{th}$

    Static Parameters:

    • $P^\text{th,min}$ = PowerSystems.get_active_power_limits(device).min
    • $P^\text{th,max}$ = PowerSystems.get_active_power_limits(device).max
    • $Q^\text{th,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{th,max}$ = PowerSystems.get_reactive_power_limits(device).max
    • $R^\text{th,up}$ = PowerSystems.get_ramp_limits(device).up
    • $R^\text{th,dn}$ = PowerSystems.get_ramp_limits(device).down

    Variable Value Parameters:

    • $\text{on}^\text{th}$: Used in feedforwards to define if the unit is on/off at each time-step from another problem. If no feedforward is used, the parameter takes a {0,1} value if the unit is available or not.

    Objective:

    Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.

    Expressions:

    Adds $\text{on}^\text{th}P^\text{th,min} + \Delta p^\text{th}$ to the ActivePowerBalance expression and $q^\text{th}$ to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.

    Constraints:

    For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. It also implements ramp constraints for the active power variable.

    \[\begin{align*} +& 0 \le \Delta p^\text{th}_t \le \text{on}^\text{th}_t\left(P^\text{th,max} - P^\text{th,min}\right), \quad \forall t\in \{1, \dots, T\} \\ +& \text{on}^\text{th}_t Q^\text{th,min} \le q^\text{th}_t \le \text{on}^\text{th}_t Q^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& -R^\text{th,dn} \le \Delta p_1^\text{th} - \Delta p^\text{th, init} \le R^\text{th,up} \\ +& -R^\text{th,dn} \le \Delta p_t^\text{th} - \Delta p_{t-1}^\text{th} \le R^\text{th,up}, \quad \forall t\in \{2, \dots, T\} +\end{align*}\]


    ThermalStandardDispatch

    Variables:

    Static Parameters:

    • $P^\text{th,min}$ = PowerSystems.get_active_power_limits(device).min
    • $P^\text{th,max}$ = PowerSystems.get_active_power_limits(device).max
    • $Q^\text{th,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{th,max}$ = PowerSystems.get_reactive_power_limits(device).max
    • $R^\text{th,up}$ = PowerSystems.get_ramp_limits(device).up
    • $R^\text{th,dn}$ = PowerSystems.get_ramp_limits(device).down

    Objective:

    Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.

    Expressions:

    Adds $p^\text{th}$ to the ActivePowerBalance expression and $q^\text{th}$ to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.

    Constraints:

    For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters.

    \[\begin{align*} +& P^\text{th,min} \le p^\text{th}_t \le P^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& Q^\text{th,min} \le q^\text{th}_t \le Q^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& -R^\text{th,dn} \le p_1^\text{th} - p^\text{th, init} \le R^\text{th,up} \\ +& -R^\text{th,dn} \le p_t^\text{th} - p_{t-1}^\text{th} \le R^\text{th,up}, \quad \forall t\in \{2, \dots, T\} +\end{align*}\]


    ThermalBasicUnitCommitment

    Variables:

    Static Parameters:

    • $P^\text{th,min}$ = PowerSystems.get_active_power_limits(device).min
    • $P^\text{th,max}$ = PowerSystems.get_active_power_limits(device).max
    • $Q^\text{th,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{th,max}$ = PowerSystems.get_reactive_power_limits(device).max

    Objective:

    Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.

    Expressions:

    Adds $p^\text{th}$ to the ActivePowerBalance expression and $q^\text{th}$ to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.

    Constraints:

    For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. In addition, it creates the commitment constraint to turn on/off the device.

    \[\begin{align*} +& u_t^\text{th} P^\text{th,min} \le p^\text{th}_t \le u_t^\text{th} P^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& u_t^\text{th} Q^\text{th,min} \le q^\text{th}_t \le u_t^\text{th} Q^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& u_1^\text{th} = u^\text{th,init} + v_1^\text{th} - w_1^\text{th} \\ +& u_t^\text{th} = u_{t-1}^\text{th} + v_t^\text{th} - w_t^\text{th}, \quad \forall t \in \{2,\dots,T\} \\ +& v_t^\text{th} + w_t^\text{th} \le 1, \quad \forall t \in \{1,\dots,T\} +\end{align*}\]


    ThermalBasicCompactUnitCommitment

    Variables:

    Auxiliary Variables:

    • PowerOutput:
      • Symbol: $P^\text{th}$
      • Definition: $P^\text{th} = u^\text{th}P^\text{min} + \Delta p^\text{th}$

    Static Parameters:

    • $P^\text{th,min}$ = PowerSystems.get_active_power_limits(device).min
    • $P^\text{th,max}$ = PowerSystems.get_active_power_limits(device).max
    • $Q^\text{th,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{th,max}$ = PowerSystems.get_reactive_power_limits(device).max

    Objective:

    Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.

    Expressions:

    Adds $u^\text{th}P^\text{th,min} + \Delta p^\text{th}$ to the ActivePowerBalance expression and $q^\text{th}$ to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.

    Constraints:

    For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. In addition, it creates the commitment constraint to turn on/off the device.

    \[\begin{align*} +& 0 \le \Delta p^\text{th}_t \le u^\text{th}_t\left(P^\text{th,max} - P^\text{th,min}\right), \quad \forall t\in \{1, \dots, T\} \\ +& u_t^\text{th} Q^\text{th,min} \le q^\text{th}_t \le u_t^\text{th} Q^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& u_1^\text{th} = u^\text{th,init} + v_1^\text{th} - w_1^\text{th} \\ +& u_t^\text{th} = u_{t-1}^\text{th} + v_t^\text{th} - w_t^\text{th}, \quad \forall t \in \{2,\dots,T\} \\ +& v_t^\text{th} + w_t^\text{th} \le 1, \quad \forall t \in \{1,\dots,T\} +\end{align*}\]


    ThermalCompactUnitCommitment

    Variables:

    Auxiliary Variables:

    • PowerOutput:
      • Symbol: $P^\text{th}$
      • Definition: $P^\text{th} = u^\text{th}P^\text{min} + \Delta p^\text{th}$
    • TimeDurationOn:
      • Symbol: $V_t^\text{th}$
      • Definition: Computed post optimization by adding consecutive turned on variable $u_t^\text{th}$
    • TimeDurationOff:
      • Symbol: $W_t^\text{th}$
      • Definition: Computed post optimization by adding consecutive turned off variable $1 - u_t^\text{th}$

    Static Parameters:

    • $P^\text{th,min}$ = PowerSystems.get_active_power_limits(device).min
    • $P^\text{th,max}$ = PowerSystems.get_active_power_limits(device).max
    • $Q^\text{th,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{th,max}$ = PowerSystems.get_reactive_power_limits(device).max
    • $R^\text{th,up}$ = PowerSystems.get_ramp_limits(device).up
    • $R^\text{th,dn}$ = PowerSystems.get_ramp_limits(device).down
    • $D^\text{min,up}$ = PowerSystems.get_time_limits(device).up
    • $D^\text{min,dn}$ = PowerSystems.get_time_limits(device).down

    Objective:

    Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.

    Expressions:

    Adds $u^\text{th}P^\text{th,min} + \Delta p^\text{th}$ to the ActivePowerBalance expression and $q^\text{th}$ to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.

    Constraints:

    For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. It also creates the commitment constraint to turn on/off the device.

    \[\begin{align*} +& 0 \le \Delta p^\text{th}_t \le u^\text{th}_t\left(P^\text{th,max} - P^\text{th,min}\right), \quad \forall t\in \{1, \dots, T\} \\ +& u_t^\text{th} Q^\text{th,min} \le q^\text{th}_t \le u_t^\text{th} Q^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& -R^\text{th,dn} \le \Delta p_1^\text{th} - \Delta p^\text{th, init} \le R^\text{th,up} \\ +& -R^\text{th,dn} \le \Delta p_t^\text{th} - \Delta p_{t-1}^\text{th} \le R^\text{th,up}, \quad \forall t\in \{2, \dots, T\} \\ +& u_1^\text{th} = u^\text{th,init} + v_1^\text{th} - w_1^\text{th} \\ +& u_t^\text{th} = u_{t-1}^\text{th} + v_t^\text{th} - w_t^\text{th}, \quad \forall t \in \{2,\dots,T\} \\ +& v_t^\text{th} + w_t^\text{th} \le 1, \quad \forall t \in \{1,\dots,T\} +\end{align*}\]

    In addition, this formulation adds duration constraints, i.e. minimum-up time and minimum-down time constraints. The duration constraints are added over the start times looking backwards.

    The duration times $D^\text{min,up}$ and $D^\text{min,dn}$ are processed to be used in multiple of the time-steps, given the resolution of the specific problem. In addition, parameters $D^\text{init,up}$ and $D^\text{init,dn}$ are used to identify how long the unit was on or off, respectively, before the simulation started.

    Minimum up-time constraint for $t \in \{1,\dots T\}$:

    \[\begin{align*} +& \text{If } t \leq D^\text{min,up} - D^\text{init,up} \text{ and } D^\text{init,up} > 0: \\ +& 1 + \sum_{i=t-D^\text{min,up} + 1}^t v_i^\text{th} \leq u_t^\text{th} \quad \text{(for } i \text{ in the set of time steps).} \\ +& \text{Otherwise:} \\ +& \sum_{i=t-D^\text{min,up} + 1}^t v_i^\text{th} \leq u_t^\text{th} +\end{align*}\]

    Minimum down-time constraint for $t \in \{1,\dots T\}$:

    \[\begin{align*} +& \text{If } t \leq D^\text{min,dn} - D^\text{init,dn} \text{ and } D^\text{init,up} > 0: \\ +& 1 + \sum_{i=t-D^\text{min,dn} + 1}^t w_i^\text{th} \leq 1 - u_t^\text{th} \quad \text{(for } i \text{ in the set of time steps).} \\ +& \text{Otherwise:} \\ +& \sum_{i=t-D^\text{min,dn} + 1}^t w_i^\text{th} \leq 1 - u_t^\text{th} +\end{align*}\]


    ThermalStandardUnitCommitment

    Variables:

    Auxiliary Variables:

    • TimeDurationOn:
      • Symbol: $V_t^\text{th}$
      • Definition: Computed post optimization by adding consecutive turned on variable $u_t^\text{th}$
    • TimeDurationOff:
      • Symbol: $W_t^\text{th}$
      • Definition: Computed post optimization by adding consecutive turned off variable $1 - u_t^\text{th}$

    Static Parameters:

    • $P^\text{th,min}$ = PowerSystems.get_active_power_limits(device).min
    • $P^\text{th,max}$ = PowerSystems.get_active_power_limits(device).max
    • $Q^\text{th,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{th,max}$ = PowerSystems.get_reactive_power_limits(device).max
    • $R^\text{th,up}$ = PowerSystems.get_ramp_limits(device).up
    • $R^\text{th,dn}$ = PowerSystems.get_ramp_limits(device).down
    • $D^\text{min,up}$ = PowerSystems.get_time_limits(device).up
    • $D^\text{min,dn}$ = PowerSystems.get_time_limits(device).down

    Objective:

    Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.

    Expressions:

    Adds $p^\text{th}$ to the ActivePowerBalance expression and $q^\text{th}$ to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.

    Constraints:

    For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. It also creates the commitment constraint to turn on/off the device.

    \[\begin{align*} +& u^\text{th}_t P^\text{th,min} \le p^\text{th}_t \le u^\text{th}_t P^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& u_t^\text{th} Q^\text{th,min} \le q^\text{th}_t \le u_t^\text{th} Q^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& -R^\text{th,dn} \le p_1^\text{th} - p^\text{th, init} \le R^\text{th,up} \\ +& -R^\text{th,dn} \le p_t^\text{th} - p_{t-1}^\text{th} \le R^\text{th,up}, \quad \forall t\in \{2, \dots, T\} \\ +& u_1^\text{th} = u^\text{th,init} + v_1^\text{th} - w_1^\text{th} \\ +& u_t^\text{th} = u_{t-1}^\text{th} + v_t^\text{th} - w_t^\text{th}, \quad \forall t \in \{2,\dots,T\} \\ +& v_t^\text{th} + w_t^\text{th} \le 1, \quad \forall t \in \{1,\dots,T\} +\end{align*}\]

    In addition, this formulation adds duration constraints, i.e. minimum-up time and minimum-down time constraints. The duration constraints are added over the start times looking backwards.

    The duration times $D^\text{min,up}$ and $D^\text{min,dn}$ are processed to be used in multiple of the time-steps, given the resolution of the specific problem. In addition, parameters $D^\text{init,up}$ and $D^\text{init,dn}$ are used to identify how long the unit was on or off, respectively, before the simulation started.

    Minimum up-time constraint for $t \in \{1,\dots T\}$:

    \[\begin{align*} +& \text{If } t \leq D^\text{min,up} - D^\text{init,up} \text{ and } D^\text{init,up} > 0: \\ +& 1 + \sum_{i=t-D^\text{min,up} + 1}^t v_i^\text{th} \leq u_t^\text{th} \quad \text{(for } i \text{ in the set of time steps).} \\ +& \text{Otherwise:} \\ +& \sum_{i=t-D^\text{min,up} + 1}^t v_i^\text{th} \leq u_t^\text{th} +\end{align*}\]

    Minimum down-time constraint for $t \in \{1,\dots T\}$:

    \[\begin{align*} +& \text{If } t \leq D^\text{min,dn} - D^\text{init,dn} \text{ and } D^\text{init,up} > 0: \\ +& 1 + \sum_{i=t-D^\text{min,dn} + 1}^t w_i^\text{th} \leq 1 - u_t^\text{th} \quad \text{(for } i \text{ in the set of time steps).} \\ +& \text{Otherwise:} \\ +& \sum_{i=t-D^\text{min,dn} + 1}^t w_i^\text{th} \leq 1 - u_t^\text{th} +\end{align*}\]


    ThermalMultiStartUnitCommitment

    Variables:

    Auxiliary Variables:

    • PowerOutput:
      • Symbol: $P^\text{th}$
      • Definition: $P^\text{th} = u^\text{th}P^\text{min} + \Delta p^\text{th}$
    • TimeDurationOn:
      • Symbol: $V_t^\text{th}$
      • Definition: Computed post optimization by adding consecutive turned on variable $u_t^\text{th}$
    • TimeDurationOff:
      • Symbol: $W_t^\text{th}$
      • Definition: Computed post optimization by adding consecutive turned off variable $1 - u_t^\text{th}$

    Static Parameters:

    • $P^\text{th,min}$ = PowerSystems.get_active_power_limits(device).min
    • $P^\text{th,max}$ = PowerSystems.get_active_power_limits(device).max
    • $Q^\text{th,min}$ = PowerSystems.get_reactive_power_limits(device).min
    • $Q^\text{th,max}$ = PowerSystems.get_reactive_power_limits(device).max
    • $R^\text{th,up}$ = PowerSystems.get_ramp_limits(device).up
    • $R^\text{th,dn}$ = PowerSystems.get_ramp_limits(device).down
    • $D^\text{min,up}$ = PowerSystems.get_time_limits(device).up
    • $D^\text{min,dn}$ = PowerSystems.get_time_limits(device).down
    • $D^\text{cold}$ = PowerSystems.get_start_time_limits(device).cold
    • $D^\text{warm}$ = PowerSystems.get_start_time_limits(device).warm
    • $D^\text{hot}$ = PowerSystems.get_start_time_limits(device).hot
    • $P^\text{th,startup}$ = PowerSystems.get_power_trajectory(device).startup
    • $P^\text{th, shdown}$ = PowerSystems.get_power_trajectory(device).shutdown

    Objective:

    Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.

    Expressions:

    Adds $u^\text{th}P^\text{th,min} + \Delta p^\text{th}$ to the ActivePowerBalance expression and $q^\text{th}$ to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.

    Constraints:

    For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. It also creates the commitment constraint to turn on/off the device.

    \[\begin{align*} +& 0 \le \Delta p^\text{th}_t \le u^\text{th}_t\left(P^\text{th,max} - P^\text{th,min}\right), \quad \forall t\in \{1, \dots, T\} \\ +& u_t^\text{th} Q^\text{th,min} \le q^\text{th}_t \le u_t^\text{th} Q^\text{th,max}, \quad \forall t\in \{1, \dots, T\} \\ +& -R^\text{th,dn} \le \Delta p_1^\text{th} - \Delta p^\text{th, init} \le R^\text{th,up} \\ +& -R^\text{th,dn} \le \Delta p_t^\text{th} - \Delta p_{t-1}^\text{th} \le R^\text{th,up}, \quad \forall t\in \{2, \dots, T\} \\ +& u_1^\text{th} = u^\text{th,init} + v_1^\text{th} - w_1^\text{th} \\ +& u_t^\text{th} = u_{t-1}^\text{th} + v_t^\text{th} - w_t^\text{th}, \quad \forall t \in \{2,\dots,T\} \\ +& v_t^\text{th} + w_t^\text{th} \le 1, \quad \forall t \in \{1,\dots,T\} \\ +& \max\{P^\text{th,max} - P^\text{th,shdown}, 0\} \cdot w_1^\text{th} \le u^\text{th,init} (P^\text{th,max} - P^\text{th,min}) - P^\text{th,init} +\end{align*}\]

    In addition, this formulation adds duration constraints, i.e. minimum-up time and minimum-down time constraints. The duration constraints are added over the start times looking backwards.

    The duration times $D^\text{min,up}$ and $D^\text{min,dn}$ are processed to be used in multiple of the time-steps, given the resolution of the specific problem. In addition, parameters $D^\text{init,up}$ and $D^\text{init,dn}$ are used to identify how long the unit was on or off, respectively, before the simulation started.

    Minimum up-time constraint for $t \in \{1,\dots T\}$:

    \[\begin{align*} +& \text{If } t \leq D^\text{min,up} - D^\text{init,up} \text{ and } D^\text{init,up} > 0: \\ +& 1 + \sum_{i=t-D^\text{min,up} + 1}^t v_i^\text{th} \leq u_t^\text{th} \quad \text{(for } i \text{ in the set of time steps).} \\ +& \text{Otherwise:} \\ +& \sum_{i=t-D^\text{min,up} + 1}^t v_i^\text{th} \leq u_t^\text{th} +\end{align*}\]

    Minimum down-time constraint for $t \in \{1,\dots T\}$:

    \[\begin{align*} +& \text{If } t \leq D^\text{min,dn} - D^\text{init,dn} \text{ and } D^\text{init,up} > 0: \\ +& 1 + \sum_{i=t-D^\text{min,dn} + 1}^t w_i^\text{th} \leq 1 - u_t^\text{th} \quad \text{(for } i \text{ in the set of time steps).} \\ +& \text{Otherwise:} \\ +& \sum_{i=t-D^\text{min,dn} + 1}^t w_i^\text{th} \leq 1 - u_t^\text{th} +\end{align*}\]

    Finally, multi temperature start/stop constraints are implemented using the following constraints:

    \[\begin{align*} +& v_t^\text{th} = x_t^\text{th} + y_t^\text{th} + z_t^\text{th}, \quad \forall t \in \{1, \dots, T\} \\ +& z_t^\text{th} \le \sum_{i \in [D^\text{hot}, D^\text{warm})}w_{t-i}^\text{th}, \quad \forall t \in \{D^\text{warm}, \dots, T\} \\ +& y_t^\text{th} \le \sum_{i \in [D^\text{warm}, D^\text{cold})}w_{t-i}^\text{th}, \quad \forall t \in \{D^\text{cold}, \dots, T\} \\ +& (D^\text{warm} - 1) z_t^\text{th} + (1 - z_t^\text{th}) M^\text{big} \ge \sum_{i=1}^t (1 - u_i^\text{th}) + D^\text{init,hot}, \quad \forall t \in \{1, \dots, T\} \\ +& D^\text{hot} z_t^\text{th} \le \sum_{i=1}^t (1 - u_i^\text{th}) + D^\text{init,hot}, \quad \forall t \in \{1, \dots, T\} \\ +& (D^\text{cold} - 1) y_t^\text{th} + (1 - y_t^\text{th}) M^\text{big} \ge \sum_{i=1}^t (1 - u_i^\text{th}) + D^\text{init,warm}, \quad \forall t \in \{1, \dots, T\} \\ +& D^\text{warm} y_t^\text{th} \le \sum_{i=1}^t (1 - u_i^\text{th}) + D^\text{init,warm}, \quad \forall t \in \{1, \dots, T\} \\ +\end{align*}\]


    Valid configurations

    Valid DeviceModels for subtypes of ThermalGen include the following:

    Valid DeviceModelDevice TypeFormulation
    DeviceModel(ThermalMultiStart, FixedOutput)ThermalMultiStartFixedOutput
    DeviceModel(ThermalStandard, FixedOutput)ThermalStandardFixedOutput
    DeviceModel(ThermalMultiStart, ThermalBasicDispatch)ThermalMultiStartThermalBasicDispatch
    DeviceModel(ThermalStandard, ThermalBasicDispatch)ThermalStandardThermalBasicDispatch
    DeviceModel(ThermalMultiStart, ThermalCompactDispatch)ThermalMultiStartThermalCompactDispatch
    DeviceModel(ThermalStandard, ThermalCompactDispatch)ThermalStandardThermalCompactDispatch
    DeviceModel(ThermalMultiStart, ThermalDispatchNoMin)ThermalMultiStartThermalDispatchNoMin
    DeviceModel(ThermalStandard, ThermalDispatchNoMin)ThermalStandardThermalDispatchNoMin
    DeviceModel(ThermalMultiStart, ThermalStandardDispatch)ThermalMultiStartThermalStandardDispatch
    DeviceModel(ThermalStandard, ThermalStandardDispatch)ThermalStandardThermalStandardDispatch
    DeviceModel(ThermalMultiStart, ThermalBasicCompactUnitCommitment)ThermalMultiStartThermalBasicCompactUnitCommitment
    DeviceModel(ThermalStandard, ThermalBasicCompactUnitCommitment)ThermalStandardThermalBasicCompactUnitCommitment
    DeviceModel(ThermalMultiStart, ThermalCompactUnitCommitment)ThermalMultiStartThermalCompactUnitCommitment
    DeviceModel(ThermalStandard, ThermalCompactUnitCommitment)ThermalStandardThermalCompactUnitCommitment
    DeviceModel(ThermalMultiStart, ThermalMultiStartUnitCommitment)ThermalMultiStartThermalMultiStartUnitCommitment
    DeviceModel(ThermalMultiStart, ThermalBasicUnitCommitment)ThermalMultiStartThermalBasicUnitCommitment
    DeviceModel(ThermalStandard, ThermalBasicUnitCommitment)ThermalStandardThermalBasicUnitCommitment
    DeviceModel(ThermalMultiStart, ThermalStandardUnitCommitment)ThermalMultiStartThermalStandardUnitCommitment
    DeviceModel(ThermalStandard, ThermalStandardUnitCommitment)ThermalStandardThermalStandardUnitCommitment
    diff --git a/v0.28.3/get_test_data.jl b/v0.28.3/get_test_data.jl new file mode 100644 index 0000000000..a664aa53dc --- /dev/null +++ b/v0.28.3/get_test_data.jl @@ -0,0 +1,40 @@ +using Cbc +using PowerSimulations +using PowerSystems +using DataStructures +using InfrastructureSystems +const IS = InfrastructureSystems +const PSI = PowerSimulations +const PSY = PowerSystems + +include("../../../test/test_utils/get_test_data.jl") + +abstract type TestOpProblem <: PSI.DefaultDecisionProblem end + +system = build_c_sys5_re(; add_reserves = true) +solver = optimizer_with_attributes(Cbc.Optimizer) + +devices = Dict{Symbol, DeviceModel}( + :Generators => DeviceModel(ThermalStandard, ThermalBasicDispatch), + :Loads => DeviceModel(PowerLoad, StaticPowerLoad), +) +branches = Dict{Symbol, DeviceModel}( + :L => DeviceModel(Line, StaticLine), + :T => DeviceModel(Transformer2W, StaticBranch), + :TT => DeviceModel(TapTransformer, StaticBranch), +); +services = Dict{Symbol, ServiceModel}(); + +template = PSI.ProblemTemplate(CopperPlatePowerModel, devices, branches, services); + +operation_problem = PSI.DecisionModel(TestOpProblem, template, system; optimizer = solver); + +set_services_template!( + operation_problem, + Dict( + :Reserve => ServiceModel(VariableReserve{ReserveUp}, RangeReserve), + :Down_Reserve => ServiceModel(VariableReserve{ReserveDown}, RangeReserve), + ), +) + +op_results = solve!(operation_problem) diff --git a/v0.28.3/index.html b/v0.28.3/index.html new file mode 100644 index 0000000000..bf17341763 --- /dev/null +++ b/v0.28.3/index.html @@ -0,0 +1,2 @@ + +Welcome Page · PowerSimulations.jl

    PowerSimulations.jl

    Overview

    PowerSimulations.jl is a power system operations simulation tool developed as a flexible and open source software for quasi-static power systems simulations including Production Cost Models. PowerSimulations.jl tackles the issues of developing a simulation model in a modular way providing tools for the formulation of decision models and emulation models that can be solved independently or in an interconnected fashion.

    PowerSimulations.jl supports the workflows to develop simulations by separating the development of operations models and simulation models.

    • Operation Models: Optimization model used to find the solution of an operation problem.
    • Simulations Models: Defined the requirements to find solutions to a sequence of operation problems in a way that resembles the procedures followed by operators.

    The most common Simulation Model is the solution of a Unit Commitment and Economic Dispatch sequence of problems. This model is used in commercial Production Cost Modeling tools, but it has a limited scope of analysis.

    How the documentation is structured

    PowerSimulations.jl documentation and code are organized according to the needs of different users depending on their skillset and requirements. In broad terms there are three categories:

    • Modeler: Users that want to solve an operations problem or run a simulation using the existing models in PowerSimulations.jl. For instance, answer questions about the change in operation costs in future fuel mixes. Check the formulations library page to choose a modeling strategy that fits your needs.

    • Model Developer: Users that want to develop custom models and workflows for the simulation of a power system operation. For instance, study the impacts of an stochastic optimization problem over a deterministic.

    • Code Base Developers: Users that want to add new core functionalities or fix bugs in the core capabilities of PowerSimulations.jl.

    PowerSimulations.jl is an active project under development, and we welcome your feedback, suggestions, and bug reports.

    Note: PowerSimulations.jl uses the data model implemented in PowerSystems.jl to construct optimization models. In most cases, you need to add PowerSystems.jl to your scripts.

    Installation

    The latest stable release of PowerSimulations can be installed using the Julia package manager with

    ] add PowerSimulations

    For the current development version, "checkout" this package with

    ] add PowerSimulations#main

    An appropriate optimization solver is required for running PowerSimulations models. Refer to JuMP.jl solver's page to select the most appropriate for the application of interest.


    PowerSystems has been developed as part of the Scalable Integrated Infrastructure Planning (SIIP) initiative at the U.S. Department of Energy's National Renewable Energy Laboratory (NREL).

    diff --git a/v0.28.3/model_developer_guide/structure_of_operation_problem/index.html b/v0.28.3/model_developer_guide/structure_of_operation_problem/index.html new file mode 100644 index 0000000000..09ae5b6896 --- /dev/null +++ b/v0.28.3/model_developer_guide/structure_of_operation_problem/index.html @@ -0,0 +1,26 @@ + +Operation Problem Structure · PowerSimulations.jl

    Structure of an operations problem model

    In most cases operation problem models are optimization models. Although in PowerSimulations.jl it is possible to define arbitrary problems that can reflect heuristic decision rules, this is not the common case. This page focuses on explaining the structure of operations problems that employ an optimization problem and solver.

    The first aspect to consider when thinking about developing a model compatible with PowerSimulations.jl is that although we support all of JuMP.jl objects, you need to employ anonymous constraints and variables in JuMP and register the constraints, variables and other optimization objects into PowerSimulations.jl's optimization container. Otherwise the features to use your problem in the simulation like the coordination with other problems and post processing won't work.

    Info

    The requirements for the simulation of Power Systems operations are more strict than solving an optimization problem once with just JuMP.jl. The requirements imposed by PowerSimulations.jl to integrate your models in a simulation are designed to help with other complex operations that go beyond JuMP.jl scope.

    Warning

    All the code in this page is considered "pseudo-code". Copy-paste will likely not work out of the box. You need to develop the internals of the functions correctly for the examples below to work.

    Registering a variable in the model

    To register a variable in the model, the developer must first allocate the container into the optimization container and then populate it. For example, it require start the build function as follows:

    Info

    We recommend calling import PowerSimulations and defining the constant CONST PSI = PowerSimulations to make it easier to read the code and determine which package is responsible for defining the functions.

        function PSI.build_model!(model::PSI.DecisionModel{MyCustomModel})
    +        container = PSI.get_optimization_container(model)
    +        PSI.set_time_steps!(container, 1:24)
    +
    +        # Create the container for the variable
    +        variable = PSI.add_variable_container!(
    +            container,
    +            PSI.ActivePowerVariable(), # <- This variable is defined in PowerSimulations but the user can define their own
    +            PSY.ThermalGeneration, # <- Device type for the variable. Can be from PSY or custom defined
    +            devices_names, # <- First container dimension
    +            time_steps, # <- Second container dimension
    +        )
    +
    +        # Iterate over the devices and time to store the JuMP variables into the container.
    +        for t in time_steps, d in devices
    +            name = PSY.get_name(d)
    +            variable[name, t] = JuMP.@variable(get_jump_model(container))
    +            # It is possible to use PSY getter functions to retrieve data from the generators
    +            # Any other variable property can be specified inside this loop.
    +            JuMP.set_upper_bound(variable[name, t], UB_DATA) # <- Optional
    +            JuMP.set_lower_bound(variable[name, t], LB_DATA) # <- Optional
    +        end
    +
    +    return
    +    end
    diff --git a/v0.28.3/model_developer_guide/troubleshooting/index.html b/v0.28.3/model_developer_guide/troubleshooting/index.html new file mode 100644 index 0000000000..e40a84b953 --- /dev/null +++ b/v0.28.3/model_developer_guide/troubleshooting/index.html @@ -0,0 +1,2 @@ + +Troubleshooting · PowerSimulations.jl diff --git a/v0.28.3/modeler_guide/debugging_infeasible_models/index.html b/v0.28.3/modeler_guide/debugging_infeasible_models/index.html new file mode 100644 index 0000000000..3414888245 --- /dev/null +++ b/v0.28.3/modeler_guide/debugging_infeasible_models/index.html @@ -0,0 +1,127 @@ + +Debugging infeasible models · PowerSimulations.jl

    Debugging infeasible models

    Getting infeasible solutions to models is a common occurrence in operations simulations, there are multiple reasons why this can happen. PowerSimulations.jl has several tools to help debug this situation.

    Adding slacks to the model

    One of the most common infeasibility issues observed is due to not enough generation to supply demand, or conversely, excessive fixed (non-curtailable) generation in a low demand scenario.

    The recommended solution for any of these cases is adding slack variables to the network model, for example:

    template_uc = ProblemTemplate(
    +        NetworkModel(
    +            CopperPlatePowerModel,
    +            use_slacks=true,
    +        ),
    +    )

    will add slack variables to the ActivePowerBalance expression.

    In this case, if the problem is now feasible, the user can check the solution of the variables SystemBalanceSlackUp and SystemBalanceSlackDown, and if one value is greater than zero, it represents that not enough generation (for Slack Up) or not enough demand (for Slack Down) in the optimization problem.

    Services cases

    In many scenarios, certain units are also required to provide reserve requirements, e.g. thermal units mandated to provide up-regulation. In such scenarios, it is also possible to add slack variables, by specifying the service model (RangeReserve) for the specific service type (VariableReserve{ReserveUp}) as:

    set_service_model!(
    +    template_uc,
    +    ServiceModel(
    +        VariableReserve{ReserveUp},
    +        RangeReserve;
    +        use_slacks=true
    +    ),
    +)

    Again, if the problem is now feasible, check the solution of ReserveRequirementSlack variable, and if it is larger than zero in a specific time-step, then it is evidence that there is not enough reserve available to satisfy the requirement.

    Getting the infeasibility conflict

    Some solvers allows to identify which constraints and variables are producing the infeasibility, by finding the irreducible infeasible set (IIS), that is the subset of constraints and variable bounds that will become feasible if any single constraint or variable bound is removed.

    To enable this feature in PowerSimulations the keyword argument calculate_conflict must be set to true, when creating the DecisionModel. Note that not all solvers allow the computation of the IIS, but most commercial solvers have this capability. It is also recommended to enable the keyword argument store_variable_names=true to help understanding which variables are with infeasibility issues.

    The following code creates a decision model with the Xpress optimizer, and enabling the calculate_conflict=true keyword argument.

    DecisionModel(
    +    template_ed,
    +    sys_rts_rt;
    +    name="ED",
    +    optimizer=optimizer_with_attributes(Xpress.Optimizer, "MIPRELSTOP" => 1e-2),
    +    optimizer_solve_log_print=true,
    +    calculate_conflict=true,
    +    store_variable_names=true,
    +)

    Here is an example on how the IIS will be displayed as:

    Error: Constraints participating in conflict basis (IIS) 
    +│ 
    +│ ┌──────────────────────────────────────┐
    +│ │ CopperPlateBalanceConstraint__System │
    +│ ├──────────────────────────────────────┤
    +│ │                            (113, 26) │
    +│ └──────────────────────────────────────┘
    +│ ┌──────────────────────────────────┐
    +│ │ EnergyAssetBalance__HybridSystem │
    +│ ├──────────────────────────────────┤
    +│ │               ("317_Hybrid", 26) │
    +│ └──────────────────────────────────┘
    +│ ┌─────────────────────────────────────────────┐
    +│ │ PieceWiseLinearCostConstraint__HybridSystem │
    +│ ├─────────────────────────────────────────────┤
    +│ │                          ("317_Hybrid", 26) │
    +│ └─────────────────────────────────────────────┘
    +│ ┌────────────────────────────────────────────────┐
    +│ │ PieceWiseLinearCostConstraint__ThermalStandard │
    +│ ├────────────────────────────────────────────────┤
    +│ │                            ("202_STEAM_3", 26) │
    +│ │                            ("101_STEAM_3", 26) │
    +│ │                               ("118_CC_1", 26) │
    +│ │                            ("202_STEAM_4", 26) │
    +│ │                               ("315_CT_6", 26) │
    +│ │                            ("201_STEAM_3", 26) │
    +│ │                            ("102_STEAM_4", 26) │
    +│ └────────────────────────────────────────────────┘
    +│ ┌──────────────────────────────────────────────────────────────────────┐
    +│ │ ActivePowerVariableTimeSeriesLimitsConstraint__RenewableDispatch__ub │
    +│ ├──────────────────────────────────────────────────────────────────────┤
    +│ │                                                   ("122_WIND_1", 26) │
    +│ │                                                     ("324_PV_3", 26) │
    +│ │                                                     ("312_PV_1", 26) │
    +│ │                                                     ("102_PV_1", 26) │
    +│ │                                                     ("101_PV_1", 26) │
    +│ │                                                     ("324_PV_2", 26) │
    +│ │                                                     ("313_PV_2", 26) │
    +│ │                                                     ("104_PV_1", 26) │
    +│ │                                                     ("101_PV_2", 26) │
    +│ │                                                   ("309_WIND_1", 26) │
    +│ │                                                     ("310_PV_2", 26) │
    +│ │                                                     ("113_PV_1", 26) │
    +│ │                                                     ("314_PV_1", 26) │
    +│ │                                                     ("324_PV_1", 26) │
    +│ │                                                     ("103_PV_1", 26) │
    +│ │                                                   ("303_WIND_1", 26) │
    +│ │                                                     ("314_PV_2", 26) │
    +│ │                                                     ("102_PV_2", 26) │
    +│ │                                                     ("314_PV_3", 26) │
    +│ │                                                     ("320_PV_1", 26) │
    +│ │                                                     ("101_PV_3", 26) │
    +│ │                                                     ("319_PV_1", 26) │
    +│ │                                                     ("314_PV_4", 26) │
    +│ │                                                     ("310_PV_1", 26) │
    +│ │                                                     ("215_PV_1", 26) │
    +│ │                                                     ("313_PV_1", 26) │
    +│ │                                                     ("101_PV_4", 26) │
    +│ │                                                     ("119_PV_1", 26) │
    +│ └──────────────────────────────────────────────────────────────────────┘
    +│ ┌─────────────────────────────────────────────────────────────────────────────┐
    +│ │ FeedforwardSemiContinuousConstraint__ThermalStandard__ActivePowerVariable_ub │
    +│ ├─────────────────────────────────────────────────────────────────────────────┤
    +│ │                                                            ("322_CT_6", 26) │
    +│ │                                                            ("321_CC_1", 26) │
    +│ │                                                            ("223_CT_4", 26) │
    +│ │                                                            ("213_CT_1", 26) │
    +│ │                                                            ("223_CT_6", 26) │
    +│ │                                                            ("123_CT_1", 26) │
    +│ │                                                            ("113_CT_3", 26) │
    +│ │                                                            ("302_CT_3", 26) │
    +│ │                                                            ("215_CT_4", 26) │
    +│ │                                                            ("301_CT_4", 26) │
    +│ │                                                            ("113_CT_2", 26) │
    +│ │                                                            ("221_CC_1", 26) │
    +│ │                                                            ("223_CT_5", 26) │
    +│ │                                                            ("315_CT_7", 26) │
    +│ │                                                            ("215_CT_5", 26) │
    +│ │                                                            ("113_CT_1", 26) │
    +│ │                                                            ("307_CT_2", 26) │
    +│ │                                                            ("213_CT_2", 26) │
    +│ │                                                            ("113_CT_4", 26) │
    +│ │                                                            ("218_CC_1", 26) │
    +│ │                                                            ("213_CC_3", 26) │
    +│ │                                                            ("323_CC_2", 26) │
    +│ │                                                            ("322_CT_5", 26) │
    +│ │                                                            ("207_CT_2", 26) │
    +│ │                                                            ("123_CT_5", 26) │
    +│ │                                                            ("123_CT_4", 26) │
    +│ │                                                            ("207_CT_1", 26) │
    +│ │                                                            ("301_CT_3", 26) │
    +│ │                                                            ("302_CT_4", 26) │
    +│ │                                                            ("307_CT_1", 26) │
    +│ └─────────────────────────────────────────────────────────────────────────────┘
    +│ ┌───────────────────────────────────────────────────────┐
    +│ │ RenewableActivePowerLimitConstraint__HybridSystem__ub │
    +│ ├───────────────────────────────────────────────────────┤
    +│ │                                    ("317_Hybrid", 26) │
    +│ └───────────────────────────────────────────────────────┘
    +│ ┌───────────────────────────────────────┐
    +│ │ ThermalOnVariableUb__HybridSystem__ub │
    +│ ├───────────────────────────────────────┤
    +│ │                    ("317_Hybrid", 26) │
    +│ └───────────────────────────────────────┘
    +
    + Error: Serializing Infeasible Problem at /var/folders/1v/t69qyl0n5059n6c1nn7sp8zm7g8s6z/T/jl_jNSREb/compact_sim/problems/ED/infeasible_ED_2020-10-06T15:00:00.json

    Note that the IIS clearly identify that the issue is happening at time step 26, and constraints are related with the CopperPlateBalanceConstraint__System, with multiple upper bound constraints, for the hybrid system, renewable units and thermal units. This highlights that there may not be enough generation in the system. Indeed, by enabling system slacks, the problem become feasible.

    Finally, the infeasible model is exported in a json file that can be loaded directly in JuMP to be explored. More information about this is available here.

    diff --git a/v0.28.3/modeler_guide/definitions/index.html b/v0.28.3/modeler_guide/definitions/index.html new file mode 100644 index 0000000000..d82f8f2dd1 --- /dev/null +++ b/v0.28.3/modeler_guide/definitions/index.html @@ -0,0 +1,15 @@ + +Definitions · PowerSimulations.jl

    Definitions

    A

    • Attributes: Certain device formulations can be customized by specifying attributes that will include/remove certain variables, expressions and/or constraints. For example, in StorageSystemsSimulations.jl, the device formulation of StorageDispatchWithReserves can be specified with the following dictionary of attributes:
    set_device_model!(
    +    template,
    +    DeviceModel(
    +        GenericBattery,
    +        StorageDispatchWithReserves;
    +        attributes=Dict{String, Any}(
    +            "reservation" => false,
    +            "cycling_limits" => false,
    +            "energy_target" => false,
    +            "complete_coverage" => false,
    +            "regularization" => false,
    +        ),
    +    ),
    +)

    Changing the attributes between true or false can enable/disable multiple aspects of the formulation.

    C

    • Chronologies: In PowerSimulations.jl, chronologies define where information is flowing. There are two types of chronologies. 1) inter-stage chronologies (InterProblemChronology) that define how information flows between stages. e.g. day-ahead solutions are used to inform economic dispatch problems; and 2) intra-stage chronologies (IntraProblemChronology) that define how information flows between multiple executions of a single stage. e.g. the dispatch setpoints of the first period of an economic dispatch problem are constrained by the ramping limits from setpoints in the final period of the previous problem.

    D

    • Decision Problem: A decision problem calculates the desired system operation based on forecasts of uncertain inputs and information about the state of the system. The output of a decision problem represents the policies used to drive the set-points of the system's devices, like generators or switches, and depends on the purpose of the problem. See the Decision Model Tutorial to learn more about solving individual problems.

    • Device Formulation: The model of a device that is incorporated into a large system optimization models. For instance, the storage device model used inside of a Unit Commitment (UC) problem. A device model needs to follow some requirements to be integrated into operation problems. For more information about valid DeviceModels and their mathematical representations, check out the Formulation Library.

    E

    • Emulation Problem: An emulation problem is used to mimic the system's behavior subject to an incoming decision and the realization of a forecasted inputs. The solution of the emulator produces outputs representative of the system performance when operating subject the policies resulting from the decision models.

    F

    • FeedForward: The definition of exactly what information is passed using the defined chronologies is accomplished using FeedForwards. Specifically, a FeedForward is used to define what to do with information being passed with an inter-stage chronology in a Simulation. The most common FeedForward is the SemiContinuousFeedForward that affects the semi-continuous range constraints of thermal generators in the economic dispatch problems based on the value of the (already solved) unit-commitment variables.

    H

    I

    • Interval: The amount of time between updates to the decision problem. For instance, Day-Ahead problems usually have a 24-hour intervals and Real-Time problems have 5-minute intervals. Check the time Time Series Data Section in PowerSystems.jl

    R

    • Resolution: The amount of time between time steps in a simulation. For instance 1-hour or 5-minutes. In Julia these are defined using the syntax Hour(1) and Minute(5). Check the time Time Series Data Section in PowerSystems.jl

    • Results vs Realized Results: In PowerSimulations.jl the term results is used to refer to the solution of all optimization problems in a Simulation. When using read_variable(results, Variable) in a DecisionModel of a simulation, the output is a dictionary with the values of such variable for every optimization problem solved, while read_realized_variable(results, Variable) will return the values of the specified interval and number of steps in the simulation. See the Read Results page for more details.

    S

    • Service Formulation: The model of a service that is incorporated into a large system optimization models. Services (or ancillary services) are models used to ensure that there is necessary support to the power grid from generators to consumers, in order to ensure reliable operation of the system. The most common application for ancillary services are reserves, i.e., generation (or load) that is not currently being used, but can be quickly made available in case of unexpected changes of grid conditions, for example a sudden loss of load or generation. A service model needs to follow some requirements to be integrated into operation problems. For more information about valid ServiceModels and their mathematical representations, check out the Formulation Library.

    • Simulation: A simulation is a pre-determined sequence of decision problems in a way that solving it, resembles the solution procedures commonly used by operators. The most common simulation model is the solution of a Unit Commitment and Economic Dispatch sequence of problems.

    • Solver: A solver is a software package that incorporates algorithms for finding solutions to one or more classes of optimization problem. For example, FICO Xpress is a commercial optimization solver for linear programming (LP), convex quadratic programming (QP) problems, convex quadratically constrained quadratic programming (QCQP), second-order cone programming (SOCP) and their mixed integer counterparts. A solver is required to be specified in order to solve any computer optimization problem.

    T

    • Template: A ProblemTemplate is just a collection of DeviceModels that allows the user to specify the formulations of each set of devices (by device type) independently so that the modeler can adjust the level of detail according to the question of interest and the available data. For more information about valid DeviceModels and their mathematical representations, check out the Formulation Library.
    diff --git a/v0.28.3/modeler_guide/logging/index.html b/v0.28.3/modeler_guide/logging/index.html new file mode 100644 index 0000000000..aa0862a380 --- /dev/null +++ b/v0.28.3/modeler_guide/logging/index.html @@ -0,0 +1,11 @@ + +Logging · PowerSimulations.jl

    Logging

    PowerSimulations.jl will output many log messages when building systems and running simulations. You may want to customize what gets logged to the console and, optionally, a file.

    By default all log messages of level Logging.Info or higher will get displayed to the console. When you run a simulation a simulation-specific logger will take over and log its messages to a file in the logs directory in the simulation output directory. When finished it will relinquish control back to the global logger.

    Configuring the global logger

    To configure the global logger in a Jupyter Notebook or REPL you may configure your own logger with the Julia Logging standard library or use the convenience function provided by PowerSimulations. This example will log messages of level Logging.Error to console and Logging.Info and higher to the file power-simulations.log in the current directory.

    import Logging
    +using PowerSimulations
    +logger = configure_logging(
    +    console_level = Logging.Error,
    +    file_level = Logging.Info,
    +    filename = "power-simulations.log"
    +)

    Configuring the simulation logger

    You can configure the logging level used by the simulation logger when you call build!(simulation). Here is an example that increases logging verbosity:

    import Logging
    +using PowerSimulations
    +simulation = Simulation(...)
    +build!(simulation, console_level = Logging.Info, file_level = Logging.Debug)

    The log file will be located at <your-output-path>/<simulation-name>/<run-output-dir>/logs/simulation.log.

    Solver logs

    You can configure logging for the solver you use. Refer to the solver documentation. PowerSimulations does not redirect or intercept prints to stdout or stderr from other libraries.

    Recorder events

    PowerSimulations uses the InfrastructureSystems.Recorder to store simulation events in a log file. Refer to this link for more information.

    diff --git a/v0.28.3/modeler_guide/modeling_faq/index.html b/v0.28.3/modeler_guide/modeling_faq/index.html new file mode 100644 index 0000000000..2336d89e90 --- /dev/null +++ b/v0.28.3/modeler_guide/modeling_faq/index.html @@ -0,0 +1,2 @@ + +Modeling FAQ · PowerSimulations.jl

    Modeling FAQ

    How do I reduce the amount of print on my REPL?

    The print to the REPL is controlled with the logging. Check the Logging documentation page to see how to reduce the print out

    How do I print the optimizer logs to see the solution process?

    When specifying the DecisionModel or EmulationModel pass the keyword print_optimizer_log = true

    diff --git a/v0.28.3/modeler_guide/parallel_simulations/index.html b/v0.28.3/modeler_guide/parallel_simulations/index.html new file mode 100644 index 0000000000..57fa66f4e7 --- /dev/null +++ b/v0.28.3/modeler_guide/parallel_simulations/index.html @@ -0,0 +1,105 @@ + +Parallel Simulations · PowerSimulations.jl

    Parallel Simulations

    This section contains instructions to:

    Run a Simulation in Parallel on a local computer

    This page describes how to split a simulation into partitions, run each partition in parallel, and then join the results.

    Setup

    Create a Julia script to build and run simulations. It must meet the requirements below. A full example is in the PowerSimulations repository in test/run_partitioned_simulation.jl.

    • Call using PowerSimulations.

    • Implement a build function that matches the signature below. It must construct a Simulation, call build!, and then return the Simulation instance. It must throw an exception if the build fails.

    function build_simulation(
    +    output_dir::AbstractString,
    +    simulation_name::AbstractString,
    +    partitions::SimulationPartitions,
    +    index::Union{Nothing, Integer}=nothing,
    +)

    Here is example code to construct the Simulation with these parameters:

        sim = Simulation(
    +        name=simulation_name,
    +        steps=partitions.num_steps,
    +        models=models,
    +        sequence=sequence,
    +        simulation_folder=output_dir,
    +    )
    +    status = build!(sim; partitions=partitions, index=index, serialize=isnothing(index))
    +    if status != PSI.SimulationBuildStatus.BUILT
    +        error("Failed to build simulation: status=$status")
    +    end
    • Implement an execute function that matches the signature below. It must throw an exception if the execute fails.
    function execute_simulation(sim, args...; kwargs...)
    +    status = execute!(sim)
    +    if status != PSI.RunStatus.SUCCESSFULLY_FINALIZED
    +        error("Simulation failed to execute: status=$status")
    +    end
    +end

    Execution

    After loading your script, call the function run_parallel_simulation as shown below.

    This example splits a year-long simulation into weekly partitions for a total of 53 individual jobs and then runs them four at a time.

    julia> include("my_simulation.jl")
    +julia> run_parallel_simulation(
    +        build_simulation,
    +        execute_simulation,
    +        script="my_simulation.jl",
    +        output_dir="my_simulation_output",
    +        name="my_simulation",
    +        num_steps=365,
    +        period=7,
    +        num_overlap_steps=1,
    +        num_parallel_processes=4,
    +        exeflags="--project=<path-to-your-julia-environment>",
    +    )

    The final results will be in ./my_simulation_otuput/my_simulation

    Note the log files and results for each partition are located in ./my_simulation_otuput/my_simulation/simulation_partitions

    Run a Simulation in Parallel on an HPC

    This page describes how to split a simulation into partitions, run each partition in parallel on HPC compute nodes, and then join the results.

    These steps can be used on a local computer or any HPC supported by the submission software. Some steps may be specific to NREL's HPC Eagle cluster.

    Note: Some instructions are preliminary and will change if functionality is moved to a new Julia package.

    Setup

    1. Create a conda environment and install the Python package NREL-jade: https://nrel.github.io/jade/installation.html. The rest of this page assumes that the environment is called jade.
    2. Activate the environment with conda activate jade.
    3. Locate the path to that conda environment. It will likely be ~/.conda-envs/jade or ~/.conda/envs/jade.
    4. Load the Julia environment that you use to run simulations. Add the packages Conda and PyCall.
    5. Setup Conda to use the existing jade environment by running these commands:
    julia> run(`conda create -n conda_jl python conda`)
    +julia> ENV["CONDA_JL_HOME"] = joinpath(ENV["HOME"], ".conda-envs", "jade")  # change this to your path
    +pkg> build Conda
    1. Copy the code below into a Julia file called configure_parallel_simulation.jl. This is an interface to Jade through PyCall. It will be used to create a Jade configuration. (It may eventually be moved to a separate package.)
    function configure_parallel_simulation(
    +    script::AbstractString,
    +    num_steps::Integer,
    +    num_period_steps::Integer;
    +    num_overlap_steps::Integer=0,
    +    project_path=nothing,
    +    simulation_name="simulation",
    +    config_file="config.json",
    +    force=false,
    +)
    +    partitions = SimulationPartitions(num_steps, num_period_steps, num_overlap_steps)
    +    jgc = pyimport("jade.extensions.generic_command")
    +    julia_cmd = isnothing(project_path) ? "julia" : "julia --project=$project_path"
    +    setup_command = "$julia_cmd $script setup --simulation-name=$simulation_name " *
    +    "--num-steps=$num_steps --num-period-steps=$num_period_steps " *
    +    "--num-overlap-steps=$num_overlap_steps"
    +    teardown_command = "$julia_cmd $script join --simulation-name=$simulation_name"
    +    config = jgc.GenericCommandConfiguration(
    +        setup_command=setup_command,
    +        teardown_command=teardown_command,
    +    )
    +
    +    for i in 1:get_num_partitions(partitions)
    +        cmd = "$julia_cmd $script execute --simulation-name=$simulation_name --index=$i"
    +        job = jgc.GenericCommandParameters(command=cmd, name="execute-$i")
    +        config.add_job(job)
    +    end
    +
    +    config.dump(config_file, indent=2)
    +    println("Created Jade configuration in $config_file. " *
    +            "Run 'jade submit-jobs [options] $config_file' to execute them.")
    +end
    1. Create a Julia script to build and run simulations. It must meet the requirements below. A full example is in the PowerSimulations repository in test/run_partitioned_simulation.jl.
    • Call using PowerSimulations.

    • Implement a build function that matches the signature below. It must construct a Simulation, call build!, and then return the Simulation instance. It must throw an exception if the build fails.

    function build_simulation(
    +    output_dir::AbstractString,
    +    simulation_name::AbstractString,
    +    partitions::SimulationPartitions,
    +    index::Union{Nothing, Integer}=nothing,
    +)

    Here is example code to construct the Simulation with these parameters:

        sim = Simulation(
    +        name=simulation_name,
    +        steps=partitions.num_steps,
    +        models=models,
    +        sequence=sequence,
    +        simulation_folder=output_dir,
    +    )
    +    status = build!(sim; partitions=partitions, index=index, serialize=isnothing(index))
    +    if status != PSI.SimulationBuildStatus.BUILT
    +        error("Failed to build simulation: status=$status")
    +    end
    • Implement an execute function that matches the signature below. It must throw an exception if the execute fails.
    function execute_simulation(sim, args...; kwargs...)
    +    status = execute!(sim)
    +    if status != PSI.RunStatus.SUCCESSFULLY_FINALIZED
    +        error("Simulation failed to execute: status=$status")
    +    end
    +end
    • Make the script runnable as a CLI command by including the following code at the bottom of the

    file.

    function main()
    +    process_simulation_partition_cli_args(build_simulation, execute_simulation, ARGS...)
    +end
    +
    +if abspath(PROGRAM_FILE) == @__FILE__
    +    main()
    +end

    Execution

    1. Create a Jade configuration that defines the partitioned simulation jobs. Load your Julia environment.

      This example splits a year-long simulation into weekly partitions for a total of 53 individual jobs.

    julia> include("configure_parallel_simulation.jl")
    +julia> num_steps = 365
    +julia> period = 7
    +julia> num_overlap_steps = 1
    +julia> configure_parallel_simulation(
    +    "my_simulation.jl",  # this is your build/execute script
    +    num_steps,
    +    period,
    +    num_overlap_steps=1,
    +    project_path=".",  # This optionally specifies the Julia project environment to load.
    +)
    +Created Jade configuration in config.json. Run 'jade submit-jobs [options] config.json' to execute them.

    Exit Julia.

    1. View the configuration for accuracy.
    $ jade config show config.json
    1. Start an interactive session on a debug node. Do not submit the jobs on a login node! The submission step will run a full build of the simulation and that may consume too many CPU and memory resources for the login node.
    $ salloc -t 01:00:00 -N1 --account=<your-account> --partition=debug
    1. Follow the instructions at https://nrel.github.io/jade/tutorial.html to submit the jobs. The example below will configure Jade to run each partition on its own compute node. Depending on the compute and memory constraints of your simulation, you may be able to pack more jobs on each node.

      Adjust the walltime as necessary.

    $ jade config hpc -c hpc_config.toml -t slurm  --walltime=04:00:00 -a <your-account>
    +$ jade submit-jobs config.json --per-node-batch-size=1 -o output

    If you are unsure about how much memory and CPU resources your simulation consumes, add these options:

    $ jade submit-jobs config.json --per-node-batch-size=1 -o output --resource-monitor-type periodic --resource-monitor-interval 3

    Jade will create HTML plots of the resource utilization in output/stats. You may be able to customize --per-node-batch-size and --num-processes to finish the simulations more quickly.

    1. Jade will run a final command to join the simulation partitions into one unified file. You can load the results as you normally would.
    julia> results = SimulationResults("<output-dir>/job-outputs/<simulation-name>")

    Note the log files and results for each partition are located in <output-dir>/job-outputs/<simulation-name>/simulation_partitions

    diff --git a/v0.28.3/modeler_guide/problem_templates/index.html b/v0.28.3/modeler_guide/problem_templates/index.html new file mode 100644 index 0000000000..c25039d843 --- /dev/null +++ b/v0.28.3/modeler_guide/problem_templates/index.html @@ -0,0 +1,252 @@ + +Operations ProblemTemplates · PowerSimulations.jl

    Operations ProblemTemplates

    Templates are used to specify the modeling properties of the devices and network that are going to he used to specify a problem. A ProblemTemplate is just a collection of DeviceModels that allows the user to specify the formulations of each set of devices (by device type) independently so that the modeler can adjust the level of detail according to the question of interest and the available data. For more information about valid DeviceModels and their mathematical representations, check out the Formulation Library.

    Building a ProblemTemplate

    You can build a ProblemTemplate by adding a NetworkModel, DeviceModels, and ServiceModels.

    template = ProblemTemplate()
    +set_network_model!(template, NetworkModel(CopperPlatePowerModel))
    +set_device_model!(template, PowerLoad, StaticPowerLoad)
    +set_device_model!(template, ThermalStandard, ThermalBasicUnitCommitment)
    +set_service_model!(template, VariableReserve{ReserveUp}, RangeReserve)

    Default Templates

    PowerSimulations.jl provides default templates for common operation problems. You can retrieve a default template and modify it according to your requirements. Currently supported default templates are:

    PowerSimulations.template_economic_dispatchFunction
    template_economic_dispatch(; kwargs...) -> ProblemTemplate
    +
    template_economic_dispatch(; kwargs...)

    Creates a ProblemTemplate with default DeviceModels for an Economic Dispatch problem.

    Example

    template = templateeconomicdispatch()

    
    +# Accepted Key Words
    +- `network::Type{<:PM.AbstractPowerModel}` : override default network model settings
    +- `devices::Vector{DeviceModel}` : override default `DeviceModel` settings
    +- `services::Vector{ServiceModel}` : override default `ServiceModel` settings
    source
    template_economic_dispatch()
    + + + + + + + + + + + + + + + + + + + +
    Network Model
    Network ModelCopperPlatePowerModel
    Slacksfalse
    PTDFfalse
    DualsNone
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Device Models
    Device TypeFormulationSlacks
    RenewableNonDispatchFixedOutputfalse
    ThermalStandardThermalBasicDispatchfalse
    PowerLoadStaticPowerLoadfalse
    InterruptiblePowerLoadPowerLoadInterruptionfalse
    RenewableDispatchRenewableFullDispatchfalse
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Branch Models
    Branch TypeFormulationSlacks
    LineStaticBranchfalse
    TapTransformerStaticBranchfalse
    Transformer2WStaticBranchfalse
    TwoTerminalHVDCLineHVDCTwoTerminalDispatchfalse
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Service Models
    Service TypeFormulationSlacksAggregated Model
    VariableReserve{ReserveUp}RangeReservefalsetrue
    VariableReserve{ReserveDown}RangeReservefalsetrue
    +
    PowerSimulations.template_unit_commitmentFunction
    template_unit_commitment(; kwargs...) -> ProblemTemplate
    +
    template_unit_commitment(; kwargs...)

    Creates a ProblemTemplate with default DeviceModels for a Unit Commitment problem.

    Example

    template = templateunitcommitment()

    
    +# Accepted Key Words
    +- `network::Type{<:PM.AbstractPowerModel}` : override default network model settings
    +- `devices::Vector{DeviceModel}` : override default `DeviceModel` settings
    +- `services::Vector{ServiceModel}` : override default `ServiceModel` settings
    source
    template_unit_commitment()
    + + + + + + + + + + + + + + + + + + + +
    Network Model
    Network ModelCopperPlatePowerModel
    Slacksfalse
    PTDFfalse
    DualsNone
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Device Models
    Device TypeFormulationSlacks
    RenewableNonDispatchFixedOutputfalse
    ThermalStandardThermalBasicUnitCommitmentfalse
    PowerLoadStaticPowerLoadfalse
    InterruptiblePowerLoadPowerLoadInterruptionfalse
    RenewableDispatchRenewableFullDispatchfalse
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Branch Models
    Branch TypeFormulationSlacks
    LineStaticBranchfalse
    TapTransformerStaticBranchfalse
    Transformer2WStaticBranchfalse
    TwoTerminalHVDCLineHVDCTwoTerminalDispatchfalse
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Service Models
    Service TypeFormulationSlacksAggregated Model
    VariableReserve{ReserveUp}RangeReservefalsetrue
    VariableReserve{ReserveDown}RangeReservefalsetrue
    +
    diff --git a/v0.28.3/modeler_guide/psi_structure/index.html b/v0.28.3/modeler_guide/psi_structure/index.html new file mode 100644 index 0000000000..50372600a2 --- /dev/null +++ b/v0.28.3/modeler_guide/psi_structure/index.html @@ -0,0 +1,2 @@ + +PowerSimulations.jl Modeling Structure · PowerSimulations.jl

    PowerSimulations.jl Modeling Structure

    PowerSimulations enables the simulation of a sequence of power systems optimization problems and provides user control over each aspect of the simulation configuration. Specifically:

    What is the difference between a Model and a Problem?

    A "Problem" is an abstract mathematical description of how to represent power system behavior, whereas a "Model" is a concrete representation of a "Problem" applied to a dataset. I.e. once a Problem is populated with data describing all the loads, generators, lines, etc., it becomes a Model.

    diff --git a/v0.28.3/modeler_guide/read_results/index.html b/v0.28.3/modeler_guide/read_results/index.html new file mode 100644 index 0000000000..ab1d0eb824 --- /dev/null +++ b/v0.28.3/modeler_guide/read_results/index.html @@ -0,0 +1,127 @@ + +Read results · PowerSimulations.jl

    Read results

    Once a DecisionModel is solved via solve!(model) or a Simulation is executed (and solved) via execute!(simulation), the results are stored and can be accessed directly in the REPL for result exploration and plotting.

    Read results of a Decision Problem

    Once a DecisionModel is solved, results are accessed using OptimizationProblemResults(model) as follows:

    # The DecisionModel is already constructed
    +build!(model, output_dir = mktempdir())
    +solve!(model)
    +
    +results = OptimizationProblemResults(model)

    The output will showcase the available expressions, parameters and variables to read. For example it will look like:

    Start: 2020-01-01T00:00:00
    +End: 2020-01-03T23:00:00
    +Resolution: 60 minutes
    +
    +PowerSimulations Problem Auxiliary variables Results
    +┌──────────────────────────────────────────┐
    +│ CumulativeCyclingCharge__HybridSystem    │
    +│ CumulativeCyclingDischarge__HybridSystem │
    +└──────────────────────────────────────────┘
    +
    +PowerSimulations Problem Expressions Results
    +┌─────────────────────────────────────────────┐
    +│ ProductionCostExpression__RenewableDispatch │
    +│ ProductionCostExpression__ThermalStandard   │
    +└─────────────────────────────────────────────┘
    +
    +PowerSimulations Problem Duals Results
    +┌──────────────────────────────────────┐
    +│ CopperPlateBalanceConstraint__System │
    +└──────────────────────────────────────┘
    +
    +PowerSimulations Problem Parameters Results
    +┌────────────────────────────────────────────────────────────────────────┐
    +│ ActivePowerTimeSeriesParameter__RenewableNonDispatch                           │
    +│ RenewablePowerTimeSeries__HybridSystem                                 │
    +│ RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Spin_Up_R3 │
    +│ RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Reg_Up     │
    +│ ActivePowerTimeSeriesParameter__PowerLoad                              │
    +│ ActivePowerTimeSeriesParameter__RenewableDispatch                      │
    +│ RequirementTimeSeriesParameter__VariableReserve__ReserveDown__Reg_Down │
    +│ ActivePowerTimeSeriesParameter__HydroDispatch                          │
    +│ RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Spin_Up_R1 │
    +│ RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Spin_Up_R2 │
    +└────────────────────────────────────────────────────────────────────────┘
    +
    +PowerSimulations Problem Variables Results
    +┌────────────────────────────────────────────────────────────────────┐
    +│ ActivePowerOutVariable__HybridSystem                               │
    +│ ReservationVariable__HybridSystem                                  │
    +│ RenewablePower__HybridSystem                                       │
    +│ ActivePowerReserveVariable__VariableReserve__ReserveUp__Spin_Up_R1 │
    +│ SystemBalanceSlackUp__System                                       │
    +│ BatteryEnergyShortageVariable__HybridSystem                        │
    +│ ActivePowerReserveVariable__VariableReserve__ReserveUp__Reg_Up     │
    +│ StopVariable__ThermalStandard                                      │
    +│ BatteryStatus__HybridSystem                                        │
    +│ BatteryDischarge__HybridSystem                                     │
    +│ ActivePowerInVariable__HybridSystem                                │
    +│ DischargeRegularizationVariable__HybridSystem                      │
    +│ BatteryCharge__HybridSystem                                        │
    +│ ActivePowerVariable__RenewableDispatch                             │
    +│ ActivePowerReserveVariable__VariableReserve__ReserveDown__Reg_Down │
    +│ EnergyVariable__HybridSystem                                       │
    +│ OnVariable__HybridSystem                                           │
    +│ BatteryEnergySurplusVariable__HybridSystem                         │
    +│ SystemBalanceSlackDown__System                                     │
    +│ ActivePowerReserveVariable__VariableReserve__ReserveUp__Spin_Up_R2 │
    +│ ThermalPower__HybridSystem                                         │
    +│ ActivePowerVariable__ThermalStandard                               │
    +│ StartVariable__ThermalStandard                                     │
    +│ ActivePowerReserveVariable__VariableReserve__ReserveUp__Spin_Up_R3 │
    +│ OnVariable__ThermalStandard                                        │
    +│ ChargeRegularizationVariable__HybridSystem                         │
    +└────────────────────────────────────────────────────────────────────┘

    Then the following code can be used to read results:

    # Read active power of Thermal Standard
    +thermal_active_power = read_variable(results, "ActivePowerVariable__ThermalStandard")
    +
    +# Read max active power parameter of RenewableDispatch
    +renewable_param = read_parameter(results, "ActivePowerTimeSeriesParameter__RenewableDispatch")
    +
    +# Read cost expressions of ThermalStandard units
    +cost_thermal = read_expression(results, "ProductionCostExpression__ThermalStandard")
    +
    +# Read dual variables
    +dual_balance_constraint = read_dual(results, "CopperPlateBalanceConstraint__System")
    +
    +# Read auxiliary variables
    +aux_var_result = read_aux_variable(results, "CumulativeCyclingCharge__HybridSystem")

    Results will be in the form of DataFrames that can be easily explored.

    Read results of a Simulation

    # The Simulation is already constructed
    +build!(sim)
    +execute!(sim; enable_progress_bar=true)
    +
    +results_sim = SimulationResults(sim)

    As an example, the SimulationResults printing will look like:

    Decision Problem Results
    +┌──────────────┬─────────────────────┬──────────────┬─────────────────────────┐
    +│ Problem Name │ Initial Time        │ Resolution   │ Last Solution Timestamp │
    +├──────────────┼─────────────────────┼──────────────┼─────────────────────────┤
    +│ ED           │ 2020-10-02T00:00:00 │ 60 minutes   │ 2020-10-09T23:00:00     │
    +│ UC           │ 2020-10-02T00:00:00 │ 1440 minutes │ 2020-10-09T00:00:00     │
    +└──────────────┴─────────────────────┴──────────────┴─────────────────────────┘
    +
    +Emulator Results
    +┌─────────────────┬───────────┐
    +│ Name            │ Emulator  │
    +│ Resolution      │ 5 minutes │
    +│ Number of steps │ 2304      │
    +└─────────────────┴───────────┘

    With this, it is possible to obtain results of each DecisionModel and EmulationModel as follows:

    # Use the Problem Name for Decision Problems
    +results_uc = get_decision_problem_results(results_sim, "UC")
    +results_ed = get_decision_problem_results(results_sim, "ED")
    +results_emulator = get_emulation_problem_results(results_sim)

    Once we have each decision (or emulation) problem results, we can explore directly using the approach for Decision Models, mentioned in the previous section.

    Reading solutions for all simulation steps

    In this case, using read_variable (or read expression, parameter or dual), will return a dictionary of all steps (of that Decision Problem). For example, the following code:

    thermal_active_power = read_variable(results_uc, "ActivePowerVariable__ThermalStandard")

    will return:

    DataStructures.SortedDict{Any, Any, Base.Order.ForwardOrdering} with 8 entries:
    +  DateTime("2020-10-02T00:00:00") => 72×54 DataFrame…
    +  DateTime("2020-10-03T00:00:00") => 72×54 DataFrame…
    +  DateTime("2020-10-04T00:00:00") => 72×54 DataFrame…
    +  DateTime("2020-10-05T00:00:00") => 72×54 DataFrame…
    +  DateTime("2020-10-06T00:00:00") => 72×54 DataFrame…
    +  DateTime("2020-10-07T00:00:00") => 72×54 DataFrame…
    +  DateTime("2020-10-08T00:00:00") => 72×54 DataFrame…
    +  DateTime("2020-10-09T00:00:00") => 72×54 DataFrame…

    That is, a sorted dictionary for each simulation step, using as a key the initial timestamp for that specific simulation step.

    Note that in this case, each DataFrame, has a dimension of $72 \times 54$, since the horizon is 72 hours (number of rows), but the interval is only 24 hours. Indeed, note the initial timestamp of each simulation step is the beginning of each day, i.e. 24 hours. Finally, there 54 columns, since this example system has 53 ThermalStandard units (plus 1 column for the timestamps). The user is free to explore the solution of any simulation step as needed.

    Reading the "realized" solution (i.e. the interval)

    Using read_realized_variable (or read realized expression, parameter or dual), will return the DataFrame of the realized solution of any specific variable. That is, it will concatenate the corresponding simulation step with the specified interval of that step, to construct a single DataFrame with the "realized solution" of the entire simulation.

    For example, the code:

    th_realized_power = read_realized_variable(results_uc, "ActivePowerVariable__ThermalStandard")

    will return:

    92×54 DataFrame
    + Row │ DateTime             322_CT_6      321_CC_1  202_STEAM_3   223_CT_4  123_STEAM_2    213_CT_1  223_CT_6  313_CC_1  101_STEAM_3  123_C ⋯
    +     │ DateTime             Float64       Float64   Float64       Float64   Float64        Float64   Float64   Float64   Float64      Float ⋯
    +─────┼───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
    +   1 │ 2020-10-02T00:00:00   0.0           293.333   0.0               0.0    0.0               0.0       0.0   231.667      76.0     0.0   ⋯
    +   2 │ 2020-10-02T01:00:00   0.0           267.552   0.0               0.0    0.0               0.0       0.0   231.667      76.0     0.0
    +   3 │ 2020-10-02T02:00:00   0.0           234.255   0.0               0.0   -4.97544e-11       0.0       0.0   231.667      76.0     0.0
    +   4 │ 2020-10-02T03:00:00   0.0           249.099   0.0               0.0   -4.97544e-11       0.0       0.0   231.667      76.0     0.0
    +   5 │ 2020-10-02T04:00:00   0.0           293.333   0.0               0.0   -4.97544e-11       0.0       0.0   231.667      76.0     0.0   ⋯
    +   6 │ 2020-10-02T05:00:00   0.0           293.333   1.27578e-11       0.0   -4.97544e-11       0.0       0.0   293.333      76.0     0.0
    +  ⋮  │          ⋮                ⋮           ⋮           ⋮           ⋮            ⋮           ⋮         ⋮         ⋮           ⋮             ⋱
    + 187 │ 2020-10-09T18:00:00   0.0           293.333  76.0               0.0  155.0               0.0       0.0   318.843      76.0     0.0
    + 188 │ 2020-10-09T19:00:00   0.0           293.333  76.0               0.0  124.0               0.0       0.0   293.333      76.0     0.0
    + 189 │ 2020-10-09T20:00:00   0.0           293.333  60.6667            0.0  124.0               0.0       0.0     0.0        76.0     0.0   ⋯
    + 190 │ 2020-10-09T21:00:00  -7.65965e-12   293.333  60.6667            0.0  124.0               0.0       0.0     0.0        76.0     0.0
    + 191 │ 2020-10-09T22:00:00   0.0             0.0    60.6667            0.0  124.0               0.0       0.0     0.0        76.0     7.156
    + 192 │ 2020-10-09T23:00:00   0.0             0.0    60.6667            0.0  117.81              0.0       0.0     0.0        76.0     0.0
    +                                                                                                              44 columns and 180 rows omitted

    In this case, the 8 simulation steps of 24 hours (192 hours), in a single DataFrame, to enable easy exploration of the realized results for the user.

    diff --git a/v0.28.3/modeler_guide/running_a_simulation/index.html b/v0.28.3/modeler_guide/running_a_simulation/index.html new file mode 100644 index 0000000000..46d2cf8439 --- /dev/null +++ b/v0.28.3/modeler_guide/running_a_simulation/index.html @@ -0,0 +1,75 @@ + +Simulation · PowerSimulations.jl

    Simulation

    Always try to solve the operations problem first before putting together the simulation

    It is not uncommon that when trying to solve a complex simulation the resulting models are infeasible. This situation can be the result of many factors like the input data, the incorrect specification of the initial conditions for models with time dependencies or a poorly specified model. Therefore, it's highly recommended to run and analyze an Operations Problems that reflect the problems that will be included in a simulation prior to executing a simulation.

    Check out the Operations Problem Tutorial

    Feedforward

    The definition of exactly what information is passed using the defined chronologies is accomplished using FeedForwards.

    Specifically, a FeedForward is used to define what to do with information being passed with an inter-stage chronology in a Simulation. The most common FeedForward is the SemiContinuousFeedForward that affects the semi-continuous range constraints of thermal generators in the economic dispatch problems based on the value of the (already solved) unit-commitment variables.

    The creation of a FeedForward requires at least to specify the component_type on which the FeedForward will be applied. The source variable specify which variable will be taken from the problem solved, for example the commitment variable of the thermal unit in the unit commitment problem. Finally, the affected_values specify which variables will be affected in the problem to be solved, for example the next economic dispatch problem.

    The following code specify the creation of semi-continuous range constraints on the ActivePowerVariable based on the solution of the commitment variable OnVariable for all ThermalStandard units.

    SemiContinuousFeedforward(
    +    component_type=ThermalStandard,
    +    source=OnVariable,
    +    affected_values=[ActivePowerVariable],
    +)

    Chronologies

    In PowerSimulations, chronologies define where information is flowing. There are two types of chronologies.

    • inter-stage chronologies: Define how information flows between stages. e.g. day-ahead solutions are used to inform economic dispatch problems
    • intra-stage chronologies: Define how information flows between multiple executions of a single stage. e.g. the dispatch setpoints of the first period of an economic dispatch problem are constrained by the ramping limits from setpoints in the final period of the previous problem.

    Sequencing

    In a typical simulation pipeline, we want to connect daily (24-hours) day-ahead unit commitment problems, with multiple economic dispatch problems. Usually, our day-ahead unit commitment problem will have an hourly (1-hour) resolution, while the economic dispatch will have a 5-minute resolution.

    Depending on your problem, it is common to use a 2-day look-ahead for unit commitment problems, so in this case, the Day-Ahead problem will have: resolution = Hour(1) with interval = Hour(24) and horizon = Hour(48). In the case of the economic dispatch problem, it is common to use a look-ahead of two hours. Thus, the Real-Time problem will have: resolution = Minute(5), with interval = Minute(5) (we only store the first operating point) and horizon = 24 (24 time steps of 5 minutes are 120 minutes, that is 2 hours).

    Simulation Setup

    The following code creates the entire simulation pipeline:

    # We assume that the templates for UC and ED are ready
    +# sys_da has the resolution of 1 hour:
    +# with the 24 hours interval and horizon of 48 hours.
    +# sys_rt has the resolution of 5 minutes:
    +# with a 5-minute interval and horizon of 2 hours (24 time steps)
    +
    +# Create the UC Decision Model
    +decision_model_uc = DecisionModel(
    +    template_uc,
    +    sys_da;
    +    name="UC",
    +    optimizer=optimizer_with_attributes(
    +        Xpress.Optimizer,
    +        "MIPRELSTOP" => 1e-1,
    +    ),
    +)
    +
    +# Create the ED Decision Model
    +decision_model_ed = DecisionModel(
    +    template_ed,
    +    sys_rt;
    +    name="ED",
    +    optimizer=optimizer_with_attributes(Xpress.Optimizer),
    +)
    +
    +# Specify the SimulationModels using a Vector of decision_models: UC, ED
    +sim_models = SimulationModels(
    +    decision_models=[
    +        decision_model_uc,
    +        decision_model_ed,
    +    ],
    +)
    +
    +# Create the FeedForwards:
    +semi_ff = SemiContinuousFeedforward(
    +    component_type=ThermalStandard,
    +    source=OnVariable,
    +    affected_values=[ActivePowerVariable],
    +)
    +
    +# Specify the sequencing:
    +sim_sequence = SimulationSequence(
    +    # Specify the vector of decision models: sim_models
    +    models=sim_models,
    +    # Specify a Dict of feedforwards on which the FF applies
    +    # based on the DecisionModel name, in this case "ED"
    +    feedforwards=Dict(
    +        "ED" => [semi_ff],
    +    ),
    +    # Specify the chronology, in this case inter-stage
    +    ini_cond_chronology=InterProblemChronology(),
    +)
    +
    +# Construct the simulation:
    +sim = Simulation(
    +    name="compact_sim",
    +    steps=10, # 10 days
    +    models=sim_models,
    +    sequence=sim_sequence,
    +    # Specify the start_time as a DateTime: e.g. DateTime("2020-10-01T00:00:00")
    +    initial_time=start_time,
    +    # Specify a temporary folder to avoid storing logs if not needed
    +    simulation_folder=mktempdir(cleanup=true),
    +)
    +
    +# Build the decision models and simulation setup
    +build!(sim)
    +
    +# Execute the simulation using the Optimizer specified in each DecisionModel
    +execute!(sim, enable_progress_bar=true)

    Check the PCM tutorial for a more detailed tutorial on executing a simulation in a production cost modeling (PCM) environment.

    diff --git a/v0.28.3/modeler_guide/simulation_recorder/index.html b/v0.28.3/modeler_guide/simulation_recorder/index.html new file mode 100644 index 0000000000..c3b4c41a36 --- /dev/null +++ b/v0.28.3/modeler_guide/simulation_recorder/index.html @@ -0,0 +1,43 @@ + +Simulation Recorder · PowerSimulations.jl

    Simulation Recorder

    PowerSimulations.jl provides the ability to record structured data as events during a simulation. These events can be post-processed to help debug problems.

    By default only SimulationStepEvent and ProblemExecutionEvent are recorded. Here is an example.

    Suppose a simulation is run in the directory ./output.

    Assume that setup commands have been run:

    using PowerSimulations
    +const PSI = PowerSimulations

    Note that for all functions below you can optionally specify a function to filter events. The function must accept the event type and return true or false.

    Show all events of type PSI.SimulationStepEvent

    julia> show_simulation_events(PSI.SimulationStepEvent, "./output/aggregation/1")
    +┌─────────────────────┬─────────────────────┬──────┬────────┐
    +│                name │     simulation_time │ step │ status │
    +├─────────────────────┼─────────────────────┼──────┼────────┤
    +│ SimulationStepEvent │ 2024-01-01T00:00:00 │    1 │  start │
    +│ SimulationStepEvent │ 2024-01-01T23:00:00 │    1 │   done │
    +│ SimulationStepEvent │ 2024-01-01T23:00:00 │    2 │  start │
    +│ SimulationStepEvent │ 2024-01-02T23:00:00 │    2 │   done │
    +└─────────────────────┴─────────────────────┴──────┴────────┘

    Show events of type PSI.ProblemExecutionEvent for a specific step and stage.

    show_simulation_events(
    +    PSI.ProblemExecutionEvent,
    +    "./output/aggregation/1",
    +    x -> x.step == 1 && x.stage == 2 && x.status == "start"
    +)
    +┌──────────────────────┬─────────────────────┬──────┬───────┬────────┐
    +│                 name │     simulation_time │ step │ stage │ status │
    +├──────────────────────┼─────────────────────┼──────┼───────┼────────┤
    +│ ProblemExecutionEvent │ 2024-01-01T00:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T00:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T01:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T02:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T03:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T04:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T05:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T06:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T07:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T08:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T09:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T10:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T11:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T12:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T13:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T14:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T15:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T16:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T17:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T18:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T19:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T20:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T21:00:00 │    1 │     2 │  start │
    +│ ProblemExecutionEvent │ 2024-01-01T22:00:00 │    1 │     2 │  start │
    +└──────────────────────┴─────────────────────┴──────┴───────┴────────┘
    diff --git a/v0.28.3/modeler_guide/tips_and_tricks/index.html b/v0.28.3/modeler_guide/tips_and_tricks/index.html new file mode 100644 index 0000000000..f87adfebdb --- /dev/null +++ b/v0.28.3/modeler_guide/tips_and_tricks/index.html @@ -0,0 +1,2 @@ + +Tips and tricks · PowerSimulations.jl diff --git a/v0.28.3/quick_start_guide/index.html b/v0.28.3/quick_start_guide/index.html new file mode 100644 index 0000000000..d958f7f104 --- /dev/null +++ b/v0.28.3/quick_start_guide/index.html @@ -0,0 +1,2 @@ + +Quick Start Guide · PowerSimulations.jl

    Quick Start Guide

    Tip

    If you need to develop a dataset for a simulation check the PowerSystems.jl Tutorials on how to parse data and attach time series

    • Tutorial: If you are eager to run your first simulation visit the Solve a Day Ahead Market Scheduling Problem using PowerSimulations.jl tutorial
    diff --git a/v0.28.3/search/index.html b/v0.28.3/search/index.html new file mode 100644 index 0000000000..3c96b70633 --- /dev/null +++ b/v0.28.3/search/index.html @@ -0,0 +1,2 @@ + +Search · PowerSimulations.jl diff --git a/v0.28.3/search_index.js b/v0.28.3/search_index.js new file mode 100644 index 0000000000..d12f34d91f --- /dev/null +++ b/v0.28.3/search_index.js @@ -0,0 +1,3 @@ +var documenterSearchIndex = {"docs": +[{"location":"formulation_library/Network/#network_formulations","page":"Network","title":"Network Formulations","text":"","category":"section"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Network formulations are used to describe how the network and buses are handled when constructing constraints. The most common constraint decided by the network formulation is the supply-demand balance constraint. Available Network Models are:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Formulation Description\nCopperPlatePowerModel Copper plate connection between all components, i.e. infinite transmission capacity\nAreaBalancePowerModel Network model approximation to represent inter-area flow with each area represented as a single node\nPTDFPowerModel Uses the PTDF factor matrix to compute the fraction of power transferred in the network across the branches\nAreaPTDFPowerModel Uses the PTDF factor matrix to compute the fraction of power transferred in the network across the branches and balances power by Area instead of system-wide","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"PowerModels.jl available formulations:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Exact non-convex models: ACPPowerModel, ACRPowerModel, ACTPowerModel.\nLinear approximations: DCPPowerModel, NFAPowerModel.\nQuadratic approximations: DCPLLPowerModel, LPACCPowerModel\nQuadratic relaxations: SOCWRPowerModel, SOCWRConicPowerModel, SOCBFPowerModel, SOCBFConicPowerModel, QCRMPowerModel, QCLSPowerModel.\nSDP relaxations: SDPWRMPowerModel, SparseSDPWRMPowerModel.","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"All of these formulations are described in the PowerModels.jl documentation and will not be described here.","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"","category":"page"},{"location":"formulation_library/Network/#CopperPlatePowerModel","page":"Network","title":"CopperPlatePowerModel","text":"","category":"section"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"CopperPlatePowerModel","category":"page"},{"location":"formulation_library/Network/#PowerSimulations.CopperPlatePowerModel","page":"Network","title":"PowerSimulations.CopperPlatePowerModel","text":"Infinite capacity approximation of network flow to represent entire system with a single node.\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Variables:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"If Slack variables are enabled:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"SystemBalanceSlackUp:\nBounds: [0.0, ]\nDefault initial value: 0.0\nDefault proportional cost: 1e6\nSymbol: p^textslup\nSystemBalanceSlackDown:\nBounds: [0.0, ]\nDefault initial value: 0.0\nDefault proportional cost: 1e6\nSymbol: p^textsldn","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Objective:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Add a large proportional cost to the objective function if slack variables are used + (p^textslup + p^textsldn) cdot 10^6","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Expressions:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Adds p^textslup and p^textsldn terms to the respective active power balance expressions ActivePowerBalance created by this CopperPlatePowerModel network formulation.","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Constraints:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Adds the CopperPlateBalanceConstraint to balance the active power of all components available in the system","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"beginalign\n sum_c in textcomponents p_t^c = 0 quad forall t in 1 dots T\nendalign","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"","category":"page"},{"location":"formulation_library/Network/#AreaBalancePowerModel","page":"Network","title":"AreaBalancePowerModel","text":"","category":"section"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"AreaBalancePowerModel","category":"page"},{"location":"formulation_library/Network/#PowerSimulations.AreaBalancePowerModel","page":"Network","title":"PowerSimulations.AreaBalancePowerModel","text":"Approximation to represent inter-area flow with each area represented as a single node.\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Variables: If Slack variables are enabled:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"SystemBalanceSlackUp by area:\nBounds: [0.0, ]\nDefault initial value: 0.0\nDefault proportional cost: 1e6\nSymbol: p^textslup\nSystemBalanceSlackDown by area:\nBounds: [0.0, ]\nDefault initial value: 0.0\nDefault proportional cost: 1e6\nSymbol: p^textsldn","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Objective:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Adds p^textslup and p^textsldn terms to the respective active power balance expressions ActivePowerBalance per area.","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Expressions:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Creates ActivePowerBalance expressions for each area that then are used to balance active power for all buses within a single area.","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Constraints:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Adds the CopperPlateBalanceConstraint to balance the active power of all components available in an area.","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"beginalign\n sum_c in textcomponents_a p_t^c = 0 quad forall ain 1dots A t in 1 dots T\nendalign","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"","category":"page"},{"location":"formulation_library/Network/#PTDFPowerModel","page":"Network","title":"PTDFPowerModel","text":"","category":"section"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"PTDFPowerModel","category":"page"},{"location":"formulation_library/Network/#PowerSimulations.PTDFPowerModel","page":"Network","title":"PowerSimulations.PTDFPowerModel","text":"Linear active power approximation using the power transfer distribution factor PTDF matrix.\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Variables:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"If Slack variables are enabled:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"SystemBalanceSlackUp:\nBounds: [0.0, ]\nDefault initial value: 0.0\nDefault proportional cost: 1e6\nSymbol: p^textslup\nSystemBalanceSlackDown:\nBounds: [0.0, ]\nDefault initial value: 0.0\nDefault proportional cost: 1e6\nSymbol: p^textsldn","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Objective:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Add a large proportional cost to the objective function if slack variables are used + (p^textslup + p^textsldn) cdot 10^6","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Expressions:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Adds p^textslup and p^textsldn terms to the respective system-wide active power balance expressions ActivePowerBalance created by this CopperPlatePowerModel network formulation. In addition, it creates ActivePowerBalance expressions for each bus to be used in the calculation of branch flows.","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Constraints:","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"Adds the CopperPlateBalanceConstraint to balance the active power of all components available in the system","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"beginalign\n sum_c in textcomponents p_t^c = 0 quad forall t in 1 dots T\nendalign","category":"page"},{"location":"formulation_library/Network/","page":"Network","title":"Network","text":"In addition creates NodalBalanceActiveConstraint for HVDC buses balance, if DC components are connected to an HVDC network.","category":"page"},{"location":"modeler_guide/simulation_recorder/#Simulation-Recorder","page":"Simulation Recorder","title":"Simulation Recorder","text":"","category":"section"},{"location":"modeler_guide/simulation_recorder/","page":"Simulation Recorder","title":"Simulation Recorder","text":"PowerSimulations.jl provides the ability to record structured data as events during a simulation. These events can be post-processed to help debug problems.","category":"page"},{"location":"modeler_guide/simulation_recorder/","page":"Simulation Recorder","title":"Simulation Recorder","text":"By default only SimulationStepEvent and ProblemExecutionEvent are recorded. Here is an example.","category":"page"},{"location":"modeler_guide/simulation_recorder/","page":"Simulation Recorder","title":"Simulation Recorder","text":"Suppose a simulation is run in the directory ./output.","category":"page"},{"location":"modeler_guide/simulation_recorder/","page":"Simulation Recorder","title":"Simulation Recorder","text":"Assume that setup commands have been run:","category":"page"},{"location":"modeler_guide/simulation_recorder/","page":"Simulation Recorder","title":"Simulation Recorder","text":"using PowerSimulations\nconst PSI = PowerSimulations","category":"page"},{"location":"modeler_guide/simulation_recorder/","page":"Simulation Recorder","title":"Simulation Recorder","text":"Note that for all functions below you can optionally specify a function to filter events. The function must accept the event type and return true or false.","category":"page"},{"location":"modeler_guide/simulation_recorder/#Show-all-events-of-type-PSI.SimulationStepEvent","page":"Simulation Recorder","title":"Show all events of type PSI.SimulationStepEvent","text":"","category":"section"},{"location":"modeler_guide/simulation_recorder/","page":"Simulation Recorder","title":"Simulation Recorder","text":"julia> show_simulation_events(PSI.SimulationStepEvent, \"./output/aggregation/1\")\n┌─────────────────────┬─────────────────────┬──────┬────────┐\n│ name │ simulation_time │ step │ status │\n├─────────────────────┼─────────────────────┼──────┼────────┤\n│ SimulationStepEvent │ 2024-01-01T00:00:00 │ 1 │ start │\n│ SimulationStepEvent │ 2024-01-01T23:00:00 │ 1 │ done │\n│ SimulationStepEvent │ 2024-01-01T23:00:00 │ 2 │ start │\n│ SimulationStepEvent │ 2024-01-02T23:00:00 │ 2 │ done │\n└─────────────────────┴─────────────────────┴──────┴────────┘","category":"page"},{"location":"modeler_guide/simulation_recorder/#Show-events-of-type-PSI.ProblemExecutionEvent-for-a-specific-step-and-stage.","page":"Simulation Recorder","title":"Show events of type PSI.ProblemExecutionEvent for a specific step and stage.","text":"","category":"section"},{"location":"modeler_guide/simulation_recorder/","page":"Simulation Recorder","title":"Simulation Recorder","text":"show_simulation_events(\n PSI.ProblemExecutionEvent,\n \"./output/aggregation/1\",\n x -> x.step == 1 && x.stage == 2 && x.status == \"start\"\n)\n┌──────────────────────┬─────────────────────┬──────┬───────┬────────┐\n│ name │ simulation_time │ step │ stage │ status │\n├──────────────────────┼─────────────────────┼──────┼───────┼────────┤\n│ ProblemExecutionEvent │ 2024-01-01T00:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T00:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T01:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T02:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T03:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T04:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T05:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T06:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T07:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T08:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T09:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T10:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T11:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T12:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T13:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T14:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T15:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T16:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T17:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T18:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T19:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T20:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T21:00:00 │ 1 │ 2 │ start │\n│ ProblemExecutionEvent │ 2024-01-01T22:00:00 │ 1 │ 2 │ start │\n└──────────────────────┴─────────────────────┴──────┴───────┴────────┘","category":"page"},{"location":"modeler_guide/parallel_simulations/#Parallel-Simulations","page":"Parallel Simulations","title":"Parallel Simulations","text":"","category":"section"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"This section contains instructions to:","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Run a Simulation in Parallel on a local computer\nRun a Simulation in Parallel on an HPC","category":"page"},{"location":"modeler_guide/parallel_simulations/#Run-a-Simulation-in-Parallel-on-a-local-computer","page":"Parallel Simulations","title":"Run a Simulation in Parallel on a local computer","text":"","category":"section"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"This page describes how to split a simulation into partitions, run each partition in parallel, and then join the results.","category":"page"},{"location":"modeler_guide/parallel_simulations/#Setup","page":"Parallel Simulations","title":"Setup","text":"","category":"section"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Create a Julia script to build and run simulations. It must meet the requirements below. A full example is in the PowerSimulations repository in test/run_partitioned_simulation.jl.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Call using PowerSimulations.\nImplement a build function that matches the signature below. It must construct a Simulation, call build!, and then return the Simulation instance. It must throw an exception if the build fails.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"function build_simulation(\n output_dir::AbstractString,\n simulation_name::AbstractString,\n partitions::SimulationPartitions,\n index::Union{Nothing, Integer}=nothing,\n)","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Here is example code to construct the Simulation with these parameters:","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":" sim = Simulation(\n name=simulation_name,\n steps=partitions.num_steps,\n models=models,\n sequence=sequence,\n simulation_folder=output_dir,\n )\n status = build!(sim; partitions=partitions, index=index, serialize=isnothing(index))\n if status != PSI.SimulationBuildStatus.BUILT\n error(\"Failed to build simulation: status=$status\")\n end","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Implement an execute function that matches the signature below. It must throw an exception if the execute fails.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"function execute_simulation(sim, args...; kwargs...)\n status = execute!(sim)\n if status != PSI.RunStatus.SUCCESSFULLY_FINALIZED\n error(\"Simulation failed to execute: status=$status\")\n end\nend","category":"page"},{"location":"modeler_guide/parallel_simulations/#Execution","page":"Parallel Simulations","title":"Execution","text":"","category":"section"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"After loading your script, call the function run_parallel_simulation as shown below.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"This example splits a year-long simulation into weekly partitions for a total of 53 individual jobs and then runs them four at a time.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"julia> include(\"my_simulation.jl\")\njulia> run_parallel_simulation(\n build_simulation,\n execute_simulation,\n script=\"my_simulation.jl\",\n output_dir=\"my_simulation_output\",\n name=\"my_simulation\",\n num_steps=365,\n period=7,\n num_overlap_steps=1,\n num_parallel_processes=4,\n exeflags=\"--project=\",\n )","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"The final results will be in ./my_simulation_otuput/my_simulation","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Note the log files and results for each partition are located in ./my_simulation_otuput/my_simulation/simulation_partitions","category":"page"},{"location":"modeler_guide/parallel_simulations/#Run-a-Simulation-in-Parallel-on-an-HPC","page":"Parallel Simulations","title":"Run a Simulation in Parallel on an HPC","text":"","category":"section"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"This page describes how to split a simulation into partitions, run each partition in parallel on HPC compute nodes, and then join the results.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"These steps can be used on a local computer or any HPC supported by the submission software. Some steps may be specific to NREL's HPC Eagle cluster.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Note: Some instructions are preliminary and will change if functionality is moved to a new Julia package.","category":"page"},{"location":"modeler_guide/parallel_simulations/#Setup-2","page":"Parallel Simulations","title":"Setup","text":"","category":"section"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Create a conda environment and install the Python package NREL-jade: https://nrel.github.io/jade/installation.html. The rest of this page assumes that the environment is called jade.\nActivate the environment with conda activate jade.\nLocate the path to that conda environment. It will likely be ~/.conda-envs/jade or ~/.conda/envs/jade.\nLoad the Julia environment that you use to run simulations. Add the packages Conda and PyCall.\nSetup Conda to use the existing jade environment by running these commands:","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"julia> run(`conda create -n conda_jl python conda`)\njulia> ENV[\"CONDA_JL_HOME\"] = joinpath(ENV[\"HOME\"], \".conda-envs\", \"jade\") # change this to your path\npkg> build Conda","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Copy the code below into a Julia file called configure_parallel_simulation.jl. This is an interface to Jade through PyCall. It will be used to create a Jade configuration. (It may eventually be moved to a separate package.)","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"function configure_parallel_simulation(\n script::AbstractString,\n num_steps::Integer,\n num_period_steps::Integer;\n num_overlap_steps::Integer=0,\n project_path=nothing,\n simulation_name=\"simulation\",\n config_file=\"config.json\",\n force=false,\n)\n partitions = SimulationPartitions(num_steps, num_period_steps, num_overlap_steps)\n jgc = pyimport(\"jade.extensions.generic_command\")\n julia_cmd = isnothing(project_path) ? \"julia\" : \"julia --project=$project_path\"\n setup_command = \"$julia_cmd $script setup --simulation-name=$simulation_name \" *\n \"--num-steps=$num_steps --num-period-steps=$num_period_steps \" *\n \"--num-overlap-steps=$num_overlap_steps\"\n teardown_command = \"$julia_cmd $script join --simulation-name=$simulation_name\"\n config = jgc.GenericCommandConfiguration(\n setup_command=setup_command,\n teardown_command=teardown_command,\n )\n\n for i in 1:get_num_partitions(partitions)\n cmd = \"$julia_cmd $script execute --simulation-name=$simulation_name --index=$i\"\n job = jgc.GenericCommandParameters(command=cmd, name=\"execute-$i\")\n config.add_job(job)\n end\n\n config.dump(config_file, indent=2)\n println(\"Created Jade configuration in $config_file. \" *\n \"Run 'jade submit-jobs [options] $config_file' to execute them.\")\nend","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Create a Julia script to build and run simulations. It must meet the requirements below. A full example is in the PowerSimulations repository in test/run_partitioned_simulation.jl.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Call using PowerSimulations.\nImplement a build function that matches the signature below. It must construct a Simulation, call build!, and then return the Simulation instance. It must throw an exception if the build fails.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"function build_simulation(\n output_dir::AbstractString,\n simulation_name::AbstractString,\n partitions::SimulationPartitions,\n index::Union{Nothing, Integer}=nothing,\n)","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Here is example code to construct the Simulation with these parameters:","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":" sim = Simulation(\n name=simulation_name,\n steps=partitions.num_steps,\n models=models,\n sequence=sequence,\n simulation_folder=output_dir,\n )\n status = build!(sim; partitions=partitions, index=index, serialize=isnothing(index))\n if status != PSI.SimulationBuildStatus.BUILT\n error(\"Failed to build simulation: status=$status\")\n end","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Implement an execute function that matches the signature below. It must throw an exception if the execute fails.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"function execute_simulation(sim, args...; kwargs...)\n status = execute!(sim)\n if status != PSI.RunStatus.SUCCESSFULLY_FINALIZED\n error(\"Simulation failed to execute: status=$status\")\n end\nend","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Make the script runnable as a CLI command by including the following code at the bottom of the","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"file.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"function main()\n process_simulation_partition_cli_args(build_simulation, execute_simulation, ARGS...)\nend\n\nif abspath(PROGRAM_FILE) == @__FILE__\n main()\nend","category":"page"},{"location":"modeler_guide/parallel_simulations/#Execution-2","page":"Parallel Simulations","title":"Execution","text":"","category":"section"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Create a Jade configuration that defines the partitioned simulation jobs. Load your Julia environment.\nThis example splits a year-long simulation into weekly partitions for a total of 53 individual jobs.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"julia> include(\"configure_parallel_simulation.jl\")\njulia> num_steps = 365\njulia> period = 7\njulia> num_overlap_steps = 1\njulia> configure_parallel_simulation(\n \"my_simulation.jl\", # this is your build/execute script\n num_steps,\n period,\n num_overlap_steps=1,\n project_path=\".\", # This optionally specifies the Julia project environment to load.\n)\nCreated Jade configuration in config.json. Run 'jade submit-jobs [options] config.json' to execute them.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Exit Julia.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"View the configuration for accuracy.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"$ jade config show config.json","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Start an interactive session on a debug node. Do not submit the jobs on a login node! The submission step will run a full build of the simulation and that may consume too many CPU and memory resources for the login node.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"$ salloc -t 01:00:00 -N1 --account= --partition=debug","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Follow the instructions at https://nrel.github.io/jade/tutorial.html to submit the jobs. The example below will configure Jade to run each partition on its own compute node. Depending on the compute and memory constraints of your simulation, you may be able to pack more jobs on each node.\nAdjust the walltime as necessary.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"$ jade config hpc -c hpc_config.toml -t slurm --walltime=04:00:00 -a \n$ jade submit-jobs config.json --per-node-batch-size=1 -o output","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"If you are unsure about how much memory and CPU resources your simulation consumes, add these options:","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"$ jade submit-jobs config.json --per-node-batch-size=1 -o output --resource-monitor-type periodic --resource-monitor-interval 3","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Jade will create HTML plots of the resource utilization in output/stats. You may be able to customize --per-node-batch-size and --num-processes to finish the simulations more quickly.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Jade will run a final command to join the simulation partitions into one unified file. You can load the results as you normally would.","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"julia> results = SimulationResults(\"/job-outputs/\")","category":"page"},{"location":"modeler_guide/parallel_simulations/","page":"Parallel Simulations","title":"Parallel Simulations","text":"Note the log files and results for each partition are located in /job-outputs//simulation_partitions","category":"page"},{"location":"quick_start_guide/#Quick-Start-Guide","page":"Quick Start Guide","title":"Quick Start Guide","text":"","category":"section"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"Julia: If this is your first time using Julia visit our Introduction to Julia and the official Getting started with Julia.\nPackage Installation: If you want to install packages check the Package Manager instructions, or you can refer to the PowerSimulations installation instructions.\nPowerSystems: PowerSystems.jl manages the data and is a fundamental dependency of PowerSimulations.jl. Check the PowerSystems.jl Basics Tutorial and PowerSystems.jl documentation to understand how the inputs to the models are organized.\nDataset Library: If you don't have a data set to start using PowerSimulations.jl check the test systems provided in PowerSystemCaseBuilder.jl","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"tip: Tip\nIf you need to develop a dataset for a simulation check the PowerSystems.jl Tutorials on how to parse data and attach time series","category":"page"},{"location":"quick_start_guide/","page":"Quick Start Guide","title":"Quick Start Guide","text":"Tutorial: If you are eager to run your first simulation visit the Solve a Day Ahead Market Scheduling Problem using PowerSimulations.jl tutorial","category":"page"},{"location":"code_base_developer_guide/troubleshooting/#Troubleshooting-code-development","page":"Troubleshooting","title":"Troubleshooting code development","text":"","category":"section"},{"location":"formulation_library/Piecewise/#pwl_cost","page":"Piecewise Linear Cost","title":"Piecewise linear cost functions","text":"","category":"section"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"The choice for piecewise-linear (PWL) cost representation in PowerSimulations.jl is equivalent to the so-called λ-model from the paper The Impacts of Convex Piecewise Linear Cost Formulations on AC Optimal Power Flow. The SOS constraints in each model are only implemented if the data for PWL is not convex.","category":"page"},{"location":"formulation_library/Piecewise/#Special-Ordered-Set-(SOS)-Constraints","page":"Piecewise Linear Cost","title":"Special Ordered Set (SOS) Constraints","text":"","category":"section"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"A special ordered set (SOS) is an ordered set of variables used as an additional way to specify integrality conditions in an optimization model.","category":"page"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"Special Ordered Sets of type 1 (SOS1) are a set of variables, at most one of which can take a non-zero value, all others being at 0. They most frequently applications is in a a set of variables that are actually binary variables: in other words, we have to choose at most one from a set of possibilities.\nSpecial Ordered Sets of type 2 (SOS2) are an ordered set of non-negative variables, of which at most two can be non-zero, and if two are non-zero these must be consecutive in their ordering. Special Ordered Sets of type 2 are typically used to model non-linear functions of a variable in a linear model, such as non-convex quadratic functions using PWL functions.","category":"page"},{"location":"formulation_library/Piecewise/#Standard-representation-of-PWL-costs","page":"Piecewise Linear Cost","title":"Standard representation of PWL costs","text":"","category":"section"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"Piecewise-linear costs are defined by a sequence of points representing the line segments for each generator: (P_k^textmax C_k) on which we assume C_k is the cost of generating P_k^textmax power, and k in 1dots K are the number of segments each generator cost function has.","category":"page"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"note: Note\nPowerSystems has more options to specify cost functions for each thermal unit. Independent of which form of the cost data is provided, PowerSimulations.jl will internally transform the data to use the λ-model formulation. See TODO: ADD PSY COST DOCS for more information.","category":"page"},{"location":"formulation_library/Piecewise/#Commitment-formulation","page":"Piecewise Linear Cost","title":"Commitment formulation","text":"","category":"section"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"With this the standard representation of PWL costs for a thermal unit commitment is given by:","category":"page"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"beginalign*\n min_substackp_t delta_kt\n sum_t in mathcalT left(sum_k in mathcalK C_kt delta_kt right) Delta t\n sum_k in mathcalK P_k^textmax delta_kt = p_t forall t in mathcalT\n sum_k in mathcalK delta_kt = u_t forall t in mathcalT\n P^textmin u_t leq p_t leq P^textmax u_t forall t in mathcalT\n left delta_1t dots delta_Kt right in textSOS_2 forall t in mathcalT\nendalign*","category":"page"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"on which delta_kt in 01 is the interpolation variable, p is the active power of the generator and u in 01 is the commitment variable of the generator. In the case of a PWL convex costs, i.e. increasing slopes, the SOS constraint is omitted.","category":"page"},{"location":"formulation_library/Piecewise/#Dispatch-formulation","page":"Piecewise Linear Cost","title":"Dispatch formulation","text":"","category":"section"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"beginalign*\n min_substackp_t delta_kt\n sum_t in mathcalT left(sum_k in mathcalK C_kt delta_kt right) Delta t\n sum_k in mathcalK P_k^textmax delta_kt = p_t forall t in mathcalT\n sum_k in mathcalK delta_kt = texton_t forall t in mathcalT\n P^textmin texton_t leq p_t leq P^textmax texton_t forall t in mathcalT\n left delta_it dots delta_kt right in textSOS_2 forall t in mathcalT\nendalign*","category":"page"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"on which delta_kt in 01 is the interpolation variable, p is the active power of the generator and texton in 01 is the parameter that decides if the generator is available or not. In the case of a PWL convex costs, i.e. increasing slopes, the SOS constraint is omitted.","category":"page"},{"location":"formulation_library/Piecewise/#Compact-representation-of-PWL-costs","page":"Piecewise Linear Cost","title":"Compact representation of PWL costs","text":"","category":"section"},{"location":"formulation_library/Piecewise/#Commitment-Formulation","page":"Piecewise Linear Cost","title":"Commitment Formulation","text":"","category":"section"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"beginalign*\n min_substackp_t delta_kt\n sum_t in mathcalT left(sum_k in mathcalK C_kt delta_kt right) Delta t\n sum_k in mathcalK P_k^textmax delta_kt = P^textmin u_t + Delta p_t forall t in mathcalT\n sum_k in mathcalK delta_kt = u_t forall t in mathcalT\n 0 leq Delta p_t leq left( P^textmax - P^textmin right)u_t forall t in mathcalT\n left delta_it dots delta_kt right in textSOS_2 forall t in mathcalT\nendalign*","category":"page"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"on which delta_kt in 01 is the interpolation variable, Delta p is the active power of the generator above the minimum power and u in 01 is the commitment variable of the generator. In the case of a PWL convex costs, i.e. increasing slopes, the SOS constraint is omitted.","category":"page"},{"location":"formulation_library/Piecewise/#Dispatch-formulation-2","page":"Piecewise Linear Cost","title":"Dispatch formulation","text":"","category":"section"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"beginalign*\n min_substackp_t delta_kt\n sum_t in mathcalT left(sum_k in mathcalK C_kt delta_kt right) Delta t\n sum_k in mathcalK P_k^textmax delta_kt = P^textmin texton_t + Delta p_t forall t in mathcalT\n sum_k in mathcalK delta_kt = texton_t forall t in mathcalT\n 0 leq Delta p_t leq left( P^textmax - P^textmin right)texton_t forall t in mathcalT\n left delta_it dots delta_kt right in textSOS_2 forall t in mathcalT\nendalign*","category":"page"},{"location":"formulation_library/Piecewise/","page":"Piecewise Linear Cost","title":"Piecewise Linear Cost","text":"on which delta_kt in 01 is the interpolation variable, Delta p is the active power of the generator above the minimum power and u in 01 is the commitment variable of the generator. In the case of a PWL convex costs, i.e. increasing slopes, the SOS constraint is omitted.","category":"page"},{"location":"tutorials/decision_problem/#op_problem_tutorial","page":"Single-step Problem","title":"Operations problems with PowerSimulations.jl","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"Originally Contributed by: Clayton Barrows","category":"page"},{"location":"tutorials/decision_problem/#Introduction","page":"Single-step Problem","title":"Introduction","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"PowerSimulations.jl supports the construction and solution of optimal power system scheduling problems (Operations Problems). Operations problems form the fundamental building blocks for sequential simulations. This example shows how to specify and customize a the mathematics that will be applied to the data with an ProblemTemplate, build and execute an DecisionModel, and access the results.","category":"page"},{"location":"tutorials/decision_problem/#Load-Packages","page":"Single-step Problem","title":"Load Packages","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"using PowerSystems\nusing PowerSimulations\nusing HydroPowerSimulations\nusing PowerSystemCaseBuilder\nusing HiGHS # solver\nusing Dates","category":"page"},{"location":"tutorials/decision_problem/#Data","page":"Single-step Problem","title":"Data","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"note: Note\nPowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"sys = build_system(PSISystems, \"modified_RTS_GMLC_DA_sys\")","category":"page"},{"location":"tutorials/decision_problem/#Define-a-problem-specification-with-an-ProblemTemplate","page":"Single-step Problem","title":"Define a problem specification with an ProblemTemplate","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"You can create an empty template with:","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"template_uc = ProblemTemplate()","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"Now, you can add a DeviceModel for each device type to create an assignment between PowerSystems device types and the subtypes of AbstractDeviceFormulation. PowerSimulations has a variety of different AbstractDeviceFormulation subtypes that can be applied to different PowerSystems device types, each dispatching to different methods for populating optimization problem objectives, variables, and constraints. Documentation on the formulation options for various devices can be found in the formulation library docs","category":"page"},{"location":"tutorials/decision_problem/#Branch-Formulations","page":"Single-step Problem","title":"Branch Formulations","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"Here is an example of relatively standard branch formulations. Other formulations allow for selective enforcement of transmission limits and greater control on transformer settings.","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"set_device_model!(template_uc, Line, StaticBranch)\nset_device_model!(template_uc, Transformer2W, StaticBranch)\nset_device_model!(template_uc, TapTransformer, StaticBranch)","category":"page"},{"location":"tutorials/decision_problem/#Injection-Device-Formulations","page":"Single-step Problem","title":"Injection Device Formulations","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"Here we define template entries for all devices that inject or withdraw power on the network. For each device type, we can define a distinct AbstractDeviceFormulation. In this case, we're defining a basic unit commitment model for thermal generators, curtailable renewable generators, and fixed dispatch (net-load reduction) formulations for HydroDispatch and RenewableNonDispatch devices.","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"set_device_model!(template_uc, ThermalStandard, ThermalStandardUnitCommitment)\nset_device_model!(template_uc, RenewableDispatch, RenewableFullDispatch)\nset_device_model!(template_uc, PowerLoad, StaticPowerLoad)\nset_device_model!(template_uc, HydroDispatch, HydroDispatchRunOfRiver)\nset_device_model!(template_uc, RenewableNonDispatch, FixedOutput)","category":"page"},{"location":"tutorials/decision_problem/#Service-Formulations","page":"Single-step Problem","title":"Service Formulations","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"We have two VariableReserve types, parameterized by their direction. So, similar to creating DeviceModels, we can create ServiceModels. The primary difference being that DeviceModel objects define how constraints get created, while ServiceModel objects define how constraints get modified.","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"set_service_model!(template_uc, VariableReserve{ReserveUp}, RangeReserve)\nset_service_model!(template_uc, VariableReserve{ReserveDown}, RangeReserve)","category":"page"},{"location":"tutorials/decision_problem/#Network-Formulations","page":"Single-step Problem","title":"Network Formulations","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"Finally, we can define the transmission network specification that we'd like to model. For simplicity, we'll choose a copper plate formulation. But there are dozens of specifications available through an integration with PowerModels.jl. Note that many formulations will require appropriate data and may be computationally intractable","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"set_network_model!(template_uc, NetworkModel(CopperPlatePowerModel))","category":"page"},{"location":"tutorials/decision_problem/#DecisionModel","page":"Single-step Problem","title":"DecisionModel","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"Now that we have a System and an ProblemTemplate, we can put the two together to create an DecisionModel that we solve.","category":"page"},{"location":"tutorials/decision_problem/#Optimizer","page":"Single-step Problem","title":"Optimizer","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"It's most convenient to define an optimizer instance upfront and pass it into the DecisionModel constructor. For this example, we can use the free HiGHS solver with a relatively relaxed MIP gap (ratioGap) setting to improve speed.","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"solver = optimizer_with_attributes(HiGHS.Optimizer, \"mip_rel_gap\" => 0.5)","category":"page"},{"location":"tutorials/decision_problem/#Build-an-DecisionModel","page":"Single-step Problem","title":"Build an DecisionModel","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"The construction of an DecisionModel essentially applies an ProblemTemplate to System data to create a JuMP model.","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"problem = DecisionModel(template_uc, sys; optimizer = solver, horizon = Hour(24))\nbuild!(problem, output_dir = mktempdir())","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"tip: Tip\nThe principal component of the DecisionModel is the JuMP model. But you can serialize to a file using the following command: serialize_optimization_model(problem, save_path)Keep in mind that if the setting \"storevariablenames\" is set to False then the file won't show the model's names.","category":"page"},{"location":"tutorials/decision_problem/#Solve-an-DecisionModel","page":"Single-step Problem","title":"Solve an DecisionModel","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"solve!(problem)","category":"page"},{"location":"tutorials/decision_problem/#Results-Inspection","page":"Single-step Problem","title":"Results Inspection","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"PowerSimulations collects the DecisionModel results into a OptimizationProblemResults struct:","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"res = OptimizationProblemResults(problem)","category":"page"},{"location":"tutorials/decision_problem/#Optimizer-Stats","page":"Single-step Problem","title":"Optimizer Stats","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"The optimizer summary is included","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"get_optimizer_stats(res)","category":"page"},{"location":"tutorials/decision_problem/#Objective-Function-Value","page":"Single-step Problem","title":"Objective Function Value","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"get_objective_value(res)","category":"page"},{"location":"tutorials/decision_problem/#Variable,-Parameter,-Auxillary-Variable,-Dual,-and-Expression-Values","page":"Single-step Problem","title":"Variable, Parameter, Auxillary Variable, Dual, and Expression Values","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"The solution value data frames for variables, parameters, auxillary variables, duals and expressions can be accessed using the read_ methods:","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"read_variables(res)","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"Or, you can read a single parameter values for parameters that exist in the results.","category":"page"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"list_parameter_names(res)\nread_parameter(res, \"ActivePowerTimeSeriesParameter__RenewableDispatch\")","category":"page"},{"location":"tutorials/decision_problem/#Plotting","page":"Single-step Problem","title":"Plotting","text":"","category":"section"},{"location":"tutorials/decision_problem/","page":"Single-step Problem","title":"Single-step Problem","text":"Take a look at the plotting capabilities in PowerGraphics.jl","category":"page"},{"location":"modeler_guide/tips_and_tricks/#Tips-and-tricks","page":"Tips and tricks","title":"Tips and tricks","text":"","category":"section"},{"location":"formulation_library/ThermalGen/#ThermalGen-Formulations","page":"Thermal Generation","title":"ThermalGen Formulations","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Thermal generation formulations define the optimization models that describe thermal units mathematical model in different operational settings, such as economic dispatch and unit commitment.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"note: Note\nThermal units can include multiple terms added to the objective function, such as no-load cost, turn-on/off cost, fixed cost and variable cost. In addition, variable costs can be linear, quadratic or piecewise-linear formulations. These methods are properly described in the cost function page. ","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"note: Note\nThe use of reactive power variables and constraints will depend on the network model used, i.e., whether it uses (or does not use) reactive power. If the network model is purely active power-based, reactive power variables and related constraints are not created.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"note: Note\nReserve variables for services are not included in the formulation, albeit their inclusion change the variables, expressions, constraints and objective functions created. A detailed description of the implications in the optimization models is described in the Service formulation section.","category":"page"},{"location":"formulation_library/ThermalGen/#Table-of-Contents","page":"Thermal Generation","title":"Table of Contents","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ThermalBasicDispatch\nThermalDispatchNoMin\nThermalCompactDispatch\nThermalStandardDispatch\nThermalBasicUnitCommitment\nThermalBasicCompactUnitCommitment\nThermalStandardUnitCommitment\nThermalMultiStartUnitCommitment\nValid configurations","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"","category":"page"},{"location":"formulation_library/ThermalGen/#ThermalBasicDispatch","page":"Thermal Generation","title":"ThermalBasicDispatch","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ThermalBasicDispatch","category":"page"},{"location":"formulation_library/ThermalGen/#PowerSimulations.ThermalBasicDispatch","page":"Thermal Generation","title":"PowerSimulations.ThermalBasicDispatch","text":"Formulation type to enable basic dispatch without any intertemporal (ramp) constraints\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ActivePowerVariable:\nBounds: [0.0, ]\nSymbol: p^textth\nReactivePowerVariable:\nBounds: [0.0, ]\nSymbol: q^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"P^textthmin = PowerSystems.get_active_power_limits(device).min\nP^textthmax = PowerSystems.get_active_power_limits(device).max\nQ^textthmin = PowerSystems.get_reactive_power_limits(device).min\nQ^textthmax = PowerSystems.get_reactive_power_limits(device).max","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Objective:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Adds p^textth to the ActivePowerBalance expression and q^textth to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n P^textthmin le p^textth_t le P^textthmax quad forall tin 1 dots T \n Q^textthmin le q^textth_t le Q^textthmax quad forall tin 1 dots T \nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"","category":"page"},{"location":"formulation_library/ThermalGen/#ThermalDispatchNoMin","page":"Thermal Generation","title":"ThermalDispatchNoMin","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ThermalDispatchNoMin","category":"page"},{"location":"formulation_library/ThermalGen/#PowerSimulations.ThermalDispatchNoMin","page":"Thermal Generation","title":"PowerSimulations.ThermalDispatchNoMin","text":"Formulation type to enable basic dispatch without any intertemporal constraints and relaxed minimum generation. May not work with non-convex PWL cost definitions\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ActivePowerVariable:\nBounds: [0.0, ]\nSymbol: p^textth\nReactivePowerVariable:\nBounds: [0.0, ]\nSymbol: q^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"P^textthmax = PowerSystems.get_active_power_limits(device).max\nQ^textthmin = PowerSystems.get_reactive_power_limits(device).min\nQ^textthmax = PowerSystems.get_reactive_power_limits(device).max","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Objective:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Adds p^textth to the ActivePowerBalance expression and q^textth to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign\n 0 le p^textth_t le P^textthmax quad forall tin 1 dots T \n Q^textthmin le q^textth_t le Q^textthmax quad forall tin 1 dots T \nendalign","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"","category":"page"},{"location":"formulation_library/ThermalGen/#ThermalCompactDispatch","page":"Thermal Generation","title":"ThermalCompactDispatch","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ThermalCompactDispatch","category":"page"},{"location":"formulation_library/ThermalGen/#PowerSimulations.ThermalCompactDispatch","page":"Thermal Generation","title":"PowerSimulations.ThermalCompactDispatch","text":"Formulation type to enable thermal compact dispatch\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"PowerAboveMinimumVariable:\nBounds: [0.0, ]\nSymbol: Delta p^textth\nReactivePowerVariable:\nBounds: [0.0, ]\nSymbol: q^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Auxiliary Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"PowerOutput:\nSymbol: P^textth\nDefinition: P^textth = texton^textthP^textmin + Delta p^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"P^textthmin = PowerSystems.get_active_power_limits(device).min\nP^textthmax = PowerSystems.get_active_power_limits(device).max\nQ^textthmin = PowerSystems.get_reactive_power_limits(device).min\nQ^textthmax = PowerSystems.get_reactive_power_limits(device).max\nR^textthup = PowerSystems.get_ramp_limits(device).up\nR^textthdn = PowerSystems.get_ramp_limits(device).down","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Variable Value Parameters:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"texton^textth: Used in feedforwards to define if the unit is on/off at each time-step from another problem. If no feedforward is used, the parameter takes a {0,1} value if the unit is available or not.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Objective:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Adds texton^textthP^textthmin + Delta p^textth to the ActivePowerBalance expression and q^textth to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. It also implements ramp constraints for the active power variable.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n 0 le Delta p^textth_t le texton^textth_tleft(P^textthmax - P^textthminright) quad forall tin 1 dots T \n texton^textth_t Q^textthmin le q^textth_t le texton^textth_t Q^textthmax quad forall tin 1 dots T \n -R^textthdn le Delta p_1^textth - Delta p^textth init le R^textthup \n -R^textthdn le Delta p_t^textth - Delta p_t-1^textth le R^textthup quad forall tin 2 dots T\nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"","category":"page"},{"location":"formulation_library/ThermalGen/#ThermalStandardDispatch","page":"Thermal Generation","title":"ThermalStandardDispatch","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ThermalStandardDispatch","category":"page"},{"location":"formulation_library/ThermalGen/#PowerSimulations.ThermalStandardDispatch","page":"Thermal Generation","title":"PowerSimulations.ThermalStandardDispatch","text":"Formulation type to enable standard dispatch with a range and enforce intertemporal ramp constraints\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ActivePowerVariable:\nBounds: [0.0, ]\nSymbol: p^textth\nReactivePowerVariable:\nBounds: [0.0, ]\nSymbol: q^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"P^textthmin = PowerSystems.get_active_power_limits(device).min\nP^textthmax = PowerSystems.get_active_power_limits(device).max\nQ^textthmin = PowerSystems.get_reactive_power_limits(device).min\nQ^textthmax = PowerSystems.get_reactive_power_limits(device).max\nR^textthup = PowerSystems.get_ramp_limits(device).up\nR^textthdn = PowerSystems.get_ramp_limits(device).down","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Objective:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Adds p^textth to the ActivePowerBalance expression and q^textth to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n P^textthmin le p^textth_t le P^textthmax quad forall tin 1 dots T \n Q^textthmin le q^textth_t le Q^textthmax quad forall tin 1 dots T \n -R^textthdn le p_1^textth - p^textth init le R^textthup \n -R^textthdn le p_t^textth - p_t-1^textth le R^textthup quad forall tin 2 dots T\nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"","category":"page"},{"location":"formulation_library/ThermalGen/#ThermalBasicUnitCommitment","page":"Thermal Generation","title":"ThermalBasicUnitCommitment","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ThermalBasicUnitCommitment","category":"page"},{"location":"formulation_library/ThermalGen/#PowerSimulations.ThermalBasicUnitCommitment","page":"Thermal Generation","title":"PowerSimulations.ThermalBasicUnitCommitment","text":"Formulation type to enable basic unit commitment representation without any intertemporal (ramp, min on/off time) constraints\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ActivePowerVariable:\nBounds: [0.0, ]\nSymbol: p^textth\nReactivePowerVariable:\nBounds: [0.0, ]\nSymbol: q^textth\nOnVariable:\nBounds: 01\nSymbol: u_t^textth\nStartVariable:\nBounds: 01\nSymbol: v_t^textth\nStopVariable:\nBounds: 01\nSymbol: w_t^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"P^textthmin = PowerSystems.get_active_power_limits(device).min\nP^textthmax = PowerSystems.get_active_power_limits(device).max\nQ^textthmin = PowerSystems.get_reactive_power_limits(device).min\nQ^textthmax = PowerSystems.get_reactive_power_limits(device).max","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Objective:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Adds p^textth to the ActivePowerBalance expression and q^textth to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. In addition, it creates the commitment constraint to turn on/off the device.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n u_t^textth P^textthmin le p^textth_t le u_t^textth P^textthmax quad forall tin 1 dots T \n u_t^textth Q^textthmin le q^textth_t le u_t^textth Q^textthmax quad forall tin 1 dots T \n u_1^textth = u^textthinit + v_1^textth - w_1^textth \n u_t^textth = u_t-1^textth + v_t^textth - w_t^textth quad forall t in 2dotsT \n v_t^textth + w_t^textth le 1 quad forall t in 1dotsT\nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"","category":"page"},{"location":"formulation_library/ThermalGen/#ThermalBasicCompactUnitCommitment","page":"Thermal Generation","title":"ThermalBasicCompactUnitCommitment","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ThermalBasicCompactUnitCommitment","category":"page"},{"location":"formulation_library/ThermalGen/#PowerSimulations.ThermalBasicCompactUnitCommitment","page":"Thermal Generation","title":"PowerSimulations.ThermalBasicCompactUnitCommitment","text":"Formulation type to enable thermal compact commitment without intertemporal (ramp, min on/off time) constraints\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"PowerAboveMinimumVariable:\nBounds: [0.0, ]\nSymbol: Delta p^textth\nReactivePowerVariable:\nBounds: [0.0, ]\nSymbol: q^textth\nOnVariable:\nBounds: 01\nSymbol: u_t^textth\nStartVariable:\nBounds: 01\nSymbol: v_t^textth\nStopVariable:\nBounds: 01\nSymbol: w_t^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Auxiliary Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"PowerOutput:\nSymbol: P^textth\nDefinition: P^textth = u^textthP^textmin + Delta p^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"P^textthmin = PowerSystems.get_active_power_limits(device).min\nP^textthmax = PowerSystems.get_active_power_limits(device).max\nQ^textthmin = PowerSystems.get_reactive_power_limits(device).min\nQ^textthmax = PowerSystems.get_reactive_power_limits(device).max","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Objective:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Adds u^textthP^textthmin + Delta p^textth to the ActivePowerBalance expression and q^textth to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. In addition, it creates the commitment constraint to turn on/off the device.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n 0 le Delta p^textth_t le u^textth_tleft(P^textthmax - P^textthminright) quad forall tin 1 dots T \n u_t^textth Q^textthmin le q^textth_t le u_t^textth Q^textthmax quad forall tin 1 dots T \n u_1^textth = u^textthinit + v_1^textth - w_1^textth \n u_t^textth = u_t-1^textth + v_t^textth - w_t^textth quad forall t in 2dotsT \n v_t^textth + w_t^textth le 1 quad forall t in 1dotsT\nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"","category":"page"},{"location":"formulation_library/ThermalGen/#ThermalCompactUnitCommitment","page":"Thermal Generation","title":"ThermalCompactUnitCommitment","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ThermalCompactUnitCommitment","category":"page"},{"location":"formulation_library/ThermalGen/#PowerSimulations.ThermalCompactUnitCommitment","page":"Thermal Generation","title":"PowerSimulations.ThermalCompactUnitCommitment","text":"Formulation type to enable thermal compact commitment\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"PowerAboveMinimumVariable:\nBounds: [0.0, ]\nSymbol: Delta p^textth\nReactivePowerVariable:\nBounds: [0.0, ]\nSymbol: q^textth\nOnVariable:\nBounds: 01\nSymbol: u_t^textth\nStartVariable:\nBounds: 01\nSymbol: v_t^textth\nStopVariable:\nBounds: 01\nSymbol: w_t^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Auxiliary Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"PowerOutput:\nSymbol: P^textth\nDefinition: P^textth = u^textthP^textmin + Delta p^textth\nTimeDurationOn:\nSymbol: V_t^textth\nDefinition: Computed post optimization by adding consecutive turned on variable u_t^textth\nTimeDurationOff:\nSymbol: W_t^textth\nDefinition: Computed post optimization by adding consecutive turned off variable 1 - u_t^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"P^textthmin = PowerSystems.get_active_power_limits(device).min\nP^textthmax = PowerSystems.get_active_power_limits(device).max\nQ^textthmin = PowerSystems.get_reactive_power_limits(device).min\nQ^textthmax = PowerSystems.get_reactive_power_limits(device).max\nR^textthup = PowerSystems.get_ramp_limits(device).up\nR^textthdn = PowerSystems.get_ramp_limits(device).down\nD^textminup = PowerSystems.get_time_limits(device).up\nD^textmindn = PowerSystems.get_time_limits(device).down","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Objective:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Adds u^textthP^textthmin + Delta p^textth to the ActivePowerBalance expression and q^textth to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. It also creates the commitment constraint to turn on/off the device.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n 0 le Delta p^textth_t le u^textth_tleft(P^textthmax - P^textthminright) quad forall tin 1 dots T \n u_t^textth Q^textthmin le q^textth_t le u_t^textth Q^textthmax quad forall tin 1 dots T \n -R^textthdn le Delta p_1^textth - Delta p^textth init le R^textthup \n -R^textthdn le Delta p_t^textth - Delta p_t-1^textth le R^textthup quad forall tin 2 dots T \n u_1^textth = u^textthinit + v_1^textth - w_1^textth \n u_t^textth = u_t-1^textth + v_t^textth - w_t^textth quad forall t in 2dotsT \n v_t^textth + w_t^textth le 1 quad forall t in 1dotsT \nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"In addition, this formulation adds duration constraints, i.e. minimum-up time and minimum-down time constraints. The duration constraints are added over the start times looking backwards.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"The duration times D^textminup and D^textmindn are processed to be used in multiple of the time-steps, given the resolution of the specific problem. In addition, parameters D^textinitup and D^textinitdn are used to identify how long the unit was on or off, respectively, before the simulation started.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Minimum up-time constraint for t in 1dots T:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n textIf t leq D^textminup - D^textinitup text and D^textinitup 0 \n 1 + sum_i=t-D^textminup + 1^t v_i^textth leq u_t^textth quad text(for i text in the set of time steps) \n textOtherwise \n sum_i=t-D^textminup + 1^t v_i^textth leq u_t^textth \nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Minimum down-time constraint for t in 1dots T:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n textIf t leq D^textmindn - D^textinitdn text and D^textinitup 0 \n 1 + sum_i=t-D^textmindn + 1^t w_i^textth leq 1 - u_t^textth quad text(for i text in the set of time steps) \n textOtherwise \n sum_i=t-D^textmindn + 1^t w_i^textth leq 1 - u_t^textth\nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"","category":"page"},{"location":"formulation_library/ThermalGen/#ThermalStandardUnitCommitment","page":"Thermal Generation","title":"ThermalStandardUnitCommitment","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ThermalStandardUnitCommitment","category":"page"},{"location":"formulation_library/ThermalGen/#PowerSimulations.ThermalStandardUnitCommitment","page":"Thermal Generation","title":"PowerSimulations.ThermalStandardUnitCommitment","text":"Formulation type to enable standard unit commitment with intertemporal constraints and simplified startup profiles\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ActivePowerVariable:\nBounds: [0.0, ]\nSymbol: p^textth\nReactivePowerVariable:\nBounds: [0.0, ]\nSymbol: q^textth\nOnVariable:\nBounds: 01\nSymbol: u_t^textth\nStartVariable:\nBounds: 01\nSymbol: v_t^textth\nStopVariable:\nBounds: 01\nSymbol: w_t^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Auxiliary Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"TimeDurationOn:\nSymbol: V_t^textth\nDefinition: Computed post optimization by adding consecutive turned on variable u_t^textth\nTimeDurationOff:\nSymbol: W_t^textth\nDefinition: Computed post optimization by adding consecutive turned off variable 1 - u_t^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"P^textthmin = PowerSystems.get_active_power_limits(device).min\nP^textthmax = PowerSystems.get_active_power_limits(device).max\nQ^textthmin = PowerSystems.get_reactive_power_limits(device).min\nQ^textthmax = PowerSystems.get_reactive_power_limits(device).max\nR^textthup = PowerSystems.get_ramp_limits(device).up\nR^textthdn = PowerSystems.get_ramp_limits(device).down\nD^textminup = PowerSystems.get_time_limits(device).up\nD^textmindn = PowerSystems.get_time_limits(device).down","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Objective:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Adds p^textth to the ActivePowerBalance expression and q^textth to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. It also creates the commitment constraint to turn on/off the device.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n u^textth_t P^textthmin le p^textth_t le u^textth_t P^textthmax quad forall tin 1 dots T \n u_t^textth Q^textthmin le q^textth_t le u_t^textth Q^textthmax quad forall tin 1 dots T \n -R^textthdn le p_1^textth - p^textth init le R^textthup \n -R^textthdn le p_t^textth - p_t-1^textth le R^textthup quad forall tin 2 dots T \n u_1^textth = u^textthinit + v_1^textth - w_1^textth \n u_t^textth = u_t-1^textth + v_t^textth - w_t^textth quad forall t in 2dotsT \n v_t^textth + w_t^textth le 1 quad forall t in 1dotsT \nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"In addition, this formulation adds duration constraints, i.e. minimum-up time and minimum-down time constraints. The duration constraints are added over the start times looking backwards.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"The duration times D^textminup and D^textmindn are processed to be used in multiple of the time-steps, given the resolution of the specific problem. In addition, parameters D^textinitup and D^textinitdn are used to identify how long the unit was on or off, respectively, before the simulation started.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Minimum up-time constraint for t in 1dots T:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n textIf t leq D^textminup - D^textinitup text and D^textinitup 0 \n 1 + sum_i=t-D^textminup + 1^t v_i^textth leq u_t^textth quad text(for i text in the set of time steps) \n textOtherwise \n sum_i=t-D^textminup + 1^t v_i^textth leq u_t^textth \nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Minimum down-time constraint for t in 1dots T:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n textIf t leq D^textmindn - D^textinitdn text and D^textinitup 0 \n 1 + sum_i=t-D^textmindn + 1^t w_i^textth leq 1 - u_t^textth quad text(for i text in the set of time steps) \n textOtherwise \n sum_i=t-D^textmindn + 1^t w_i^textth leq 1 - u_t^textth\nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"","category":"page"},{"location":"formulation_library/ThermalGen/#ThermalMultiStartUnitCommitment","page":"Thermal Generation","title":"ThermalMultiStartUnitCommitment","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"ThermalMultiStartUnitCommitment","category":"page"},{"location":"formulation_library/ThermalGen/#PowerSimulations.ThermalMultiStartUnitCommitment","page":"Thermal Generation","title":"PowerSimulations.ThermalMultiStartUnitCommitment","text":"Formulation type to enable pg-lib commitment formulation with startup/shutdown profiles\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"PowerAboveMinimumVariable:\nBounds: [0.0, ]\nSymbol: Delta p^textth\nReactivePowerVariable:\nBounds: [0.0, ]\nSymbol: q^textth\nOnVariable:\nBounds: 01\nSymbol: u_t^textth\nStartVariable:\nBounds: 01\nSymbol: v_t^textth\nStopVariable:\nBounds: 01\nSymbol: w_t^textth\nColdStartVariable:\nBounds: 01\nSymbol: x_t^textth\nWarmStartVariable:\nBounds: 01\nSymbol: y_t^textth\nHotStartVariable:\nBounds: 01\nSymbol: z_t^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Auxiliary Variables:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"PowerOutput:\nSymbol: P^textth\nDefinition: P^textth = u^textthP^textmin + Delta p^textth\nTimeDurationOn:\nSymbol: V_t^textth\nDefinition: Computed post optimization by adding consecutive turned on variable u_t^textth\nTimeDurationOff:\nSymbol: W_t^textth\nDefinition: Computed post optimization by adding consecutive turned off variable 1 - u_t^textth","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"P^textthmin = PowerSystems.get_active_power_limits(device).min\nP^textthmax = PowerSystems.get_active_power_limits(device).max\nQ^textthmin = PowerSystems.get_reactive_power_limits(device).min\nQ^textthmax = PowerSystems.get_reactive_power_limits(device).max\nR^textthup = PowerSystems.get_ramp_limits(device).up\nR^textthdn = PowerSystems.get_ramp_limits(device).down\nD^textminup = PowerSystems.get_time_limits(device).up\nD^textmindn = PowerSystems.get_time_limits(device).down\nD^textcold = PowerSystems.get_start_time_limits(device).cold\nD^textwarm = PowerSystems.get_start_time_limits(device).warm\nD^texthot = PowerSystems.get_start_time_limits(device).hot\nP^textthstartup = PowerSystems.get_power_trajectory(device).startup\nP^textth shdown = PowerSystems.get_power_trajectory(device).shutdown","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Objective:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Add a cost to the objective function depending on the defined cost structure of the thermal unit by adding it to its ProductionCostExpression.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Adds u^textthP^textthmin + Delta p^textth to the ActivePowerBalance expression and q^textth to the ReactivePowerBalance, to be used in the supply-balance constraint depending on the network model used.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"For each thermal unit creates the range constraints for its active and reactive power depending on its static parameters. It also creates the commitment constraint to turn on/off the device.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n 0 le Delta p^textth_t le u^textth_tleft(P^textthmax - P^textthminright) quad forall tin 1 dots T \n u_t^textth Q^textthmin le q^textth_t le u_t^textth Q^textthmax quad forall tin 1 dots T \n -R^textthdn le Delta p_1^textth - Delta p^textth init le R^textthup \n -R^textthdn le Delta p_t^textth - Delta p_t-1^textth le R^textthup quad forall tin 2 dots T \n u_1^textth = u^textthinit + v_1^textth - w_1^textth \n u_t^textth = u_t-1^textth + v_t^textth - w_t^textth quad forall t in 2dotsT \n v_t^textth + w_t^textth le 1 quad forall t in 1dotsT \n maxP^textthmax - P^textthshdown 0 cdot w_1^textth le u^textthinit (P^textthmax - P^textthmin) - P^textthinit\nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"In addition, this formulation adds duration constraints, i.e. minimum-up time and minimum-down time constraints. The duration constraints are added over the start times looking backwards.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"The duration times D^textminup and D^textmindn are processed to be used in multiple of the time-steps, given the resolution of the specific problem. In addition, parameters D^textinitup and D^textinitdn are used to identify how long the unit was on or off, respectively, before the simulation started.","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Minimum up-time constraint for t in 1dots T:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n textIf t leq D^textminup - D^textinitup text and D^textinitup 0 \n 1 + sum_i=t-D^textminup + 1^t v_i^textth leq u_t^textth quad text(for i text in the set of time steps) \n textOtherwise \n sum_i=t-D^textminup + 1^t v_i^textth leq u_t^textth \nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Minimum down-time constraint for t in 1dots T:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n textIf t leq D^textmindn - D^textinitdn text and D^textinitup 0 \n 1 + sum_i=t-D^textmindn + 1^t w_i^textth leq 1 - u_t^textth quad text(for i text in the set of time steps) \n textOtherwise \n sum_i=t-D^textmindn + 1^t w_i^textth leq 1 - u_t^textth\nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Finally, multi temperature start/stop constraints are implemented using the following constraints:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"beginalign*\n v_t^textth = x_t^textth + y_t^textth + z_t^textth quad forall t in 1 dots T \n z_t^textth le sum_i in D^texthot D^textwarm)w_t-i^textth quad forall t in D^textwarm dots T \n y_t^textth le sum_i in D^textwarm D^textcold)w_t-i^textth quad forall t in D^textcold dots T \n (D^textwarm - 1) z_t^textth + (1 - z_t^textth) M^textbig ge sum_i=1^t (1 - u_i^textth) + D^textinithot quad forall t in 1 dots T \n D^texthot z_t^textth le sum_i=1^t (1 - u_i^textth) + D^textinithot quad forall t in 1 dots T \n (D^textcold - 1) y_t^textth + (1 - y_t^textth) M^textbig ge sum_i=1^t (1 - u_i^textth) + D^textinitwarm quad forall t in 1 dots T \n D^textwarm y_t^textth le sum_i=1^t (1 - u_i^textth) + D^textinitwarm quad forall t in 1 dots T \nendalign*","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"","category":"page"},{"location":"formulation_library/ThermalGen/#Valid-configurations","page":"Thermal Generation","title":"Valid configurations","text":"","category":"section"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"Valid DeviceModels for subtypes of ThermalGen include the following:","category":"page"},{"location":"formulation_library/ThermalGen/","page":"Thermal Generation","title":"Thermal Generation","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.generate_device_formulation_combinations()\nfilter!(x -> x[\"device_type\"] <: ThermalGen, combos)\ncombo_table = DataFrame(\n \"Valid DeviceModel\" => [\"`DeviceModel($(c[\"device_type\"]), $(c[\"formulation\"]))`\" for c in combos],\n \"Device Type\" => [\"[$(c[\"device_type\"])](https://nrel-Sienna.github.io/PowerSystems.jl/stable/model_library/generated_$(c[\"device_type\"])/)\" for c in combos],\n \"Formulation\" => [\"[$(c[\"formulation\"])](@ref)\" for c in combos],\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"tutorials/adding_new_problem_model/#Adding-an-Operations-Problem-Model","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"","category":"section"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"This tutorial will show how to create a custom decision problem model. These cases are the ones where the user want to solve a fully specified problem. Some examples of custom decision models include:","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"Solving a custom Security Constrained Unit Commitment Problem\nSolving a market agent utility maximization Problem. See examples of this functionality in HybridSystemsSimulations.jl","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"The tutorial follows the usual steps for operational model building. First, build the decision model in isolation and second, integrate it into a simulation. In most cases there will be more than one way of achieving the same objective when it comes to implementing the model. This guide shows a general set of steps and requirements but it is by no means an exhaustive and detailed guide on developing custom decision models.","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"warning: Warning\nAll the code in this tutorial is considered \"pseudo-code\". Copy-paste will likely not work out of the box. You need to develop the internals of the functions correctly for the examples below to work.","category":"page"},{"location":"tutorials/adding_new_problem_model/#General-Rules","page":"Adding an Operations Problem Model","title":"General Rules","text":"","category":"section"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"As a general rule you need to understand Julia's terminology such as multiple dispatch, parametric structs and method overloading, among others. Developing custom models for an operational simulation is a highly technical task and requires skilled development. This tutorial also requires good understanding of PowerSystems.jl data structures and features which are covered in the tutorials section of PowerSystems.jl documentation.","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"Finally, developing a custom model decision model that will employ an optimization model under the hood requires understanding JuMP.jl.","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"Need to employ anonymous constraints and variables in JuMP","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"and register the constraints, variables and other optimization objects into PowerSimulations.jl's optimization container. Otherwise the features to use your problem in the simulation like the coordination with other problems and post processing won't work. More on this in the section How to develop your build_model! function below.","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"Implement the required methods for your custom decision models. In some cases it will be possible to re-use some of the other methods that exist in PowerSimulations to make life easier for variable addition and constraint creation but this is not required.","category":"page"},{"location":"tutorials/adding_new_problem_model/#Decision-Problem","page":"Adding an Operations Problem Model","title":"Decision Problem","text":"","category":"section"},{"location":"tutorials/adding_new_problem_model/#Step-1:-Define-a-Custom-Decision-Problem","page":"Adding an Operations Problem Model","title":"Step 1: Define a Custom Decision Problem","text":"","category":"section"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"Define a decision problem struct as a subtype of PowerSimulations.DecisionProblem. This requirement will enable a lot of the underlying functionality that relies on multiple dispatch. DecisionProblems are used to parameterize the behavior of DecisionModel objects which are just containers for the parameters, references and the optimization problem.","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"It is possible to define a Custom Decision Problem that gives the user full control over the build, solve and execution process since it imposes less requirements on the developer. However, with less requirements there are also less checks and validations performed inside of PowerSimulations which might lead to unexpected errors","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"struct MyCustomDecisionProblem <: PSI.DecisionProblem end","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"Alternatively, it is possible to define a Custom Decision Problem subtyping from DefaultDecisionProblem which imposes more requirements and structure onto the developer but employs more checks and validations in the process. Be aware that this route will decrease the flexibility of what can be done inside the custom model.","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"struct MyCustomDecisionProblem <: PSI.DefaultDecisionProblem end","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"Once the problem type is defined, initialize the decision model container with your custom decision problem passing the solver and some of the settings you need for the solution of the problem. For custom problems some of the settings need manual implementation by the developer. Settings availability is also dependent on wether you choose to subtype from PSI.DecisionProblem or PSI.DefaultDecisionProblem","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"my_model = DecisionModel{MyCustomDecisionProblem}(\n sys;\n name = \"MyModel\",\n optimizer = optimizer_with_attributes(HiGHS.Optimizer),\n optimizer_solve_log_print = true,\n)","category":"page"},{"location":"tutorials/adding_new_problem_model/#Mandatory-Method-Implementations","page":"Adding an Operations Problem Model","title":"Mandatory Method Implementations","text":"","category":"section"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"build_model!: This method build the JuMP optimization model.","category":"page"},{"location":"tutorials/adding_new_problem_model/#Optional-Method-Overloads","page":"Adding an Operations Problem Model","title":"Optional Method Overloads","text":"","category":"section"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"These methods can be defined optionally for your problem. By default for problems subtyped from DecisionProblem these checks are not executed. If the problems are subtyped from DefaultDecisionProblem these checks are always conducted with PowerSimulations defaults and require compliance with those defaults to pass. In any case, these can be overloaded when necessary depending on the problem requirements.","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"validate_template\nvalidate_time_series!\nreset!\nsolve_impl!","category":"page"},{"location":"tutorials/adding_new_problem_model/#How-to-develop-your-build_model!-function","page":"Adding an Operations Problem Model","title":"How to develop your build_model! function","text":"","category":"section"},{"location":"tutorials/adding_new_problem_model/#Registering-a-variable-in-the-model","page":"Adding an Operations Problem Model","title":"Registering a variable in the model","text":"","category":"section"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"To register a variable in the model, the developer must first allocate the container into the optimization container and then populate it. For example, it require start the build function as follows:","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"info: Info\nWe recommend calling import PowerSimulations and defining the constant CONST PSI = PowerSimulations to make it easier to read the code and determine which package is responsible for defining the functions.","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":" function PSI.build_model!(model::PSI.DecisionModel{MyCustomDecisionProblem})\n container = PSI.get_optimization_container(model)\n time_steps = 1:24\n PSI.set_time_steps!(container, time_steps)\n system = PSI.get_system(model)\n\n thermal_gens = PSY.get_components(PSY.ThermalStandard, system)\n thermal_gens_names = PSY.get_name.(thermal_gens)\n\n # Create the container for the variable\n variable = PSI.add_variable_container!(\n container,\n PSI.ActivePowerVariable(), # <- This variable is defined in PowerSimulations but the user can define their own\n PSY.ThermalGeneration, # <- Device type for the variable. Can be from PSY or custom defined\n thermal_gens_names, # <- First container dimension\n time_steps, # <- Second container dimension\n )\n\n # Iterate over the devices and time to store the JuMP variables into the container.\n for t in time_steps, d in thermal_gens_names\n name = PSY.get_name(d)\n variable[name, t] = JuMP.@variable(get_jump_model(container))\n # It is possible to use PSY getter functions to retrieve data from the generators\n JuMP.set_upper_bound(variable[name, t], UB_DATA) # <- Optional\n JuMP.set_lower_bound(variable[name, t], LB_DATA) # <- Optional\n end\n\n # Add More Variables.....\n\n return\n end","category":"page"},{"location":"tutorials/adding_new_problem_model/#Registering-a-constraint-in-the-model","page":"Adding an Operations Problem Model","title":"Registering a constraint in the model","text":"","category":"section"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":"A similar pattern is used to add constraints to the model, in this example the field meta is used to avoid creating unnecessary duplicate constraint types. For instance to reflect upperbound and lowerbound or upwards and downwards constraints. Meta can take any string value except for the _ character.","category":"page"},{"location":"tutorials/adding_new_problem_model/","page":"Adding an Operations Problem Model","title":"Adding an Operations Problem Model","text":" function PSI.build_model!(model::PSI.DecisionModel{MyCustomDecisionProblem})\n container = PSI.get_optimization_container(model)\n time_steps = 1:24\n PSI.set_time_steps!(container, time_steps)\n system = PSI.get_system(model)\n\n # VARIABLE ADDITION CODE\n\n # Constraint additions\n con_ub = PSI.add_constraints_container!(\n container,\n PSI.RangeLimitConstraint(), # <- Constraint Type defined by PSI or your own\n PSY.ThermalGeneration, # <- Device type for variable. Can be PSY or custom\n thermal_gens_names, # <- First container dimension\n time_steps; # <- Second container dimension\n meta = \"ub\" # <- meta allows to reuse a constraint definition for similar constraints. It only requires to be a string\n )\n\n con_lb = PSI.add_constraints_container!(\n container,\n PSI.RangeLimitConstraint(),\n PSY.ThermalGeneration,\n thermal_gens_names, # <- First container dimension\n time_steps; # <- Second container dimension\n meta = \"lb\" # <- meta allows to reuse a constraint definition for similar constraints. It only requires to be a string\n )\n\n # Retrieve a relevant variable from the container if not defined in\n variable = PSI.get_variable(container, PSI.ActivePowerVariable(), PSY.ThermalGeneration)\n for device in devices, t in time_steps\n ci_name = PSY.get_name(device)\n limits = get_min_max_limits(device) # depends on constraint type and formulation type\n con_ub[ci_name, t] =\n JuMP.@constraint(get_jump_model(container), variable[ci_name, t] >= limits.min)\n con_lb[ci_name, t] =\n JuMP.@constraint(get_jump_model(container), variable[ci_name, t] >= limits.min)\n end\n\n return\n end","category":"page"},{"location":"formulation_library/Branch/#PowerSystems.Branch-Formulations","page":"Branch","title":"PowerSystems.Branch Formulations","text":"","category":"section"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"note: Note\nThe use of reactive power variables and constraints will depend on the network model used, i.e., whether it uses (or does not use) reactive power. If the network model is purely active power-based, reactive power variables and related constraints are not created.","category":"page"},{"location":"formulation_library/Branch/#Table-of-contents","page":"Branch","title":"Table of contents","text":"","category":"section"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"StaticBranch\nStaticBranchBounds\nStaticBranchUnbounded\nHVDCTwoTerminalUnbounded\nHVDCTwoTerminalLossless\nHVDCTwoTerminalDispatch\nPhaseAngleControl\nValid configurations","category":"page"},{"location":"formulation_library/Branch/#StaticBranch","page":"Branch","title":"StaticBranch","text":"","category":"section"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Formulation valid for PTDFPowerModel Network model","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"StaticBranch","category":"page"},{"location":"formulation_library/Branch/#PowerSimulations.StaticBranch","page":"Branch","title":"PowerSimulations.StaticBranch","text":"Branch type to add unbounded flow variables and use flow constraints\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Variables:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"FlowActivePowerVariable:\nBounds: (-inftyinfty)\nSymbol: f","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"If Slack variables are enabled:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"FlowActivePowerSlackUpperBound:\nBounds: [0.0, ]\nDefault proportional cost: 2e5\nSymbol: f^textslup\nFlowActivePowerSlackLowerBound:\nBounds: [0.0, ]\nDefault proportional cost: 2e5\nSymbol: f^textsllo","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Static Parameters","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"R^textmax = PowerSystems.get_rating(branch)","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Objective:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Add a large proportional cost to the objective function if rate constraint slack variables are used + (f^textslup + f^textsllo) cdot 2 cdot 10^5","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Expressions:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"No expressions are used.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Constraints:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"For each branch b in 1dots B (in a system with N buses) the constraints are given by: ","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"beginaligned\n f_t = sum_i=1^N textPTDF_ib cdot textBal_it quad forall t in 1dots T\n f_t - f_t^textslup le R^textmaxquad forall t in 1dots T \n f_t + f_t^textsllo ge -R^textmaxquad forall t in 1dots T \nendaligned","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"on which textPTDF is the N times B system Power Transfer Distribution Factors (PTDF) matrix, and textBal_it is the active power bus balance expression (i.e. textGeneration_it - textDemand_it) at bus i at time-step t. ","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"","category":"page"},{"location":"formulation_library/Branch/#StaticBranchBounds","page":"Branch","title":"StaticBranchBounds","text":"","category":"section"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Formulation valid for PTDFPowerModel Network model","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"StaticBranchBounds","category":"page"},{"location":"formulation_library/Branch/#PowerSimulations.StaticBranchBounds","page":"Branch","title":"PowerSimulations.StaticBranchBounds","text":"Branch type to add bounded flow variables and use flow constraints\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Variables:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"FlowActivePowerVariable:\nBounds: left-R^textmaxR^textmaxright\nSymbol: f","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Static Parameters","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"R^textmax = PowerSystems.get_rating(branch)","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Objective:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"No cost is added to the objective function.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Expressions:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"No expressions are used.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Constraints:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"For each branch b in 1dots B (in a system with N buses) the constraints are given by: ","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"beginaligned\n f_t = sum_i=1^N textPTDF_ib cdot textBal_it quad forall t in 1dots T\nendaligned","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"on which textPTDF is the N times B system Power Transfer Distribution Factors (PTDF) matrix, and textBal_it is the active power bus balance expression (i.e. textGeneration_it - textDemand_it) at bus i at time-step t. ","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"","category":"page"},{"location":"formulation_library/Branch/#StaticBranchUnbounded","page":"Branch","title":"StaticBranchUnbounded","text":"","category":"section"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Formulation valid for PTDFPowerModel Network model","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"StaticBranchUnbounded","category":"page"},{"location":"formulation_library/Branch/#PowerSimulations.StaticBranchUnbounded","page":"Branch","title":"PowerSimulations.StaticBranchUnbounded","text":"Branch type to avoid flow constraints\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"FlowActivePowerVariable:\nBounds: (-inftyinfty)\nSymbol: f","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Objective:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"No cost is added to the objective function.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Expressions:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"No expressions are used.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Constraints:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"For each branch b in 1dots B (in a system with N buses) the constraints are given by: ","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"beginaligned\n f_t = sum_i=1^N textPTDF_ib cdot textBal_it quad forall t in 1dots T\nendaligned","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"on which textPTDF is the N times B system Power Transfer Distribution Factors (PTDF) matrix, and textBal_it is the active power bus balance expression (i.e. textGeneration_it - textDemand_it) at bus i at time-step t. ","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"","category":"page"},{"location":"formulation_library/Branch/#HVDCTwoTerminalUnbounded","page":"Branch","title":"HVDCTwoTerminalUnbounded","text":"","category":"section"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Formulation valid for PTDFPowerModel Network model","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"HVDCTwoTerminalUnbounded","category":"page"},{"location":"formulation_library/Branch/#PowerSimulations.HVDCTwoTerminalUnbounded","page":"Branch","title":"PowerSimulations.HVDCTwoTerminalUnbounded","text":"Branch type to avoid flow constraints\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"This model assumes that it can transfer power from two AC buses without losses and no limits.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Variables:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"FlowActivePowerVariable:\nBounds: left(-inftyinftyright)\nSymbol: f","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Objective:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"No cost is added to the objective function.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Expressions:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"The variable FlowActivePowerVariable f is added to the nodal balance expression ActivePowerBalance, by adding the flow f in the receiving bus and subtracting it from the sending bus. This is used then to compute the AC flows using the PTDF equation.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Constraints:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"No constraints are added.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"","category":"page"},{"location":"formulation_library/Branch/#HVDCTwoTerminalLossless","page":"Branch","title":"HVDCTwoTerminalLossless","text":"","category":"section"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Formulation valid for PTDFPowerModel Network model","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"HVDCTwoTerminalLossless","category":"page"},{"location":"formulation_library/Branch/#PowerSimulations.HVDCTwoTerminalLossless","page":"Branch","title":"PowerSimulations.HVDCTwoTerminalLossless","text":"Branch type to represent lossless power flow on DC lines\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"This model assumes that it can transfer power from two AC buses without losses.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Variables:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"FlowActivePowerVariable:\nBounds: left(-inftyinftyright)\nSymbol: f","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Static Parameters","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"R^textfrommin = PowerSystems.get_active_power_limits_from(branch).min\nR^textfrommax = PowerSystems.get_active_power_limits_from(branch).max\nR^texttomin = PowerSystems.get_active_power_limits_to(branch).min\nR^texttomax = PowerSystems.get_active_power_limits_to(branch).max","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Objective:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"No cost is added to the objective function.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Expressions:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"The variable FlowActivePowerVariable f is added to the nodal balance expression ActivePowerBalance, by adding the flow f in the receiving bus and subtracting it from the sending bus. This is used then to compute the AC flows using the PTDF equation.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Constraints:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"beginalign*\n R^textmin le f_t le R^textmaxquad forall t in 1dots T \nendalign*","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"where:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"beginalign*\n R^textmin = begincases\n\t\t\tminleft(R^textfrommin R^texttominright) textif R^textfrommin ge 0 text and R^texttomin ge 0 \n maxleft(R^textfrommin R^texttominright) textif R^textfrommin le 0 text and R^texttomin le 0 \n R^textfrommin textif R^textfrommin le 0 text and R^texttomin ge 0 \n R^texttomin textif R^textfrommin ge 0 text and R^texttomin le 0\n\t\t endcases\nendalign*","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"and","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"beginalign*\n R^textmax = begincases\n\t\t\tminleft(R^textfrommax R^texttomaxright) textif R^textfrommax ge 0 text and R^texttomax ge 0 \n maxleft(R^textfrommax R^texttomaxright) textif R^textfrommax le 0 text and R^texttomax le 0 \n R^textfrommax textif R^textfrommax le 0 text and R^texttomax ge 0 \n R^texttomax textif R^textfrommax ge 0 text and R^texttomax le 0\n\t\t endcases\nendalign*","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"","category":"page"},{"location":"formulation_library/Branch/#HVDCTwoTerminalDispatch","page":"Branch","title":"HVDCTwoTerminalDispatch","text":"","category":"section"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Formulation valid for PTDFPowerModel Network model","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"HVDCTwoTerminalDispatch","category":"page"},{"location":"formulation_library/Branch/#PowerSimulations.HVDCTwoTerminalDispatch","page":"Branch","title":"PowerSimulations.HVDCTwoTerminalDispatch","text":"Branch type to represent lossy power flow on DC lines\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Variables","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"FlowActivePowerToFromVariable:\nSymbol: f^textto-from\nFlowActivePowerFromToVariable:\nSymbol: f^textfrom-to\nHVDCLosses:\nSymbol: ell\nHVDCFlowDirectionVariable\nBounds: 01\nSymbol: u^textdir","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Static Parameters","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"R^textfrommin = PowerSystems.get_active_power_limits_from(branch).min\nR^textfrommax = PowerSystems.get_active_power_limits_from(branch).max\nR^texttomin = PowerSystems.get_active_power_limits_to(branch).min\nR^texttomax = PowerSystems.get_active_power_limits_to(branch).max\nL_0 = PowerSystems.get_loss(branch).l0\nL_1 = PowerSystems.get_loss(branch).l1","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Objective:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"No cost is added to the objective function.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Expressions:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Each FlowActivePowerToFromVariable f^textto-from and FlowActivePowerFromToVariable f^textfrom-to is added to the nodal balance expression ActivePowerBalance, by adding the respective flow in the receiving bus and subtracting it from the sending bus. That is, f^textto-from adds the flow to the from bus, and subtracts the flow from the to bus, while f^textfrom-to adds the flow to the to bus, and subtracts the flow from the from bus This is used then to compute the AC flows using the PTDF equation.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"In addition, the HVDCLosses are subtracted to the from bus in the ActivePowerBalance expression. ","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Constraints:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"beginalign*\n R^textfrommin le f_t^textfrom-to le R^textfrommax forall t in 1dots T \n R^texttomin le f_t^textto-from le R^texttomaxquad forall t in 1dots T \n f_t^textto-from - f_t^textfrom-to le L_1 cdot f_t^textto-from - L_0quad forall t in 1dots T \n f_t^textfrom-to - f_t^textto-from ge L_1 cdot f_t^textfrom-to + L_0quad forall t in 1dots T \n f_t^textfrom-to - f_t^textto-from ge - M^textbig (1 - u^textdir_t)quad forall t in 1dots T \n f_t^textto-from - f_t^textfrom-to ge - M^textbig u^textdir_tquad forall t in 1dots T \n f_t^textto-from - f_t^textfrom-to le ell_tquad forall t in 1dots T \n f_t^textfrom-to - f_t^textto-from le ell_tquad forall t in 1dots T \nendalign*","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"","category":"page"},{"location":"formulation_library/Branch/#PhaseAngleControl","page":"Branch","title":"PhaseAngleControl","text":"","category":"section"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Formulation valid for PTDFPowerModel Network model","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"PhaseAngleControl","category":"page"},{"location":"formulation_library/Branch/#PowerSimulations.PhaseAngleControl","page":"Branch","title":"PowerSimulations.PhaseAngleControl","text":"Branch formulation for PhaseShiftingTransformer flow control\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Variables:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"FlowActivePowerVariable:\nBounds: (-inftyinfty)\nSymbol: f\nPhaseShifterAngle:\nSymbol: theta^textshift","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Static Parameters","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"R^textmax = PowerSystems.get_rating(branch)\nTheta^textmin = PowerSystems.get_phase_angle_limits(branch).min\nTheta^textmax = PowerSystems.get_phase_angle_limits(branch).max\nX = PowerSystems.get_x(branch) (series reactance)","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Objective:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"No changes to objective function","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Expressions:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Adds to the ActivePowerBalance expression the term -theta^textshift X to the from bus and +theta^textshift X to the to bus, that the PhaseShiftingTransformer is connected.","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Constraints:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"For each branch b in 1dots B (in a system with N buses) the constraints are given by: ","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"beginaligned\n f_t = sum_i=1^N textPTDF_ib cdot textBal_it + fractheta^textshift_tX quad forall t in 1dots T\n -R^textmax le f_t le R^textmaxquad forall t in 1dots T \nendaligned","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"on which textPTDF is the N times B system Power Transfer Distribution Factors (PTDF) matrix, and textBal_it is the active power bus balance expression (i.e. textGeneration_it - textDemand_it) at bus i at time-step t. ","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"","category":"page"},{"location":"formulation_library/Branch/#Valid-configurations","page":"Branch","title":"Valid configurations","text":"","category":"section"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"Valid DeviceModels for subtypes of Branch include the following:","category":"page"},{"location":"formulation_library/Branch/","page":"Branch","title":"Branch","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.generate_device_formulation_combinations()\nfilter!(x -> (x[\"device_type\"] <: Branch) && (x[\"device_type\"] != TModelHVDCLine), combos)\ncombo_table = DataFrame(\n \"Valid DeviceModel\" => [\"`DeviceModel($(c[\"device_type\"]), $(c[\"formulation\"]))`\" for c in combos],\n \"Device Type\" => [\"[$(c[\"device_type\"])](https://nrel-Sienna.github.io/PowerSystems.jl/stable/model_library/generated_$(c[\"device_type\"])/)\" for c in combos],\n \"Formulation\" => [\"[$(c[\"formulation\"])](@ref)\" for c in combos],\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"modeler_guide/problem_templates/#op_problem_template","page":"Operations ProblemTemplates","title":"Operations ProblemTemplates","text":"","category":"section"},{"location":"modeler_guide/problem_templates/","page":"Operations ProblemTemplates","title":"Operations ProblemTemplates","text":"Templates are used to specify the modeling properties of the devices and network that are going to he used to specify a problem. A ProblemTemplate is just a collection of DeviceModels that allows the user to specify the formulations of each set of devices (by device type) independently so that the modeler can adjust the level of detail according to the question of interest and the available data. For more information about valid DeviceModels and their mathematical representations, check out the Formulation Library.","category":"page"},{"location":"modeler_guide/problem_templates/#Building-a-ProblemTemplate","page":"Operations ProblemTemplates","title":"Building a ProblemTemplate","text":"","category":"section"},{"location":"modeler_guide/problem_templates/","page":"Operations ProblemTemplates","title":"Operations ProblemTemplates","text":"You can build a ProblemTemplate by adding a NetworkModel, DeviceModels, and ServiceModels.","category":"page"},{"location":"modeler_guide/problem_templates/","page":"Operations ProblemTemplates","title":"Operations ProblemTemplates","text":"template = ProblemTemplate()\nset_network_model!(template, NetworkModel(CopperPlatePowerModel))\nset_device_model!(template, PowerLoad, StaticPowerLoad)\nset_device_model!(template, ThermalStandard, ThermalBasicUnitCommitment)\nset_service_model!(template, VariableReserve{ReserveUp}, RangeReserve)","category":"page"},{"location":"modeler_guide/problem_templates/#Default-Templates","page":"Operations ProblemTemplates","title":"Default Templates","text":"","category":"section"},{"location":"modeler_guide/problem_templates/","page":"Operations ProblemTemplates","title":"Operations ProblemTemplates","text":"PowerSimulations.jl provides default templates for common operation problems. You can retrieve a default template and modify it according to your requirements. Currently supported default templates are:","category":"page"},{"location":"modeler_guide/problem_templates/","page":"Operations ProblemTemplates","title":"Operations ProblemTemplates","text":"template_economic_dispatch","category":"page"},{"location":"modeler_guide/problem_templates/#PowerSimulations.template_economic_dispatch","page":"Operations ProblemTemplates","title":"PowerSimulations.template_economic_dispatch","text":"template_economic_dispatch(; kwargs...) -> ProblemTemplate\n\n\ntemplate_economic_dispatch(; kwargs...)\n\nCreates a ProblemTemplate with default DeviceModels for an Economic Dispatch problem.\n\nExample\n\ntemplate = templateeconomicdispatch()\n\n\n# Accepted Key Words\n- `network::Type{<:PM.AbstractPowerModel}` : override default network model settings\n- `devices::Vector{DeviceModel}` : override default `DeviceModel` settings\n- `services::Vector{ServiceModel}` : override default `ServiceModel` settings\n\n\n\n\n\n","category":"function"},{"location":"modeler_guide/problem_templates/","page":"Operations ProblemTemplates","title":"Operations ProblemTemplates","text":"using PowerSimulations #hide\ntemplate_economic_dispatch()","category":"page"},{"location":"modeler_guide/problem_templates/","page":"Operations ProblemTemplates","title":"Operations ProblemTemplates","text":"template_unit_commitment","category":"page"},{"location":"modeler_guide/problem_templates/#PowerSimulations.template_unit_commitment","page":"Operations ProblemTemplates","title":"PowerSimulations.template_unit_commitment","text":"template_unit_commitment(; kwargs...) -> ProblemTemplate\n\n\ntemplate_unit_commitment(; kwargs...)\n\nCreates a ProblemTemplate with default DeviceModels for a Unit Commitment problem.\n\nExample\n\ntemplate = templateunitcommitment()\n\n\n# Accepted Key Words\n- `network::Type{<:PM.AbstractPowerModel}` : override default network model settings\n- `devices::Vector{DeviceModel}` : override default `DeviceModel` settings\n- `services::Vector{ServiceModel}` : override default `ServiceModel` settings\n\n\n\n\n\n","category":"function"},{"location":"modeler_guide/problem_templates/","page":"Operations ProblemTemplates","title":"Operations ProblemTemplates","text":"using PowerSimulations #hide\ntemplate_unit_commitment()","category":"page"},{"location":"code_base_developer_guide/developer/#Guidelines-for-Developers","page":"Developer Guide","title":"Guidelines for Developers","text":"","category":"section"},{"location":"code_base_developer_guide/developer/","page":"Developer Guide","title":"Developer Guide","text":"In order to contribute to PowerSystems.jl repository please read the following sections of InfrastructureSystems.jl documentation in detail:","category":"page"},{"location":"code_base_developer_guide/developer/","page":"Developer Guide","title":"Developer Guide","text":"Style Guide\nContributing Guidelines","category":"page"},{"location":"code_base_developer_guide/developer/","page":"Developer Guide","title":"Developer Guide","text":"Pull requests are always welcome to fix bugs or add additional modeling capabilities.","category":"page"},{"location":"code_base_developer_guide/developer/","page":"Developer Guide","title":"Developer Guide","text":"All the code contributions need to include tests with a minimum coverage of 70%","category":"page"},{"location":"modeler_guide/modeling_faq/#Modeling-FAQ","page":"Modeling FAQ","title":"Modeling FAQ","text":"","category":"section"},{"location":"modeler_guide/modeling_faq/","page":"Modeling FAQ","title":"Modeling FAQ","text":"question: How do I reduce the amount of print on my REPL?\nThe print to the REPL is controlled with the logging. Check the Logging documentation page to see how to reduce the print out","category":"page"},{"location":"modeler_guide/modeling_faq/","page":"Modeling FAQ","title":"Modeling FAQ","text":"question: How do I print the optimizer logs to see the solution process?\nWhen specifying the DecisionModel or EmulationModel pass the keyword print_optimizer_log = true","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"CurrentModule = PowerSimulations\nDocTestSetup = quote\n using PowerSimulations\nend","category":"page"},{"location":"api/PowerSimulations/#API-Reference","page":"API Reference","title":"API Reference","text":"","category":"section"},{"location":"api/PowerSimulations/#Table-of-Contents","page":"API Reference","title":"Table of Contents","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"Device Models\nFormulations\nProblem Templates\nDecision Models\nEmulation Models\nService Models\nSimulation Models\nVariables\nCommon Variables\nThermal Unit Variables\nStorage Unit Variables\nBranches and Network Variables\nServices Variables\nFeedforward Variables\nConstraints\nCommon Constraints\nNetwork Constraints\nPower Variable Limit Constraints\nServices Constraints\nThermal Unit Constraints\nRenewable Unit Constraints\nBranches Constraints\nFeedforward Constraints\nParameters\nTime Series Parameters\nVariable Value Parameters\nObjective Function Parameters","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":" \n ","category":"page"},{"location":"api/PowerSimulations/#Device-Models","page":"API Reference","title":"Device Models","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"List of structures and methods for Device models","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"DeviceModel","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.DeviceModel","page":"API Reference","title":"PowerSimulations.DeviceModel","text":"DeviceModel(\n ::Type{D},\n ::Type{B},\n feedforwards::Vector{<:AbstractAffectFeedforward}\n use_slacks::Bool,\n duals::Vector{DataType},\n services::Vector{ServiceModel}\n attributes::Dict{String, Any}\n)\n\nEstablishes the model for a particular device specified by type. Uses the keyword argument feedforward to enable passing values between operation model at simulation time\n\nArguments\n\n::Type{D} where D<:PSY.Device: Power System Device Type\n::Type{B} where B<:AbstractDeviceFormulation: Abstract Device Formulation\nfeedforward::Array{<:AbstractAffectFeedforward} = Vector{AbstractAffectFeedforward}() : use to pass parameters between models\nuse_slacks::Bool = false : Add slacks to the device model. Implementation is model dependent and not all models feature slacks\nduals::Vector{DataType} = Vector{DataType}(): use to pass constraint type to calculate the duals. The DataType needs to be a valid ConstraintType\ntime_series_names::Dict{Type{<:TimeSeriesParameter}, String} = get_default_time_series_names(D, B) : use to specify time series names associated to the device`\nattributes::Dict{String, Any} = get_default_attributes(D, B) : use to specify attributes to the device\n\nExample\n\nthermal_gens = DeviceModel(ThermalStandard, ThermalBasicUnitCommitment)\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Formulations","page":"API Reference","title":"Formulations","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"Refer to the Formulations Page for each Abstract Device Formulation.","category":"page"},{"location":"api/PowerSimulations/#Problem-Templates","page":"API Reference","title":"Problem Templates","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"Refer to the Problem Templates Page for available ProblemTemplates.","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":" \n ","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"","category":"page"},{"location":"api/PowerSimulations/#Decision-Models","page":"API Reference","title":"Decision Models","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"DecisionModel\nDecisionModel(::Type{M} where {M <: DecisionProblem}, ::ProblemTemplate, ::PSY.System, ::Union{Nothing, JuMP.Model})\nDecisionModel(::AbstractString, ::MOI.OptimizerWithAttributes)\nbuild!(::DecisionModel)\nsolve!(::DecisionModel)","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.DecisionModel","page":"API Reference","title":"PowerSimulations.DecisionModel","text":"DecisionModel{M}(\n template::AbstractProblemTemplate,\n sys::PSY.System,\n jump_model::Union{Nothing, JuMP.Model}=nothing;\n kwargs...) where {M<:DecisionProblem}\n\nBuild the optimization problem of type M with the specific system and template.\n\nArguments\n\n::Type{M} where M<:DecisionProblem: The abstract operation model type\ntemplate::AbstractProblemTemplate: The model reference made up of transmission, devices, branches, and services.\nsys::PSY.System: the system created using Power Systems\njump_model::Union{Nothing, JuMP.Model}: Enables passing a custom JuMP model. Use with care\nname = nothing: name of model, string or symbol; defaults to the type of template converted to a symbol.\noptimizer::Union{Nothing,MOI.OptimizerWithAttributes} = nothing : The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.\nhorizon::Dates.Period = UNSET_HORIZON: Manually specify the length of the forecast Horizon\nresolution::Dates.Period = UNSET_RESOLUTION: Manually specify the model's resolution\nwarm_start::Bool = true: True will use the current operation point in the system to initialize variable values. False initializes all variables to zero. Default is true\nsystem_to_file::Bool = true:: True to create a copy of the system used in the model.\ninitialize_model::Bool = true: Option to decide to initialize the model or not.\ninitialization_file::String = \"\": This allows to pass pre-existing initialization values to avoid the solution of an optimization problem to find feasible initial conditions.\ndeserialize_initial_conditions::Bool = false: Option to deserialize conditions\nexport_pwl_vars::Bool = false: True to export all the pwl intermediate variables. It can slow down significantly the build and solve time.\nallow_fails::Bool = false: True to allow the simulation to continue even if the optimization step fails. Use with care.\noptimizer_solve_log_print::Bool = false: Uses JuMP.unset_silent() to print the optimizer's log. By default all solvers are set to MOI.Silent()\ndetailed_optimizer_stats::Bool = false: True to save detailed optimizer stats log.\ncalculate_conflict::Bool = false: True to use solver to calculate conflicts for infeasible problems. Only specific solvers are able to calculate conflicts.\ndirect_mode_optimizer::Bool = false: True to use the solver in direct mode. Creates a JuMP.direct_model.\nstore_variable_names::Bool = false: to store variable names in optimization model. Decreases the build times.\nrebuild_model::Bool = false: It will force the rebuild of the underlying JuMP model with each call to update the model. It increases solution times, use only if the model can't be updated in memory.\ninitial_time::Dates.DateTime = UNSET_INI_TIME: Initial Time for the model solve.\ntime_series_cache_size::Int = IS.TIME_SERIES_CACHE_SIZE_BYTES: Size in bytes to cache for each time array. Default is 1 MiB. Set to 0 to disable.\n\nExample\n\ntemplate = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)\nOpModel = DecisionModel(MockOperationProblem, template, system)\n\n\n\n\n\nDecisionModel(\n ::Type{M<:PowerSimulations.DecisionProblem},\n template::PowerSimulations.AbstractProblemTemplate,\n sys::System;\n ...\n) -> DecisionModel\nDecisionModel(\n ::Type{M<:PowerSimulations.DecisionProblem},\n template::PowerSimulations.AbstractProblemTemplate,\n sys::System,\n jump_model::Union{Nothing, JuMP.Model};\n kwargs...\n) -> DecisionModel\n\n\nBuild the optimization problem of type M with the specific system and template\n\nArguments\n\n::Type{M} where M<:DecisionProblem: The abstract operation model type\ntemplate::AbstractProblemTemplate: The model reference made up of transmission, devices, branches, and services.\nsys::PSY.System: the system created using Power Systems\njump_model::Union{Nothing, JuMP.Model} = nothing: Enables passing a custom JuMP model. Use with care.\n\nExample\n\ntemplate = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)\nproblem = DecisionModel(MyOpProblemType, template, system, optimizer)\n\n\n\n\n\nBuilds an empty decision model. This constructor is used for the implementation of custom decision models that do not require a template.\n\nArguments\n\n::Type{M} where M<:DecisionProblem: The abstract operation model type\nsys::PSY.System: the system created using Power Systems\njump_model::Union{Nothing, JuMP.Model} = nothing: Enables passing a custom JuMP model. Use with care.\n\nExample\n\nproblem = DecisionModel(system, optimizer)\n\n\n\n\n\nDecisionModel(\n directory::AbstractString,\n optimizer::MathOptInterface.OptimizerWithAttributes;\n jump_model,\n system\n) -> Any\n\n\nConstruct an DecisionProblem from a serialized file.\n\nArguments\n\ndirectory::AbstractString: Directory containing a serialized model\njump_model::Union{Nothing, JuMP.Model} = nothing: The JuMP model does not get serialized. Callers should pass whatever they passed to the original problem.\noptimizer::Union{Nothing,MOI.OptimizerWithAttributes} = nothing: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.\nsystem::Union{Nothing, PSY.System}: Optionally, the system used for the model. If nothing and systofile was set to true when the model was created, the system will be deserialized from a file.\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.DecisionModel-Tuple{Type{M} where M<:PowerSimulations.DecisionProblem, ProblemTemplate, System, Union{Nothing, JuMP.Model}}","page":"API Reference","title":"PowerSimulations.DecisionModel","text":"DecisionModel(\n ::Type{M<:PowerSimulations.DecisionProblem},\n template::PowerSimulations.AbstractProblemTemplate,\n sys::System;\n ...\n) -> DecisionModel\nDecisionModel(\n ::Type{M<:PowerSimulations.DecisionProblem},\n template::PowerSimulations.AbstractProblemTemplate,\n sys::System,\n jump_model::Union{Nothing, JuMP.Model};\n kwargs...\n) -> DecisionModel\n\n\nBuild the optimization problem of type M with the specific system and template\n\nArguments\n\n::Type{M} where M<:DecisionProblem: The abstract operation model type\ntemplate::AbstractProblemTemplate: The model reference made up of transmission, devices, branches, and services.\nsys::PSY.System: the system created using Power Systems\njump_model::Union{Nothing, JuMP.Model} = nothing: Enables passing a custom JuMP model. Use with care.\n\nExample\n\ntemplate = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)\nproblem = DecisionModel(MyOpProblemType, template, system, optimizer)\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/#PowerSimulations.DecisionModel-Tuple{AbstractString, MathOptInterface.OptimizerWithAttributes}","page":"API Reference","title":"PowerSimulations.DecisionModel","text":"DecisionModel(\n directory::AbstractString,\n optimizer::MathOptInterface.OptimizerWithAttributes;\n jump_model,\n system\n) -> Any\n\n\nConstruct an DecisionProblem from a serialized file.\n\nArguments\n\ndirectory::AbstractString: Directory containing a serialized model\njump_model::Union{Nothing, JuMP.Model} = nothing: The JuMP model does not get serialized. Callers should pass whatever they passed to the original problem.\noptimizer::Union{Nothing,MOI.OptimizerWithAttributes} = nothing: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.\nsystem::Union{Nothing, PSY.System}: Optionally, the system used for the model. If nothing and systofile was set to true when the model was created, the system will be deserialized from a file.\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/#PowerSimulations.build!-Tuple{DecisionModel}","page":"API Reference","title":"PowerSimulations.build!","text":"build!(\n model::DecisionModel;\n output_dir,\n recorders,\n console_level,\n file_level,\n disable_timer_outputs\n)\n\n\nBuild the Decision Model based on the specified DecisionProblem.\n\nArguments\n\nmodel::DecisionModel{<:DecisionProblem}: DecisionModel object\noutput_dir::String: Output directory for results\nrecorders::Vector{Symbol} = []: recorder names to register\nconsole_level = Logging.Error:\nfile_level = Logging.Info:\ndisable_timer_outputs = false : Enable/Disable timing outputs\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/#PowerSimulations.solve!-Tuple{DecisionModel}","page":"API Reference","title":"PowerSimulations.solve!","text":"solve!(\n model::DecisionModel;\n export_problem_results,\n console_level,\n file_level,\n disable_timer_outputs,\n serialize,\n kwargs...\n) -> InfrastructureSystems.Simulation.RunStatusModule.RunStatus\n\n\nDefault solve method for models that conform to the requirements of DecisionModel{<: DecisionProblem}.\n\nThis will call build! on the model if it is not already built. It will forward all keyword arguments to that function.\n\nArguments\n\nmodel::OperationModel = model: operation model\nexport_problem_results::Bool = false: If true, export OptimizationProblemResults DataFrames to CSV files. Reduces solution times during simulation.\nconsole_level = Logging.Error:\nfile_level = Logging.Info:\ndisable_timer_outputs = false : Enable/Disable timing outputs\nserialize::Bool = true: If true, serialize the model to a file to allow re-execution later.\n\nExamples\n\nresults = solve!(OpModel)\nresults = solve!(OpModel, export_problem_results = true)\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":" \n ","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"","category":"page"},{"location":"api/PowerSimulations/#Emulation-Models","page":"API Reference","title":"Emulation Models","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"EmulationModel\nEmulationModel(::Type{M} where {M <: EmulationProblem}, ::ProblemTemplate, ::PSY.System, ::Union{Nothing, JuMP.Model})\nEmulationModel(::AbstractString, ::MOI.OptimizerWithAttributes)\nbuild!(::EmulationModel)\nrun!(::EmulationModel)","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.EmulationModel","page":"API Reference","title":"PowerSimulations.EmulationModel","text":"EmulationModel{M}(\n template::AbstractProblemTemplate,\n sys::PSY.System,\n jump_model::Union{Nothing, JuMP.Model}=nothing;\n kwargs...) where {M<:EmulationProblem}\n\nBuild the optimization problem of type M with the specific system and template.\n\nArguments\n\n::Type{M} where M<:EmulationProblem: The abstract Emulation model type\ntemplate::AbstractProblemTemplate: The model reference made up of transmission, devices, branches, and services.\nsys::PSY.System: the system created using Power Systems\njump_model::Union{Nothing, JuMP.Model}: Enables passing a custom JuMP model. Use with care\nname = nothing: name of model, string or symbol; defaults to the type of template converted to a symbol.\noptimizer::Union{Nothing,MOI.OptimizerWithAttributes} = nothing : The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.\nwarm_start::Bool = true: True will use the current operation point in the system to initialize variable values. False initializes all variables to zero. Default is true\nsystem_to_file::Bool = true:: True to create a copy of the system used in the model.\ninitialize_model::Bool = true: Option to decide to initialize the model or not.\ninitialization_file::String = \"\": This allows to pass pre-existing initialization values to avoid the solution of an optimization problem to find feasible initial conditions.\ndeserialize_initial_conditions::Bool = false: Option to deserialize conditions\nexport_pwl_vars::Bool = false: True to export all the pwl intermediate variables. It can slow down significantly the build and solve time.\nallow_fails::Bool = false: True to allow the simulation to continue even if the optimization step fails. Use with care.\ncalculate_conflict::Bool = false: True to use solver to calculate conflicts for infeasible problems. Only specific solvers are able to calculate conflicts.\noptimizer_solve_log_print::Bool = false: Uses JuMP.unset_silent() to print the optimizer's log. By default all solvers are set to MOI.Silent()\ndetailed_optimizer_stats::Bool = false: True to save detailed optimizer stats log.\ndirect_mode_optimizer::Bool = false: True to use the solver in direct mode. Creates a JuMP.direct_model.\nstore_variable_names::Bool = false: True to store variable names in optimization model.\nrebuild_model::Bool = false: It will force the rebuild of the underlying JuMP model with each call to update the model. It increases solution times, use only if the model can't be updated in memory.\ninitial_time::Dates.DateTime = UNSET_INI_TIME: Initial Time for the model solve.\ntime_series_cache_size::Int = IS.TIME_SERIES_CACHE_SIZE_BYTES: Size in bytes to cache for each time array. Default is 1 MiB. Set to 0 to disable.\n\nExample\n\ntemplate = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)\nOpModel = EmulationModel(MockEmulationProblem, template, system)\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.EmulationModel-Tuple{Type{M} where M<:PowerSimulations.EmulationProblem, ProblemTemplate, System, Union{Nothing, JuMP.Model}}","page":"API Reference","title":"PowerSimulations.EmulationModel","text":"EmulationModel(\n ::Type{M<:PowerSimulations.EmulationProblem},\n template::PowerSimulations.AbstractProblemTemplate,\n sys::System;\n ...\n) -> EmulationModel\nEmulationModel(\n ::Type{M<:PowerSimulations.EmulationProblem},\n template::PowerSimulations.AbstractProblemTemplate,\n sys::System,\n jump_model::Union{Nothing, JuMP.Model};\n kwargs...\n) -> EmulationModel\n\n\nBuild the optimization problem of type M with the specific system and template\n\nArguments\n\n::Type{M} where M<:EmulationProblem: The abstract Emulation model type\ntemplate::AbstractProblemTemplate: The model reference made up of transmission, devices, branches, and services.\nsys::PSY.System: the system created using Power Systems\njump_model::Union{Nothing, JuMP.Model}: Enables passing a custom JuMP model. Use with care\n\nExample\n\ntemplate = ProblemTemplate(CopperPlatePowerModel, devices, branches, services)\nproblem = EmulationModel(MyEmProblemType, template, system, optimizer)\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/#PowerSimulations.EmulationModel-Tuple{AbstractString, MathOptInterface.OptimizerWithAttributes}","page":"API Reference","title":"PowerSimulations.EmulationModel","text":"EmulationModel(\n directory::AbstractString,\n optimizer::MathOptInterface.OptimizerWithAttributes;\n jump_model,\n system,\n kwargs...\n) -> Any\n\n\nConstruct an EmulationProblem from a serialized file.\n\nArguments\n\ndirectory::AbstractString: Directory containing a serialized model.\noptimizer::MOI.OptimizerWithAttributes: The optimizer does not get serialized. Callers should pass whatever they passed to the original problem.\njump_model::Union{Nothing, JuMP.Model} = nothing: The JuMP model does not get serialized. Callers should pass whatever they passed to the original problem.\nsystem::Union{Nothing, PSY.System}: Optionally, the system used for the model. If nothing and systofile was set to true when the model was created, the system will be deserialized from a file.\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/#PowerSimulations.build!-Tuple{EmulationModel}","page":"API Reference","title":"PowerSimulations.build!","text":"build!(\n model::EmulationModel;\n executions,\n output_dir,\n recorders,\n console_level,\n file_level,\n disable_timer_outputs\n)\n\n\nImplementation of build for any EmulationProblem\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/#PowerSimulations.run!-Tuple{EmulationModel}","page":"API Reference","title":"PowerSimulations.run!","text":"run!(\n model::EmulationModel;\n export_problem_results,\n console_level,\n file_level,\n disable_timer_outputs,\n serialize,\n kwargs...\n) -> InfrastructureSystems.Simulation.RunStatusModule.RunStatus\n\n\nDefault run method for problems that conform to the requirements of EmulationModel{<: EmulationProblem}\n\nThis will call build! on the model if it is not already built. It will forward all keyword arguments to that function.\n\nArguments\n\nmodel::EmulationModel = model: Emulation model\noptimizer::MOI.OptimizerWithAttributes: The optimizer that is used to solve the model\nexecutions::Int: Number of executions for the emulator run\nexport_problem_results::Bool: If true, export OptimizationProblemResults DataFrames to CSV files.\noutput_dir::String: Required if the model is not already built, otherwise ignored\nenable_progress_bar::Bool: Enables/Disable progress bar printing\nserialize::Bool: If true, serialize the model to a file to allow re-execution later.\n\nExamples\n\nstatus = run!(model; optimizer = GLPK.Optimizer, executions = 10)\nstatus = run!(model; output_dir = ./model_output, optimizer = GLPK.Optimizer, executions = 10)\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":" \n ","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"","category":"page"},{"location":"api/PowerSimulations/#Service-Models","page":"API Reference","title":"Service Models","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"List of structures and methods for Service models","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"ServiceModel","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.ServiceModel","page":"API Reference","title":"PowerSimulations.ServiceModel","text":"Establishes the model for a particular services specified by type. Uses the keyword argument use_service_name to assign the model to a service with the same name as the name in the template. Uses the keyword argument feedforward to enable passing values between operation model at simulation time\n\nArguments\n\n-::Type{D}: Power System Service Type -::Type{B}: Abstract Service Formulation\n\nAccepted Key Words\n\nfeedforward::Array{<:AbstractAffectFeedforward} : use to pass parameters between models\nuse_service_name::Bool : use the name as the name for the service\n\nExample\n\nreserves = ServiceModel(PSY.VariableReserve{PSY.ReserveUp}, RangeReserve)\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":" \n ","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"","category":"page"},{"location":"api/PowerSimulations/#Simulation-Models","page":"API Reference","title":"Simulation Models","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"Refer to the Simulations Page to explanations on how to setup a Simulation, with Sequencing and Feedforwards.","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"SimulationModels\nSimulationSequence\nSimulation\nSimulation(::AbstractString, ::Dict)\nbuild!(::Simulation)\nexecute!(::Simulation)","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.SimulationModels","page":"API Reference","title":"PowerSimulations.SimulationModels","text":"SimulationModels(\n decision_models::Vector{<:DecisionModel},\n emulation_models::Union{Nothing, EmulationModel}\n)\n\nStores the OperationProblem definitions to be used in the simulation. When creating the SimulationModels, the order in which the models are created determines the order on which the simulation is executed.\n\nArguments\n\ndecision_models::Vector{<:DecisionModel}: Vector of decision models.\nemulation_models::Union{Nothing, EmulationModel}: Optional argument to include\n\nan EmulationModel in the Simulation\n\nExample\n\ntemplate_uc = template_unit_commitment()\ntemplate_ed = template_economic_dispatch()\nmy_decision_model_uc = DecisionModel(template_1, sys_uc, optimizer, name = \"UC\")\nmy_decision_model_ed = DecisionModel(template_ed, sys_ed, optimizer, name = \"ED\")\nmodels = SimulationModels(\n decision_models = [\n my_decision_model_uc,\n my_decision_model_ed\n ]\n)\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.SimulationSequence","page":"API Reference","title":"PowerSimulations.SimulationSequence","text":"SimulationSequence(\n models::SimulationModels,\n feedforward::Dict{String, Vector{<:AbstractAffectFeedforward}}\n ini_cond_chronology::InitialConditionChronology\n)\n\nConstruct the simulation sequence between decision and emulation models.\n\nArguments\n\nmodels::SimulationModels: Vector of decisions and emulation models.\nfeedforward = Dict{String, Vector{<:AbstractAffectFeedforward}}(): Optional dictionary to specify how information\n\nand variables are exchanged between decision and emulation models.\n\nini_cond_chronology::nitialConditionChronology = InterProblemChronology(): TODO\n\nExample\n\ntemplate_uc = template_unit_commitment()\ntemplate_ed = template_economic_dispatch()\nmy_decision_model_uc = DecisionModel(template_1, sys_uc, optimizer, name = \"UC\")\nmy_decision_model_ed = DecisionModel(template_ed, sys_ed, optimizer, name = \"ED\")\nmodels = SimulationModels(\n decision_models = [\n my_decision_model_uc,\n my_decision_model_ed\n ]\n)\n# The following sequence set the commitment variables (`OnVariable`) for `ThermalStandard` units from UC to ED.\nsequence = SimulationSequence(;\n models = models,\n feedforwards = Dict(\n \"ED\" => [\n SemiContinuousFeedforward(;\n component_type = ThermalStandard,\n source = OnVariable,\n affected_values = [ActivePowerVariable],\n ),\n ],\n ),\n)\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.Simulation","page":"API Reference","title":"PowerSimulations.Simulation","text":"Simulation(\n sequence::SimulationSequence,\n name::String,\n steps::Int\n models::SimulationModels,\n simulation_folder::String,\n initial_time::Union{Nothing, Dates.DateTime}\n)\n\nConstruct the Simulation structure to run the sequence of decision and emulation models specified.\n\nArguments\n\n-sequence::SimulationSequence: Simulation sequence that specify how the decision and emulation models will be executed. -name::String: Name of the Simulation -steps::Int: Number of steps on which the sequence of models will be executed -models::SimulationModels: List of Decision and Emulation Models -simulation_folder::String: Folder on which results will be stored -initial_time::Union{Nothing, Dates.DateTime} = nothing: Initial time of which the simulation starts. If nothing it will default to the first timestamp of time series of the system.\n\nExample\n\ntemplate_uc = template_unit_commitment()\ntemplate_ed = template_economic_dispatch()\nmy_decision_model_uc = DecisionModel(template_1, sys_uc, optimizer, name = \"UC\")\nmy_decision_model_ed = DecisionModel(template_ed, sys_ed, optimizer, name = \"ED\")\nmodels = SimulationModels(\n decision_models = [\n my_decision_model_uc,\n my_decision_model_ed\n ]\n)\n# The following sequence set the commitment variables (`OnVariable`) for `ThermalStandard` units from UC to ED.\nsequence = SimulationSequence(;\n models = models,\n feedforwards = Dict(\n \"ED\" => [\n SemiContinuousFeedforward(;\n component_type = ThermalStandard,\n source = OnVariable,\n affected_values = [ActivePowerVariable],\n ),\n ],\n ),\n)\n\nsim = Simulation(\n sequence = sequence,\n name = \"Sim\",\n steps = 5,\n models = models,\n simulation_folder = mktempdir(cleanup=true),\n)\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.Simulation-Tuple{AbstractString, Dict}","page":"API Reference","title":"PowerSimulations.Simulation","text":"Simulation(directory::AbstractString, model_info::Dict)\n\n\nConstructs Simulation from a serialized directory. Callers should pass any kwargs here that they passed to the original Simulation.\n\nArguments\n\ndirectory::AbstractString: the directory returned from the call to serialize\nmodel_info::Dict: Two-level dictionary containing model parameters that cannot be serialized. The outer dict should be keyed by the problem name. The inner dict must contain 'optimizer' and may contain 'jump_model'. These should be the same values used for the original simulation.\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/#PowerSimulations.build!-Tuple{Simulation}","page":"API Reference","title":"PowerSimulations.build!","text":"build!(\n sim::Simulation;\n recorders,\n console_level,\n file_level,\n serialize,\n partitions,\n index\n) -> InfrastructureSystems.Simulation.SimulationBuildStatusModule.SimulationBuildStatus\n\n\nBuild the Simulation, problems and the related folder structure.\n\nArguments\n\nsim::Simulation: simulation object\nrecorders::Vector{Symbol} = []: recorder names to register\nserialize::Bool = true: serializes the simulation objects in the simulation\nconsole_level = Logging.Error:\nfile_level = Logging.Info:\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/#PowerSimulations.execute!-Tuple{Simulation}","page":"API Reference","title":"PowerSimulations.execute!","text":"execute!(\n sim::Simulation;\n kwargs...\n) -> InfrastructureSystems.Simulation.RunStatusModule.RunStatus\n\n\nSolves the simulation model for sequential Simulations.\n\nArguments\n\nsim::Simulation=sim: simulation object created by Simulation()\n\nThe optional keyword argument exports controls exporting of results to CSV files as the simulation runs.\n\nExample\n\nsim = Simulation(\"Test\", 7, problems, \"/Users/folder\")\nexecute!(sim::Simulation; kwargs...)\n\n\n\n\n\n","category":"method"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":" \n ","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"","category":"page"},{"location":"api/PowerSimulations/#Variables","page":"API Reference","title":"Variables","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"For a list of variables for each device refer to its Formulations page.","category":"page"},{"location":"api/PowerSimulations/#Common-Variables","page":"API Reference","title":"Common Variables","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"ActivePowerVariable\nReactivePowerVariable\nPieceWiseLinearCostVariable","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.ActivePowerVariable","page":"API Reference","title":"PowerSimulations.ActivePowerVariable","text":"Struct to dispatch the creation of Active Power Variables\n\nDocs abbreviation: p\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.ReactivePowerVariable","page":"API Reference","title":"PowerSimulations.ReactivePowerVariable","text":"Struct to dispatch the creation of Reactive Power Variables\n\nDocs abbreviation: q\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.PieceWiseLinearCostVariable","page":"API Reference","title":"PowerSimulations.PieceWiseLinearCostVariable","text":"Struct to dispatch the creation of piecewise linear cost variables for objective function\n\nDocs abbreviation: delta\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Thermal-Unit-Variables","page":"API Reference","title":"Thermal Unit Variables","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"OnVariable\nStartVariable\nStopVariable\nTimeDurationOn\nTimeDurationOff\nHotStartVariable\nWarmStartVariable\nColdStartVariable\nPowerAboveMinimumVariable\nPowerOutput","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.OnVariable","page":"API Reference","title":"PowerSimulations.OnVariable","text":"Struct to dispatch the creation of a binary commitment status variable\n\nDocs abbreviation: u\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.StartVariable","page":"API Reference","title":"PowerSimulations.StartVariable","text":"Struct to dispatch the creation of Binary Start Variables\n\nDocs abbreviation: v\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.StopVariable","page":"API Reference","title":"PowerSimulations.StopVariable","text":"Struct to dispatch the creation of Binary Stop Variables\n\nDocs abbreviation: w\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.TimeDurationOn","page":"API Reference","title":"PowerSimulations.TimeDurationOn","text":"Auxiliary Variable for Thermal Generation Models to keep track of time elapsed on\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.TimeDurationOff","page":"API Reference","title":"PowerSimulations.TimeDurationOff","text":"Auxiliary Variable for Thermal Generation Models to keep track of time elapsed off\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.HotStartVariable","page":"API Reference","title":"PowerSimulations.HotStartVariable","text":"Struct to dispatch the creation of Hot Start Variable for Thermal units with temperature considerations\n\nDocs abbreviation: z^textth\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.WarmStartVariable","page":"API Reference","title":"PowerSimulations.WarmStartVariable","text":"Struct to dispatch the creation of Warm Start Variable for Thermal units with temperature considerations\n\nDocs abbreviation: y^textth\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.ColdStartVariable","page":"API Reference","title":"PowerSimulations.ColdStartVariable","text":"Struct to dispatch the creation of Cold Start Variable for Thermal units with temperature considerations\n\nDocs abbreviation: x^textth\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.PowerAboveMinimumVariable","page":"API Reference","title":"PowerSimulations.PowerAboveMinimumVariable","text":"Struct to dispatch the creation of Active Power Variables above minimum power for Thermal Compact formulations\n\nDocs abbreviation: Delta p\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.PowerOutput","page":"API Reference","title":"PowerSimulations.PowerOutput","text":"Auxiliary Variable for Thermal Generation Models that solve for power above min\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Storage-Unit-Variables","page":"API Reference","title":"Storage Unit Variables","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"ReservationVariable","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.ReservationVariable","page":"API Reference","title":"PowerSimulations.ReservationVariable","text":"Struct to dispatch the creation of binary storage charge reservation variable\n\nDocs abbreviation: u^textst\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Branches-and-Network-Variables","page":"API Reference","title":"Branches and Network Variables","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"FlowActivePowerVariable\nFlowActivePowerSlackUpperBound\nFlowActivePowerSlackLowerBound\nFlowActivePowerFromToVariable\nFlowActivePowerToFromVariable\nFlowReactivePowerFromToVariable\nFlowReactivePowerToFromVariable\nPhaseShifterAngle\nHVDCLosses\nHVDCFlowDirectionVariable\nVoltageMagnitude\nVoltageAngle","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.FlowActivePowerVariable","page":"API Reference","title":"PowerSimulations.FlowActivePowerVariable","text":"Struct to dispatch the creation of bidirectional Active Power Flow Variables\n\nDocs abbreviation: f\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FlowActivePowerSlackUpperBound","page":"API Reference","title":"PowerSimulations.FlowActivePowerSlackUpperBound","text":"Struct to dispatch the creation of active power flow upper bound slack variables. Used when there is not enough flow through the branch in the forward direction.\n\nDocs abbreviation: f^textslup\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FlowActivePowerSlackLowerBound","page":"API Reference","title":"PowerSimulations.FlowActivePowerSlackLowerBound","text":"Struct to dispatch the creation of active power flow lower bound slack variables. Used when there is not enough flow through the branch in the reverse direction.\n\nDocs abbreviation: f^textsllo\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FlowActivePowerFromToVariable","page":"API Reference","title":"PowerSimulations.FlowActivePowerFromToVariable","text":"Struct to dispatch the creation of unidirectional Active Power Flow Variables\n\nDocs abbreviation: f^textfrom-to\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FlowActivePowerToFromVariable","page":"API Reference","title":"PowerSimulations.FlowActivePowerToFromVariable","text":"Struct to dispatch the creation of unidirectional Active Power Flow Variables\n\nDocs abbreviation: f^textto-from\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FlowReactivePowerFromToVariable","page":"API Reference","title":"PowerSimulations.FlowReactivePowerFromToVariable","text":"Struct to dispatch the creation of unidirectional Reactive Power Flow Variables\n\nDocs abbreviation: f^textqfrom-to\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FlowReactivePowerToFromVariable","page":"API Reference","title":"PowerSimulations.FlowReactivePowerToFromVariable","text":"Struct to dispatch the creation of unidirectional Reactive Power Flow Variables\n\nDocs abbreviation: f^textqto-from\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.PhaseShifterAngle","page":"API Reference","title":"PowerSimulations.PhaseShifterAngle","text":"Struct to dispatch the creation of Phase Shifters Variables\n\nDocs abbreviation: theta^textshift\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.HVDCLosses","page":"API Reference","title":"PowerSimulations.HVDCLosses","text":"Struct to dispatch the creation of HVDC Losses Auxiliary Variables\n\nDocs abbreviation: ell\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.HVDCFlowDirectionVariable","page":"API Reference","title":"PowerSimulations.HVDCFlowDirectionVariable","text":"Struct to dispatch the creation of HVDC Flow Direction Auxiliary Variables\n\nDocs abbreviation: u^textdir\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.VoltageMagnitude","page":"API Reference","title":"PowerSimulations.VoltageMagnitude","text":"Struct to dispatch the creation of Voltage Magnitude Variables for AC formulations\n\nDocs abbreviation: v\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.VoltageAngle","page":"API Reference","title":"PowerSimulations.VoltageAngle","text":"Struct to dispatch the creation of Voltage Angle Variables for AC/DC formulations\n\nDocs abbreviation: theta\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Services-Variables","page":"API Reference","title":"Services Variables","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"ActivePowerReserveVariable\nServiceRequirementVariable\nSystemBalanceSlackUp\nSystemBalanceSlackDown\nReserveRequirementSlack\nInterfaceFlowSlackUp\nInterfaceFlowSlackDown","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.ActivePowerReserveVariable","page":"API Reference","title":"PowerSimulations.ActivePowerReserveVariable","text":"Struct to dispatch the creation of Active Power Reserve Variables\n\nDocs abbreviation: r\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.ServiceRequirementVariable","page":"API Reference","title":"PowerSimulations.ServiceRequirementVariable","text":"Struct to dispatch the creation of Service Requirement Variables\n\nDocs abbreviation: textreq\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.SystemBalanceSlackUp","page":"API Reference","title":"PowerSimulations.SystemBalanceSlackUp","text":"Struct to dispatch the creation of System-wide slack up variables. Used when there is not enough generation.\n\nDocs abbreviation: p^textslup\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.SystemBalanceSlackDown","page":"API Reference","title":"PowerSimulations.SystemBalanceSlackDown","text":"Struct to dispatch the creation of System-wide slack down variables. Used when there is not enough load curtailment.\n\nDocs abbreviation: p^textsldn\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.ReserveRequirementSlack","page":"API Reference","title":"PowerSimulations.ReserveRequirementSlack","text":"Struct to dispatch the creation of Reserve requirement slack variables. Used when there is not reserves in the system to satisfy the requirement.\n\nDocs abbreviation: r^textsl\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.InterfaceFlowSlackUp","page":"API Reference","title":"PowerSimulations.InterfaceFlowSlackUp","text":"Struct to dispatch the creation of Interface Flow Slack Up variables\n\nDocs abbreviation: f^textslup\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.InterfaceFlowSlackDown","page":"API Reference","title":"PowerSimulations.InterfaceFlowSlackDown","text":"Struct to dispatch the creation of Interface Flow Slack Down variables\n\nDocs abbreviation: f^textsldn\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Feedforward-Variables","page":"API Reference","title":"Feedforward Variables","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"UpperBoundFeedForwardSlack\nLowerBoundFeedForwardSlack","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.UpperBoundFeedForwardSlack","page":"API Reference","title":"PowerSimulations.UpperBoundFeedForwardSlack","text":"Struct to dispatch the creation of Slack variables for UpperBoundFeedforward\n\nDocs abbreviation: p^textffubsl\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.LowerBoundFeedForwardSlack","page":"API Reference","title":"PowerSimulations.LowerBoundFeedForwardSlack","text":"Struct to dispatch the creation of Slack variables for LowerBoundFeedforward\n\nDocs abbreviation: p^textfflbsl\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":" \n ","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"","category":"page"},{"location":"api/PowerSimulations/#Constraints","page":"API Reference","title":"Constraints","text":"","category":"section"},{"location":"api/PowerSimulations/#Common-Constraints","page":"API Reference","title":"Common Constraints","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"PieceWiseLinearCostConstraint\n","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.PieceWiseLinearCostConstraint","page":"API Reference","title":"PowerSimulations.PieceWiseLinearCostConstraint","text":"Struct to create the PieceWiseLinearCostConstraint associated with a specified variable.\n\nSee Piecewise linear cost functions for more information.\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Network-Constraints","page":"API Reference","title":"Network Constraints","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"CopperPlateBalanceConstraint\nNodalBalanceActiveConstraint\nNodalBalanceReactiveConstraint","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.CopperPlateBalanceConstraint","page":"API Reference","title":"PowerSimulations.CopperPlateBalanceConstraint","text":"Struct to create the constraint to balance power in the copperplate model. For more information check Network Formulations.\n\nThe specified constraint is generally formulated as:\n\nsum_c in textcomponents p_t^c = 0 quad forall t in 1 dots T\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.NodalBalanceActiveConstraint","page":"API Reference","title":"PowerSimulations.NodalBalanceActiveConstraint","text":"Struct to create the constraint to balance active power in nodal formulation. For more information check Network Formulations.\n\nThe specified constraint depends on the network model chosen.\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.NodalBalanceReactiveConstraint","page":"API Reference","title":"PowerSimulations.NodalBalanceReactiveConstraint","text":"Struct to create the constraint to balance reactive power in nodal formulation. For more information check Network Formulations.\n\nThe specified constraint depends on the network model chosen.\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Power-Variable-Limit-Constraints","page":"API Reference","title":"Power Variable Limit Constraints","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"ActivePowerVariableLimitsConstraint\nReactivePowerVariableLimitsConstraint\nActivePowerVariableTimeSeriesLimitsConstraint\nInputActivePowerVariableLimitsConstraint\nOutputActivePowerVariableLimitsConstraint","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.ActivePowerVariableLimitsConstraint","page":"API Reference","title":"PowerSimulations.ActivePowerVariableLimitsConstraint","text":"Struct to create the constraint to limit active power expressions. For more information check Device Formulations.\n\nThe specified constraint depends on the UpperBound and LowerBound expressions, but in its most basic formulation is of the form:\n\nP^textmin le p_t le P^textmax quad forall t in 1dotsT\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.ReactivePowerVariableLimitsConstraint","page":"API Reference","title":"PowerSimulations.ReactivePowerVariableLimitsConstraint","text":"Struct to create the constraint to limit reactive power expressions. For more information check Device Formulations.\n\nThe specified constraint depends on the UpperBound and LowerBound expressions, but in its most basic formulation is of the form:\n\nQ^textmin le q_t le Q^textmax quad forall t in 1dotsT\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.ActivePowerVariableTimeSeriesLimitsConstraint","page":"API Reference","title":"PowerSimulations.ActivePowerVariableTimeSeriesLimitsConstraint","text":"Struct to create the constraint to limit active power expressions by a time series parameter. For more information check Device Formulations.\n\nThe specified constraint depends on the UpperBound expressions, but in its most basic formulation is of the form:\n\np_t le textActivePowerTimeSeriesParameter_t quad forall t in 1dotsT\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.InputActivePowerVariableLimitsConstraint","page":"API Reference","title":"PowerSimulations.InputActivePowerVariableLimitsConstraint","text":"Struct to create the constraint to limit active power input expressions. For more information check Device Formulations.\n\nThe specified constraint depends on the UpperBound and LowerBound expressions, but in its most basic formulation is of the form:\n\nP^textmin le p_t^textin le P^textmax quad forall t in 1dotsT\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.OutputActivePowerVariableLimitsConstraint","page":"API Reference","title":"PowerSimulations.OutputActivePowerVariableLimitsConstraint","text":"Struct to create the constraint to limit active power output expressions. For more information check Device Formulations.\n\nThe specified constraint depends on the UpperBound and LowerBound expressions, but in its most basic formulation is of the form:\n\nP^textmin le p_t^textout le P^textmax quad forall t in 1dotsT\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Services-Constraints","page":"API Reference","title":"Services Constraints","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"RequirementConstraint\nParticipationFractionConstraint\nReservePowerConstraint","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.RequirementConstraint","page":"API Reference","title":"PowerSimulations.RequirementConstraint","text":"Struct to create the constraint for satisfying active power reserve requirements. For more information check Service Formulations.\n\nThe constraint is as follows:\n\nsum_dinmathcalD_s r_dt + r_t^textsl ge textReqquad forall tin 1dots T quad text(for a ConstantReserve) \nsum_dinmathcalD_s r_dt + r_t^textsl ge textRequirementTimeSeriesParameter_tquad forall tin 1dots T quad text(for a VariableReserve)\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.ParticipationFractionConstraint","page":"API Reference","title":"PowerSimulations.ParticipationFractionConstraint","text":"Struct to create the constraint to participation assignments limits in the active power reserves. For more information check Service Formulations.\n\nThe constraint is as follows:\n\nr_dt le textReq cdot textPF quad forall din mathcalD_s forall tin 1dots T quad text(for a ConstantReserve) \nr_dt le textRequirementTimeSeriesParameter_t cdot textPFquad forall din mathcalD_s forall tin 1dots T quad text(for a VariableReserve)\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.ReservePowerConstraint","page":"API Reference","title":"PowerSimulations.ReservePowerConstraint","text":"Struct to create the constraint for ensuring that NonSpinning Reserve can be delivered from turn-off thermal units.\n\nFor more information check Service Formulations for NonSpinningReserve.\n\nThe constraint is as follows:\n\nr_dt le (1 - u_dt^textth) cdot R^textlimit_d quad forall d in mathcalD_s forall t in 1dots T\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Thermal-Unit-Constraints","page":"API Reference","title":"Thermal Unit Constraints","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"ActiveRangeICConstraint\nCommitmentConstraint\nDurationConstraint\nRampConstraint\nStartupInitialConditionConstraint\nStartupTimeLimitTemperatureConstraint","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.ActiveRangeICConstraint","page":"API Reference","title":"PowerSimulations.ActiveRangeICConstraint","text":"Struct to create the constraint for starting up ThermalMultiStart units. For more information check ThermalGen Formulations for ThermalMultiStartUnitCommitment.\n\nThe specified constraint is formulated as:\n\nmaxP^textthmax - P^textthshdown 0 cdot w_1^textth le u^textthinit (P^textthmax - P^textthmin) - P^textthinit\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.CommitmentConstraint","page":"API Reference","title":"PowerSimulations.CommitmentConstraint","text":"Struct to create the commitment constraint between the on, start, and stop variables. For more information check ThermalGen Formulations.\n\nThe specified constraints are formulated as:\n\nu_1^textth = u^textthinit + v_1^textth - w_1^textth \nu_t^textth = u_t-1^textth + v_t^textth - w_t^textth quad forall t in 2dotsT \nv_t^textth + w_t^textth le 1 quad forall t in 1dotsT\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.DurationConstraint","page":"API Reference","title":"PowerSimulations.DurationConstraint","text":"Struct to create the duration constraint for commitment formulations, i.e. min-up and min-down.\n\nFor more information check ThermalGen Formulations.\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.RampConstraint","page":"API Reference","title":"PowerSimulations.RampConstraint","text":"Struct to create the RampConstraint associated with a specified thermal device or reserve service.\n\nFor thermal units, see more information in Thermal Formulations. The constraint is as follows:\n\n-R^textthdn le p_t^textth - p_t-1^textth le R^textthup quad forall tin 1 dots T\n\nFor Ramp Reserve, see more information in Service Formulations. The constraint is as follows:\n\nr_dt le R^textthup cdot textTFquad forall din mathcalD_s forall tin 1dots T quad text(for ReserveUp) \nr_dt le R^textthdn cdot textTFquad forall din mathcalD_s forall tin 1dots T quad text(for ReserveDown)\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.StartupInitialConditionConstraint","page":"API Reference","title":"PowerSimulations.StartupInitialConditionConstraint","text":"Struct to create the start-up initial condition constraints for ThermalMultiStart.\n\nFor more information check ThermalGen Formulations for ThermalMultiStartUnitCommitment.\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.StartupTimeLimitTemperatureConstraint","page":"API Reference","title":"PowerSimulations.StartupTimeLimitTemperatureConstraint","text":"Struct to create the start-up time limit constraints for ThermalMultiStart.\n\nFor more information check ThermalGen Formulations for ThermalMultiStartUnitCommitment.\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Renewable-Unit-Constraints","page":"API Reference","title":"Renewable Unit Constraints","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"EqualityConstraint","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.EqualityConstraint","page":"API Reference","title":"PowerSimulations.EqualityConstraint","text":"Struct to create the constraint that sets the reactive power to the power factor in the RenewableConstantPowerFactor formulation for renewable units.\n\nFor more information check RenewableGen Formulations.\n\nThe specified constraint is formulated as:\n\nq_t^textre = textpf cdot p_t^textre quad forall t in 1dots T\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Branches-Constraints","page":"API Reference","title":"Branches Constraints","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"FlowLimitConstraint\nFlowRateConstraint\nFlowRateConstraintFromTo\nFlowRateConstraintToFrom\nHVDCLossesAbsoluteValue\nHVDCPowerBalance\nNetworkFlowConstraint\nRateLimitConstraint\nPhaseAngleControlLimit","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.FlowLimitConstraint","page":"API Reference","title":"PowerSimulations.FlowLimitConstraint","text":"Struct to create the constraint that set the flow limits through a PhaseShiftingTransformer.\n\nFor more information check Branch Formulations.\n\nThe specified constraint is formulated as:\n\n-R^textmax le f_t le R^textmax quad forall t in 1dotsT\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FlowRateConstraint","page":"API Reference","title":"PowerSimulations.FlowRateConstraint","text":"Struct to create the constraint that set the flow limits through an HVDC two-terminal branch.\n\nFor more information check Branch Formulations.\n\nThe specified constraint is formulated as:\n\nR^textmin le f_t le R^textmax quad forall t in 1dotsT\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FlowRateConstraintFromTo","page":"API Reference","title":"PowerSimulations.FlowRateConstraintFromTo","text":"Struct to create the constraint that set the flow from-to limits through an HVDC two-terminal branch.\n\nFor more information check Branch Formulations.\n\nThe specified constraint is formulated as:\n\nR^textfrommin le f_t^textfrom-to le R^textfrommax forall t in 1dots T\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FlowRateConstraintToFrom","page":"API Reference","title":"PowerSimulations.FlowRateConstraintToFrom","text":"Struct to create the constraint that set the flow to-from limits through an HVDC two-terminal branch.\n\nFor more information check Branch Formulations.\n\nThe specified constraint is formulated as:\n\nR^texttomin le f_t^textto-from le R^texttomaxquad forall t in 1dots T\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.HVDCLossesAbsoluteValue","page":"API Reference","title":"PowerSimulations.HVDCLossesAbsoluteValue","text":"Struct to create the constraints that set the losses through a lossy HVDC two-terminal line.\n\nFor more information check Branch Formulations.\n\nThe specified constraints are formulated as:\n\nbeginalign*\n f_t^textto-from - f_t^textfrom-to le ell_tquad forall t in 1dots T \n f_t^textfrom-to - f_t^textto-from le ell_tquad forall t in 1dots T\nendalign*\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.HVDCPowerBalance","page":"API Reference","title":"PowerSimulations.HVDCPowerBalance","text":"Struct to create the constraints that set the power balance across a lossy HVDC two-terminal line.\n\nFor more information check Branch Formulations.\n\nThe specified constraints are formulated as:\n\nbeginalign*\n f_t^textto-from - f_t^textfrom-to le L_1 cdot f_t^textto-from - L_0quad forall t in 1dots T \n f_t^textfrom-to - f_t^textto-from ge L_1 cdot f_t^textfrom-to + L_0quad forall t in 1dots T \n f_t^textfrom-to - f_t^textto-from ge - M^textbig (1 - u^textdir_t)quad forall t in 1dots T \n f_t^textto-from - f_t^textfrom-to ge - M^textbig u^textdir_tquad forall t in 1dots T \nendalign*\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.NetworkFlowConstraint","page":"API Reference","title":"PowerSimulations.NetworkFlowConstraint","text":"Struct to create the constraint the AC branch flows depending on the network model. For more information check Branch Formulations.\n\nThe specified constraint depends on the network model chosen. The most common application is the StaticBranch in a PTDF Network Model:\n\nf_t = sum_i=1^N textPTDF_ib cdot textBal_it quad forall t in 1dots T\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.RateLimitConstraint","page":"API Reference","title":"PowerSimulations.RateLimitConstraint","text":"Struct to create the constraint that set the AC flow limits through branches.\n\nFor more information check Branch Formulations.\n\nThe specified constraint is formulated as:\n\nbeginalign*\n f_t - f_t^textslup le R^textmaxquad forall t in 1dots T \n f_t + f_t^textsllo ge -R^textmaxquad forall t in 1dots T\nendalign*\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.PhaseAngleControlLimit","page":"API Reference","title":"PowerSimulations.PhaseAngleControlLimit","text":"Struct to create the constraint that set the angle limits through a PhaseShiftingTransformer.\n\nFor more information check Branch Formulations.\n\nThe specified constraint is formulated as:\n\nTheta^textmin le theta^textshift_t le Theta^textmax quad forall t in 1dotsT\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Feedforward-Constraints","page":"API Reference","title":"Feedforward Constraints","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"FeedforwardSemiContinuousConstraint\nFeedforwardUpperBoundConstraint\nFeedforwardLowerBoundConstraint","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.FeedforwardSemiContinuousConstraint","page":"API Reference","title":"PowerSimulations.FeedforwardSemiContinuousConstraint","text":"Struct to create the constraint for semicontinuous feedforward limits.\n\nFor more information check Feedforward Formulations.\n\nThe specified constraint is formulated as:\n\nbeginalign*\n textActivePowerRangeExpressionUB_t = p_t^textth - texton_t^textthP^textthmax le 0 quad forall tin 1 dots T \n textActivePowerRangeExpressionLB_t = p_t^textth - texton_t^textthP^textthmin ge 0 quad forall tin 1 dots T\nendalign*\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FeedforwardUpperBoundConstraint","page":"API Reference","title":"PowerSimulations.FeedforwardUpperBoundConstraint","text":"Struct to create the constraint for upper bound feedforward limits.\n\nFor more information check Feedforward Formulations.\n\nThe specified constraint is formulated as:\n\nbeginalign*\n textAffectedVariable_t - p_t^textffubsl le textSourceVariableParameter_t quad forall t in 1dots T\nendalign*\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FeedforwardLowerBoundConstraint","page":"API Reference","title":"PowerSimulations.FeedforwardLowerBoundConstraint","text":"Struct to create the constraint for lower bound feedforward limits.\n\nFor more information check Feedforward Formulations.\n\nThe specified constraint is formulated as:\n\nbeginalign*\n textAffectedVariable_t + p_t^textfflbsl ge textSourceVariableParameter_t quad forall t in 1dots T\nendalign*\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":" \n ","category":"page"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"","category":"page"},{"location":"api/PowerSimulations/#Parameters","page":"API Reference","title":"Parameters","text":"","category":"section"},{"location":"api/PowerSimulations/#Time-Series-Parameters","page":"API Reference","title":"Time Series Parameters","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"ActivePowerTimeSeriesParameter\nReactivePowerTimeSeriesParameter\nRequirementTimeSeriesParameter","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.ActivePowerTimeSeriesParameter","page":"API Reference","title":"PowerSimulations.ActivePowerTimeSeriesParameter","text":"Parameter to define active power time series\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.ReactivePowerTimeSeriesParameter","page":"API Reference","title":"PowerSimulations.ReactivePowerTimeSeriesParameter","text":"Parameter to define reactive power time series\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.RequirementTimeSeriesParameter","page":"API Reference","title":"PowerSimulations.RequirementTimeSeriesParameter","text":"Parameter to define requirement time series\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Variable-Value-Parameters","page":"API Reference","title":"Variable Value Parameters","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"UpperBoundValueParameter\nLowerBoundValueParameter\nOnStatusParameter\nFixValueParameter","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.UpperBoundValueParameter","page":"API Reference","title":"PowerSimulations.UpperBoundValueParameter","text":"Parameter to define variable upper bound\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.LowerBoundValueParameter","page":"API Reference","title":"PowerSimulations.LowerBoundValueParameter","text":"Parameter to define variable lower bound\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.OnStatusParameter","page":"API Reference","title":"PowerSimulations.OnStatusParameter","text":"Parameter to define unit commitment status\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#PowerSimulations.FixValueParameter","page":"API Reference","title":"PowerSimulations.FixValueParameter","text":"Parameter to FixValueParameter\n\n\n\n\n\n","category":"type"},{"location":"api/PowerSimulations/#Objective-Function-Parameters","page":"API Reference","title":"Objective Function Parameters","text":"","category":"section"},{"location":"api/PowerSimulations/","page":"API Reference","title":"API Reference","text":"CostFunctionParameter","category":"page"},{"location":"api/PowerSimulations/#PowerSimulations.CostFunctionParameter","page":"API Reference","title":"PowerSimulations.CostFunctionParameter","text":"Parameter to define cost function coefficient\n\n\n\n\n\n","category":"type"},{"location":"modeler_guide/read_results/#read_results","page":"Read results","title":"Read results","text":"","category":"section"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"Once a DecisionModel is solved via solve!(model) or a Simulation is executed (and solved) via execute!(simulation), the results are stored and can be accessed directly in the REPL for result exploration and plotting.","category":"page"},{"location":"modeler_guide/read_results/#Read-results-of-a-Decision-Problem","page":"Read results","title":"Read results of a Decision Problem","text":"","category":"section"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"Once a DecisionModel is solved, results are accessed using OptimizationProblemResults(model) as follows:","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"# The DecisionModel is already constructed\nbuild!(model, output_dir = mktempdir())\nsolve!(model)\n\nresults = OptimizationProblemResults(model)","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"The output will showcase the available expressions, parameters and variables to read. For example it will look like:","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"Start: 2020-01-01T00:00:00\nEnd: 2020-01-03T23:00:00\nResolution: 60 minutes\n\nPowerSimulations Problem Auxiliary variables Results\n┌──────────────────────────────────────────┐\n│ CumulativeCyclingCharge__HybridSystem │\n│ CumulativeCyclingDischarge__HybridSystem │\n└──────────────────────────────────────────┘\n\nPowerSimulations Problem Expressions Results\n┌─────────────────────────────────────────────┐\n│ ProductionCostExpression__RenewableDispatch │\n│ ProductionCostExpression__ThermalStandard │\n└─────────────────────────────────────────────┘\n\nPowerSimulations Problem Duals Results\n┌──────────────────────────────────────┐\n│ CopperPlateBalanceConstraint__System │\n└──────────────────────────────────────┘\n\nPowerSimulations Problem Parameters Results\n┌────────────────────────────────────────────────────────────────────────┐\n│ ActivePowerTimeSeriesParameter__RenewableNonDispatch │\n│ RenewablePowerTimeSeries__HybridSystem │\n│ RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Spin_Up_R3 │\n│ RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Reg_Up │\n│ ActivePowerTimeSeriesParameter__PowerLoad │\n│ ActivePowerTimeSeriesParameter__RenewableDispatch │\n│ RequirementTimeSeriesParameter__VariableReserve__ReserveDown__Reg_Down │\n│ ActivePowerTimeSeriesParameter__HydroDispatch │\n│ RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Spin_Up_R1 │\n│ RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Spin_Up_R2 │\n└────────────────────────────────────────────────────────────────────────┘\n\nPowerSimulations Problem Variables Results\n┌────────────────────────────────────────────────────────────────────┐\n│ ActivePowerOutVariable__HybridSystem │\n│ ReservationVariable__HybridSystem │\n│ RenewablePower__HybridSystem │\n│ ActivePowerReserveVariable__VariableReserve__ReserveUp__Spin_Up_R1 │\n│ SystemBalanceSlackUp__System │\n│ BatteryEnergyShortageVariable__HybridSystem │\n│ ActivePowerReserveVariable__VariableReserve__ReserveUp__Reg_Up │\n│ StopVariable__ThermalStandard │\n│ BatteryStatus__HybridSystem │\n│ BatteryDischarge__HybridSystem │\n│ ActivePowerInVariable__HybridSystem │\n│ DischargeRegularizationVariable__HybridSystem │\n│ BatteryCharge__HybridSystem │\n│ ActivePowerVariable__RenewableDispatch │\n│ ActivePowerReserveVariable__VariableReserve__ReserveDown__Reg_Down │\n│ EnergyVariable__HybridSystem │\n│ OnVariable__HybridSystem │\n│ BatteryEnergySurplusVariable__HybridSystem │\n│ SystemBalanceSlackDown__System │\n│ ActivePowerReserveVariable__VariableReserve__ReserveUp__Spin_Up_R2 │\n│ ThermalPower__HybridSystem │\n│ ActivePowerVariable__ThermalStandard │\n│ StartVariable__ThermalStandard │\n│ ActivePowerReserveVariable__VariableReserve__ReserveUp__Spin_Up_R3 │\n│ OnVariable__ThermalStandard │\n│ ChargeRegularizationVariable__HybridSystem │\n└────────────────────────────────────────────────────────────────────┘","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"Then the following code can be used to read results:","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"# Read active power of Thermal Standard\nthermal_active_power = read_variable(results, \"ActivePowerVariable__ThermalStandard\")\n\n# Read max active power parameter of RenewableDispatch\nrenewable_param = read_parameter(results, \"ActivePowerTimeSeriesParameter__RenewableDispatch\")\n\n# Read cost expressions of ThermalStandard units\ncost_thermal = read_expression(results, \"ProductionCostExpression__ThermalStandard\")\n\n# Read dual variables\ndual_balance_constraint = read_dual(results, \"CopperPlateBalanceConstraint__System\")\n\n# Read auxiliary variables\naux_var_result = read_aux_variable(results, \"CumulativeCyclingCharge__HybridSystem\")","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"Results will be in the form of DataFrames that can be easily explored.","category":"page"},{"location":"modeler_guide/read_results/#Read-results-of-a-Simulation","page":"Read results","title":"Read results of a Simulation","text":"","category":"section"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"# The Simulation is already constructed\nbuild!(sim)\nexecute!(sim; enable_progress_bar=true)\n\nresults_sim = SimulationResults(sim)","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"As an example, the SimulationResults printing will look like:","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"Decision Problem Results\n┌──────────────┬─────────────────────┬──────────────┬─────────────────────────┐\n│ Problem Name │ Initial Time │ Resolution │ Last Solution Timestamp │\n├──────────────┼─────────────────────┼──────────────┼─────────────────────────┤\n│ ED │ 2020-10-02T00:00:00 │ 60 minutes │ 2020-10-09T23:00:00 │\n│ UC │ 2020-10-02T00:00:00 │ 1440 minutes │ 2020-10-09T00:00:00 │\n└──────────────┴─────────────────────┴──────────────┴─────────────────────────┘\n\nEmulator Results\n┌─────────────────┬───────────┐\n│ Name │ Emulator │\n│ Resolution │ 5 minutes │\n│ Number of steps │ 2304 │\n└─────────────────┴───────────┘","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"With this, it is possible to obtain results of each DecisionModel and EmulationModel as follows:","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"# Use the Problem Name for Decision Problems\nresults_uc = get_decision_problem_results(results_sim, \"UC\")\nresults_ed = get_decision_problem_results(results_sim, \"ED\")\nresults_emulator = get_emulation_problem_results(results_sim)","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"Once we have each decision (or emulation) problem results, we can explore directly using the approach for Decision Models, mentioned in the previous section.","category":"page"},{"location":"modeler_guide/read_results/#Reading-solutions-for-all-simulation-steps","page":"Read results","title":"Reading solutions for all simulation steps","text":"","category":"section"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"In this case, using read_variable (or read expression, parameter or dual), will return a dictionary of all steps (of that Decision Problem). For example, the following code:","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"thermal_active_power = read_variable(results_uc, \"ActivePowerVariable__ThermalStandard\")","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"will return:","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"DataStructures.SortedDict{Any, Any, Base.Order.ForwardOrdering} with 8 entries:\n DateTime(\"2020-10-02T00:00:00\") => 72×54 DataFrame…\n DateTime(\"2020-10-03T00:00:00\") => 72×54 DataFrame…\n DateTime(\"2020-10-04T00:00:00\") => 72×54 DataFrame…\n DateTime(\"2020-10-05T00:00:00\") => 72×54 DataFrame…\n DateTime(\"2020-10-06T00:00:00\") => 72×54 DataFrame…\n DateTime(\"2020-10-07T00:00:00\") => 72×54 DataFrame…\n DateTime(\"2020-10-08T00:00:00\") => 72×54 DataFrame…\n DateTime(\"2020-10-09T00:00:00\") => 72×54 DataFrame…","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"That is, a sorted dictionary for each simulation step, using as a key the initial timestamp for that specific simulation step.","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"Note that in this case, each DataFrame, has a dimension of 72 times 54, since the horizon is 72 hours (number of rows), but the interval is only 24 hours. Indeed, note the initial timestamp of each simulation step is the beginning of each day, i.e. 24 hours. Finally, there 54 columns, since this example system has 53 ThermalStandard units (plus 1 column for the timestamps). The user is free to explore the solution of any simulation step as needed.","category":"page"},{"location":"modeler_guide/read_results/#Reading-the-\"realized\"-solution-(i.e.-the-interval)","page":"Read results","title":"Reading the \"realized\" solution (i.e. the interval)","text":"","category":"section"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"Using read_realized_variable (or read realized expression, parameter or dual), will return the DataFrame of the realized solution of any specific variable. That is, it will concatenate the corresponding simulation step with the specified interval of that step, to construct a single DataFrame with the \"realized solution\" of the entire simulation.","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"For example, the code:","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"th_realized_power = read_realized_variable(results_uc, \"ActivePowerVariable__ThermalStandard\")","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"will return:","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"92×54 DataFrame\n Row │ DateTime 322_CT_6 321_CC_1 202_STEAM_3 223_CT_4 123_STEAM_2 213_CT_1 223_CT_6 313_CC_1 101_STEAM_3 123_C ⋯\n │ DateTime Float64 Float64 Float64 Float64 Float64 Float64 Float64 Float64 Float64 Float ⋯\n─────┼───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\n 1 │ 2020-10-02T00:00:00 0.0 293.333 0.0 0.0 0.0 0.0 0.0 231.667 76.0 0.0 ⋯\n 2 │ 2020-10-02T01:00:00 0.0 267.552 0.0 0.0 0.0 0.0 0.0 231.667 76.0 0.0\n 3 │ 2020-10-02T02:00:00 0.0 234.255 0.0 0.0 -4.97544e-11 0.0 0.0 231.667 76.0 0.0\n 4 │ 2020-10-02T03:00:00 0.0 249.099 0.0 0.0 -4.97544e-11 0.0 0.0 231.667 76.0 0.0\n 5 │ 2020-10-02T04:00:00 0.0 293.333 0.0 0.0 -4.97544e-11 0.0 0.0 231.667 76.0 0.0 ⋯\n 6 │ 2020-10-02T05:00:00 0.0 293.333 1.27578e-11 0.0 -4.97544e-11 0.0 0.0 293.333 76.0 0.0\n ⋮ │ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋱\n 187 │ 2020-10-09T18:00:00 0.0 293.333 76.0 0.0 155.0 0.0 0.0 318.843 76.0 0.0\n 188 │ 2020-10-09T19:00:00 0.0 293.333 76.0 0.0 124.0 0.0 0.0 293.333 76.0 0.0\n 189 │ 2020-10-09T20:00:00 0.0 293.333 60.6667 0.0 124.0 0.0 0.0 0.0 76.0 0.0 ⋯\n 190 │ 2020-10-09T21:00:00 -7.65965e-12 293.333 60.6667 0.0 124.0 0.0 0.0 0.0 76.0 0.0\n 191 │ 2020-10-09T22:00:00 0.0 0.0 60.6667 0.0 124.0 0.0 0.0 0.0 76.0 7.156\n 192 │ 2020-10-09T23:00:00 0.0 0.0 60.6667 0.0 117.81 0.0 0.0 0.0 76.0 0.0\n 44 columns and 180 rows omitted","category":"page"},{"location":"modeler_guide/read_results/","page":"Read results","title":"Read results","text":"In this case, the 8 simulation steps of 24 hours (192 hours), in a single DataFrame, to enable easy exploration of the realized results for the user.","category":"page"},{"location":"tutorials/basics_of_developing_models/#Basics-of-Developing-Operation-Models","page":"Basics of Developing Operation Models","title":"Basics of Developing Operation Models","text":"","category":"section"},{"location":"tutorials/basics_of_developing_models/","page":"Basics of Developing Operation Models","title":"Basics of Developing Operation Models","text":"Check the page PowerSimulations Structure for more background on PowerSimulations.jl","category":"page"},{"location":"modeler_guide/definitions/#Definitions","page":"Definitions","title":"Definitions","text":"","category":"section"},{"location":"modeler_guide/definitions/#A","page":"Definitions","title":"A","text":"","category":"section"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"Attributes: Certain device formulations can be customized by specifying attributes that will include/remove certain variables, expressions and/or constraints. For example, in StorageSystemsSimulations.jl, the device formulation of StorageDispatchWithReserves can be specified with the following dictionary of attributes:","category":"page"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"set_device_model!(\n template,\n DeviceModel(\n GenericBattery,\n StorageDispatchWithReserves;\n attributes=Dict{String, Any}(\n \"reservation\" => false,\n \"cycling_limits\" => false,\n \"energy_target\" => false,\n \"complete_coverage\" => false,\n \"regularization\" => false,\n ),\n ),\n)","category":"page"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"Changing the attributes between true or false can enable/disable multiple aspects of the formulation.","category":"page"},{"location":"modeler_guide/definitions/#C","page":"Definitions","title":"C","text":"","category":"section"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"Chronologies: In PowerSimulations.jl, chronologies define where information is flowing. There are two types of chronologies. 1) inter-stage chronologies (InterProblemChronology) that define how information flows between stages. e.g. day-ahead solutions are used to inform economic dispatch problems; and 2) intra-stage chronologies (IntraProblemChronology) that define how information flows between multiple executions of a single stage. e.g. the dispatch setpoints of the first period of an economic dispatch problem are constrained by the ramping limits from setpoints in the final period of the previous problem.","category":"page"},{"location":"modeler_guide/definitions/#D","page":"Definitions","title":"D","text":"","category":"section"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"Decision Problem: A decision problem calculates the desired system operation based on forecasts of uncertain inputs and information about the state of the system. The output of a decision problem represents the policies used to drive the set-points of the system's devices, like generators or switches, and depends on the purpose of the problem. See the Decision Model Tutorial to learn more about solving individual problems.\nDevice Formulation: The model of a device that is incorporated into a large system optimization models. For instance, the storage device model used inside of a Unit Commitment (UC) problem. A device model needs to follow some requirements to be integrated into operation problems. For more information about valid DeviceModels and their mathematical representations, check out the Formulation Library.","category":"page"},{"location":"modeler_guide/definitions/#E","page":"Definitions","title":"E","text":"","category":"section"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"Emulation Problem: An emulation problem is used to mimic the system's behavior subject to an incoming decision and the realization of a forecasted inputs. The solution of the emulator produces outputs representative of the system performance when operating subject the policies resulting from the decision models.","category":"page"},{"location":"modeler_guide/definitions/#F","page":"Definitions","title":"F","text":"","category":"section"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"FeedForward: The definition of exactly what information is passed using the defined chronologies is accomplished using FeedForwards. Specifically, a FeedForward is used to define what to do with information being passed with an inter-stage chronology in a Simulation. The most common FeedForward is the SemiContinuousFeedForward that affects the semi-continuous range constraints of thermal generators in the economic dispatch problems based on the value of the (already solved) unit-commitment variables.","category":"page"},{"location":"modeler_guide/definitions/#H","page":"Definitions","title":"H","text":"","category":"section"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"Horizon: The number of steps in the look-ahead of a decision problem. For instance, a Day-Ahead problem usually has a 48 step horizon. Check the time Time Series Data Section in PowerSystems.jl","category":"page"},{"location":"modeler_guide/definitions/#I","page":"Definitions","title":"I","text":"","category":"section"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"Interval: The amount of time between updates to the decision problem. For instance, Day-Ahead problems usually have a 24-hour intervals and Real-Time problems have 5-minute intervals. Check the time Time Series Data Section in PowerSystems.jl","category":"page"},{"location":"modeler_guide/definitions/#R","page":"Definitions","title":"R","text":"","category":"section"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"Resolution: The amount of time between time steps in a simulation. For instance 1-hour or 5-minutes. In Julia these are defined using the syntax Hour(1) and Minute(5). Check the time Time Series Data Section in PowerSystems.jl\nResults vs Realized Results: In PowerSimulations.jl the term results is used to refer to the solution of all optimization problems in a Simulation. When using read_variable(results, Variable) in a DecisionModel of a simulation, the output is a dictionary with the values of such variable for every optimization problem solved, while read_realized_variable(results, Variable) will return the values of the specified interval and number of steps in the simulation. See the Read Results page for more details.","category":"page"},{"location":"modeler_guide/definitions/#S","page":"Definitions","title":"S","text":"","category":"section"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"Service Formulation: The model of a service that is incorporated into a large system optimization models. Services (or ancillary services) are models used to ensure that there is necessary support to the power grid from generators to consumers, in order to ensure reliable operation of the system. The most common application for ancillary services are reserves, i.e., generation (or load) that is not currently being used, but can be quickly made available in case of unexpected changes of grid conditions, for example a sudden loss of load or generation. A service model needs to follow some requirements to be integrated into operation problems. For more information about valid ServiceModels and their mathematical representations, check out the Formulation Library.\nSimulation: A simulation is a pre-determined sequence of decision problems in a way that solving it, resembles the solution procedures commonly used by operators. The most common simulation model is the solution of a Unit Commitment and Economic Dispatch sequence of problems.\nSolver: A solver is a software package that incorporates algorithms for finding solutions to one or more classes of optimization problem. For example, FICO Xpress is a commercial optimization solver for linear programming (LP), convex quadratic programming (QP) problems, convex quadratically constrained quadratic programming (QCQP), second-order cone programming (SOCP) and their mixed integer counterparts. A solver is required to be specified in order to solve any computer optimization problem.","category":"page"},{"location":"modeler_guide/definitions/#T","page":"Definitions","title":"T","text":"","category":"section"},{"location":"modeler_guide/definitions/","page":"Definitions","title":"Definitions","text":"Template: A ProblemTemplate is just a collection of DeviceModels that allows the user to specify the formulations of each set of devices (by device type) independently so that the modeler can adjust the level of detail according to the question of interest and the available data. For more information about valid DeviceModels and their mathematical representations, check out the Formulation Library.","category":"page"},{"location":"formulation_library/Introduction/#formulation_intro","page":"Introduction","title":"Formulations Introduction","text":"","category":"section"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"PowerSimulations.jl enables modularity in its formulations by assigning a DeviceModel to each PowerSystems.jl component type existing in a defined system.","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"PowerSimulations.jl has a multiple AbstractDeviceFormulation subtypes that can be applied to different PowerSystems.jl device types, each dispatching to different methods for populating the optimization problem variables, objective function, expressions and constraints.","category":"page"},{"location":"formulation_library/Introduction/#Example-Formulation","page":"Introduction","title":"Example Formulation","text":"","category":"section"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"For example a typical optimization problem in a DecisionModel in PowerSimulations.jl with three DeviceModel has the abstract form of:","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"beginalign*\n min_boldsymbolx textObjective_DeviceModelA + textObjective_DeviceModelB + textObjective_DeviceModelC \n textst \n hspace09cm textConstraints_NetworkModel \n hspace09cm textConstraints_DeviceModelA \n hspace09cm textConstraints_DeviceModelB \n hspace09cm textConstraints_DeviceModelC \nendalign*","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"Suppose this is a system with the following characteristics:","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"Horizon: 48 hours\nInterval: 24 hours\nResolution: 1 hour\nThree Buses: 1, 2 and 3\nOne ThermalStandard (device A) unit at bus 1\nOne RenewableDispatch (device B) unit at bus 2\nOne PowerLoad (device C) at bus 3\nThree Line that connects all the buses","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"Now, we assign the following DeviceModel to each PowerSystems.jl with:","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"Type Formulation\nNetwork CopperPlatePowerModel\nThermalStandard ThermalDispatchNoMin\nRenewableDispatch RenewableFullDispatch\nPowerLoad StaticPowerLoad","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"Note that we did not assign any DeviceModel to Line since the CopperPlatePowerModel used for the network assumes that everything is lumped in the same node (like a copper plate with infinite capacity), and hence there are no flows between buses that branches can limit.","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"Each DeviceModel formulation is described in specific in their respective page, but the overall optimization problem will end-up as:","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"beginalign*\n min_boldsymbolp^textth boldsymbolp^textre sum_t=1^48 C^textth p_t^textth - C^textre p_t^textre \n textst \n hspace09cm p_t^textth + p_t^textre = P_t^textload quad forall t in 1dots 48 \n hspace09cm 0 le p_t^textth le P^textthmax \n hspace09cm 0 le p_t^textre le textActivePowerTimeSeriesParameter_t \nendalign*","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"Note that the StaticPowerLoad does not impose any cost to the objective function or constraint but adds its power demand to the supply-balance demand of the CopperPlatePowerModel used. Since we are using the ThermalDispatchNoMin formulation for the thermal generation, the lower bound for the power is 0, instead of P^textthmin. In addition, we are assuming a linear cost C^textth. Finally, the RenewableFullDispatch formulation allows the dispatch of the renewable unit between 0 and its maximum injection time series p_t^textreparam.","category":"page"},{"location":"formulation_library/Introduction/#Nomenclature","page":"Introduction","title":"Nomenclature","text":"","category":"section"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"In the formulations described in the other pages, the nomenclature is as follows:","category":"page"},{"location":"formulation_library/Introduction/","page":"Introduction","title":"Introduction","text":"Lowercase letters are used for variables, e.g., p for power.\nUppercase letters are used for parameters, e.g., C for costs.\nSubscripts are used for indexing, e.g., (cdot)_t for indexing at time t.\nSuperscripts are used for descriptions, e.g., (cdot)^textth to describe a thermal (th) variable/parameter.\nBold letters are used for vectors, e.g., boldsymbolp = p_1dots24.","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/#Debugging-infeasible-models","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"","category":"section"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"Getting infeasible solutions to models is a common occurrence in operations simulations, there are multiple reasons why this can happen. PowerSimulations.jl has several tools to help debug this situation.","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/#Adding-slacks-to-the-model","page":"Debugging infeasible models","title":"Adding slacks to the model","text":"","category":"section"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"One of the most common infeasibility issues observed is due to not enough generation to supply demand, or conversely, excessive fixed (non-curtailable) generation in a low demand scenario. ","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"The recommended solution for any of these cases is adding slack variables to the network model, for example:","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"template_uc = ProblemTemplate(\n NetworkModel(\n CopperPlatePowerModel,\n use_slacks=true,\n ),\n )","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"will add slack variables to the ActivePowerBalance expression.","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"In this case, if the problem is now feasible, the user can check the solution of the variables SystemBalanceSlackUp and SystemBalanceSlackDown, and if one value is greater than zero, it represents that not enough generation (for Slack Up) or not enough demand (for Slack Down) in the optimization problem.","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/#Services-cases","page":"Debugging infeasible models","title":"Services cases","text":"","category":"section"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"In many scenarios, certain units are also required to provide reserve requirements, e.g. thermal units mandated to provide up-regulation. In such scenarios, it is also possible to add slack variables, by specifying the service model (RangeReserve) for the specific service type (VariableReserve{ReserveUp}) as:","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"set_service_model!(\n template_uc,\n ServiceModel(\n VariableReserve{ReserveUp},\n RangeReserve;\n use_slacks=true\n ),\n)","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"Again, if the problem is now feasible, check the solution of ReserveRequirementSlack variable, and if it is larger than zero in a specific time-step, then it is evidence that there is not enough reserve available to satisfy the requirement.","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/#Getting-the-infeasibility-conflict","page":"Debugging infeasible models","title":"Getting the infeasibility conflict","text":"","category":"section"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"Some solvers allows to identify which constraints and variables are producing the infeasibility, by finding the irreducible infeasible set (IIS), that is the subset of constraints and variable bounds that will become feasible if any single constraint or variable bound is removed. ","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"To enable this feature in PowerSimulations the keyword argument calculate_conflict must be set to true, when creating the DecisionModel. Note that not all solvers allow the computation of the IIS, but most commercial solvers have this capability. It is also recommended to enable the keyword argument store_variable_names=true to help understanding which variables are with infeasibility issues.","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"The following code creates a decision model with the Xpress optimizer, and enabling the calculate_conflict=true keyword argument.","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"DecisionModel(\n template_ed,\n sys_rts_rt;\n name=\"ED\",\n optimizer=optimizer_with_attributes(Xpress.Optimizer, \"MIPRELSTOP\" => 1e-2),\n optimizer_solve_log_print=true,\n calculate_conflict=true,\n store_variable_names=true,\n)","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"Here is an example on how the IIS will be displayed as:","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"Error: Constraints participating in conflict basis (IIS) \n│ \n│ ┌──────────────────────────────────────┐\n│ │ CopperPlateBalanceConstraint__System │\n│ ├──────────────────────────────────────┤\n│ │ (113, 26) │\n│ └──────────────────────────────────────┘\n│ ┌──────────────────────────────────┐\n│ │ EnergyAssetBalance__HybridSystem │\n│ ├──────────────────────────────────┤\n│ │ (\"317_Hybrid\", 26) │\n│ └──────────────────────────────────┘\n│ ┌─────────────────────────────────────────────┐\n│ │ PieceWiseLinearCostConstraint__HybridSystem │\n│ ├─────────────────────────────────────────────┤\n│ │ (\"317_Hybrid\", 26) │\n│ └─────────────────────────────────────────────┘\n│ ┌────────────────────────────────────────────────┐\n│ │ PieceWiseLinearCostConstraint__ThermalStandard │\n│ ├────────────────────────────────────────────────┤\n│ │ (\"202_STEAM_3\", 26) │\n│ │ (\"101_STEAM_3\", 26) │\n│ │ (\"118_CC_1\", 26) │\n│ │ (\"202_STEAM_4\", 26) │\n│ │ (\"315_CT_6\", 26) │\n│ │ (\"201_STEAM_3\", 26) │\n│ │ (\"102_STEAM_4\", 26) │\n│ └────────────────────────────────────────────────┘\n│ ┌──────────────────────────────────────────────────────────────────────┐\n│ │ ActivePowerVariableTimeSeriesLimitsConstraint__RenewableDispatch__ub │\n│ ├──────────────────────────────────────────────────────────────────────┤\n│ │ (\"122_WIND_1\", 26) │\n│ │ (\"324_PV_3\", 26) │\n│ │ (\"312_PV_1\", 26) │\n│ │ (\"102_PV_1\", 26) │\n│ │ (\"101_PV_1\", 26) │\n│ │ (\"324_PV_2\", 26) │\n│ │ (\"313_PV_2\", 26) │\n│ │ (\"104_PV_1\", 26) │\n│ │ (\"101_PV_2\", 26) │\n│ │ (\"309_WIND_1\", 26) │\n│ │ (\"310_PV_2\", 26) │\n│ │ (\"113_PV_1\", 26) │\n│ │ (\"314_PV_1\", 26) │\n│ │ (\"324_PV_1\", 26) │\n│ │ (\"103_PV_1\", 26) │\n│ │ (\"303_WIND_1\", 26) │\n│ │ (\"314_PV_2\", 26) │\n│ │ (\"102_PV_2\", 26) │\n│ │ (\"314_PV_3\", 26) │\n│ │ (\"320_PV_1\", 26) │\n│ │ (\"101_PV_3\", 26) │\n│ │ (\"319_PV_1\", 26) │\n│ │ (\"314_PV_4\", 26) │\n│ │ (\"310_PV_1\", 26) │\n│ │ (\"215_PV_1\", 26) │\n│ │ (\"313_PV_1\", 26) │\n│ │ (\"101_PV_4\", 26) │\n│ │ (\"119_PV_1\", 26) │\n│ └──────────────────────────────────────────────────────────────────────┘\n│ ┌─────────────────────────────────────────────────────────────────────────────┐\n│ │ FeedforwardSemiContinuousConstraint__ThermalStandard__ActivePowerVariable_ub │\n│ ├─────────────────────────────────────────────────────────────────────────────┤\n│ │ (\"322_CT_6\", 26) │\n│ │ (\"321_CC_1\", 26) │\n│ │ (\"223_CT_4\", 26) │\n│ │ (\"213_CT_1\", 26) │\n│ │ (\"223_CT_6\", 26) │\n│ │ (\"123_CT_1\", 26) │\n│ │ (\"113_CT_3\", 26) │\n│ │ (\"302_CT_3\", 26) │\n│ │ (\"215_CT_4\", 26) │\n│ │ (\"301_CT_4\", 26) │\n│ │ (\"113_CT_2\", 26) │\n│ │ (\"221_CC_1\", 26) │\n│ │ (\"223_CT_5\", 26) │\n│ │ (\"315_CT_7\", 26) │\n│ │ (\"215_CT_5\", 26) │\n│ │ (\"113_CT_1\", 26) │\n│ │ (\"307_CT_2\", 26) │\n│ │ (\"213_CT_2\", 26) │\n│ │ (\"113_CT_4\", 26) │\n│ │ (\"218_CC_1\", 26) │\n│ │ (\"213_CC_3\", 26) │\n│ │ (\"323_CC_2\", 26) │\n│ │ (\"322_CT_5\", 26) │\n│ │ (\"207_CT_2\", 26) │\n│ │ (\"123_CT_5\", 26) │\n│ │ (\"123_CT_4\", 26) │\n│ │ (\"207_CT_1\", 26) │\n│ │ (\"301_CT_3\", 26) │\n│ │ (\"302_CT_4\", 26) │\n│ │ (\"307_CT_1\", 26) │\n│ └─────────────────────────────────────────────────────────────────────────────┘\n│ ┌───────────────────────────────────────────────────────┐\n│ │ RenewableActivePowerLimitConstraint__HybridSystem__ub │\n│ ├───────────────────────────────────────────────────────┤\n│ │ (\"317_Hybrid\", 26) │\n│ └───────────────────────────────────────────────────────┘\n│ ┌───────────────────────────────────────┐\n│ │ ThermalOnVariableUb__HybridSystem__ub │\n│ ├───────────────────────────────────────┤\n│ │ (\"317_Hybrid\", 26) │\n│ └───────────────────────────────────────┘\n\n Error: Serializing Infeasible Problem at /var/folders/1v/t69qyl0n5059n6c1nn7sp8zm7g8s6z/T/jl_jNSREb/compact_sim/problems/ED/infeasible_ED_2020-10-06T15:00:00.json","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"Note that the IIS clearly identify that the issue is happening at time step 26, and constraints are related with the CopperPlateBalanceConstraint__System, with multiple upper bound constraints, for the hybrid system, renewable units and thermal units. This highlights that there may not be enough generation in the system. Indeed, by enabling system slacks, the problem become feasible.","category":"page"},{"location":"modeler_guide/debugging_infeasible_models/","page":"Debugging infeasible models","title":"Debugging infeasible models","text":"Finally, the infeasible model is exported in a json file that can be loaded directly in JuMP to be explored. More information about this is available here.","category":"page"},{"location":"modeler_guide/psi_structure/#psi_structure","page":"PowerSimulations.jl Modeling Structure","title":"PowerSimulations.jl Modeling Structure","text":"","category":"section"},{"location":"modeler_guide/psi_structure/","page":"PowerSimulations.jl Modeling Structure","title":"PowerSimulations.jl Modeling Structure","text":"PowerSimulations enables the simulation of a sequence of power systems optimization problems and provides user control over each aspect of the simulation configuration. Specifically:","category":"page"},{"location":"modeler_guide/psi_structure/","page":"PowerSimulations.jl Modeling Structure","title":"PowerSimulations.jl Modeling Structure","text":"mathematical formulations can be selected for each component with DeviceModel and ServiceModel\na problem can be defined by creating model entries in a Operations ProblemTemplates\nmodels (DecisionModel or EmulationModel) can be built by applying a ProblemTemplate to a System and can be executed/solved in isolation or as part of a Simulation\nSimulations can be defined and executed by sequencing one or more models and defining how and when data flows between models.","category":"page"},{"location":"modeler_guide/psi_structure/","page":"PowerSimulations.jl Modeling Structure","title":"PowerSimulations.jl Modeling Structure","text":"question: What is the difference between a Model and a Problem?\nA \"Problem\" is an abstract mathematical description of how to represent power system behavior, whereas a \"Model\" is a concrete representation of a \"Problem\" applied to a dataset. I.e. once a Problem is populated with data describing all the loads, generators, lines, etc., it becomes a Model.","category":"page"},{"location":"formulation_library/General/#formulation_library","page":"General","title":"Formulations","text":"","category":"section"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Modeling formulations are created by dispatching on abstract subtypes of PowerSimulations.AbstractDeviceFormulation","category":"page"},{"location":"formulation_library/General/#FixedOutput","page":"General","title":"FixedOutput","text":"","category":"section"},{"location":"formulation_library/General/","page":"General","title":"General","text":"FixedOutput","category":"page"},{"location":"formulation_library/General/#PowerSimulations.FixedOutput","page":"General","title":"PowerSimulations.FixedOutput","text":"Formulation type to augment the power balance constraint expression with a time series parameter\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Variables:","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"No variables are created for DeviceModel(<:DeviceType, FixedOutput)","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Static Parameters:","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"ThermalGen:\nP^textthmax = PowerSystems.get_max_active_power(device)\nQ^textthmax = PowerSystems.get_max_reactive_power(device)\nStorage:\nP^textstmax = PowerSystems.get_max_active_power(device)\nQ^textstmax = PowerSystems.get_max_reactive_power(device)","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Time Series Parameters:","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"using PowerSimulations\nusing HydroPowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombo_tables = []\nfor t in [RenewableGen, ThermalGen, HydroGen, ElectricLoad]\n combos = PowerSimulations.get_default_time_series_names(t, FixedOutput)\n combo_table = DataFrame(\n \"Parameter\" => map(x -> \"[`$x`](@ref)\", collect(keys(combos))),\n \"Default Time Series Name\" => map(x -> \"`$x`\", collect(values(combos))),\n )\n insertcols!(combo_table, 1, \"Device Type\" => fill(string(t), length(combos)))\n push!(combo_tables, combo_table)\nend\nmdtable(vcat(combo_tables...), latex = false)","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Objective:","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"No objective terms are created for DeviceModel(<:DeviceType, FixedOutput)","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Expressions:","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Adds the active and reactive parameters listed for specific device types above to the respective active and reactive power balance expressions created by the selected Network Formulations.","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Constraints:","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"No constraints are created for DeviceModel(<:DeviceType, FixedOutput)","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"","category":"page"},{"location":"formulation_library/General/#FunctionData-Options","page":"General","title":"FunctionData Options","text":"","category":"section"},{"location":"formulation_library/General/","page":"General","title":"General","text":"PowerSimulations can represent variable costs using a variety of different methods depending on the data available in each device. The following describes the objective function terms that are populated for each variable cost option.","category":"page"},{"location":"formulation_library/General/#LinearFunctionData","page":"General","title":"LinearFunctionData","text":"","category":"section"},{"location":"formulation_library/General/","page":"General","title":"General","text":"variable_cost = LinearFunctionData(c): creates a fixed marginal cost term in the objective function","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"beginaligned\n textmin sum_t c * G_t\nendaligned","category":"page"},{"location":"formulation_library/General/#QuadraticFunctionData-and-PolynomialFunctionData","page":"General","title":"QuadraticFunctionData and PolynomialFunctionData","text":"","category":"section"},{"location":"formulation_library/General/","page":"General","title":"General","text":"variable_cost::QuadraticFunctionData and variable_cost::PolynomialFunctionData: create a polynomial cost term in the objective function","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"beginaligned\n textmin sum_t sum_n C_n * G_t^n\nendaligned","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"where","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"For QuadraticFunctionData:\nC_0 = get_constant_term(variable_cost)\nC_1 = get_proportional_term(variable_cost)\nC_2 = get_quadratic_term(variable_cost)\nFor PolynomialFunctionData:\nC_n = get_coefficients(variable_cost)[n]","category":"page"},{"location":"formulation_library/General/#andPiecewiseLinearSlopeData","page":"General","title":"`andPiecewiseLinearSlopeData`","text":"","category":"section"},{"location":"formulation_library/General/","page":"General","title":"General","text":"variable_cost::PiecewiseLinearData and variable_cost::PiecewiseLinearSlopeData: create a piecewise linear cost term in the objective function","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"beginaligned\n textmin sum_t f(G_t)\nendaligned","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"where","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"For variable_cost::PiecewiseLinearData, f(x) is the piecewise linear function obtained by connecting the (x, y) points get_points(variable_cost) in order.\nFor variable_cost = PiecewiseLinearSlopeData([x0, x1, x2, ...], y0, [s0, s1, s2, ...]), f(x) is the piecewise linear function obtained by starting at (x0, y0), drawing a segment at slope s0 to x=x1, drawing a segment at slope s1 to x=x2, etc.","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"","category":"page"},{"location":"formulation_library/General/#StorageCost","page":"General","title":"StorageCost","text":"","category":"section"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Adds an objective function cost term according to:","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"beginaligned\n textmin sum_t quad E^surplus_t * C^penalty - E^shortage_t * C^value\nendaligned","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Impact of different cost configurations:","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"The following table describes all possible configurations of the StorageCost with the target constraint in hydro or storage device models. Cases 1(a) & 2(a) will not impact the model's operations, and the target constraint will be rendered useless. In most cases that have no energy target and a non-zero value for C^value, if this cost is too high (C^value 0) or too low (C^value 0) can result in either the model holding on to stored energy till the end of the model not storing any energy in the device. This is caused by the fact that when the energy target is zero, we have E_t = - E^shortage_t, and - E^shortage_t * C^value in the objective function is replaced by E_t * C^value, thus resulting in C^value to be seen as the cost of stored energy.","category":"page"},{"location":"formulation_library/General/","page":"General","title":"General","text":"Case Energy Target Energy Shortage Cost Energy Value / Energy Surplus cost Effect\nCase 1(a) hatE=0 C^penalty=0 C^value=0 no change\nCase 1(b) hatE=0 C^penalty=0 C^value0 penalty for storing energy\nCase 1(c) hatE=0 C^penalty0 C^value=0 no penalties or incentives applied\nCase 1(d) hatE=0 C^penalty=0 C^value0 incentive for storing energy\nCase 1(e) hatE=0 C^penalty0 C^value0 penalty for storing energy\nCase 1(f) hatE=0 C^penalty0 C^value0 incentive for storing energy\nCase 2(a) hatE0 C^penalty=0 C^value=0 no change\nCase 2(b) hatE0 C^penalty=0 C^value0 penalty on energy storage in excess of target\nCase 2(c) hatE0 C^penalty0 C^value=0 penalty on energy storage short of target\nCase 2(d) hatE0 C^penalty=0 C^value0 incentive on excess energy\nCase 2(e) hatE0 C^penalty0 C^value0 penalty on both excess/shortage of energy\nCase 2(f) hatE0 C^penalty0 C^value0 penalty for shortage, incentive for excess energy","category":"page"},{"location":"modeler_guide/logging/#Logging","page":"Logging","title":"Logging","text":"","category":"section"},{"location":"modeler_guide/logging/","page":"Logging","title":"Logging","text":"PowerSimulations.jl will output many log messages when building systems and running simulations. You may want to customize what gets logged to the console and, optionally, a file.","category":"page"},{"location":"modeler_guide/logging/","page":"Logging","title":"Logging","text":"By default all log messages of level Logging.Info or higher will get displayed to the console. When you run a simulation a simulation-specific logger will take over and log its messages to a file in the logs directory in the simulation output directory. When finished it will relinquish control back to the global logger.","category":"page"},{"location":"modeler_guide/logging/#Configuring-the-global-logger","page":"Logging","title":"Configuring the global logger","text":"","category":"section"},{"location":"modeler_guide/logging/","page":"Logging","title":"Logging","text":"To configure the global logger in a Jupyter Notebook or REPL you may configure your own logger with the Julia Logging standard library or use the convenience function provided by PowerSimulations. This example will log messages of level Logging.Error to console and Logging.Info and higher to the file power-simulations.log in the current directory.","category":"page"},{"location":"modeler_guide/logging/","page":"Logging","title":"Logging","text":"import Logging\nusing PowerSimulations\nlogger = configure_logging(\n console_level = Logging.Error,\n file_level = Logging.Info,\n filename = \"power-simulations.log\"\n)","category":"page"},{"location":"modeler_guide/logging/#Configuring-the-simulation-logger","page":"Logging","title":"Configuring the simulation logger","text":"","category":"section"},{"location":"modeler_guide/logging/","page":"Logging","title":"Logging","text":"You can configure the logging level used by the simulation logger when you call build!(simulation). Here is an example that increases logging verbosity:","category":"page"},{"location":"modeler_guide/logging/","page":"Logging","title":"Logging","text":"import Logging\nusing PowerSimulations\nsimulation = Simulation(...)\nbuild!(simulation, console_level = Logging.Info, file_level = Logging.Debug)","category":"page"},{"location":"modeler_guide/logging/","page":"Logging","title":"Logging","text":"The log file will be located at ///logs/simulation.log.","category":"page"},{"location":"modeler_guide/logging/#Solver-logs","page":"Logging","title":"Solver logs","text":"","category":"section"},{"location":"modeler_guide/logging/","page":"Logging","title":"Logging","text":"You can configure logging for the solver you use. Refer to the solver documentation. PowerSimulations does not redirect or intercept prints to stdout or stderr from other libraries.","category":"page"},{"location":"modeler_guide/logging/#Recorder-events","page":"Logging","title":"Recorder events","text":"","category":"section"},{"location":"modeler_guide/logging/","page":"Logging","title":"Logging","text":"PowerSimulations uses the InfrastructureSystems.Recorder to store simulation events in a log file. Refer to this link for more information.","category":"page"},{"location":"formulation_library/RenewableGen/#PowerSystems.RenewableGen-Formulations","page":"Renewable Generation","title":"PowerSystems.RenewableGen Formulations","text":"","category":"section"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Renewable generation formulations define the optimization models that describe renewable units mathematical model in different operational settings, such as economic dispatch and unit commitment.","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"note: Note\nThe use of reactive power variables and constraints will depend on the network model used, i.e., whether it uses (or does not use) reactive power. If the network model is purely active power-based, reactive power variables and related constraints are not created.","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"note: Note\nReserve variables for services are not included in the formulation, albeit their inclusion change the variables, expressions, constraints and objective functions created. A detailed description of the implications in the optimization models is described in the Service formulation section.","category":"page"},{"location":"formulation_library/RenewableGen/#Table-of-contents","page":"Renewable Generation","title":"Table of contents","text":"","category":"section"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"RenewableFullDispatch\nRenewableConstantPowerFactor\nValid configurations","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"","category":"page"},{"location":"formulation_library/RenewableGen/#RenewableFullDispatch","page":"Renewable Generation","title":"RenewableFullDispatch","text":"","category":"section"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"RenewableFullDispatch","category":"page"},{"location":"formulation_library/RenewableGen/#PowerSimulations.RenewableFullDispatch","page":"Renewable Generation","title":"PowerSimulations.RenewableFullDispatch","text":"Formulation type to add injection variables constrained by a maximum injection time series for RenewableGen\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Variables:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"ActivePowerVariable:\nBounds: [0.0, ]\nSymbol: p^textre\nReactivePowerVariable:\nBounds: [0.0, ]\nSymbol: q^textre","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"P^textremin = PowerSystems.get_active_power_limits(device).min\nQ^textremin = PowerSystems.get_reactive_power_limits(device).min\nQ^textremax = PowerSystems.get_reactive_power_limits(device).max","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Time Series Parameters:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Uses the max_active_power timeseries parameter to limit the available active power at each time-step.","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.get_default_time_series_names(RenewableGen, RenewableFullDispatch)\ncombo_table = DataFrame(\n \"Parameter\" => map(x -> \"[`$x`](@ref)\", collect(keys(combos))),\n \"Default Time Series Name\" => map(x -> \"`$x`\", collect(values(combos))),\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Objective:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Creates an objective function term based on the FunctionData Options where the quantity term is defined as - p^textre to incentivize generation from RenewableGen devices.","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Adds p^textre and q^textre terms to the respective active and reactive power balance expressions created by the selected Network Formulations.","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"beginaligned\n P^textremin le p_t^textre le textActivePowerTimeSeriesParameter_t quad forall t in 1dots T \n Q^textremin le q_t^textre le Q^textremax quad forall t in 1dots T\nendaligned","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"","category":"page"},{"location":"formulation_library/RenewableGen/#RenewableConstantPowerFactor","page":"Renewable Generation","title":"RenewableConstantPowerFactor","text":"","category":"section"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"RenewableConstantPowerFactor","category":"page"},{"location":"formulation_library/RenewableGen/#PowerSimulations.RenewableConstantPowerFactor","page":"Renewable Generation","title":"PowerSimulations.RenewableConstantPowerFactor","text":"Formulation type to add real and reactive injection variables with constant power factor with maximum real power injections constrained by a time series for RenewableGen\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Variables:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"ActivePowerVariable:\nBounds: [0.0, ]\nDefault initial value: PowerSystems.get_active_power(device)\nSymbol: p^textre\nReactivePowerVariable:\nBounds: [0.0, ]\nDefault initial value: PowerSystems.get_reactive_power(device)\nSymbol: q^textre","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Static Parameters:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"P^textremin = PowerSystems.get_active_power_limits(device).min\nQ^textremin = PowerSystems.get_reactive_power_limits(device).min\nQ^textremax = PowerSystems.get_reactive_power_limits(device).max\ntextpf = PowerSystems.get_power_factor(device)","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Time Series Parameters:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.get_default_time_series_names(RenewableGen, RenewableConstantPowerFactor)\ncombo_table = DataFrame(\n \"Parameter\" => map(x -> \"[`$x`](@ref)\", collect(keys(combos))),\n \"Default Time Series Name\" => map(x -> \"`$x`\", collect(values(combos))),\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Objective:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Creates an objective function term based on the FunctionData Options where the quantity term is defined as - p_t^textre to incentivize generation from RenewableGen devices.","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Expressions:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Adds p^textre and q^textre terms to the respective active and reactive power balance expressions created by the selected Network Formulations","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Constraints:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"beginaligned\n P^textremin le p_t^textre le textActivePowerTimeSeriesParameter_t quad forall t in 1dots T \n q_t^textre = textpf cdot p_t^textre quad forall t in 1dots T\nendaligned","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"","category":"page"},{"location":"formulation_library/RenewableGen/#Valid-configurations","page":"Renewable Generation","title":"Valid configurations","text":"","category":"section"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"Valid DeviceModels for subtypes of RenewableGen include the following:","category":"page"},{"location":"formulation_library/RenewableGen/","page":"Renewable Generation","title":"Renewable Generation","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.generate_device_formulation_combinations()\nfilter!(x -> x[\"device_type\"] <: RenewableGen, combos)\ncombo_table = DataFrame(\n \"Valid DeviceModel\" => [\"`DeviceModel($(c[\"device_type\"]), $(c[\"formulation\"]))`\" for c in combos],\n \"Device Type\" => [\"[$(c[\"device_type\"])](https://nrel-Sienna.github.io/PowerSystems.jl/stable/model_library/generated_$(c[\"device_type\"])/)\" for c in combos],\n \"Formulation\" => [\"[$(c[\"formulation\"])](@ref)\" for c in combos],\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"formulation_library/Service/#service_formulations","page":"Services","title":"PowerSystems.Service Formulations","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Services (or ancillary services) are models used to ensure that there is necessary support to the power grid from generators to consumers, in order to ensure reliable operation of the system.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"The most common application for ancillary services are reserves, i.e., generation (or load) that is not currently being used, but can be quickly made available in case of unexpected changes of grid conditions, for example a sudden loss of load or generation.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"A key challenge of adding services to a system, from a mathematical perspective, is specifying which units contribute to the specified requirement of a service, that implies the creation of new variables (such as reserve variables) and modification of constraints.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"In this documentation, we first specify the available Services in the grid, and what requirements impose in the system, and later we discuss the implication on device formulations for specific units.","category":"page"},{"location":"formulation_library/Service/#Table-of-contents","page":"Services","title":"Table of contents","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"RangeReserve\nStepwiseCostReserve\nGroupReserve\nRampReserve\nNonSpinningReserve\nConstantMaxInterfaceFlow\nChanges on Expressions","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"","category":"page"},{"location":"formulation_library/Service/#RangeReserve","page":"Services","title":"RangeReserve","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"RangeReserve","category":"page"},{"location":"formulation_library/Service/#PowerSimulations.RangeReserve","page":"Services","title":"PowerSimulations.RangeReserve","text":"Struct for to add reserves to be larger than a specified requirement\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For each service s of the model type RangeReserve the following variables are created:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Variables:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"ActivePowerReserveVariable:\nBounds: [0.0, ]\nDefault proportional cost: 10 textSystemBasePower\nSymbol: r_d for d in contributing devices to the service s","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"If slacks are enabled:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"ReserveRequirementSlack:\nBounds: [0.0, ]\nDefault proportional cost: 1e5\nSymbol: r^textsl","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Depending on the PowerSystems.jl type associated to the RangeReserve formulation model, the parameters are:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Static Parameters","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textPF = PowerSystems.get_max_participation_factor(service)","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For a ConstantReserve PowerSystems type:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textReq = PowerSystems.get_requirement(service)","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Time Series Parameters ","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For a VariableReserve PowerSystems type:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.get_default_time_series_names(VariableReserve, RangeReserve)\ncombo_table = DataFrame(\n \"Parameter\" => map(x -> \"[`$x`](@ref)\", collect(keys(combos))),\n \"Default Time Series Name\" => map(x -> \"`$x`\", collect(values(combos))),\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Relevant Methods:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"mathcalD_s = PowerSystems.get_contributing_devices(system, service): Set (vector) of all contributing devices to the service s in the system.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Objective:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Add a large proportional cost to the objective function if slack variables are used + r^textsl cdot 10^5. In addition adds the default cost for ActivePowerReserveVariables as a proportional cost.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Expressions:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Adds the ActivePowerReserveVariable for upper/lower bound expressions of contributing devices.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For ReserveUp types, the variable is added to ActivePowerRangeExpressionUB, such that this expression considers both the ActivePowerVariable and its reserve variable. Similarly, For ReserveDown types, the variable is added to ActivePowerRangeExpressionLB, such that this expression considers both the ActivePowerVariable and its reserve variable","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Example: for a thermal unit d contributing to two different ReserveUp s_1 s_2 services (e.g. Reg-Up and Spin):","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textActivePowerRangeExpressionUB_t = p_t^textth + r_s_1t + r_s_2 t le P^textthmax","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"similarly if s_3 is a ReserveDown service (e.g. Reg-Down):","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textActivePowerRangeExpressionLB_t = p_t^textth - r_s_3t ge P^textthmin","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Constraints: ","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"A RangeReserve implements two fundamental constraints. The first is that the sum of all reserves of contributing devices must be larger than the RangeReserve requirement. Thus, for a service s:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"sum_dinmathcalD_s r_dt + r_t^textsl ge textReqquad forall tin 1dots T quad text(for a ConstantReserve) \nsum_dinmathcalD_s r_dt + r_t^textsl ge textRequirementTimeSeriesParameter_tquad forall tin 1dots T quad text(for a VariableReserve)","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"In addition, there is a restriction on how much each contributing device d can contribute to the requirement, based on the max participation factor allowed.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"r_dt le textReq cdot textPF quad forall din mathcalD_s forall tin 1dots T quad text(for a ConstantReserve) \nr_dt le textRequirementTimeSeriesParameter_t cdot textPFquad forall din mathcalD_s forall tin 1dots T quad text(for a VariableReserve)","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"","category":"page"},{"location":"formulation_library/Service/#StepwiseCostReserve","page":"Services","title":"StepwiseCostReserve","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Service must be used with ReserveDemandCurve PowerSystems.jl type. This service model is used to model ORDC (Operating Reserve Demand Curve) in ERCOT.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"StepwiseCostReserve","category":"page"},{"location":"formulation_library/Service/#PowerSimulations.StepwiseCostReserve","page":"Services","title":"PowerSimulations.StepwiseCostReserve","text":"Struct for to add reserves to be larger than a variable requirement depending of costs\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For each service s of the model type ReserveDemandCurve the following variables are created:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Variables:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"ActivePowerReserveVariable:\nBounds: [0.0, ]\nSymbol: r_d for d in contributing devices to the service s\nServiceRequirementVariable:\nBounds: [0.0, ]\nSymbol: textreq","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Time Series Parameters ","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For a ReserveDemandCurve PowerSystems type:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.get_default_time_series_names(ReserveDemandCurve, StepwiseCostReserve)\ncombo_table = DataFrame(\n \"Parameter\" => map(x -> \"[`$x`](@ref)\", collect(keys(combos))),\n \"Default Time Series Name\" => map(x -> \"`$x`\", collect(values(combos))),\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Relevant Methods:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"mathcalD_s = PowerSystems.get_contributing_devices(system, service): Set (vector) of all contributing devices to the service s in the system.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Objective:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"The ServiceRequirementVariable is added as a piecewise linear cost based on the decreasing offers listed in the variable_cost time series. These decreasing cost represent the scarcity prices of not having sufficient reserves. For example, if the variable textreq = 0, then a really high cost is paid for not having enough reserves, and if textreq is larger, then a lower cost (or even zero) is paid.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Expressions:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Adds the ActivePowerReserveVariable for upper/lower bound expressions of contributing devices.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For ReserveUp types, the variable is added to ActivePowerRangeExpressionUB, such that this expression considers both the ActivePowerVariable and its reserve variable. Similarly, For ReserveDown types, the variable is added to ActivePowerRangeExpressionLB, such that this expression considers both the ActivePowerVariable and its reserve variable","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Example: for a thermal unit d contributing to two different ReserveUp s_1 s_2 services (e.g. Reg-Up and Spin):","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textActivePowerRangeExpressionUB_t = p_t^textth + r_s_1t + r_s_2 t le P^textthmax","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"similarly if s_3 is a ReserveDown service (e.g. Reg-Down):","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textActivePowerRangeExpressionLB_t = p_t^textth - r_s_3t ge P^textthmin","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Constraints: ","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"A StepwiseCostReserve implements a single constraint, such that the sum of all reserves of contributing devices must be larger than the ServiceRequirementVariable variable. Thus, for a service s:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"sum_dinmathcalD_s r_dt ge textreq_tquad forall tin 1dots T ","category":"page"},{"location":"formulation_library/Service/#GroupReserve","page":"Services","title":"GroupReserve","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Service must be used with ConstantReserveGroup PowerSystems.jl type. This service model is used to model an aggregation of services.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"GroupReserve","category":"page"},{"location":"formulation_library/Service/#PowerSimulations.GroupReserve","page":"Services","title":"PowerSimulations.GroupReserve","text":"Struct to add reserves to be larger than a specified requirement for an aggregated collection of services\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For each service s of the model type GroupReserve the following variables are created:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Variables:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"No variables are created, but the services associated with the GroupReserve must have created variables.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Static Parameters","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textReq = PowerSystems.get_requirement(service)","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Relevant Methods:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"mathcalS_s = PowerSystems.get_contributing_services(system, service): Set (vector) of all contributing services to the group service s in the system.\nmathcalD_s_i = PowerSystems.get_contributing_devices(system, service_aux): Set (vector) of all contributing devices to the service s_i in the system.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Objective:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Does not modify the objective function, besides the changes to the objective function due to the other services associated to the group service.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Expressions:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"No changes, besides the changes to the expressions due to the other services associated to the group service.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Constraints:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"A GroupReserve implements that the sum of all reserves of contributing devices, of all contributing services, must be larger than the GroupReserve requirement. Thus, for a GroupReserve service s:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"sum_dinmathcalD_s_i sum_i in mathcalS_s r_dt ge textReqquad forall tin 1dots T ","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"","category":"page"},{"location":"formulation_library/Service/#RampReserve","page":"Services","title":"RampReserve","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"RampReserve","category":"page"},{"location":"formulation_library/Service/#PowerSimulations.RampReserve","page":"Services","title":"PowerSimulations.RampReserve","text":"Struct to add reserves to be larger than a specified requirement, with ramp constraints\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For each service s of the model type RampReserve the following variables are created:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Variables:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"ActivePowerReserveVariable:\nBounds: [0.0, ]\nDefault proportional cost: 10 textSystemBasePower\nSymbol: r_d for d in contributing devices to the service s","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"If slacks are enabled:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"ReserveRequirementSlack:\nBounds: [0.0, ]\nDefault proportional cost: 1e5\nSymbol: r^textsl","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"RampReserve only accepts VariableReserve PowerSystems.jl type. With that, the parameters are:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Static Parameters","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textTF = PowerSystems.get_time_frame(service)\nR^textthup = PowerSystems.get_ramp_limits(device).up for thermal contributing devices\nR^textthdn = PowerSystems.get_ramp_limits(device).down for thermal contributing devices","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Time Series Parameters ","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For a VariableReserve PowerSystems type:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.get_default_time_series_names(VariableReserve, RampReserve)\ncombo_table = DataFrame(\n \"Parameter\" => map(x -> \"[`$x`](@ref)\", collect(keys(combos))),\n \"Default Time Series Name\" => map(x -> \"`$x`\", collect(values(combos))),\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Relevant Methods:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"mathcalD_s = PowerSystems.get_contributing_devices(system, service): Set (vector) of all contributing devices to the service s in the system.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Objective:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Add a large proportional cost to the objective function if slack variables are used + r^textsl cdot 10^5. In addition adds the default cost for ActivePowerReserveVariables as a proportional cost.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Expressions:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Adds the ActivePowerReserveVariable for upper/lower bound expressions of contributing devices.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For ReserveUp types, the variable is added to ActivePowerRangeExpressionUB, such that this expression considers both the ActivePowerVariable and its reserve variable. Similarly, For ReserveDown types, the variable is added to ActivePowerRangeExpressionLB, such that this expression considers both the ActivePowerVariable and its reserve variable","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Example: for a thermal unit d contributing to two different ReserveUp s_1 s_2 services (e.g. Reg-Up and Spin):","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textActivePowerRangeExpressionUB_t = p_t^textth + r_s_1t + r_s_2 t le P^textthmax","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"similarly if s_3 is a ReserveDown service (e.g. Reg-Down):","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textActivePowerRangeExpressionLB_t = p_t^textth - r_s_3t ge P^textthmin","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Constraints: ","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"A RampReserve implements three fundamental constraints. The first is that the sum of all reserves of contributing devices must be larger than the RampReserve requirement. Thus, for a service s:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"sum_dinmathcalD_s r_dt + r_t^textsl ge textRequirementTimeSeriesParameter_tquad forall tin 1dots T","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Finally, there is a restriction based on the ramp limits of the contributing devices:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"r_dt le R^textthup cdot textTFquad forall din mathcalD_s forall tin 1dots T quad text(for ReserveUp) \nr_dt le R^textthdn cdot textTFquad forall din mathcalD_s forall tin 1dots T quad text(for ReserveDown)","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"","category":"page"},{"location":"formulation_library/Service/#NonSpinningReserve","page":"Services","title":"NonSpinningReserve","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"NonSpinningReserve","category":"page"},{"location":"formulation_library/Service/#PowerSimulations.NonSpinningReserve","page":"Services","title":"PowerSimulations.NonSpinningReserve","text":"Struct to add non spinning reserve requirements larger than specified requirement\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For each service s of the model type NonSpinningReserve, the following variables are created:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Variables:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"ActivePowerReserveVariable:\nBounds: [0.0, ]\nDefault proportional cost: 10 textSystemBasePower\nSymbol: r_d for d in contributing devices to the service s","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"If slacks are enabled:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"ReserveRequirementSlack:\nBounds: [0.0, ]\nDefault proportional cost: 1e5\nSymbol: r^textsl","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"NonSpinningReserve only accepts VariableReserve PowerSystems.jl type. With that, the parameters are:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Static Parameters","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textPF = PowerSystems.get_max_participation_factor(service)\ntextTF = PowerSystems.get_time_frame(service)\nP^textthmin = PowerSystems.get_active_power_limits(device).min for thermal contributing devices\nT^textstup = PowerSystems.get_time_limits(d).up for thermal contributing devices\nR^textthup = PowerSystems.get_ramp_limits(device).down for thermal contributing devices","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Other parameters:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Delta T: Resolution of the problem in minutes.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Time Series Parameters ","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For a VariableReserve PowerSystems type:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.get_default_time_series_names(VariableReserve, NonSpinningReserve)\ncombo_table = DataFrame(\n \"Parameter\" => map(x -> \"[`$x`](@ref)\", collect(keys(combos))),\n \"Default Time Series Name\" => map(x -> \"`$x`\", collect(values(combos))),\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Relevant Methods:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"mathcalD_s = PowerSystems.get_contributing_devices(system, service): Set (vector) of all contributing devices to the service s in the system.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Objective:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Add a large proportional cost to the objective function if slack variables are used + r^textsl cdot 10^5. In addition adds the default cost for ActivePowerReserveVariables as a proportional cost.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Expressions:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Adds the ActivePowerReserveVariable for upper/lower bound expressions of contributing devices.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For ReserveUp types, the variable is added to ActivePowerRangeExpressionUB, such that this expression considers both the ActivePowerVariable and its reserve variable. Similarly, For ReserveDown types, the variable is added to ActivePowerRangeExpressionLB, such that this expression considers both the ActivePowerVariable and its reserve variable","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Example: for a thermal unit d contributing to two different ReserveUp s_1 s_2 services (e.g. Reg-Up and Spin):","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textActivePowerRangeExpressionUB_t = p_t^textth + r_s_1t + r_s_2 t le P^textthmax","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"similarly if s_3 is a ReserveDown service (e.g. Reg-Down):","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textActivePowerRangeExpressionLB_t = p_t^textth - r_s_3t ge P^textthmin","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Constraints: ","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"A NonSpinningReserve implements three fundamental constraints. The first is that the sum of all reserves of contributing devices must be larger than the NonSpinningReserve requirement. Thus, for a service s:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"sum_dinmathcalD_s r_dt + r_t^textsl ge textRequirementTimeSeriesParameter_tquad forall tin 1dots T","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"In addition, there is a restriction on how much each contributing device d can contribute to the requirement, based on the max participation factor allowed.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"r_dt le textRequirementTimeSeriesParameter_t cdot textPFquad forall din mathcalD_s forall tin 1dots T","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Finally, there is a restriction based on the reserve response time for the non-spinning reserve if the unit is off. To do so, compute R^textlimit_d as the reserve response limit as:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"R^textlimit_d = begincases\n0 text if TF le T^textstup_d \nP^textthmin_d + (textTF_s - T^textstup_d) cdot R^textthup_d Delta T cdot R^textthup_d text if TF T^textstup_d\nendcases quad forall din mathcalD_s","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Then, the constraint depends on the commitment variable u_t^textth as:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"r_dt le (1 - u_dt^textth) cdot R^textlimit_d quad forall d in mathcalD_s forall t in 1dots T","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"","category":"page"},{"location":"formulation_library/Service/#ConstantMaxInterfaceFlow","page":"Services","title":"ConstantMaxInterfaceFlow","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"This Service model only accepts the PowerSystems.jl TransmissionInterface type to properly function. It is used to model a collection of branches that make up an interface or corridor with a maximum transfer of power.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"ConstantMaxInterfaceFlow","category":"page"},{"location":"formulation_library/Service/#PowerSimulations.ConstantMaxInterfaceFlow","page":"Services","title":"PowerSimulations.ConstantMaxInterfaceFlow","text":"Struct to add a constant maximum transmission flow for specified interface\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Variables","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"If slacks are used:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"InterfaceFlowSlackUp:\nBounds: [0.0, ]\nSymbol: f^textslup\nInterfaceFlowSlackDown:\nBounds: [0.0, ]\nSymbol: f^textsldn","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Static Parameters","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"F^textmax = PowerSystems.get_active_power_flow_limits(service).max\nF^textmin = PowerSystems.get_active_power_flow_limits(service).min\nC^textflow = PowerSystems.get_violation_penalty(service)\nmathcalM_s = PowerSystems.get_direction_mapping(service). Dictionary of contributing branches with its specified direction (textDir_d = 1 or textDir_d = -1) with respect to the interface.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Relevant Methods","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"mathcalD_s = PowerSystems.get_contributing_devices(system, service): Set (vector) of all contributing branches to the service s in the system.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Objective:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Add the violation penalty proportional cost to the objective function if slack variables are used + (f^textslup + f^textsldn) cdot C^textflow.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Expressions:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Creates the expression InterfaceTotalFlow to keep track of all FlowActivePowerVariable of contributing branches to the transmission interface.","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Constraints:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"It adds the constraint to limit the InterfaceTotalFlow by the specified bounds of the service s:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"F^textmin le f^textslup_t - f^textsldn_t + sum_dinmathcalD_s textDir_d f_dt le F^textmax quad forall t in 1dotsT","category":"page"},{"location":"formulation_library/Service/#Changes-on-Expressions-due-to-Service-models","page":"Services","title":"Changes on Expressions due to Service models","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"It is important to note that by adding a service to a Optimization Problem, variables for each contributing device must be created. For example, for every contributing generator d in mathcalD that is participating in services s_1s_2s_3, it is required to create three set of ActivePowerReserveVariable variables:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"r_s_1dt r_s_2dt r_s_3dtquad forall d in mathcalD forall t in 1dots T","category":"page"},{"location":"formulation_library/Service/#Changes-on-UpperBound-(UB)-and-LowerBound-(LB)-limits","page":"Services","title":"Changes on UpperBound (UB) and LowerBound (LB) limits","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"Each contributing generator d has active power limits that the reserve variables affect. In simple terms, the limits are implemented using expressions ActivePowerRangeExpressionUB and ActivePowerRangeExpressionLB as:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"textActivePowerRangeExpressionUB_t le P^textmax \ntextActivePowerRangeExpressionLB_t ge P^textmin","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"ReserveUp type variables contribute to the upper bound expression, while ReserveDown variables contribute to the lower bound expressions. So if s_1s_2 are ReserveUp services, and s_3 is a ReserveDown service, then for a thermal generator d using a ThermalStandardDispatch:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"beginalign*\n p_dt^textth + r_s_1dt + r_s_2dt le P^textthmaxquad forall din mathcalD^textth forall t in 1dotsT \n p_dt^textth - r_s_3dt ge P^textthminquad forall din mathcalD^textth forall t in 1dotsT\nendalign*","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"while for a renewable generator d using a RenewableFullDispatch:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"beginalign*\n p_dt^textre + r_s_1dt + r_s_2dt le textActivePowerTimeSeriesParameter_tquad forall din mathcalD^textre forall t in 1dotsT\n p_dt^textre - r_s_3dt ge 0quad forall din mathcalD^textre forall t in 1dotsT\nendalign*","category":"page"},{"location":"formulation_library/Service/#Changes-in-Ramp-limits","page":"Services","title":"Changes in Ramp limits","text":"","category":"section"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"For the case of Ramp Limits (of formulation that model these limits), the reserve variables only affect the current time, and not the previous time. Then, for the same example as before:","category":"page"},{"location":"formulation_library/Service/","page":"Services","title":"Services","text":"beginalign*\n p_dt^textth + r_s_1dt + r_s_2dt - p_dt-1^textthle R^textthupquad forall din mathcalD^textth forall t in 1dotsT\n p_dt^textth - r_s_3dt - p_dt-1^textth ge -R^textthdnquad forall din mathcalD^textth forall t in 1dotsT\nendalign*","category":"page"},{"location":"model_developer_guide/structure_of_operation_problem/#Structure-of-an-operations-problem-model","page":"Operation Problem Structure","title":"Structure of an operations problem model","text":"","category":"section"},{"location":"model_developer_guide/structure_of_operation_problem/","page":"Operation Problem Structure","title":"Operation Problem Structure","text":"In most cases operation problem models are optimization models. Although in PowerSimulations.jl it is possible to define arbitrary problems that can reflect heuristic decision rules, this is not the common case. This page focuses on explaining the structure of operations problems that employ an optimization problem and solver.","category":"page"},{"location":"model_developer_guide/structure_of_operation_problem/","page":"Operation Problem Structure","title":"Operation Problem Structure","text":"The first aspect to consider when thinking about developing a model compatible with PowerSimulations.jl is that although we support all of JuMP.jl objects, you need to employ anonymous constraints and variables in JuMP and register the constraints, variables and other optimization objects into PowerSimulations.jl's optimization container. Otherwise the features to use your problem in the simulation like the coordination with other problems and post processing won't work.","category":"page"},{"location":"model_developer_guide/structure_of_operation_problem/","page":"Operation Problem Structure","title":"Operation Problem Structure","text":"info: Info\nThe requirements for the simulation of Power Systems operations are more strict than solving an optimization problem once with just JuMP.jl. The requirements imposed by PowerSimulations.jl to integrate your models in a simulation are designed to help with other complex operations that go beyond JuMP.jl scope.","category":"page"},{"location":"model_developer_guide/structure_of_operation_problem/","page":"Operation Problem Structure","title":"Operation Problem Structure","text":"warning: Warning\nAll the code in this page is considered \"pseudo-code\". Copy-paste will likely not work out of the box. You need to develop the internals of the functions correctly for the examples below to work.","category":"page"},{"location":"model_developer_guide/structure_of_operation_problem/#Registering-a-variable-in-the-model","page":"Operation Problem Structure","title":"Registering a variable in the model","text":"","category":"section"},{"location":"model_developer_guide/structure_of_operation_problem/","page":"Operation Problem Structure","title":"Operation Problem Structure","text":"To register a variable in the model, the developer must first allocate the container into the optimization container and then populate it. For example, it require start the build function as follows:","category":"page"},{"location":"model_developer_guide/structure_of_operation_problem/","page":"Operation Problem Structure","title":"Operation Problem Structure","text":"info: Info\nWe recommend calling import PowerSimulations and defining the constant CONST PSI = PowerSimulations to make it easier to read the code and determine which package is responsible for defining the functions.","category":"page"},{"location":"model_developer_guide/structure_of_operation_problem/","page":"Operation Problem Structure","title":"Operation Problem Structure","text":" function PSI.build_model!(model::PSI.DecisionModel{MyCustomModel})\n container = PSI.get_optimization_container(model)\n PSI.set_time_steps!(container, 1:24)\n\n # Create the container for the variable\n variable = PSI.add_variable_container!(\n container,\n PSI.ActivePowerVariable(), # <- This variable is defined in PowerSimulations but the user can define their own\n PSY.ThermalGeneration, # <- Device type for the variable. Can be from PSY or custom defined\n devices_names, # <- First container dimension\n time_steps, # <- Second container dimension\n )\n\n # Iterate over the devices and time to store the JuMP variables into the container.\n for t in time_steps, d in devices\n name = PSY.get_name(d)\n variable[name, t] = JuMP.@variable(get_jump_model(container))\n # It is possible to use PSY getter functions to retrieve data from the generators\n # Any other variable property can be specified inside this loop.\n JuMP.set_upper_bound(variable[name, t], UB_DATA) # <- Optional\n JuMP.set_lower_bound(variable[name, t], LB_DATA) # <- Optional\n end\n\n return\n end","category":"page"},{"location":"model_developer_guide/troubleshooting/#Troubleshooting-model-development","page":"Troubleshooting","title":"Troubleshooting model development","text":"","category":"section"},{"location":"formulation_library/README/#Formulation-documentation-guide","page":"Formulation documentation guide","title":"Formulation documentation guide","text":"","category":"section"},{"location":"formulation_library/README/","page":"Formulation documentation guide","title":"Formulation documentation guide","text":"Formulation documentation should roughly follow the template established by RenewableGen.md","category":"page"},{"location":"formulation_library/README/#Auto-generated-items","page":"Formulation documentation guide","title":"Auto generated items","text":"","category":"section"},{"location":"formulation_library/README/","page":"Formulation documentation guide","title":"Formulation documentation guide","text":"Valid DeviceModel table: just change the device category in the filter function\nTime Series Parameters: just change the device category and formulation in the get_default_time_series_names method call","category":"page"},{"location":"formulation_library/README/#Linked-items","page":"Formulation documentation guide","title":"Linked items","text":"","category":"section"},{"location":"formulation_library/README/","page":"Formulation documentation guide","title":"Formulation documentation guide","text":"Formulations in the Valid DeviceModel table must have a docstring in src/core/formulations.jl\nThe Formulation in the @docs block must have a docstring in src/core/formulations.jl\nThe Variables must have docstrings in src/core/variables.jl \nThe Time Series Parameters must have docstrings in src/core/parameters.jl","category":"page"},{"location":"tutorials/pcm_simulation/#pcm_tutorial","page":"Multi-stage Production Cost Simulation","title":"Sequential Simulations with PowerSimulations.jl","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Originally Contributed by: Clayton Barrows","category":"page"},{"location":"tutorials/pcm_simulation/#Introduction","page":"Multi-stage Production Cost Simulation","title":"Introduction","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"PowerSimulations.jl supports simulations that consist of sequential optimization problems where results from previous problems inform subsequent problems in a variety of ways. This example demonstrates some of these capabilities to represent electricity market clearing. This example is intended to be an extension of the OperationsProblem tutorial.","category":"page"},{"location":"tutorials/pcm_simulation/#Load-Packages","page":"Multi-stage Production Cost Simulation","title":"Load Packages","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"using PowerSystems\nusing PowerSimulations\nusing HydroPowerSimulations\nconst PSI = PowerSimulations\nusing PowerSystemCaseBuilder\nusing Dates\nusing HiGHS #solver","category":"page"},{"location":"tutorials/pcm_simulation/#Optimizer","page":"Multi-stage Production Cost Simulation","title":"Optimizer","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"It's most convenient to define an optimizer instance upfront and pass it into the DecisionModel constructor. For this example, we can use the free HiGHS solver with a relatively relaxed MIP gap (ratioGap) setting to improve speed.","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"solver = optimizer_with_attributes(HiGHS.Optimizer, \"mip_rel_gap\" => 0.5)","category":"page"},{"location":"tutorials/pcm_simulation/#Hourly-day-ahead-system","page":"Multi-stage Production Cost Simulation","title":"Hourly day-ahead system","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"First, we'll create a System with hourly data to represent day-ahead forecasted wind, solar, and load profiles:","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"sys_DA = build_system(PSISystems, \"modified_RTS_GMLC_DA_sys\"; skip_serialization = true)","category":"page"},{"location":"tutorials/pcm_simulation/#Minute-system","page":"Multi-stage Production Cost Simulation","title":"5-Minute system","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"The RTS data also includes 5-minute resolution time series data. So, we can create another System to represent 15 minute ahead forecasted data for a \"real-time\" market:","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"sys_RT = build_system(PSISystems, \"modified_RTS_GMLC_RT_sys\"; skip_serialization = true)","category":"page"},{"location":"tutorials/pcm_simulation/#ProblemTemplates-define-stages","page":"Multi-stage Production Cost Simulation","title":"ProblemTemplates define stages","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Sequential simulations in PowerSimulations are created by defining OperationsProblems that represent stages, and how information flows between executions of a stage and between different stages.","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Let's start by defining a two stage simulation that might look like a typical day-Ahead and real-time electricity market clearing process.","category":"page"},{"location":"tutorials/pcm_simulation/#Day-ahead-unit-commitment-stage","page":"Multi-stage Production Cost Simulation","title":"Day-ahead unit commitment stage","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"First, we can define a unit commitment template for the day ahead problem. We can use the included UC template, but in this example, we'll replace the ThermalBasicUnitCommitment with the slightly more complex ThermalStandardUnitCommitment for the thermal generators.","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"template_uc = template_unit_commitment()\nset_device_model!(template_uc, ThermalStandard, ThermalStandardUnitCommitment)\nset_device_model!(template_uc, HydroDispatch, HydroDispatchRunOfRiver)","category":"page"},{"location":"tutorials/pcm_simulation/#Define-the-reference-model-for-the-real-time-economic-dispatch","page":"Multi-stage Production Cost Simulation","title":"Define the reference model for the real-time economic dispatch","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"In addition to the manual specification process demonstrated in the OperationsProblem example, PSI also provides pre-specified templates for some standard problems:","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"template_ed = template_economic_dispatch(\n network = NetworkModel(PTDFPowerModel, use_slacks = true),\n)","category":"page"},{"location":"tutorials/pcm_simulation/#Define-the-SimulationModels","page":"Multi-stage Production Cost Simulation","title":"Define the SimulationModels","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"DecisionModels define the problems that are executed in the simulation. The actual problem will change as the stage gets updated to represent different time periods, but the formulations applied to the components is constant within a stage. In this case, we want to define two stages with the ProblemTemplates and the Systems that we've already created.","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"models = SimulationModels(\n decision_models = [\n DecisionModel(template_uc, sys_DA, optimizer = solver, name = \"UC\"),\n DecisionModel(template_ed, sys_RT, optimizer = solver, name = \"ED\"),\n ],\n)","category":"page"},{"location":"tutorials/pcm_simulation/#SimulationSequence","page":"Multi-stage Production Cost Simulation","title":"SimulationSequence","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Similar to an ProblemTemplate, the SimulationSequence provides a template of how to execute a sequential set of operations problems.","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Let's review some of the SimulationSequence arguments.","category":"page"},{"location":"tutorials/pcm_simulation/#Chronologies","page":"Multi-stage Production Cost Simulation","title":"Chronologies","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"In PowerSimulations, chronologies define where information is flowing. There are two types of chronologies.","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"inter-stage chronologies: Define how information flows between stages. e.g. day-ahead solutions are used to inform economic dispatch problems\nintra-stage chronologies: Define how information flows between multiple executions of a single stage. e.g. the dispatch setpoints of the first period of an economic dispatch problem are constrained by the ramping limits from setpoints in the final period of the previous problem.","category":"page"},{"location":"tutorials/pcm_simulation/#FeedForward","page":"Multi-stage Production Cost Simulation","title":"FeedForward","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"The definition of exactly what information is passed using the defined chronologies is accomplished with FeedForward. Specifically, FeedForward is used to define what to do with information being passed with an inter-stage chronology. Let's define a FeedForward that affects the semi-continuous range constraints of thermal generators in the economic dispatch problems based on the value of the unit-commitment variables.","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"feedforward = Dict(\n \"ED\" => [\n SemiContinuousFeedforward(\n component_type = ThermalStandard,\n source = OnVariable,\n affected_values = [ActivePowerVariable],\n ),\n ],\n)","category":"page"},{"location":"tutorials/pcm_simulation/#Sequencing","page":"Multi-stage Production Cost Simulation","title":"Sequencing","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"The stage problem length, look-ahead, and other details surrounding the temporal Sequencing of stages are controlled using the structure of the time series data in the Systems. So, to define a typical day-ahead - real-time sequence:","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Day ahead problems should represent 48 hours, advancing 24 hours after each execution (24-hour look-ahead)\nReal time problems should represent 1 hour (12 5-minute periods), advancing 15 min after each execution (15 min look-ahead)","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"We can adjust the time series data to reflect this structure in each System:","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"transform_single_time_series!(sys_DA, 48, Hour(1))\ntransform_single_time_series!(sys_RT, 12, Minute(15))","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Now we can put it all together to define a SimulationSequence","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"DA_RT_sequence = SimulationSequence(\n models = models,\n ini_cond_chronology = InterProblemChronology(),\n feedforwards = feedforward,\n)","category":"page"},{"location":"tutorials/pcm_simulation/#Simulation","page":"Multi-stage Production Cost Simulation","title":"Simulation","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Now, we can build and execute a simulation using the SimulationSequence and Stages that we've defined.","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"path = mkdir(joinpath(\".\", \"rts-store\")) #hide\nsim = Simulation(\n name = \"rts-test\",\n steps = 2,\n models = models,\n sequence = DA_RT_sequence,\n simulation_folder = joinpath(\".\", \"rts-store\"),\n)","category":"page"},{"location":"tutorials/pcm_simulation/#Build-simulation","page":"Multi-stage Production Cost Simulation","title":"Build simulation","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"build!(sim)","category":"page"},{"location":"tutorials/pcm_simulation/#Execute-simulation","page":"Multi-stage Production Cost Simulation","title":"Execute simulation","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"the following command returns the status of the simulation (0: is proper execution) and stores the results in a set of HDF5 files on disk.","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"execute!(sim, enable_progress_bar = false)","category":"page"},{"location":"tutorials/pcm_simulation/#Results","page":"Multi-stage Production Cost Simulation","title":"Results","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"To access the results, we need to load the simulation result metadata and then make requests to the specific data of interest. This allows you to efficiently access the results of interest without overloading resources.","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"results = SimulationResults(sim);\nuc_results = get_decision_problem_results(results, \"UC\"); # UC stage result metadata\ned_results = get_decision_problem_results(results, \"ED\"); # ED stage result metadata","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"We can read all the result variables","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"read_variables(uc_results)","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"or all the parameters","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"read_parameters(uc_results)","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"We can just list the variable names contained in uc_results:","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"list_variable_names(uc_results)","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"and a number of parameters (this pattern also works for aux_variables, expressions, and duals)","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"list_parameter_names(uc_results)","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Now we can read the specific results of interest for a specific problem, time window (optional), and set of variables, duals, or parameters (optional)","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Dict([\n v => read_variable(uc_results, v) for v in [\n \"ActivePowerVariable__RenewableDispatch\",\n \"ActivePowerVariable__HydroDispatch\",\n \"StopVariable__ThermalStandard\",\n ]\n])","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Or if we want the result of just one variable, parameter, or dual (must be defined in the problem definition), we can use:","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"read_parameter(\n ed_results,\n \"ActivePowerTimeSeriesParameter__RenewableNonDispatch\",\n initial_time = DateTime(\"2020-01-01T06:00:00\"),\n count = 5,\n)","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"info: Info\n","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"note that this returns the results of each execution step in a separate dataframe If you want the realized results (without lookahead periods), you can call read_realized_*:","category":"page"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"read_realized_variables(\n uc_results,\n [\"ActivePowerVariable__ThermalStandard\", \"ActivePowerVariable__RenewableDispatch\"],\n)\nrm(path, force = true, recursive = true) #hide","category":"page"},{"location":"tutorials/pcm_simulation/#Plotting","page":"Multi-stage Production Cost Simulation","title":"Plotting","text":"","category":"section"},{"location":"tutorials/pcm_simulation/","page":"Multi-stage Production Cost Simulation","title":"Multi-stage Production Cost Simulation","text":"Take a look at the plotting capabilities in PowerGraphics.jl","category":"page"},{"location":"modeler_guide/running_a_simulation/#running_a_simulation","page":"Simulation","title":"Simulation","text":"","category":"section"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"tip: Always try to solve the operations problem first before putting together the simulation\nIt is not uncommon that when trying to solve a complex simulation the resulting models are infeasible. This situation can be the result of many factors like the input data, the incorrect specification of the initial conditions for models with time dependencies or a poorly specified model. Therefore, it's highly recommended to run and analyze an Operations Problems that reflect the problems that will be included in a simulation prior to executing a simulation.","category":"page"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"Check out the Operations Problem Tutorial","category":"page"},{"location":"modeler_guide/running_a_simulation/#Feedforward","page":"Simulation","title":"Feedforward","text":"","category":"section"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"The definition of exactly what information is passed using the defined chronologies is accomplished using FeedForwards.","category":"page"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"Specifically, a FeedForward is used to define what to do with information being passed with an inter-stage chronology in a Simulation. The most common FeedForward is the SemiContinuousFeedForward that affects the semi-continuous range constraints of thermal generators in the economic dispatch problems based on the value of the (already solved) unit-commitment variables.","category":"page"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"The creation of a FeedForward requires at least to specify the component_type on which the FeedForward will be applied. The source variable specify which variable will be taken from the problem solved, for example the commitment variable of the thermal unit in the unit commitment problem. Finally, the affected_values specify which variables will be affected in the problem to be solved, for example the next economic dispatch problem.","category":"page"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"The following code specify the creation of semi-continuous range constraints on the ActivePowerVariable based on the solution of the commitment variable OnVariable for all ThermalStandard units.","category":"page"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"SemiContinuousFeedforward(\n component_type=ThermalStandard,\n source=OnVariable,\n affected_values=[ActivePowerVariable],\n)","category":"page"},{"location":"modeler_guide/running_a_simulation/#Chronologies","page":"Simulation","title":"Chronologies","text":"","category":"section"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"In PowerSimulations, chronologies define where information is flowing. There are two types of chronologies.","category":"page"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"inter-stage chronologies: Define how information flows between stages. e.g. day-ahead solutions are used to inform economic dispatch problems\nintra-stage chronologies: Define how information flows between multiple executions of a single stage. e.g. the dispatch setpoints of the first period of an economic dispatch problem are constrained by the ramping limits from setpoints in the final period of the previous problem.","category":"page"},{"location":"modeler_guide/running_a_simulation/#Sequencing","page":"Simulation","title":"Sequencing","text":"","category":"section"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"In a typical simulation pipeline, we want to connect daily (24-hours) day-ahead unit commitment problems, with multiple economic dispatch problems. Usually, our day-ahead unit commitment problem will have an hourly (1-hour) resolution, while the economic dispatch will have a 5-minute resolution.","category":"page"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"Depending on your problem, it is common to use a 2-day look-ahead for unit commitment problems, so in this case, the Day-Ahead problem will have: resolution = Hour(1) with interval = Hour(24) and horizon = Hour(48). In the case of the economic dispatch problem, it is common to use a look-ahead of two hours. Thus, the Real-Time problem will have: resolution = Minute(5), with interval = Minute(5) (we only store the first operating point) and horizon = 24 (24 time steps of 5 minutes are 120 minutes, that is 2 hours).","category":"page"},{"location":"modeler_guide/running_a_simulation/#Simulation-Setup","page":"Simulation","title":"Simulation Setup","text":"","category":"section"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"The following code creates the entire simulation pipeline:","category":"page"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"# We assume that the templates for UC and ED are ready\n# sys_da has the resolution of 1 hour:\n# with the 24 hours interval and horizon of 48 hours.\n# sys_rt has the resolution of 5 minutes:\n# with a 5-minute interval and horizon of 2 hours (24 time steps)\n\n# Create the UC Decision Model\ndecision_model_uc = DecisionModel(\n template_uc,\n sys_da;\n name=\"UC\",\n optimizer=optimizer_with_attributes(\n Xpress.Optimizer,\n \"MIPRELSTOP\" => 1e-1,\n ),\n)\n\n# Create the ED Decision Model\ndecision_model_ed = DecisionModel(\n template_ed,\n sys_rt;\n name=\"ED\",\n optimizer=optimizer_with_attributes(Xpress.Optimizer),\n)\n\n# Specify the SimulationModels using a Vector of decision_models: UC, ED\nsim_models = SimulationModels(\n decision_models=[\n decision_model_uc,\n decision_model_ed,\n ],\n)\n\n# Create the FeedForwards:\nsemi_ff = SemiContinuousFeedforward(\n component_type=ThermalStandard,\n source=OnVariable,\n affected_values=[ActivePowerVariable],\n)\n\n# Specify the sequencing:\nsim_sequence = SimulationSequence(\n # Specify the vector of decision models: sim_models\n models=sim_models,\n # Specify a Dict of feedforwards on which the FF applies\n # based on the DecisionModel name, in this case \"ED\"\n feedforwards=Dict(\n \"ED\" => [semi_ff],\n ),\n # Specify the chronology, in this case inter-stage\n ini_cond_chronology=InterProblemChronology(),\n)\n\n# Construct the simulation:\nsim = Simulation(\n name=\"compact_sim\",\n steps=10, # 10 days\n models=sim_models,\n sequence=sim_sequence,\n # Specify the start_time as a DateTime: e.g. DateTime(\"2020-10-01T00:00:00\")\n initial_time=start_time,\n # Specify a temporary folder to avoid storing logs if not needed\n simulation_folder=mktempdir(cleanup=true),\n)\n\n# Build the decision models and simulation setup\nbuild!(sim)\n\n# Execute the simulation using the Optimizer specified in each DecisionModel\nexecute!(sim, enable_progress_bar=true)","category":"page"},{"location":"modeler_guide/running_a_simulation/","page":"Simulation","title":"Simulation","text":"Check the PCM tutorial for a more detailed tutorial on executing a simulation in a production cost modeling (PCM) environment.","category":"page"},{"location":"tutorials/adding_new_device_formulation/#Adding-Device-Formulations","page":"Adding Device Formulations","title":"Adding Device Formulations","text":"","category":"section"},{"location":"formulation_library/Feedforward/#ff_formulations","page":"Feedforwards","title":"FeedForward Formulations","text":"","category":"section"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"FeedForwards are the mechanism to define how information is shared between models. Specifically, a FeedForward defines what to do with information passed with an inter-stage chronology in a Simulation. The most common FeedForward is the SemiContinuousFeedForward that affects the semi-continuous range constraints of thermal generators in the economic dispatch problems based on the value of the (already solved) unit-commitment variables.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"The creation of a FeedForward requires at least specifying the component_type on which the FeedForward will be applied. The source variable specifies which variable will be taken from the problem solved, for example, the commitment variable of the thermal unit in the unit commitment problem. Finally, the affected_values specify which variables will be affected in the problem to be solved, for example, the next economic dispatch problem.","category":"page"},{"location":"formulation_library/Feedforward/#Table-of-contents","page":"Feedforwards","title":"Table of contents","text":"","category":"section"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"SemiContinuousFeedforward\nFixValueFeedforward\nUpperBoundFeedforward\nLowerBoundFeedforward","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"","category":"page"},{"location":"formulation_library/Feedforward/#SemiContinuousFeedforward","page":"Feedforwards","title":"SemiContinuousFeedforward","text":"","category":"section"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"SemiContinuousFeedforward","category":"page"},{"location":"formulation_library/Feedforward/#PowerSimulations.SemiContinuousFeedforward","page":"Feedforwards","title":"PowerSimulations.SemiContinuousFeedforward","text":"SemiContinuousFeedforward(\n component_type::Type{<:PSY.Component},\n source::Type{T},\n affected_values::Vector{DataType},\n meta = CONTAINER_KEY_EMPTY_META\n) where {T}\n\nIt allows to enable/disable bounds to 0.0 for a specified variable. Commonly used to limit the ActivePowerVariable in an Economic Dispatch problem by the commitment decision taken in an another problem (typically a Unit Commitment problem).\n\nArguments:\n\ncomponent_type::Type{<:PSY.Component} : Specify the type of component on which the Feedforward will be applied\nsource::Type{T} : Specify the VariableType, ParameterType or AuxVariableType as the source of values for the Feedforward\naffected_values::Vector{DataType} : Specify the variable on which the semicontinuous limit will be applied using the source values\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Variables:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"No variables are created","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Parameters:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"texton^textth = OnStatusParameter obtained from the source variable, typically the commitment variable of the unit commitment problem u^textth.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Objective:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"No changes to the objective function.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Expressions:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Adds -texton^textthP^textthmax to the ActivePowerRangeExpressionUB expression and -texton^textthP^textthmin to the ActivePowerRangeExpressionLB expression.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Constraints:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Limits the ActivePowerRangeExpressionUB and ActivePowerRangeExpressionLB by zero as:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"beginalign*\n textActivePowerRangeExpressionUB_t = p_t^textth - texton_t^textthP^textthmax le 0 quad forall tin 1 dots T \n textActivePowerRangeExpressionLB_t = p_t^textth - texton_t^textthP^textthmin ge 0 quad forall tin 1 dots T \nendalign*","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Thus, if the commitment parameter is zero, the dispatch is limited to zero, forcing to turn off the generator without introducing binary variables in the economic dispatch problem.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"","category":"page"},{"location":"formulation_library/Feedforward/#FixValueFeedforward","page":"Feedforwards","title":"FixValueFeedforward","text":"","category":"section"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"FixValueFeedforward","category":"page"},{"location":"formulation_library/Feedforward/#PowerSimulations.FixValueFeedforward","page":"Feedforwards","title":"PowerSimulations.FixValueFeedforward","text":"FixValueFeedforward(\n component_type::Type{<:PSY.Component},\n source::Type{T},\n affected_values::Vector{DataType},\n meta = CONTAINER_KEY_EMPTY_META\n) where {T}\n\nFixes a Variable or Parameter Value in the model from another problem. Is the only Feed Forward that can be used with a Parameter or a Variable as the affected value.\n\nArguments:\n\ncomponent_type::Type{<:PSY.Component} : Specify the type of component on which the Feedforward will be applied\nsource::Type{T} : Specify the VariableType, ParameterType or AuxVariableType as the source of values for the Feedforward\naffected_values::Vector{DataType} : Specify the variable on which the fix value will be applied using the source values\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Variables:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"No variables are created","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Parameters:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"The parameter FixValueParameter is used to match the result obtained from the source variable (from the simulation state).","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Objective:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"No changes to the objective function.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Expressions:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"No changes on expressions.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Constraints:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Set the VariableType from the affected_values to be equal to the source parameter store in FixValueParameter","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"beginalign*\n textAffectedVariable_t = textSourceVariableParameter_t quad forall t in 1dots T\nendalign*","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"","category":"page"},{"location":"formulation_library/Feedforward/#UpperBoundFeedforward","page":"Feedforwards","title":"UpperBoundFeedforward","text":"","category":"section"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"UpperBoundFeedforward","category":"page"},{"location":"formulation_library/Feedforward/#PowerSimulations.UpperBoundFeedforward","page":"Feedforwards","title":"PowerSimulations.UpperBoundFeedforward","text":"UpperBoundFeedforward(\n component_type::Type{<:PSY.Component},\n source::Type{T},\n affected_values::Vector{DataType},\n add_slacks::Bool = false,\n meta = CONTAINER_KEY_EMPTY_META\n) where {T}\n\nConstructs a parameterized upper bound constraint to implement feedforward from other models.\n\nArguments:\n\ncomponent_type::Type{<:PSY.Component} : Specify the type of component on which the Feedforward will be applied\nsource::Type{T} : Specify the VariableType, ParameterType or AuxVariableType as the source of values for the Feedforward\naffected_values::Vector{DataType} : Specify the variable on which the upper bound will be applied using the source values\nadd_slacks::Bool = false : Add slacks variables to relax the upper bound constraint.\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Variables:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"If slack variables are enabled:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"UpperBoundFeedForwardSlack\nBounds: [0.0, ]\nDefault proportional cost: 1e6\nSymbol: p^textffubsl","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Parameters:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"The parameter UpperBoundValueParameter stores the result obtained from the source variable (from the simulation state) that will be used as an upper bound to the affected variable.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Objective:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"The slack variable is added to the objective function using its large default cost + p^textffubsl cdot 10^6","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Expressions:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"No changes on expressions.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Constraints:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Set the VariableType from the affected_values to be lower than the source parameter store in UpperBoundValueParameter.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"beginalign*\n textAffectedVariable_t - p_t^textffubsl le textSourceVariableParameter_t quad forall t in 1dots T\nendalign*","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"","category":"page"},{"location":"formulation_library/Feedforward/#LowerBoundFeedforward","page":"Feedforwards","title":"LowerBoundFeedforward","text":"","category":"section"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"LowerBoundFeedforward","category":"page"},{"location":"formulation_library/Feedforward/#PowerSimulations.LowerBoundFeedforward","page":"Feedforwards","title":"PowerSimulations.LowerBoundFeedforward","text":"LowerBoundFeedforward(\n component_type::Type{<:PSY.Component},\n source::Type{T},\n affected_values::Vector{DataType},\n add_slacks::Bool = false,\n meta = CONTAINER_KEY_EMPTY_META\n) where {T}\n\nConstructs a parameterized lower bound constraint to implement feedforward from other models.\n\nArguments:\n\ncomponent_type::Type{<:PSY.Component} : Specify the type of component on which the Feedforward will be applied\nsource::Type{T} : Specify the VariableType, ParameterType or AuxVariableType as the source of values for the Feedforward\naffected_values::Vector{DataType} : Specify the variable on which the lower bound will be applied using the source values\nadd_slacks::Bool = false : Add slacks variables to relax the lower bound constraint.\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Variables:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"If slack variables are enabled:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"LowerBoundFeedForwardSlack\nBounds: [0.0, ]\nDefault proportional cost: 1e6\nSymbol: p^textfflbsl","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Parameters:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"The parameter LowerBoundValueParameter stores the result obtained from the source variable (from the simulation state) that will be used as a lower bound to the affected variable.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Objective:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"The slack variable is added to the objective function using its large default cost + p^textfflbsl cdot 10^6","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Expressions:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"No changes on expressions.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Constraints:","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"Set the VariableType from the affected_values to be greater than the source parameter store in LowerBoundValueParameter.","category":"page"},{"location":"formulation_library/Feedforward/","page":"Feedforwards","title":"Feedforwards","text":"beginalign*\n textAffectedVariable_t + p_t^textfflbsl ge textSourceVariableParameter_t quad forall t in 1dots T\nendalign*","category":"page"},{"location":"#PowerSimulations.jl","page":"Welcome Page","title":"PowerSimulations.jl","text":"","category":"section"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"CurrentModule = PowerSimulations","category":"page"},{"location":"#Overview","page":"Welcome Page","title":"Overview","text":"","category":"section"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"PowerSimulations.jl is a power system operations simulation tool developed as a flexible and open source software for quasi-static power systems simulations including Production Cost Models. PowerSimulations.jl tackles the issues of developing a simulation model in a modular way providing tools for the formulation of decision models and emulation models that can be solved independently or in an interconnected fashion.","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"PowerSimulations.jl supports the workflows to develop simulations by separating the development of operations models and simulation models.","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"Operation Models: Optimization model used to find the solution of an operation problem.\nSimulations Models: Defined the requirements to find solutions to a sequence of operation problems in a way that resembles the procedures followed by operators.","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"The most common Simulation Model is the solution of a Unit Commitment and Economic Dispatch sequence of problems. This model is used in commercial Production Cost Modeling tools, but it has a limited scope of analysis.","category":"page"},{"location":"#How-the-documentation-is-structured","page":"Welcome Page","title":"How the documentation is structured","text":"","category":"section"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"PowerSimulations.jl documentation and code are organized according to the needs of different users depending on their skillset and requirements. In broad terms there are three categories:","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"Modeler: Users that want to solve an operations problem or run a simulation using the existing models in PowerSimulations.jl. For instance, answer questions about the change in operation costs in future fuel mixes. Check the formulations library page to choose a modeling strategy that fits your needs.\nModel Developer: Users that want to develop custom models and workflows for the simulation of a power system operation. For instance, study the impacts of an stochastic optimization problem over a deterministic.\nCode Base Developers: Users that want to add new core functionalities or fix bugs in the core capabilities of PowerSimulations.jl.","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"PowerSimulations.jl is an active project under development, and we welcome your feedback, suggestions, and bug reports.","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"Note: PowerSimulations.jl uses the data model implemented in PowerSystems.jl to construct optimization models. In most cases, you need to add PowerSystems.jl to your scripts.","category":"page"},{"location":"#Installation","page":"Welcome Page","title":"Installation","text":"","category":"section"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"The latest stable release of PowerSimulations can be installed using the Julia package manager with","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"] add PowerSimulations","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"For the current development version, \"checkout\" this package with","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"] add PowerSimulations#main","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"An appropriate optimization solver is required for running PowerSimulations models. Refer to JuMP.jl solver's page to select the most appropriate for the application of interest.","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"","category":"page"},{"location":"","page":"Welcome Page","title":"Welcome Page","text":"PowerSystems has been developed as part of the Scalable Integrated Infrastructure Planning (SIIP) initiative at the U.S. Department of Energy's National Renewable Energy Laboratory (NREL).","category":"page"},{"location":"formulation_library/Load/#PowerSystems.ElectricLoad-Formulations","page":"Load","title":"PowerSystems.ElectricLoad Formulations","text":"","category":"section"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Electric load formulations define the optimization models that describe load units (demand) mathematical model in different operational settings, such as economic dispatch and unit commitment.","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"note: Note\nThe use of reactive power variables and constraints will depend on the network model used, i.e., whether it uses (or does not use) reactive power. If the network model is purely active power-based, reactive power variables and related constraints are not created.","category":"page"},{"location":"formulation_library/Load/#Table-of-contents","page":"Load","title":"Table of contents","text":"","category":"section"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"StaticPowerLoad\nPowerLoadInterruption\nPowerLoadDispatch\nValid configurations","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"","category":"page"},{"location":"formulation_library/Load/#StaticPowerLoad","page":"Load","title":"StaticPowerLoad","text":"","category":"section"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"StaticPowerLoad","category":"page"},{"location":"formulation_library/Load/#PowerSimulations.StaticPowerLoad","page":"Load","title":"PowerSimulations.StaticPowerLoad","text":"Formulation type to add a time series parameter for non-dispatchable ElectricLoad withdrawals to power balance constraints\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Variables:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"No variables are created","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Time Series Parameters:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Uses the max_active_power timeseries parameter to determine the demand value at each time-step","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.get_default_time_series_names(ElectricLoad, StaticPowerLoad)\ncombo_table = DataFrame(\n \"Parameter\" => map(x -> \"[`$x`](@ref)\", collect(keys(combos))),\n \"Default Time Series Name\" => map(x -> \"`$x`\", collect(values(combos))),\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Expressions:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Subtracts the parameters listed above from the respective active and reactive power balance expressions created by the selected Network Formulations.","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Constraints:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"No constraints are created","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"","category":"page"},{"location":"formulation_library/Load/#PowerLoadInterruption","page":"Load","title":"PowerLoadInterruption","text":"","category":"section"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"PowerLoadInterruption","category":"page"},{"location":"formulation_library/Load/#PowerSimulations.PowerLoadInterruption","page":"Load","title":"PowerSimulations.PowerLoadInterruption","text":"Formulation type to enable (binary) load interruptions\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Variables:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"ActivePowerVariable:\nBounds: [0.0, ]\nDefault initial value: 0.0\nSymbol: p^textld\nReactivePowerVariable:\nBounds: [0.0, ]\nDefault initial value: 0.0\nSymbol: q^textld\nOnVariable:\nBounds: 01\nDefault initial value: 1\nSymbol: u^textld","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Static Parameters:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"P^textldmax = PowerSystems.get_max_active_power(device)\nQ^textldmax = PowerSystems.get_max_reactive_power(device)","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Time Series Parameters:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.get_default_time_series_names(ElectricLoad, PowerLoadInterruption)\ncombo_table = DataFrame(\n \"Parameter\" => map(x -> \"[`$x`](@ref)\", collect(keys(combos))),\n \"Default Time Series Name\" => map(x -> \"`$x`\", collect(values(combos))),\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Objective:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Creates an objective function term based on the FunctionData Options where the quantity term is defined as p^textld.","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Expressions:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Subtractp^textld and q^textld terms and to the respective active and reactive power balance expressions created by the selected Network Formulations","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Constraints:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"beginaligned\n p_t^textld le u_t^textld cdot textActivePowerTimeSeriesParameter_t quad forall t in 1dots T \n q_t^textre = textpf cdot p_t^textre quad forall t in 1dots T\nendaligned","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"on which textpf = sin(arctan(Q^textldmaxP^textldmax)).","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"","category":"page"},{"location":"formulation_library/Load/#PowerLoadDispatch","page":"Load","title":"PowerLoadDispatch","text":"","category":"section"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"PowerLoadDispatch","category":"page"},{"location":"formulation_library/Load/#PowerSimulations.PowerLoadDispatch","page":"Load","title":"PowerSimulations.PowerLoadDispatch","text":"Formulation type to enable (continuous) load interruption dispatch\n\n\n\n\n\n","category":"type"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Variables:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"ActivePowerVariable:\nBounds: [0.0, ]\nDefault initial value: PowerSystems.get_active_power(device)\nSymbol: p^textld\nReactivePowerVariable:\nBounds: [0.0, ]\nDefault initial value: PowerSystems.get_reactive_power(device)\nSymbol: q^textld","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Static Parameters:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"P^textldmax = PowerSystems.get_max_active_power(device)\nQ^textldmax = PowerSystems.get_max_reactive_power(device)","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Time Series Parameters:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.get_default_time_series_names(ElectricLoad, PowerLoadDispatch)\ncombo_table = DataFrame(\n \"Parameter\" => map(x -> \"[`$x`](@ref)\", collect(keys(combos))),\n \"Default Time Series Name\" => map(x -> \"`$x`\", collect(values(combos))),\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Objective:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Creates an objective function term based on the FunctionData Options where the quantity term is defined as p^textld.","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Expressions:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Subtractp^textld and q^textld terms and to the respective active and reactive power balance expressions created by the selected Network Formulations","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Constraints:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"beginaligned\n p_t^textld le textActivePowerTimeSeriesParameter_t quad forall t in 1dots T\n q_t^textld = textpf cdot p_t^textld quad forall t in 1dots T\nendaligned","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"on which textpf = sin(arctan(Q^textldmaxP^textldmax)).","category":"page"},{"location":"formulation_library/Load/#Valid-configurations","page":"Load","title":"Valid configurations","text":"","category":"section"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"Valid DeviceModels for subtypes of ElectricLoad include the following:","category":"page"},{"location":"formulation_library/Load/","page":"Load","title":"Load","text":"using PowerSimulations\nusing PowerSystems\nusing DataFrames\nusing Latexify\ncombos = PowerSimulations.generate_device_formulation_combinations()\nfilter!(x -> x[\"device_type\"] <: ElectricLoad, combos)\ncombo_table = DataFrame(\n \"Valid DeviceModel\" => [\"`DeviceModel($(c[\"device_type\"]), $(c[\"formulation\"]))`\" for c in combos],\n \"Device Type\" => [\"[$(c[\"device_type\"])](https://nrel-Sienna.github.io/PowerSystems.jl/stable/model_library/generated_$(c[\"device_type\"])/)\" for c in combos],\n \"Formulation\" => [\"[$(c[\"formulation\"])](@ref)\" for c in combos],\n )\nmdtable(combo_table, latex = false)","category":"page"},{"location":"code_base_developer_guide/extending_powersimulations/#Extending-Source-Code-Functionalities","page":"Extending Source Code Functionalities","title":"Extending Source Code Functionalities","text":"","category":"section"},{"location":"code_base_developer_guide/extending_powersimulations/#Enable-other-recorder-events","page":"Extending Source Code Functionalities","title":"Enable other recorder events","text":"","category":"section"},{"location":"code_base_developer_guide/extending_powersimulations/","page":"Extending Source Code Functionalities","title":"Extending Source Code Functionalities","text":"Other types of recorder events can be enabled with a possible performance impact. To do this pass in the specific recorder names to be enabled when you call build.","category":"page"},{"location":"code_base_developer_guide/extending_powersimulations/","page":"Extending Source Code Functionalities","title":"Extending Source Code Functionalities","text":"sim = Simulation(...)\nrecorders = [:execution]\nbuild!(sim; recorders = recorders)\nexecute!(sim)","category":"page"},{"location":"code_base_developer_guide/extending_powersimulations/","page":"Extending Source Code Functionalities","title":"Extending Source Code Functionalities","text":"Now we can examine InitialConditionUpdateEvents for specific steps and stages.","category":"page"},{"location":"code_base_developer_guide/extending_powersimulations/","page":"Extending Source Code Functionalities","title":"Extending Source Code Functionalities","text":"show_simulation_events(\n PSI.InitialConditionUpdateEvent,\n \"./output/aggregation/1\",\n x -> x.initial_condition_type == \"DeviceStatus\";\n step = 2,\n stage = 1\n)\n┌─────────────────────────────┬─────────────────────┬────────────────────────┬─────────────────┬─────────────┬─────┬──────────────┐\n│ name │ simulation_time │ initial_condition_type │ device_type │ device_name │ val │ stage_number │\n├─────────────────────────────┼─────────────────────┼────────────────────────┼─────────────────┼─────────────┼─────┼──────────────┤\n│ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │ DeviceStatus │ ThermalStandard │ Solitude │ 0.0 │ 1 │\n│ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │ DeviceStatus │ ThermalStandard │ Park City │ 1.0 │ 1 │\n│ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │ DeviceStatus │ ThermalStandard │ Alta │ 1.0 │ 1 │\n│ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │ DeviceStatus │ ThermalStandard │ Brighton │ 1.0 │ 1 │\n│ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │ DeviceStatus │ ThermalStandard │ Sundance │ 0.0 │ 1 │\n└─────────────────────────────┴─────────────────────┴────────────────────────┴─────────────────┴─────────────┴─────┴──────────────┘","category":"page"},{"location":"code_base_developer_guide/extending_powersimulations/#Show-the-wall-time-with-your-events","page":"Extending Source Code Functionalities","title":"Show the wall time with your events","text":"","category":"section"},{"location":"code_base_developer_guide/extending_powersimulations/","page":"Extending Source Code Functionalities","title":"Extending Source Code Functionalities","text":"Sometimes you might want to see how the events line up with the wall time.","category":"page"},{"location":"code_base_developer_guide/extending_powersimulations/","page":"Extending Source Code Functionalities","title":"Extending Source Code Functionalities","text":"show_simulation_events(\n PSI.InitialConditionUpdateEvent,\n \"./output/aggregation/1\",\n x -> x.initial_condition_type == \"DeviceStatus\";\n step = 2,\n stage = 1,\n wall_time = true\n)\n┌─────────────────────────┬─────────────────────────────┬─────────────────────┬────────────────────────┬─────────────────┬─────────────┬─────┬──────────────┐\n│ timestamp │ name │ simulation_time │ initial_condition_type │ device_type │ device_name │ val │ stage_number │\n├─────────────────────────┼─────────────────────────────┼─────────────────────┼────────────────────────┼─────────────────┼─────────────┼─────┼──────────────┤\n│ 2020-04-07T15:08:32.711 │ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │ DeviceStatus │ ThermalStandard │ Solitude │ 0.0 │ 1 │\n│ 2020-04-07T15:08:32.711 │ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │ DeviceStatus │ ThermalStandard │ Park City │ 1.0 │ 1 │\n│ 2020-04-07T15:08:32.711 │ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │ DeviceStatus │ ThermalStandard │ Alta │ 1.0 │ 1 │\n│ 2020-04-07T15:08:32.711 │ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │ DeviceStatus │ ThermalStandard │ Brighton │ 1.0 │ 1 │\n│ 2020-04-07T15:08:32.711 │ InitialConditionUpdateEvent │ 2024-01-02T00:00:00 │ DeviceStatus │ ThermalStandard │ Sundance │ 0.0 │ 1 │\n└─────────────────────────┴─────────────────────────────┴─────────────────────┴────────────────────────┴─────────────────┴─────────────┴─────┴──────────────┘","category":"page"}] +} diff --git a/v0.28.3/siteinfo.js b/v0.28.3/siteinfo.js new file mode 100644 index 0000000000..4e3d69747d --- /dev/null +++ b/v0.28.3/siteinfo.js @@ -0,0 +1 @@ +var DOCUMENTER_CURRENT_VERSION = "v0.28.3"; diff --git a/v0.28.3/tutorials/adding_new_device_formulation/index.html b/v0.28.3/tutorials/adding_new_device_formulation/index.html new file mode 100644 index 0000000000..89cda5a9b5 --- /dev/null +++ b/v0.28.3/tutorials/adding_new_device_formulation/index.html @@ -0,0 +1,2 @@ + +Adding Device Formulations · PowerSimulations.jl diff --git a/v0.28.3/tutorials/adding_new_problem_model/index.html b/v0.28.3/tutorials/adding_new_problem_model/index.html new file mode 100644 index 0000000000..2c56d5e4f8 --- /dev/null +++ b/v0.28.3/tutorials/adding_new_problem_model/index.html @@ -0,0 +1,76 @@ + +Adding an Operations Problem Model · PowerSimulations.jl

    Adding an Operations Problem Model

    This tutorial will show how to create a custom decision problem model. These cases are the ones where the user want to solve a fully specified problem. Some examples of custom decision models include:

    • Solving a custom Security Constrained Unit Commitment Problem
    • Solving a market agent utility maximization Problem. See examples of this functionality in HybridSystemsSimulations.jl

    The tutorial follows the usual steps for operational model building. First, build the decision model in isolation and second, integrate it into a simulation. In most cases there will be more than one way of achieving the same objective when it comes to implementing the model. This guide shows a general set of steps and requirements but it is by no means an exhaustive and detailed guide on developing custom decision models.

    Warning

    All the code in this tutorial is considered "pseudo-code". Copy-paste will likely not work out of the box. You need to develop the internals of the functions correctly for the examples below to work.

    General Rules

    1. As a general rule you need to understand Julia's terminology such as multiple dispatch, parametric structs and method overloading, among others. Developing custom models for an operational simulation is a highly technical task and requires skilled development. This tutorial also requires good understanding of PowerSystems.jl data structures and features which are covered in the tutorials section of PowerSystems.jl documentation.

    Finally, developing a custom model decision model that will employ an optimization model under the hood requires understanding JuMP.jl.

    1. Need to employ anonymous constraints and variables in JuMP

    and register the constraints, variables and other optimization objects into PowerSimulations.jl's optimization container. Otherwise the features to use your problem in the simulation like the coordination with other problems and post processing won't work. More on this in the section How to develop your build_model! function below.

    1. Implement the required methods for your custom decision models. In some cases it will be possible to re-use some of the other methods that exist in PowerSimulations to make life easier for variable addition and constraint creation but this is not required.

    Decision Problem

    Step 1: Define a Custom Decision Problem

    Define a decision problem struct as a subtype of PowerSimulations.DecisionProblem. This requirement will enable a lot of the underlying functionality that relies on multiple dispatch. DecisionProblems are used to parameterize the behavior of DecisionModel objects which are just containers for the parameters, references and the optimization problem.

    It is possible to define a Custom Decision Problem that gives the user full control over the build, solve and execution process since it imposes less requirements on the developer. However, with less requirements there are also less checks and validations performed inside of PowerSimulations which might lead to unexpected errors

    struct MyCustomDecisionProblem <: PSI.DecisionProblem end

    Alternatively, it is possible to define a Custom Decision Problem subtyping from DefaultDecisionProblem which imposes more requirements and structure onto the developer but employs more checks and validations in the process. Be aware that this route will decrease the flexibility of what can be done inside the custom model.

    struct MyCustomDecisionProblem <: PSI.DefaultDecisionProblem end

    Once the problem type is defined, initialize the decision model container with your custom decision problem passing the solver and some of the settings you need for the solution of the problem. For custom problems some of the settings need manual implementation by the developer. Settings availability is also dependent on wether you choose to subtype from PSI.DecisionProblem or PSI.DefaultDecisionProblem

    my_model = DecisionModel{MyCustomDecisionProblem}(
    +    sys;
    +    name = "MyModel",
    +    optimizer = optimizer_with_attributes(HiGHS.Optimizer),
    +     optimizer_solve_log_print = true,
    +)

    Mandatory Method Implementations

    1. build_model!: This method build the JuMP optimization model.

    Optional Method Overloads

    These methods can be defined optionally for your problem. By default for problems subtyped from DecisionProblem these checks are not executed. If the problems are subtyped from DefaultDecisionProblem these checks are always conducted with PowerSimulations defaults and require compliance with those defaults to pass. In any case, these can be overloaded when necessary depending on the problem requirements.

    1. validate_template
    2. validate_time_series!
    3. reset!
    4. solve_impl!

    How to develop your build_model! function

    Registering a variable in the model

    To register a variable in the model, the developer must first allocate the container into the optimization container and then populate it. For example, it require start the build function as follows:

    Info

    We recommend calling import PowerSimulations and defining the constant CONST PSI = PowerSimulations to make it easier to read the code and determine which package is responsible for defining the functions.

        function PSI.build_model!(model::PSI.DecisionModel{MyCustomDecisionProblem})
    +        container = PSI.get_optimization_container(model)
    +        time_steps = 1:24
    +        PSI.set_time_steps!(container, time_steps)
    +        system = PSI.get_system(model)
    +
    +        thermal_gens = PSY.get_components(PSY.ThermalStandard, system)
    +        thermal_gens_names = PSY.get_name.(thermal_gens)
    +
    +        # Create the container for the variable
    +        variable = PSI.add_variable_container!(
    +            container,
    +            PSI.ActivePowerVariable(), # <- This variable is defined in PowerSimulations but the user can define their own
    +            PSY.ThermalGeneration, # <- Device type for the variable. Can be from PSY or custom defined
    +            thermal_gens_names, # <- First container dimension
    +            time_steps, # <- Second container dimension
    +        )
    +
    +        # Iterate over the devices and time to store the JuMP variables into the container.
    +        for t in time_steps, d in thermal_gens_names
    +            name = PSY.get_name(d)
    +            variable[name, t] = JuMP.@variable(get_jump_model(container))
    +            # It is possible to use PSY getter functions to retrieve data from the generators
    +            JuMP.set_upper_bound(variable[name, t], UB_DATA) # <- Optional
    +            JuMP.set_lower_bound(variable[name, t], LB_DATA) # <- Optional
    +        end
    +
    +        # Add More Variables.....
    +
    +        return
    +    end

    Registering a constraint in the model

    A similar pattern is used to add constraints to the model, in this example the field meta is used to avoid creating unnecessary duplicate constraint types. For instance to reflect upperbound and lowerbound or upwards and downwards constraints. Meta can take any string value except for the _ character.

        function PSI.build_model!(model::PSI.DecisionModel{MyCustomDecisionProblem})
    +        container = PSI.get_optimization_container(model)
    +        time_steps = 1:24
    +        PSI.set_time_steps!(container, time_steps)
    +        system = PSI.get_system(model)
    +
    +        # VARIABLE ADDITION CODE
    +
    +        # Constraint additions
    +        con_ub = PSI.add_constraints_container!(
    +            container,
    +            PSI.RangeLimitConstraint(), # <- Constraint Type defined by PSI or your own
    +            PSY.ThermalGeneration, # <- Device type for variable. Can be PSY or custom
    +            thermal_gens_names, # <- First container dimension
    +            time_steps; # <- Second container dimension
    +            meta = "ub" # <- meta allows to reuse a constraint definition for similar constraints. It only requires to be a string
    +            )
    +
    +        con_lb = PSI.add_constraints_container!(
    +            container,
    +            PSI.RangeLimitConstraint(),
    +            PSY.ThermalGeneration,
    +            thermal_gens_names, # <- First container dimension
    +            time_steps; # <- Second container dimension
    +            meta = "lb" # <- meta allows to reuse a constraint definition for similar constraints. It only requires to be a string
    +            )
    +
    +        # Retrieve a relevant variable from the container if not defined in
    +        variable = PSI.get_variable(container, PSI.ActivePowerVariable(), PSY.ThermalGeneration)
    +        for device in devices, t in time_steps
    +            ci_name = PSY.get_name(device)
    +            limits = get_min_max_limits(device) # depends on constraint type and formulation type
    +            con_ub[ci_name, t] =
    +                JuMP.@constraint(get_jump_model(container), variable[ci_name, t] >= limits.min)
    +            con_lb[ci_name, t] =
    +                JuMP.@constraint(get_jump_model(container), variable[ci_name, t] >= limits.min)
    +        end
    +
    +        return
    +    end
    diff --git a/v0.28.3/tutorials/basics_of_developing_models/index.html b/v0.28.3/tutorials/basics_of_developing_models/index.html new file mode 100644 index 0000000000..5fee8e3718 --- /dev/null +++ b/v0.28.3/tutorials/basics_of_developing_models/index.html @@ -0,0 +1,2 @@ + +Basics of Developing Operation Models · PowerSimulations.jl diff --git a/v0.28.3/tutorials/decision_problem/index.html b/v0.28.3/tutorials/decision_problem/index.html new file mode 100644 index 0000000000..65dd5b916c --- /dev/null +++ b/v0.28.3/tutorials/decision_problem/index.html @@ -0,0 +1,428 @@ + +Single-step Problem · PowerSimulations.jl

    Operations problems with PowerSimulations.jl

    Originally Contributed by: Clayton Barrows

    Introduction

    PowerSimulations.jl supports the construction and solution of optimal power system scheduling problems (Operations Problems). Operations problems form the fundamental building blocks for sequential simulations. This example shows how to specify and customize a the mathematics that will be applied to the data with an ProblemTemplate, build and execute an DecisionModel, and access the results.

    Load Packages

    using PowerSystems
    +using PowerSimulations
    +using HydroPowerSimulations
    +using PowerSystemCaseBuilder
    +using HiGHS # solver
    +using Dates

    Data

    Note

    PowerSystemCaseBuilder.jl is a helper library that makes it easier to reproduce examples in the documentation and tutorials. Normally you would pass your local files to create the system data instead of calling the function build_system. For more details visit PowerSystemCaseBuilder Documentation

    sys = build_system(PSISystems, "modified_RTS_GMLC_DA_sys")
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    System
    PropertyValue
    Name
    Description
    System Units BaseSYSTEM_BASE
    Base Power100.0
    Base Frequency60.0
    Num Components501
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Static Components
    TypeCount
    ACBus73
    Arc109
    Area3
    FixedAdmittance3
    HydroDispatch1
    Line105
    LoadZone21
    PowerLoad51
    RenewableDispatch29
    RenewableNonDispatch31
    TapTransformer15
    ThermalStandard54
    TwoTerminalHVDCLine1
    VariableReserve{ReserveDown}1
    VariableReserve{ReserveUp}4
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Time Series Summary
    owner_typeowner_categorytime_series_typetime_series_categoryinitial_timestampresolution_mscount
    StringStringStringStringStringInt64Int64
    AreaComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0036000003
    AreaComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0036000003
    FixedAdmittanceComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0036000003
    FixedAdmittanceComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0036000003
    HydroDispatchComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0036000002
    HydroDispatchComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0036000002
    PowerLoadComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:00360000051
    PowerLoadComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:00360000051
    RenewableDispatchComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:00360000029
    RenewableDispatchComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:00360000029
    RenewableNonDispatchComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:00360000031
    RenewableNonDispatchComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:00360000031
    VariableReserveComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0036000005
    VariableReserveComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0036000005
    +

    Define a problem specification with an ProblemTemplate

    You can create an empty template with:

    template_uc = ProblemTemplate()
    + + + + + + + + + + + + + + + + + + + +
    Network Model
    Network ModelCopperPlatePowerModel
    Slacksfalse
    PTDFfalse
    DualsNone
    + + + + + + + + + + + + +
    Device Models
    Device TypeFormulationSlacks
    +

    Now, you can add a DeviceModel for each device type to create an assignment between PowerSystems device types and the subtypes of AbstractDeviceFormulation. PowerSimulations has a variety of different AbstractDeviceFormulation subtypes that can be applied to different PowerSystems device types, each dispatching to different methods for populating optimization problem objectives, variables, and constraints. Documentation on the formulation options for various devices can be found in the formulation library docs

    Branch Formulations

    Here is an example of relatively standard branch formulations. Other formulations allow for selective enforcement of transmission limits and greater control on transformer settings.

    set_device_model!(template_uc, Line, StaticBranch)
    +set_device_model!(template_uc, Transformer2W, StaticBranch)
    +set_device_model!(template_uc, TapTransformer, StaticBranch)

    Injection Device Formulations

    Here we define template entries for all devices that inject or withdraw power on the network. For each device type, we can define a distinct AbstractDeviceFormulation. In this case, we're defining a basic unit commitment model for thermal generators, curtailable renewable generators, and fixed dispatch (net-load reduction) formulations for HydroDispatch and RenewableNonDispatch devices.

    set_device_model!(template_uc, ThermalStandard, ThermalStandardUnitCommitment)
    +set_device_model!(template_uc, RenewableDispatch, RenewableFullDispatch)
    +set_device_model!(template_uc, PowerLoad, StaticPowerLoad)
    +set_device_model!(template_uc, HydroDispatch, HydroDispatchRunOfRiver)
    +set_device_model!(template_uc, RenewableNonDispatch, FixedOutput)

    Service Formulations

    We have two VariableReserve types, parameterized by their direction. So, similar to creating DeviceModels, we can create ServiceModels. The primary difference being that DeviceModel objects define how constraints get created, while ServiceModel objects define how constraints get modified.

    set_service_model!(template_uc, VariableReserve{ReserveUp}, RangeReserve)
    +set_service_model!(template_uc, VariableReserve{ReserveDown}, RangeReserve)

    Network Formulations

    Finally, we can define the transmission network specification that we'd like to model. For simplicity, we'll choose a copper plate formulation. But there are dozens of specifications available through an integration with PowerModels.jl. Note that many formulations will require appropriate data and may be computationally intractable

    set_network_model!(template_uc, NetworkModel(CopperPlatePowerModel))

    DecisionModel

    Now that we have a System and an ProblemTemplate, we can put the two together to create an DecisionModel that we solve.

    Optimizer

    It's most convenient to define an optimizer instance upfront and pass it into the DecisionModel constructor. For this example, we can use the free HiGHS solver with a relatively relaxed MIP gap (ratioGap) setting to improve speed.

    solver = optimizer_with_attributes(HiGHS.Optimizer, "mip_rel_gap" => 0.5)
    MathOptInterface.OptimizerWithAttributes(HiGHS.Optimizer, Pair{MathOptInterface.AbstractOptimizerAttribute, Any}[MathOptInterface.RawOptimizerAttribute("mip_rel_gap") => 0.5])

    Build an DecisionModel

    The construction of an DecisionModel essentially applies an ProblemTemplate to System data to create a JuMP model.

    problem = DecisionModel(template_uc, sys; optimizer = solver, horizon = Hour(24))
    +build!(problem, output_dir = mktempdir())
    InfrastructureSystems.Optimization.ModelBuildStatusModule.ModelBuildStatus.BUILT = 0
    Tip

    The principal component of the DecisionModel is the JuMP model. But you can serialize to a file using the following command:

        serialize_optimization_model(problem, save_path)

    Keep in mind that if the setting "storevariablenames" is set to False then the file won't show the model's names.

    Solve an DecisionModel

    solve!(problem)
    InfrastructureSystems.Simulation.RunStatusModule.RunStatus.SUCCESSFULLY_FINALIZED = 0

    Results Inspection

    PowerSimulations collects the DecisionModel results into a OptimizationProblemResults struct:

    res = OptimizationProblemResults(problem)

    Start: 2020-01-01T00:00:00

    +

    End: 2020-01-01T23:00:00

    +

    Resolution: 60 minutes

    + + + + + + + + + + + + + + +
    PowerSimulations Problem Auxiliary variables Results
    TimeDurationOff__ThermalStandard
    TimeDurationOn__ThermalStandard
    HydroEnergyOutput__HydroDispatch
    + + + + + + + + + + + + + + + + + +
    PowerSimulations Problem Expressions Results
    ProductionCostExpression__RenewableDispatch
    ActivePowerBalance__System
    ProductionCostExpression__HydroDispatch
    ProductionCostExpression__ThermalStandard
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    PowerSimulations Problem Parameters Results
    ActivePowerTimeSeriesParameter__PowerLoad
    RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Reg_Up
    RequirementTimeSeriesParameter__VariableReserve__ReserveDown__Reg_Down
    ActivePowerTimeSeriesParameter__RenewableDispatch
    RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Spin_Up_R2
    RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Spin_Up_R3
    RequirementTimeSeriesParameter__VariableReserve__ReserveUp__Spin_Up_R1
    ActivePowerTimeSeriesParameter__HydroDispatch
    ActivePowerTimeSeriesParameter__RenewableNonDispatch
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    PowerSimulations Problem Variables Results
    ActivePowerReserveVariable__VariableReserve__ReserveUp__Spin_Up_R1
    ActivePowerReserveVariable__VariableReserve__ReserveUp__Spin_Up_R3
    StopVariable__ThermalStandard
    StartVariable__ThermalStandard
    ActivePowerReserveVariable__VariableReserve__ReserveUp__Reg_Up
    ActivePowerVariable__HydroDispatch
    ActivePowerReserveVariable__VariableReserve__ReserveDown__Reg_Down
    ActivePowerReserveVariable__VariableReserve__ReserveUp__Spin_Up_R2
    ActivePowerVariable__ThermalStandard
    ActivePowerVariable__RenewableDispatch
    OnVariable__ThermalStandard
    +

    Optimizer Stats

    The optimizer summary is included

    get_optimizer_stats(res)
    1×21 DataFrame
    Rowdetailed_statsobjective_valuetermination_statusprimal_statusdual_statussolver_solve_timeresult_counthas_valueshas_dualsobjective_boundrelative_gapdual_objective_valuesolve_timebarrier_iterationssimplex_iterationsnode_counttimed_solve_timetimed_calculate_aux_variablestimed_calculate_dual_variablessolve_bytes_allocsec_in_gc
    BoolFloat64Int64Int64Int64Float64Int64BoolBoolMissingMissingMissingFloat64MissingMissingMissingFloat64Float64Float64Float64Float64
    1false2.3571e6110NaN1falsefalsemissingmissingmissing0.630498missingmissingmissing0.7110420.3464970.0004271822.94527e70.0

    Objective Function Value

    get_objective_value(res)
    2.357099085649291e6

    Variable, Parameter, Auxillary Variable, Dual, and Expression Values

    The solution value data frames for variables, parameters, auxillary variables, duals and expressions can be accessed using the read_ methods:

    read_variables(res)
    Dict{String, DataFrames.DataFrame} with 11 entries:
    +  "ActivePowerReserveVaria… => 24×52 DataFrame…
    +  "StopVariable__ThermalSt… => 24×55 DataFrame…
    +  "ActivePowerReserveVaria… => 24×52 DataFrame…
    +  "OnVariable__ThermalStan… => 24×55 DataFrame…
    +  "ActivePowerVariable__Hy… => 24×2 DataFrame…
    +  "ActivePowerReserveVaria… => 24×19 DataFrame…
    +  "StartVariable__ThermalS… => 24×55 DataFrame…
    +  "ActivePowerVariable__Th… => 24×55 DataFrame…
    +  "ActivePowerVariable__Re… => 24×30 DataFrame…
    +  "ActivePowerReserveVaria… => 24×18 DataFrame…
    +  "ActivePowerReserveVaria… => 24×17 DataFrame…

    Or, you can read a single parameter values for parameters that exist in the results.

    list_parameter_names(res)
    +read_parameter(res, "ActivePowerTimeSeriesParameter__RenewableDispatch")
    24×30 DataFrame
    RowDateTime122_WIND_1324_PV_3312_PV_1102_PV_1101_PV_1324_PV_2313_PV_2104_PV_1101_PV_2309_WIND_1310_PV_2113_PV_1317_WIND_1314_PV_1324_PV_1103_PV_1303_WIND_1314_PV_2102_PV_2314_PV_3320_PV_1101_PV_3319_PV_1314_PV_4310_PV_1215_PV_1313_PV_1101_PV_4119_PV_1
    DateTimeFloat64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64Float64
    12020-01-01T00:00:00713.20.00.00.00.00.00.00.00.0142.80.00.0795.10.00.00.0480.80.00.00.00.00.00.00.00.00.00.00.00.0
    22020-01-01T01:00:00712.80.00.00.00.00.00.00.00.0139.10.00.0794.40.00.00.0634.90.00.00.00.00.00.00.00.00.00.00.00.0
    32020-01-01T02:00:00708.40.00.00.00.00.00.00.00.0145.30.00.0773.60.00.00.0487.30.00.00.00.00.00.00.00.00.00.00.00.0
    42020-01-01T03:00:00710.70.00.00.00.00.00.00.00.0144.80.00.0767.30.00.00.0432.70.00.00.00.00.00.00.00.00.00.00.00.0
    52020-01-01T04:00:00701.40.00.00.00.00.00.00.00.0137.10.00.0752.20.00.00.0407.90.00.00.00.00.00.00.00.00.00.00.00.0
    62020-01-01T05:00:00682.50.00.00.00.00.00.00.00.098.60.00.0719.40.00.00.0440.20.00.00.00.00.00.00.00.00.00.00.00.0
    72020-01-01T06:00:00614.70.00.00.00.00.00.00.00.062.20.00.0655.30.00.00.0377.30.00.00.00.00.00.00.00.00.00.00.00.0
    82020-01-01T07:00:00517.736.452.230.629.636.462.229.830.447.338.299.4594.647.444.829.8199.346.630.063.847.830.6179.246.438.2127.662.228.827.2
    92020-01-01T08:00:00426.663.497.436.834.863.496.035.037.048.961.4126.2579.161.265.258.4110.667.036.4100.061.437.4248.067.061.4164.695.635.456.6
    102020-01-01T09:00:00274.271.2118.038.036.471.4117.636.638.230.766.8133.2466.869.068.076.63.669.837.6121.869.838.8273.469.866.8172.2116.835.874.8
    112020-01-01T10:00:0093.072.2132.037.836.472.2130.836.638.027.470.2134.2301.470.270.289.82.472.237.4129.070.438.6277.872.270.4173.2128.437.488.2
    122020-01-01T11:00:006.370.6135.237.035.070.6134.235.437.260.969.8135.2110.767.070.298.056.272.436.6128.667.237.6263.272.469.6170.0133.238.691.6
    132020-01-01T12:00:003.867.4131.036.235.467.4129.635.636.420.467.8133.078.967.268.294.091.570.235.8128.267.437.0267.470.267.6169.0128.837.890.6
    142020-01-01T13:00:001.165.2125.435.235.065.2123.635.435.41.667.2126.6107.967.065.881.4103.067.634.8119.667.035.8258.867.667.0161.8122.835.879.2
    152020-01-01T14:00:000.060.2109.631.031.060.4108.031.431.20.063.2110.222.359.462.659.439.764.230.8107.059.431.6227.864.262.8143.2106.831.459.0
    162020-01-01T15:00:000.042.069.020.219.242.065.620.620.22.645.062.824.642.444.825.487.746.220.065.843.420.6151.646.243.882.262.820.427.8
    172020-01-01T16:00:000.90.00.00.00.00.00.00.00.037.90.00.010.80.00.00.092.30.00.00.00.00.00.00.00.00.00.00.00.0
    182020-01-01T17:00:00276.30.00.00.00.00.00.00.00.046.90.00.0243.20.00.00.089.40.00.00.00.00.00.00.00.00.00.00.00.0
    192020-01-01T18:00:00272.90.00.00.00.00.00.00.00.024.00.00.0375.20.00.00.090.40.00.00.00.00.00.00.00.00.00.00.00.0
    202020-01-01T19:00:00345.60.00.00.00.00.00.00.00.024.00.00.0568.40.00.00.081.10.00.00.00.00.00.00.00.00.00.00.00.0
    212020-01-01T20:00:00411.70.00.00.00.00.00.00.00.027.40.00.0636.10.00.00.0172.90.00.00.00.00.00.00.00.00.00.00.00.0
    222020-01-01T21:00:00376.60.00.00.00.00.00.00.00.06.50.00.0719.20.00.00.0326.90.00.00.00.00.00.00.00.00.00.00.00.0
    232020-01-01T22:00:00561.30.00.00.00.00.00.00.00.01.30.00.0734.90.00.00.0256.70.00.00.00.00.00.00.00.00.00.00.00.0
    242020-01-01T23:00:00568.40.00.00.00.00.00.00.00.00.10.00.0729.10.00.00.0141.10.00.00.00.00.00.00.00.00.00.00.00.0

    Plotting

    Take a look at the plotting capabilities in PowerGraphics.jl

    diff --git a/v0.28.3/tutorials/pcm_simulation/index.html b/v0.28.3/tutorials/pcm_simulation/index.html new file mode 100644 index 0000000000..4d20c864b6 --- /dev/null +++ b/v0.28.3/tutorials/pcm_simulation/index.html @@ -0,0 +1,883 @@ + +Multi-stage Production Cost Simulation · PowerSimulations.jl

    Sequential Simulations with PowerSimulations.jl

    Originally Contributed by: Clayton Barrows

    Introduction

    PowerSimulations.jl supports simulations that consist of sequential optimization problems where results from previous problems inform subsequent problems in a variety of ways. This example demonstrates some of these capabilities to represent electricity market clearing. This example is intended to be an extension of the OperationsProblem tutorial.

    Load Packages

    using PowerSystems
    +using PowerSimulations
    +using HydroPowerSimulations
    +const PSI = PowerSimulations
    +using PowerSystemCaseBuilder
    +using Dates
    +using HiGHS #solver

    Optimizer

    It's most convenient to define an optimizer instance upfront and pass it into the DecisionModel constructor. For this example, we can use the free HiGHS solver with a relatively relaxed MIP gap (ratioGap) setting to improve speed.

    solver = optimizer_with_attributes(HiGHS.Optimizer, "mip_rel_gap" => 0.5)
    MathOptInterface.OptimizerWithAttributes(HiGHS.Optimizer, Pair{MathOptInterface.AbstractOptimizerAttribute, Any}[MathOptInterface.RawOptimizerAttribute("mip_rel_gap") => 0.5])

    Hourly day-ahead system

    First, we'll create a System with hourly data to represent day-ahead forecasted wind, solar, and load profiles:

    sys_DA = build_system(PSISystems, "modified_RTS_GMLC_DA_sys"; skip_serialization = true)
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    System
    PropertyValue
    Name
    Description
    System Units BaseSYSTEM_BASE
    Base Power100.0
    Base Frequency60.0
    Num Components501
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Static Components
    TypeCount
    ACBus73
    Arc109
    Area3
    FixedAdmittance3
    HydroDispatch1
    Line105
    LoadZone21
    PowerLoad51
    RenewableDispatch29
    RenewableNonDispatch31
    TapTransformer15
    ThermalStandard54
    TwoTerminalHVDCLine1
    VariableReserve{ReserveDown}1
    VariableReserve{ReserveUp}4
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Time Series Summary
    owner_typeowner_categorytime_series_typetime_series_categoryinitial_timestampresolution_mscount
    StringStringStringStringStringInt64Int64
    AreaComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0036000003
    AreaComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0036000003
    FixedAdmittanceComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0036000003
    FixedAdmittanceComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0036000003
    HydroDispatchComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0036000002
    HydroDispatchComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0036000002
    PowerLoadComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:00360000051
    PowerLoadComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:00360000051
    RenewableDispatchComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:00360000029
    RenewableDispatchComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:00360000029
    RenewableNonDispatchComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:00360000031
    RenewableNonDispatchComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:00360000031
    VariableReserveComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0036000005
    VariableReserveComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0036000005
    +

    5-Minute system

    The RTS data also includes 5-minute resolution time series data. So, we can create another System to represent 15 minute ahead forecasted data for a "real-time" market:

    sys_RT = build_system(PSISystems, "modified_RTS_GMLC_RT_sys"; skip_serialization = true)
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    System
    PropertyValue
    Name
    Description
    System Units BaseSYSTEM_BASE
    Base Power100.0
    Base Frequency60.0
    Num Components499
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Static Components
    TypeCount
    ACBus73
    Arc109
    Area1
    FixedAdmittance3
    HydroDispatch1
    Line105
    LoadZone21
    PowerLoad51
    RenewableDispatch29
    RenewableNonDispatch31
    TapTransformer15
    ThermalStandard54
    TwoTerminalHVDCLine1
    VariableReserve{ReserveDown}1
    VariableReserve{ReserveUp}4
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Time Series Summary
    owner_typeowner_categorytime_series_typetime_series_categoryinitial_timestampresolution_mscount
    StringStringStringStringStringInt64Int64
    AreaComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:003000001
    AreaComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:003000001
    FixedAdmittanceComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:003000003
    FixedAdmittanceComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:003000003
    HydroDispatchComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:003000002
    HydroDispatchComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:003000002
    PowerLoadComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0030000051
    PowerLoadComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0030000051
    RenewableDispatchComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0030000029
    RenewableDispatchComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0030000029
    RenewableNonDispatchComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:0030000031
    RenewableNonDispatchComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:0030000031
    VariableReserveComponentDeterministicSingleTimeSeriesForecast2020-01-01T00:00:003000005
    VariableReserveComponentSingleTimeSeriesStaticTimeSeries2020-01-01T00:00:003000005
    +

    ProblemTemplates define stages

    Sequential simulations in PowerSimulations are created by defining OperationsProblems that represent stages, and how information flows between executions of a stage and between different stages.

    Let's start by defining a two stage simulation that might look like a typical day-Ahead and real-time electricity market clearing process.

    Day-ahead unit commitment stage

    First, we can define a unit commitment template for the day ahead problem. We can use the included UC template, but in this example, we'll replace the ThermalBasicUnitCommitment with the slightly more complex ThermalStandardUnitCommitment for the thermal generators.

    template_uc = template_unit_commitment()
    +set_device_model!(template_uc, ThermalStandard, ThermalStandardUnitCommitment)
    +set_device_model!(template_uc, HydroDispatch, HydroDispatchRunOfRiver)
    ┌ Warning: Overwriting ThermalStandard existing model
    +└ @ PowerSimulations ~/work/PowerSimulations.jl/PowerSimulations.jl/src/core/device_model.jl:116

    Define the reference model for the real-time economic dispatch

    In addition to the manual specification process demonstrated in the OperationsProblem example, PSI also provides pre-specified templates for some standard problems:

    template_ed = template_economic_dispatch(
    +    network = NetworkModel(PTDFPowerModel, use_slacks = true),
    +)
    + + + + + + + + + + + + + + + + + + + +
    Network Model
    Network ModelPTDFPowerModel
    Slackstrue
    PTDFfalse
    DualsNone
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Device Models
    Device TypeFormulationSlacks
    RenewableNonDispatchFixedOutputfalse
    ThermalStandardThermalBasicDispatchfalse
    PowerLoadStaticPowerLoadfalse
    InterruptiblePowerLoadPowerLoadInterruptionfalse
    RenewableDispatchRenewableFullDispatchfalse
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Branch Models
    Branch TypeFormulationSlacks
    LineStaticBranchfalse
    TapTransformerStaticBranchfalse
    Transformer2WStaticBranchfalse
    TwoTerminalHVDCLineHVDCTwoTerminalDispatchfalse
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Service Models
    Service TypeFormulationSlacksAggregated Model
    VariableReserve{ReserveUp}RangeReservefalsetrue
    VariableReserve{ReserveDown}RangeReservefalsetrue
    +

    Define the SimulationModels

    DecisionModels define the problems that are executed in the simulation. The actual problem will change as the stage gets updated to represent different time periods, but the formulations applied to the components is constant within a stage. In this case, we want to define two stages with the ProblemTemplates and the Systems that we've already created.

    models = SimulationModels(
    +    decision_models = [
    +        DecisionModel(template_uc, sys_DA, optimizer = solver, name = "UC"),
    +        DecisionModel(template_ed, sys_RT, optimizer = solver, name = "ED"),
    +    ],
    +)
    + + + + + + + + + + + + + + + + + + + + + + + + +
    Decision Models
    Model NameModel TypeStatusOutput Directory
    UCGenericOpProblemEMPTYnothing
    EDGenericOpProblemEMPTYnothing
    + +No Emulator Model Specified +

    SimulationSequence

    Similar to an ProblemTemplate, the SimulationSequence provides a template of how to execute a sequential set of operations problems.

    Let's review some of the SimulationSequence arguments.

    Chronologies

    In PowerSimulations, chronologies define where information is flowing. There are two types of chronologies.

    • inter-stage chronologies: Define how information flows between stages. e.g. day-ahead solutions are used to inform economic dispatch problems
    • intra-stage chronologies: Define how information flows between multiple executions of a single stage. e.g. the dispatch setpoints of the first period of an economic dispatch problem are constrained by the ramping limits from setpoints in the final period of the previous problem.

    FeedForward

    The definition of exactly what information is passed using the defined chronologies is accomplished with FeedForward. Specifically, FeedForward is used to define what to do with information being passed with an inter-stage chronology. Let's define a FeedForward that affects the semi-continuous range constraints of thermal generators in the economic dispatch problems based on the value of the unit-commitment variables.

    feedforward = Dict(
    +    "ED" => [
    +        SemiContinuousFeedforward(
    +            component_type = ThermalStandard,
    +            source = OnVariable,
    +            affected_values = [ActivePowerVariable],
    +        ),
    +    ],
    +)
    Dict{String, Vector{SemiContinuousFeedforward}} with 1 entry:
    +  "ED" => [SemiContinuousFeedforward(VariableKey{OnVariable, ThermalStandard}("…

    Sequencing

    The stage problem length, look-ahead, and other details surrounding the temporal Sequencing of stages are controlled using the structure of the time series data in the Systems. So, to define a typical day-ahead - real-time sequence:

    • Day ahead problems should represent 48 hours, advancing 24 hours after each execution (24-hour look-ahead)
    • Real time problems should represent 1 hour (12 5-minute periods), advancing 15 min after each execution (15 min look-ahead)

    We can adjust the time series data to reflect this structure in each System:

    • transform_single_time_series!(sys_DA, 48, Hour(1))
    • transform_single_time_series!(sys_RT, 12, Minute(15))

    Now we can put it all together to define a SimulationSequence

    DA_RT_sequence = SimulationSequence(
    +    models = models,
    +    ini_cond_chronology = InterProblemChronology(),
    +    feedforwards = feedforward,
    +)
    + + + + + + + + + + + + +
    Simulation Sequence
    Simulation Step Interval24 hours
    Number of Problems2
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Simulation Problems
    Model NameHorizonIntervalExecutions Per Step
    UC2 days1 day1
    ED1 hour15 minutes96
    + + + + + + + + + + + + + + + +
    Feedforwards
    Model NameFeed Forward Type
    EDSemiContinuousFeedforward
    +

    Simulation

    Now, we can build and execute a simulation using the SimulationSequence and Stages that we've defined.

    sim = Simulation(
    +    name = "rts-test",
    +    steps = 2,
    +    models = models,
    +    sequence = DA_RT_sequence,
    +    simulation_folder = joinpath(".", "rts-store"),
    +)
    + + + + + + + + + + + + + + + + + + + + + + + +
    Simulation
    Simulation Namerts-test
    Build StatusEMPTY
    Run StatusNOT_READY
    Initial TimeUnset Initial Time
    Steps2
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Decision Models
    Model NameModel TypeStatusOutput Directory
    UCGenericOpProblemEMPTYnothing
    EDGenericOpProblemEMPTYnothing
    + +No Emulator Model Specified + + + + + + + + + + + + + +
    Simulation Sequence
    Simulation Step Interval24 hours
    Number of Problems2
    + + + + + + + + + + + + + + + + + + + + + + + + + +
    Simulation Problems
    Model NameHorizonIntervalExecutions Per Step
    UC2 days1 day1
    ED1 hour15 minutes96
    + + + + + + + + + + + + + + + +
    Feedforwards
    Model NameFeed Forward Type
    EDSemiContinuousFeedforward
    +

    Build simulation

    build!(sim)
    InfrastructureSystems.Simulation.SimulationBuildStatusModule.SimulationBuildStatus.BUILT = 0

    Execute simulation

    the following command returns the status of the simulation (0: is proper execution) and stores the results in a set of HDF5 files on disk.

    execute!(sim, enable_progress_bar = false)
    InfrastructureSystems.Simulation.RunStatusModule.RunStatus.FAILED = 2

    Results

    To access the results, we need to load the simulation result metadata and then make requests to the specific data of interest. This allows you to efficiently access the results of interest without overloading resources.

    results = SimulationResults(sim);
    +uc_results = get_decision_problem_results(results, "UC"); # UC stage result metadata
    +ed_results = get_decision_problem_results(results, "ED"); # ED stage result metadata

    We can read all the result variables

    read_variables(uc_results)

    or all the parameters

    read_parameters(uc_results)

    We can just list the variable names contained in uc_results:

    list_variable_names(uc_results)

    and a number of parameters (this pattern also works for aux_variables, expressions, and duals)

    list_parameter_names(uc_results)

    Now we can read the specific results of interest for a specific problem, time window (optional), and set of variables, duals, or parameters (optional)

    Dict([
    +    v => read_variable(uc_results, v) for v in [
    +        "ActivePowerVariable__RenewableDispatch",
    +        "ActivePowerVariable__HydroDispatch",
    +        "StopVariable__ThermalStandard",
    +    ]
    +])

    Or if we want the result of just one variable, parameter, or dual (must be defined in the problem definition), we can use:

    read_parameter(
    +    ed_results,
    +    "ActivePowerTimeSeriesParameter__RenewableNonDispatch",
    +    initial_time = DateTime("2020-01-01T06:00:00"),
    +    count = 5,
    +)
    Info

    note that this returns the results of each execution step in a separate dataframe If you want the realized results (without lookahead periods), you can call read_realized_*:

    read_realized_variables(
    +    uc_results,
    +    ["ActivePowerVariable__ThermalStandard", "ActivePowerVariable__RenewableDispatch"],
    +)
    +rm(path, force = true, recursive = true) #hide

    Plotting

    Take a look at the plotting capabilities in PowerGraphics.jl

    diff --git a/v0.28.3/tutorials/rts-store/rts-test/data_store/check.sha256 b/v0.28.3/tutorials/rts-store/rts-test/data_store/check.sha256 new file mode 100644 index 0000000000..57d93e5d06 --- /dev/null +++ b/v0.28.3/tutorials/rts-store/rts-test/data_store/check.sha256 @@ -0,0 +1 @@ +{"files":[{"hash":"5d0a50c4fd58272759fb5dd63ac6e01e36085a4a6833f7866ecedbc9f27ca4b5","filename":"simulation_store.h5"}]} \ No newline at end of file diff --git a/v0.28.3/tutorials/rts-store/rts-test/data_store/simulation_store.h5 b/v0.28.3/tutorials/rts-store/rts-test/data_store/simulation_store.h5 new file mode 100644 index 0000000000000000000000000000000000000000..7ee37ca6681591f33a86f4493e9026343aebb557 GIT binary patch literal 13484531 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 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 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 z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N 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 z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk 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 z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk 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 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 z2oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N z0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+ z009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBly zK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF z5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk z1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs z0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZ zfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&U zAV7cs0RjXF5FkK+009C72oNAZfB*pk1PBlyK!5-N0t5&UAV7cs0RjXF5FkK+009C7 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 CV!-hL literal 0 HcmV?d00001 diff --git a/v0.28.3/tutorials/rts-store/rts-test/logs/simulation.log b/v0.28.3/tutorials/rts-store/rts-test/logs/simulation.log new file mode 100644 index 0000000000..1b28355819 --- /dev/null +++ b/v0.28.3/tutorials/rts-store/rts-test/logs/simulation.log @@ -0,0 +1,80 @@ +┌ Info: 2024-07-24T20:45:29.421 [3374:1]: Initializing Optimization Container For a DecisionModel +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/decision_model.jl:323 +┌ Info: 2024-07-24T20:45:29.422 [3374:1]: Initializing ModelStoreParams +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/decision_model.jl:329 +┌ Info: 2024-07-24T20:45:29.422 [3374:1]: Instantiating Network Model +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/decision_model.jl:338 +┌ Info: 2024-07-24T20:45:29.422 [3374:1]: Validating connectivity with depth first search (network traversal) +└ @ PowerNetworkMatrices /home/runner/.julia/packages/PowerNetworkMatrices/mKnwZ/src/system_utils.jl:12 +┌ Info: 2024-07-24T20:45:29.422 [3374:1]: Make Initial Conditions Model +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:230 +┌ Warning: 2024-07-24T20:45:30.564 [3374:1]: CopperPlatePowerModel models with HVDC ignores inter-area losses +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/devices_models/device_constructors/branch_constructor.jl:753 +┌ Info: 2024-07-24T20:45:30.564 [3374:1]: Solving Initialization Model for UC +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:248 +┌ Info: 2024-07-24T20:45:30.733 [3374:1]: Serialized initial conditions to ./rts-store/rts-test/problems/UC/initial_conditions.bin +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:263 +┌ Warning: 2024-07-24T20:45:32.012 [3374:1]: CopperPlatePowerModel models with HVDC ignores inter-area losses +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/devices_models/device_constructors/branch_constructor.jl:753 +┌ Info: 2024-07-24T20:45:32.116 [3374:1]: UC optimizer set to: HiGHS +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:356 +┌ Info: 2024-07-24T20:45:32.116 [3374:1]: Checking Numerical Bounds +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:359 +┌ Info: 2024-07-24T20:45:32.195 [3374:1]: Variable bounds range is [0.0 8.47] +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:317 +┌ Info: 2024-07-24T20:45:32.244 [3374:1]: Constraint coefficient bounds range is [-0.22 4380.0] +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:327 +┌ Info: 2024-07-24T20:45:32.244 [3374:1]: Constraint right-hand-side bounds [0.06 48.0] +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:336 +┌ Info: 2024-07-24T20:45:32.244 [3374:1]: Initializing Optimization Container For a DecisionModel +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/decision_model.jl:323 +┌ Info: 2024-07-24T20:45:32.302 [3374:1]: Initializing ModelStoreParams +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/decision_model.jl:329 +┌ Info: 2024-07-24T20:45:32.302 [3374:1]: Instantiating Network Model +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/decision_model.jl:338 +┌ Info: 2024-07-24T20:45:35.507 [3374:1]: PTDF Matrix not provided. Calculating using PowerNetworkMatrices.PTDF +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/core/network_model.jl:128 +┌ Info: 2024-07-24T20:45:35.731 [3374:1]: Make Initial Conditions Model +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:230 +┌ Info: 2024-07-24T20:45:35.731 [3374:1]: No initial conditions in the model +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:175 +┌ Info: 2024-07-24T20:45:42.178 [3374:1]: ED optimizer set to: HiGHS +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:356 +┌ Info: 2024-07-24T20:45:42.178 [3374:1]: Checking Numerical Bounds +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:359 +┌ Info: 2024-07-24T20:45:42.283 [3374:1]: Variable bounds range is [0.0 8.47] +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:317 +┌ Info: 2024-07-24T20:45:42.621 [3374:1]: Constraint coefficient bounds range is [-1.0 1.0e6] +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:327 +┌ Info: 2024-07-24T20:45:42.621 [3374:1]: Constraint right-hand-side bounds [1.0 -5.0] +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_interface.jl:336 +┌ Info: 2024-07-24T20:45:43.018 [3374:1]: Reconciling initial conditions across models UC, ED +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/simulation/simulation.jl:275 +┌ Info: 2024-07-24T20:45:49.094 [3374:1]: Serialized simulation name = rts-test +│ directory = ./rts-store/rts-test/simulation_files +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/simulation/simulation.jl:1174 +┌ Info: 2024-07-24T20:45:49.155 [3374:1]: Serialized time series data to ./rts-store/rts-test/problems/UC/system-d4831ec5-1be7-4057-aa3f-e30006d9ba3b_time_series_storage.h5. +└ @ InfrastructureSystems /home/runner/.julia/packages/InfrastructureSystems/QnOPR/src/time_series_storage.jl:89 +┌ Info: 2024-07-24T20:45:49.174 [3374:1]: Serialized System to ./rts-store/rts-test/problems/UC/system-d4831ec5-1be7-4057-aa3f-e30006d9ba3b.json +└ @ PowerSystems /home/runner/.julia/packages/PowerSystems/vi3a3/src/base.jl:403 +┌ Info: 2024-07-24T20:45:49.176 [3374:1]: Serialized System metadata to ./rts-store/rts-test/problems/UC/system-d4831ec5-1be7-4057-aa3f-e30006d9ba3b_metadata.json +└ @ PowerSystems /home/runner/.julia/packages/PowerSystems/vi3a3/src/base.jl:428 +┌ Info: 2024-07-24T20:45:49.197 [3374:1]: Serialized OperationModel to +│ bin_file_name = ./rts-store/rts-test/problems/UC/model.bin +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_serialization.jl:67 +┌ Info: 2024-07-24T20:45:49.312 [3374:1]: Serialized time series data to ./rts-store/rts-test/problems/ED/system-83465dce-52e5-480f-aad4-9ae9026fdea5_time_series_storage.h5. +└ @ InfrastructureSystems /home/runner/.julia/packages/InfrastructureSystems/QnOPR/src/time_series_storage.jl:89 +┌ Info: 2024-07-24T20:45:49.332 [3374:1]: Serialized System to ./rts-store/rts-test/problems/ED/system-83465dce-52e5-480f-aad4-9ae9026fdea5.json +└ @ PowerSystems /home/runner/.julia/packages/PowerSystems/vi3a3/src/base.jl:403 +┌ Info: 2024-07-24T20:45:49.334 [3374:1]: Serialized System metadata to ./rts-store/rts-test/problems/ED/system-83465dce-52e5-480f-aad4-9ae9026fdea5_metadata.json +└ @ PowerSystems /home/runner/.julia/packages/PowerSystems/vi3a3/src/base.jl:428 +┌ Info: 2024-07-24T20:45:49.409 [3374:1]: Serialized OperationModel to +│ bin_file_name = ./rts-store/rts-test/problems/ED/model.bin +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/operation/operation_model_serialization.jl:67 +┌ Info: 2024-07-24T20:45:52.527 [3374:1]: Initialize store cache +│ get_min_flush_size(store.cache) = 1048576 +│ get_max_size(store.cache) = 1073741824 +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/simulation/hdf_simulation_store.jl:249 +┌ Error: 2024-07-24T20:46:06.312 [3374:1]: simulation failed +│ exception = (KeyError("113"), Union{Ptr{Nothing}, Base.InterpreterIP}[Ptr{Nothing} @0x00007f215216a5d0, Ptr{Nothing} @0x00007f215216a653, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f21501dac9c, Ptr{Nothing} @0x00007f21501db039, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f21501b1297, Ptr{Nothing} @0x00007f21501b1489, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f2150131a13, Ptr{Nothing} @0x00007f215013743c, Ptr{Nothing} @0x00007f2150137469, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f2150135c54, Ptr{Nothing} @0x00007f2150136b31, Ptr{Nothing} @0x00007f215013736f, Ptr{Nothing} @0x00007f21501373f2, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f216c3f7475, Ptr{Nothing} @0x00007f215012b065, Ptr{Nothing} @0x00007f215012b5a6, Ptr{Nothing} @0x00007f215012b5e9, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f2182664dd4, Ptr{Nothing} @0x00007f21826648c4, Ptr{Nothing} @0x00007f2182665623, Ptr{Nothing} @0x00007f21826663fd, Base.InterpreterIP in top-level CodeInfo for Main.__atexample__named__pcm at statement 4, Ptr{Nothing} @0x00007f21826822e4, Ptr{Nothing} @0x00007f2182682a99, Ptr{Nothing} @0x00007f2182683eab, Ptr{Nothing} @0x00007f2157b6bab4, Ptr{Nothing} @0x00007f2157b6bd75, Ptr{Nothing} @0x00007f2157b6c632, Ptr{Nothing} @0x00007f2157b6cbf2, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f216c3f7475, Ptr{Nothing} @0x00007f2157b6b150, Ptr{Nothing} @0x00007f2157b6b353, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f2157b6a046, Ptr{Nothing} @0x00007f2157b6a089, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f2157b67dbc, Ptr{Nothing} @0x00007f2157b69e31, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f2182659548, Ptr{Nothing} @0x00007f217cbd060a, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f217cbcf8bb, Ptr{Nothing} @0x00007f217cbcfd3e, Ptr{Nothing} @0x00007f217cbcffc6, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f217cb3d330, Ptr{Nothing} @0x00007f217cb3d4da, Ptr{Nothing} @0x00007f217cb3d96e, Ptr{Nothing} @0x00007f217cb3dad9, Ptr{Nothing} @0x00007f217cb3db15, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f217cb23582, Ptr{Nothing} @0x00007f2182682603, Ptr{Nothing} @0x00007f2182682a99, Ptr{Nothing} @0x00007f2182683eab, Ptr{Nothing} @0x00007f216d636331, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f216c879460, Ptr{Nothing} @0x00007f216ca2e2de, Ptr{Nothing} @0x00007f216ce285ca, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f216cf50e13, Ptr{Nothing} @0x00007f216cb9327d, Ptr{Nothing} @0x00007f216cb933b3, Ptr{Nothing} @0x00007f2182646f8d, Ptr{Nothing} @0x00007f21826b1ec5, Ptr{Nothing} @0x00007f21826b294e, Ptr{Nothing} @0x0000000000401088, Ptr{Nothing} @0x00007f2183429d8f, Ptr{Nothing} @0x00007f2183429e3f, Ptr{Nothing} @0x00000000004010b8]) +└ @ PowerSimulations /home/runner/work/PowerSimulations.jl/PowerSimulations.jl/src/simulation/simulation.jl:1097 diff --git a/v0.28.3/tutorials/rts-store/rts-test/problems/ED/model.bin b/v0.28.3/tutorials/rts-store/rts-test/problems/ED/model.bin new file mode 100644 index 0000000000000000000000000000000000000000..70d0b70531d91f498f4eff342b133d39b984b12e GIT binary patch literal 105829 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¥!DP4T-Xp#;bdUrWpb<^S5 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±& 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 PpvlwyLWzjX1H1nNmI@(J literal 0 HcmV?d00001 diff --git a/v0.28.3/tutorials/rts-store/rts-test/problems/ED/optimization_container_metadata.bin b/v0.28.3/tutorials/rts-store/rts-test/problems/ED/optimization_container_metadata.bin new file mode 100644 index 0000000000000000000000000000000000000000..dd8632248a156b918c265a222b48b294c5ed02ae GIT binary patch literal 7091 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

    bz(HjWMp3=0ekEVcmr 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±TpQ3lKvAeTi18i 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≤M|~%Cg77|Zyc;vmP+vIx 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%0A+BeGgv9 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

    a$G4v%r5>+V=j<&)T7&iNjB>U6H) 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

    @m5|ppDtWQ z$KhYWYrtFLx;Rh&!Gp*v=R?Am@X6qP;0JxTJP%LcSA3q4FWL9`e#eJj(%;^Bsk?)Z zF*^VFd#?<6?(+ZnuIN;F8n_i-!>^-%JD;+;&ip#~G1tl5r>uX5ItTbQ*CAiJJU`bf z9D~;hew^wX2G33T?RXygR_?o#l~=IReSG=pVOBg?>$AuiziL6}~!r$QN4|q8HJZ?ECn2vJc+Z zbp+*YS!d<(T7T&~bRQ#LDERBdkO!W)HRV0)LnSYHUT<0dD*jP8h@Uw)Y_o9OgnQJX z`|cm-T<@Gy3wO`)-D| zi-Yb3=g__Qg}?iIZbjnDT_+D;L+`@V;Ah|)yav7lKY~}Gd(mg$2smesXW$%l0{LF} zao`wu2fm>T(bM>n_0^h>^d!35d{h@P*Uz=#{XUlu+UWZokK;5tAGppuz*BIRc{7jr zBs!MI=DTra^?k>K;mQ0?bV|AO;wI$9LjC@uA_@PWAnwK2dPvIMH%@KCtMV~G}V93e*3Z7hkm*A|F4d$uTS=R z$RCL>@)%zZPi6l<)dkA>exN@0)sgl8Q0+7Kb$_tzhYxn2QaFpwmN+!^_ey+Q?Y`Oc z1@(6HSyH!I9`fl={Nj_p_vnT84XOK#CldGY0{R}PD~wOzqs52NfAA#X-=@9~Z~%OO zw}DU8)!_${CqDPnc>YeKz7;+f&Vg^>CwW#z_{QHocD(QyyoP6j=ioh~^M-%$V01S1 zeduNMF!PINqKCn$_@13~F*p~#k-tUX%zbdF@iKi(o*ukIC!?o&%-<8fb91<^;2=I9 zdRg@2GXoz42jxDUbTK}6{%7@m>?`o8IgVppM*{v)XMzqEJh{K`H}x<1pXc}|xbj=Q z4rKrFaOXSZ`**JQZ2kEFE}hFEFEg;rz+Ex})*(13>(<9h&);6pnOn!k66~<{q;Tj3zr=jbU3^}zR6?t1MQdT34GQ3 z81mHRAIr;0UE^~DPRi$P*1Eqr_=f0c@~gyG@fdG}pP(~||L_Ao1^$s&#UIQ!4FB*Y z^EvZ3^C9blu3nGFUdPWoANiyCn!V5GdcWs0pV!L|JJlWX_r&$7UXkN<{LTkHclaTGBRmk@k{?T*AO0cv?es9dFMTo8`;qqrAMxAs5AB41`1kpQ z;2+l|-8bjCHt?i)Q#zRIT0Y=TJdpcDed*l)Q{KD$hO7s>YoD`g@&i7w>%~9x^Uqek z8T#zU0%L&zg1rvGO@S zS$&wk-F`^;B>3s&!W~l`Lp+ZCr1h2GAaUZAfoF$v@ILr>^-1`Qg1Zh^{gl_o{CVrV z=Z*5za=b?doxnbt|2p%uUY~oW`&Qz8#4~*@_=vLazBuS+^2XpDc}#RLaaw%Gx4;ef z5_Orw58N2h@7}8X=(nnF!Hup1jYokW=Jk`|qWL)IS?F4D6<*3?x)}V$_d_3pPv)cd z@iW13{82{r4C!KYLwE+iBmay)2+rXTnm@+B?WC*0L3km4cX*XQD7?$%s$X?^z(aIW zx~Y0V_@MM-xzP0*=wTn-y5P_DbqD{r9y1SXBf9Ep^{F^n{-l-C>rOQO&%Who;g`d$ zAJe}wfBQ%9-p+aN_BB}#o^Cxn`4pco-uV9Jk8j66`Ux&|e?Fk$V>#?)2JY$^xE&Ww z>s6kg^2qXds)Lxv_tkp)=|Lw8PI#o&)nBfNhXgMf^(lk9cE`nex8XNXNs@d9CVZPqrBMt!s4I0)N$2gdG~xPe7N`q{uBBPUlJb@e=)zY5gvnQ z;2re{@k$;W;Tw8sP`0I?wnXbtd@X zT%Yy<>T~6Oo%AmCEZjf#BlKwZU-m1{wC~6L9h~z()zkQ7-RJy-_E*z-a#t^+%gHS> zu*|^wat5;Q{cP#<+xuW-efwh?@JSx_ElYz-Mt?T&v3B#rq|jZZ9P{HnXZMuQ5Tn90B?vZsaLl$)XnApkv|_E zY_oMOeja)7bP@ajzCb+X^U1tksr~wu>MwA0$ZMiw;XA~6ya+x8KES)cC3qH(jXOO* z|GU@0BSz2rUObTFfm7slIo>4WCm{LAlxYvkd} z=YwzXIDS`ofb=cDJDkJc#ScyAk`IsHfp>xYW!?SfiO@3!QPk5P~ z^WNo6@;l!N|ENphehL1Z@Q?ihzLo#ZKEpmF_pkcwU#a`{3%&0N4%*rG{JvZimxEen zV3~otat7d?+eiDcdwRb{@49^-_t~zGNdL+{bjtry56${$-NdIye>qh9!JGX|w*;R9 z&9@|ePW=|c`y47A=hc2+KL54u8-ZWp*Gb%68{rw&3mnyu51+HTGk62OAMsb-lK9P+E573`jCXpTj)wP8PY8a1uka-Bg%R%q zf59PeiTo_M3?BpUz(sHpeCF}|@A#iwm)8dUjjx9eNU!5tQvaDg=X2mRc+By^S^sJp1nB0rYjPd=G^zj?hNcnR-@m%|6aN8xEUyKaNLF#X}w3Hr_YfcV+e zS;q_U0p)%;+TTa*Yw zES^apqr|Jdo!`rMQsm7f9=z85J{)KA#15B#`f&Lnj&vR} zzAE@>rS&lQEqL$D;0NJ1`VY7Mu-Sbz>0bB@c};jFaUUN8C*-`Y4LD<-N0#%vKJ=}S z59aZFzo<00B=b=1?o8TG8KgTt28XpiGgC9~So8G0qG`@%r3m(N6$)BIs z1Jd6@KA1X-bVzzw?uSdw8}j|AKdw$9UP%3D^%0|2P5vMGh&$zhsfU>B|77`)raoY< zx8VQD2jn_-ox?xwqnyX~{IB5KXIsangV{$}7pxZ<7vIla6(p9ES!Uoan*r<8?c;=Z z^89w+&zv{P>mI7O|8VPR_KVqney!>+K3#r-=R3bP>*?g5hL_+NIvJh`j|89Ki})Vk zlIRadI#0}gSe>|h@3GSRR_nMdCqk4IuQ2(tz2E2iKHu+n|7Zi}?;-cw_k8{I2R+%ahkf zh0klw2hIJ^^E!#HJ33j;dwoPlTpRl5g{L|>=wrFwPE`H#W2M6#X+0Uf=aYkf=-ToU z@IQQe!S9cC9o5XwCtF|7I)HCp@XuWqE|$|-X5a%k1GnQF{LXfqlh@tX{C04}7wYlj z-7huk=9Jf-*S%CY<2zkH1pmXgY+dzwdRo?1xah0pD}Ac-%JB94#aVY(M|7UGaWfhH zrX}Tc`zyjHO^^9|;1P9O;0XC#@_6tp^sVRvZw$N(eS}^@KjF88B6=_Nzbn#XXztZ_o99q3cJbl>3RmG;%s zx%8Lef5xNYSECCaD1Cc--!JS6JA9Y zjZXAFm9I1LYQi&#i|f^IY@Clb%lkp&Q zFnL`0-L6%ikL!B<2 zcw^*uS{wQOPj#LB_VmbI_2JX@sxE%-KqwUiseuvLFJk67p4?gvQ$KUV;(4+VUtgG=U zOg?5f$bJ+KQlB>Y+*AM4#HZD+@0NJJRz95dIa1CEFeh97+|2;P1L*O2G0iQ$%!z;lT z@P_aM666zs_T?^Vo5~XYd;Q1{c9~eZIeX@4xd`e(ud-{@_MF zXY)?if{XZn;8pp2`k}(Ra1cHS59Ip6Bf`~iHotS0m(8JX{NMQ}KXsEj+PUsw@&Psm z-%ozG_2xP8LGde1`S5(t?k{{0{WrSp>zzkQKjwquo8y1R)5`zMb^c8Az*%1=9F+Cp zHP0m#}9Vh zLUnVpZ$4gqwoeRvet4N_pUcl+AFLjnymtNwdV;%G1yIV&x0rgX9~D&-fg;X3pP;`)~kU0LRQndXf>IfOqgO`Q5LLIqsof z(X-T3ocp8sbu#Z$-wSo4jp{ji9sO-5eT}Y0*W&}C_c<=d2|qa>^8x?yPs5e?G&q!R z8b6oo_DcEYuMGU2-;obm|9QVNUTE(3(HAWHh^Zf#{6l^p^?*`$>dbIG-$@VS_i?`j ze;u#7q7xsao|Sz{=3)PE-)0}MyZk~^-wSoQ!smXy^yo*n<-ceC?Xwo&&j%nhEQh$v zz=v)IvQF8bP5vMHSn$uMTIc8g!4u{2*SdaT`1R*XpL)K1&GwDP@G!e7k9JRw(HHh~ z-Jisz{pAZe*!jBjwCGmH%Wrw2>IR({(Jxl2PsZAaUv_9oPD3~*LP#?FXAhLznl-e=6vy5a3g;ZTq!RO-Z8&$ zDBQy*gb$*V;e+sj{9yPX{9*WyOJmLl;UDplt_%2?e(U;?_kJfokh`J6oi{}X=ZK>2qLwI3lqh{Gd!FGs82`mw>sVEyJ7%IBXbymfNK$2#d` z@?iLdvc9jkZk9N?-g*L`wEeccWIk5=c{&(>2!9VAN8FS*G{-CO30{X@gO|YL;Air? zOneM|2+xsy`}N}Gt`B{(JP+r19$y0Y;8XaQ;SW3w+yk$8-UuJzZ{Qiv&qsg9`xw0+ z?r~gv-8zkBnizf^wXO9Q`? z>;Gca`@T5vhkQTkOwqg4KZLX2ym0G`PFG#5$@fh6O&zFHBf9G9P}eiO)8v1S|LAz} zF~^$s3GP1J{l4(8xo-E>{$@}4h^9U?$)9|&_^)TW-$ky^N$i;P7K+|9hABMdEj^@cn!ZaAN}3veLjaT8DHgl9S?knf1x|UDbCkCm?yl9dBxB0UHvCF z$)`VX;fg$(% z#8mGm`=W=p_4~@Yvf!V)FM=#*w9LQv&?Em%$FOHWF z-FMR}bg}wEUh2MD{Hy#M_WSn#@`7@nZ;XHZ@GZyel_8G{UQwqR?tlyM6Lcwg-F!Fv z#CRQi4ITtPgCC&_89mQ`gHNF=;aTu6co{s75zn*J=>0x-r_uKry$-+BdHKKZRwSSD z_32v9AOAz=l2=C0lSgkJ%`0CNUX2chcZ1X5GI)$027mco;Z!^yeUc9d?uE19C_d>Q z-b$RjJm4gK-QaBgXnrz&GtJD%=+fIP7r|EcCf;UV{#dg<~H^s%#F$^Ev! z`lwEQ-|@S2>#Q5!to_epr8_@RQQlku4DHXq>$ucOO(f97k-m#0(7+v2y* z{9YUIh5nT?uAE^p9jy(buauL-Ur{KJ_4Rc zp1ZmV!3&#J=X>h+#rMV6!`IAL9~`n#KDVi!Vfe9A#mlY^`viUN_?+bp$g6~N~D>3`yA3Q{`GbRE=L7e^jqs28rJLb( z_`H%|c)9xcULNXT`rXt&R5w%opSk{(^=h{`RZq1|N_*K#y#l@agVf z7vIzdknPy=VV^vVEcAg6BQPE8&~u%ixE?4@~=PJQIIW z@YA`$AC14k2k?a?9$l_|`WxlXc%yWQD~*@k3J-RC;Sgw8C~hpfOlLE{ABXG=&|%!IF;WAPS)Qm`rk(L zlXNY zyRUopv9AvNJ3gN7g|Elo%iD!Z66aTIy*)J&M<@TYeir}N7D0cezUOT5Q0E4Jsr+K` zNdHjvdFU8?&i3>6_j6y6IH_NPIEp8sr|{?U>x#?bG+#4)Mm(R7aL(NCOy7YE_@D7S z@C3dHE}|>VM>xdue9Z6_T*BXkf1x++G}7gq7hH#zF+cn@{LJu*d8JR8ce)_I4ZSKn z#^nKz(iPzrzjJW##euh*`*7rK#kY2$c^f!JogVrqf6g4w#K*N!{XN!Oe}%8{Ir^6- z&;DfXGgdl3Ajdt`!&1*M`s$IoU#EWVcpiLcc(MIm=Q((8_i#VMJ$T#Xg*{XIoUit} zU>_8|>E2nNuZ8!yTjIoW9?J~ejWe(l{!!;A@$Do`e*!q+8GyB55!}=QD zVajt)Jb10^@XK?jJMDyj)U_2Sl+3%k1e(8KS{22VD;v9WR9K_?OS7_fa zu8Ozt&fE_zj^k(WHt-F+0zbed{4V$!{uq1--3Wh!U*QL)JJGY|`R$(fI{K7x?k}G6 zI(Q$t8D57Eh`u!+{oUBd|J29+;_vwJYlUa84d;ia^4R&$`6Bgv;5m92dT1GM@VRE8ivb7OKV@B6_@BEmW-RBl z%)s3;13Td#>siJ}YQOjOUjM9zcyjq)(Uee`iv2fzD*m1e!~R`8W_`Bp_vPVaAA4!Y1LJq4e~5Sd&HOZY9zGKM4%{Q&;y>UX z@f!XS$MG-l5Pb+P;*Wuk_=$~tG&|u1J{sR+^!@mvo%kNO0^c;}qddRUIL9M=I`9Wy z4xJAU$#rpM;Dgj%n)5>Pu;3K+3F(o3Pj!6cWzn_ZmpMPAuFuckvg`ch#R1Q#@59f< z*Ul%VZa921_xB{v?sVrh2Jfvk-wFQ*hfRDC-HVQ^PL}*i`IgxiOnAq>M7^KP$DYD7 zQ@tPg?(=?M(T^XiebHw--z)de)aT-EStpnCSY}|EfxB-8?u37`&wFH>{$*X{>&d#e zyZLnd4;?IdEtCG0ed3Yw0UfJ#_xRAK2oB=g;m1jQUh6*C>fqWZ%cl`%=o9wYe`brg z*zCA9*S+|VhzPdbl`S9u?=6Ag@)N?k*zjC8|=QoD;$(xs# zFHhh1$?w-s17D>cfa7;Q_$0m}yb=5dFT#=V9b9ML;W0X--wU2qzX{%jf8iM>myy)Iewet-KT<|GkG}M>o_O=t#>|*{22RbdBymjtlQ^D zey`2?-U+@M?G- zer5h2e&t*@Zcqzmb^MR2CmM1vRV027m7DM z-#RRxGrUgMQkPs_SLSi5?;M}g$<9Mm#|M8(-^%rVWT-Pb=Y9Bp!b|S!e97>iuN0oy z)%te!FH@aEcn3dx`+BkPK6gu8Sk7aafe*tBz&{zMeqV`0pPcdAk9OW`bgk!lozw@_ zevuvq58;96VEoVOu)#sW6D!@%g0F$kA^Z8Y$_Lw72h)EmKJ9bk-`fh%=WBhRaM0ZU zLkANF;T-WZzU<4DXMB0UD{u-wuJ|l&&+*Ck>kr~9rjy|>@Imsz@f`RM{u@3Wz8(At zUk|?zKahHZco+HbUN`4q@J#q9{1kl+e?{NJYth&6U3eJyi=M_WHOEVIGCCvN1pnb{ z;varv_&w-iey{Kx6JCN}<+anp66dG>U361?j()l7{?NhHFQmg}-*A55CsPmN?D*L& z1NfOC?@Rq3K7YP9I+*=|{et_34iwQz$b0J7YEcu49;5bei-^-WZgg0^>F16)6=|9+~J?r zuK*ta|KJ_)FXFGbjOW0Mi0^b4xBz~EA9m8S=sfTY{R)nOYv3HC=e>^JH6Qt>jqpz9 zI`WO6V-rzub7u>}U4PW7-@L}+% zd^3I`yc@hk_r&Mn{oo|m3BCxvmTxHkT^|;Bh;I!q#MhtuVQsk1>B9NG6N9dm?>Sz& z?y(^sjLwV)ijH}x`o~OqS8)5@>X)&*`hQ~(VevcP9Z_I8i)99u z8Tei^03Y2xPP`F596z4@^=GMblo)j$lL3QJU+{_{d(1veyaAHPnTZ-FaKh% z*Wr<-eEi^&eU)c?pm5QvT@Qs`09WCmvfdvb@{H*b@u_SKdGvG;z9agaJp9bVX6bvE zhIpzDjrfZ<;uE2#@OA(2mY{LE=HX)L7H!I$_ZBOZquSb%-`hu z3Ep0mVNUzv`0Ly5ce9q}37!9(Fa=uPke{4mca;~&OL8ReVN z+3-yG8axg>MK8lEd7Zz*O-6i=&-Fd>-{^nvi}T_)a=z*c%}02XABtXv$5ZbauEFyi z+WODsF~>LR3h@!~3(?2aedZIAhnVaB{GiX`Dd%{HFDN|W+K>;)=bY<&rE$7`dbxj& zj?^WZ`kZE-4|QG9=(1D3d#=;%^`7IC{%Y+z^hN$;Jzj9n2Wxd-j&_-WWd?pTGjKZ| zn(8Im_XYp(Kg$2Or~E^o?ENDCCvo`k%Kv(@@XFNpBKunP)}AkY?WOWFe5dOU!8iOx z@hQAI)Q3(TmDii^@mM`Zb#dn-9K%NuKkZ8AC-YnDTR_jye}Yf;|M*?E7?X>Y*LJD- z8+p`t8~8@w1o0Gqz?TyJ<8t#zd@kZSzYM*HPYAxD6Ui4ddVY?3;0}5c+=NeoL+~i{ zKK`A#{}~?P=kZvb0KAL3kn}`&&Uwm@H`1^8y^TBZHhkoCEj}*3X?gMd(#fN`H2gmF zE%}3VE_$i@KKwtf5B!cky?8_VZ1ky(0r&8`(RXwHQ=K2Ud?(*e?zh9k^&Wom;II$K zJWRTmeTDj_;s2hi{DoiLhJS9q@0WUqznL|4dF?U-%M83fX5e;wL(iJ>z=8v&Jov23 z-)>wIetcKeTYIJX7rYCck~sg$&=VA)*NC6;zvOq} z9r%av6Lc7Of`15q!`A}ez$vGH?ABi^u;}!h37Xr-w^J>>*?>Mz9HPh_Z(enqj1KgbK!k*KdqMjd9w2+UH|e4@Q&)O zyMNqY!BPAAKArPEx&K}$f8VbaU;5=4-@Ej8e}Amr%TX*du*|?aIRoDt4}H9NoO>&; z_x{;>_-Olff_HwcbfTBLt{VJ9pMpCQpAVEy_S#U#O@0fXLwqaiL!97aw*RGD+4sUx z^3M1l@IZJUK5Kcy(W4G`-hTGECkFpT_@y(0e*+%?=g1f1m!+%FTjVA2g~%Vm8}NxF zALr804+3t$gZLc2UA%{UdY`W^6<*3nrxDl1d;ABSfG>eB^s9hR@J;X!+=X|-E5Tjx zmU=}-b$q-I-h$uw#pRd5fxaJ(a$ImEo(aA*e{iSY1)pYK>0oq5^?vw!=6PcB2BXJL zbrtYKd|muw@zb2|J}vWnFm(~}L314}`qk>TdO!45I+*Kv&I7ssa-Z!TbYwbo@YxHU z-;n$1^D|x-@4N6n@8lZ1eAY4p%M84?GeF;x=W)BQ`LS9rpXxsD!5uGk-bncT=c>Qr zGyVFk^Z4|y)PDCXwXS}t>YO~*BY$-2Dn8z?4=&l=`j-BVi5Ca!I9?n2YS0nvyX7Uz zkLOFZZ}&RB4EuKbc)nHrG~gC`3Z6$FjU4Z!gXtTke}_1Sw+g?pTK()-2OoBD##-|P z$%9%S&QG2Yy+odyylclJ?!ygmhP*01Wxi(q9V46qN6?e_yx}PIkl_G688}0pKi&w= zgSYTI_%b|=&-457OVJP2N%A@B3Gp?7#QVs1SI6-G**f71L)}gK zC?7lglJ8k59`tzgk@BxogT}d&+n7_^GNHyKF7WyxNT48VdnWS*M8>Fx_>`c zIOhvp_Y3cv-}ke%KlxPce?C#y-{SvyZ&&H%+m{(wX5ihNfjJ+P$M-c}$@=(Audj(q zlaCUg9=_$p+V8$pI@U{Fcg_COepH<{I#uHSfsy#Qf5@MwzwuWGU%lAAYxPSKM_wp@ z@~-aN8oaT;c%{h?%}*qrB>(A9)ir)~1RuTDqy06#0S@zip9iOTy~jpARsQVx=yUTs z9BjSLJkbfAm-z~hwy$)Jz3qby&$Flf0xH_OkGxVhPNlHeS; zh|dO2@HyelR@!f#@89Tpm-58D5ALKt!6STF@G9LX*Tw4<=MUHUuhn&OrheDcT|a@o zDIZJzAH1nQJ3m;i!_Cr7FBXrv*>$JjYI>N@cbxDx-Y2+oeZ+shR=%C7E@E)nO8Lr; z*Zp^->yG-}-A{g3`33G5_s8w~l84G?_vvl8XYu{Ko2%{e*~<(pGw^|6+{Ok4c=7n34=XC3BseiLE@IJ{e-W<`_&UD=Ly5Oxdo#*rD zU%ll>In(hFA4F&3SK;gBcj14@@m(E8{$hF$zmU8rer5Sv`h%tJ@b&RG|J2|9ZIAx$ zx5kejyn6qS{?Oaw7k=@{-+S~sZ`FCNLKFRC7 zPJgUF`Pcv1kL>>F+2&99jqz!8E50Ln{P-&R89j}ki4MoNWHev;T)=1iK=jPZ|JAL^ zOBdU}j%VWc!u#-n$?JmG{O+zNI7+<)_%HsbQ-j_c+&K07iXM7m(0l2`u4~sh-8bKJ zsPi55rQyeOAIY)Boq@P`8KwMV^-Wb#xCt9`)|{K=?xN8vHkO8va~3MZZu!V7MfF&6|VIMZ6Z* z)jLd_yjK3BYeQZ+9ZKH0`h@y+>AR&b*DaUs5B$uH>SKFj-1F-nxoO4PK1PqbF^u5{ zruTU~f4{z8`h(^7zCIk!|Grhg@Ot6h>xC4IdKR zMPF0r2d>QZd1d(B=wx&@IFGK!SH=IsC#`=5UC(vJ2ak`E_wM?Hi}b{r!yrnBg8B)>PGb8^Jr zyV^dN)X!V5{+g!;pN@Je{55>0;r%ZRK2&}meGJ4c`+fWaUu*cPOGDikJ`s8j|A@FL z4~fr)KUsdaIE=>;pYb>Hq2MQRoZnYHzd4@5kI2h1@(sfW{5JDEEuZiE_;L7z9GBxX z?(}y&ixFRi2b%kn`K#r3;eFr~z8&?B_k$s3e?<>HUA)_r2R6q;_5=7!bvoTY_#nQ1x@++D z!Qz*;=YP46>0!aIPn6F6+2(h%9(=6w+}@kDYWdb>29_CEX5gKi0r)55J+1qP7ym-* zR`I7i*Z!UOJ$AK!gm04%g@0uyJqnMX{IKKY>p4;Wk(Jtqo~-=z)%HQ~MaauazlDv~ zp|YPnGw3RFJVdvkWAKyMx2x|04~cX3{dfRzHM+v~KJfGvx)$9C{=pN$74QdK0=LZb zs^~iOEj$RFi$58!B=5?IN1+$dk&O5jkG;I8q@M*}H$9a8#rHh^(VzX# zfB!S*%HKTIy9_^bwtYwOeNDKB4?eu+Q@ z@8}ow4Ey}>P*dMidWgIs@mE|Hukjl24IXFC+u&>HVRRhzeBc{+2L7Ov=_A2kllXaU z%=5P9b(i(u`q8b#`|CqL3;nwExuBozq%#Rpzx9#hU+euquE&#AXY)kYt-=G*!|2a^^3m0%`iFc#x8HYPYyM}! zKkw!0ynOdE1IrBjR?Gk##0Qk|-d+c@e}AxjLBS!9ln?01=7r>Y@fE-^e3#Z=zGeA2 zd<^gnUTDuP`_3aLst?#o#iNsTT$3&)PN*v0z9M`Pz6G9wqm1x?$40n|UWUiXy3v2lk<3`@6+(IQ=OmO{|`0)yWpPRidA>{j%5ax8F)X;K-Rmd4m7-@ z4^YPEyS^bFJ$%r_=g2p)-^}Mu{vY`%iBl8*BYzy9pM3h`?fZyo%8Ar|x z^?CT8#V7p<(l`5J< zdJ>)o4&Z~vd+3*i7cs&ee8l*Xokl)mJQCk^ey^!7>0A$+>tggV{0n`IPgxyAx*Z&b z|DyB3Z~V(}4<8a7Xny6#!9n~(ejogt{5pARaI1VTes{cI@b;ylo)A6<9^#u<{}PW# zH{&ylzwN@n^Uz`Gvbmp54|#*(`PTaShTHj{vmcpwp6GB>zc2MZb6*^)I;HyyPfdJJ z@YAlYN0IM&re6Q}tiI_|@A>_(HZRAp%)l}O@68M(9{z0cFP|xYz*FUme7WoK$p2CY zNSzV5Dfr-9<){8u*G0q=*`LzI_%`7pb#vsECC=@uz5r7lTkE@iM(P6D??w-JuIl%^ z(E0aXM{lDW*k{9S@E#qH&Y=I8{WyJ&Zef3~eoJuCsjl-P?*~#_`HGgro6=eDnOt{PMm>-a9{# z-y_%ORDUwM*=p7AT&X(Y$GSctKV0f29_!!3y!$=Pv+D%z34T95)OU8>xj*K9pXAN& z9_~kepB(qI#p6Cv_wmCu-oMT7?EZgmR-fftml;@QV3~n;Zw9Pybg#r|eV!lc{uYV< z&vm^+ejj)s`8xZmU)I6$BfmQ2qwpojSBcJWVyKG?AHW6TSNM(f#sk468ew9anipMcRt(oK=_{VB*7Ek>Hb0LtMMK1A%y>Vwfj{> z4>&UHgYgsc--A0=y5FPyyZUhO5uQZ+h_82}>-own=EuOF@M(x&eA40?-7I{;=HOf9 z2jXWHH}%ot52ByY)%Z)`sJXrdNAcV8slZeGEAq(TE50Fq7bE|*(evuw_#B@vuiRt# z`d&AG?ECp^e6Hj1m>%VI-sf}S8h+z>y#TNG{pQ7d;g8fGpkJDI`W4*@?!hPNhvs*r zXBpumx|Tda*GF{P^R*v1U-bgdHU17BIa~bVnL(%J3(EbmK3vDaA*Y(3qkGvWxKH@w z!fzffzs_sr7eBPE&wKVYyNi$7)%Cmd>&y2}x>xR}`)2h{7yR>Ht>on7|=m7D%9_oBueIVc^qkartpFEY< z+W(1Pq6b7rJ3iD&NnMze-Cu#PnvWC?qc6kYGgy({r-zfb4#-OjkOX~gL zjrgC{f6n!MY51MtCOQ~gj2D8V`FvbAaL>HI1^tXZO8=yX>F1^{s6HgF*MIuQZ=KuDj24zvJBh>bx)b=iOg{mv2~RV3~pU+YG=(w~yAv zdkPoXFFw%u^5JnFYo9^(t6!`2_UU@xv-Ns;C@;0Ih`y$eW8%WzdjFnY*ZCaq`|uY& zik~QPbAR=7*k5|ezV?TPf7w@kNB8wUI=an)+NVz=eZk-3Yo7X)1)uEiIsn0q`vx6Q zJmX^xA9ZB#k?1!s?()UpKky^szqk&E@$=H_@H_Aa|FwK5edpgT`#cr5jf@_W3| z_)NV*I1BG&guCDux*!~bFTxAq!{R@BW8iz#_kk00eOw;+ANUgwq+X%(po`(_Ja3-q zqVl}dPvE1U^F?!>NZn^Xd^%YCXJ@Jo_Qr_bxL*5%Q(fmXIPGNni1fXH*TYjD?S5u_ zaro9b{=xsiKl0qOPnhseUiZK@|IhnvJz9=unSo^nmKk`bXW({x^RtCdCY-|$V4oO% z=Bw=^<~LSPgbz7<%PW<~wY&Y&{6cVq$BB1)yH6>60|(jH!YgnM{2}jb&Ntza)MKQ> z(HHPO{HNh1PIbQxeKy23z7TO!9Od&BkMRz83H*%skH^8Y@Wb%QyuLC6iTt5wUfiiE`3&&m`e`L$Jb7R}6-p_mte|Ww6nO-0A-F?5~bsl_1 z<^k_x-sog}K2m@H@qNh;#P95cgYba(9(ro{$Fqap3hyK@ed;I2 zuN_|NRM&BE-MJ2fvyKn=IDVbO?Wg8@&V75Zc~-NAS{68Lt|5z>FW_8fJ)C~$gI#qQ6r#?&cF1`xi8y#rEJ%4;F5KZ~@!FlJZ|I+3V zN7cc@!{~=WhvAbJm+=Phl762*{v)?4>AW%UGI$%j3V$&FG~YD5B){JCbA9SgIu>2a z>*!P-!zI4QanP;QFXBJKPr-lcA30CHs2|?C5H1h+1Rn*TsBh`IpaaRzlYa*n&`as9 zaBq0Up4fSdcAPVYt?u6weBb5JmG!&0X(RFU;KLbAAY{vpTFGso%T7_fe+gHwH)s<1Ir97 zGw?4v1J*tGC*!@nKIZYGUH33}X6lP!olU%XVZcf9-2FZK^}WR(y;gZx$GiVUe6Ooj zk7UXd7q5Z`R)_sEUCDl#ZvwxQ{qRcX9rIb|d`@(~jsKs$dk@wuy~@LGf-zQ10ycJm zVmrbyAX7lOTrLtDj9t$-;#oB`GeW@&Ha$l2I7jg#91-)7{gTbHDWUTzhUROdN#*n~M@pZ1?g90DS*Lgsu)7KsNU?Kgma1{K+N2{)z zUl(r#AMgj`i}+&T8n{Ov9d%ZCCH`T0Rqzb!H4bal@3C6zq*n?bIR1i9H|~qY0uR6? zbTY?jzxW#ar;pLO=y(1OAMrcEjc_EKsBaIRC$8gKq0ixYe6F64j|b0Vz7us`{LSsW z7W((7^NKz@r;0w!eD~@VU3d6AbibjWK=7BddA|g2I9=fJ_`OUf-htoXoT%43l=>{4 zH?}iT@UDSlb|>GXev|GMIQNd6=RNA)Zm7I3UAy~!zS`$#|6Y$kkHGee0Q_V0KF9|h z@5%R9pTOOf7y5L?N4Hmh%M`M&kq^LO0#AG*&%?Weq$x*HsV zXZW=*|E4Q=(ijA@ObJP>d|6;@1yBcwH}{G#BVYC7)88JWgjDWFML)ftN&)H);TZLK1;(q z3ivX(PTse_z#Y>$&n$i{e8AJSkHJ)(hixixAY7+^AbuivtEt3?a4sE&Un}mH!S}__ z75ksKsDFa(z!{+{&Xn-|%+>yx^U2SNBc95JM#Au>s{ac-rnE%mGL&$ zCa$^g_sY-5-`Dw_m+QINx7#DoBd~oU@WS|JN8*`y{@$H_XF8VmRPU|)$?^VtpuiRK z0o)Ke(6Q`i>;0LZhi>3KTpskk4cExed?ETJ;*I!E;R*T^y(99&YT-XoXGLG37tvwp zNOT(h9DQx*JN!C$7xmzwi<~d?D|!{a#k>*boiINIf3x{6_=YVTeIB~WvnBHJGsXN| zw&Qd2X0*%v(}DY*t@AVt^QH1f8~LWqs~Y)yn8(z9%*SEA4d;n}a{l@^iVGgfJQ?E0 zpCqn2mn| z_22utqo<0#hY`=E62FJV0+)q8I9KNbz8Ht$5#g}lf1WDl(F-2&VD>|Yukc6sB6@WE zo^Pr6>cfebJO{SVldB(Tk3f$=kHAY4fq4E6^T6{3#5l}%8ob2C^MQHqSMMEp?8)kr z9{M2i>+qw}4e%9kkoWg^&M($FqNVKn%$H;S(s-_)t+?u3_AivT=qqrKzAtc@jmSugTv;IfSZ@2KzQf8o>N52ib*JJ&y1zJ~+ULBR{^w>F!-y#4u~8|tUjWtmq! z__Cos%d+|0t@pYhV6q;|vh~$>spGP2JMfNq$>2BVZ{96+SN!30y3hfa^ZM`;>7T5w zj(*421E-9;F8o6FZ&|+p_?2IYKZxJj{h*FdU(4VvSE@f}rKk^se;jY0UbLww`<`2;_>TGsx-7Q?hs z=c`-Ec~1D915Yd$^P{L^cVEyQ`J3HWao+Q(#~mIS)n^L)&Uc2F#M{sh@t4-K95`#x z6a5bOh3LF=TkjWmSN>=HC-gatcs-E*yugvY&*64@Cii3Q5$F+kWg_4`5bojQiRbWL z6+aBTPdvBx*5~WK>@Ua%(du3Dfag6tqwW~*qmG6j8h+siR)2-}x#xXb%FfxMen);Y zAGdxk>aFzcp=-#S@+tfiy4ujkSsy++n0_>H4xA$Is|(k6Q2jVRF+Inqo(r!+_c8Am z-bkOEb~HbidA#_WLvMMem{&fo^D_nCL?3H)FnSrjhaTtqwik7B&s5y`OljwZ$8+&l zJ5KtRdBpTPQqR`b*~3}zmAW{15w4_9s<+oqKtCq93g3tSqkrj}h`+)E{lmZe=Qge9 zD}{cljt`C+wJ-S4nXC^q4@>xwm(t%J_rXH;ZQ$3U|yx;PP;)m#D^Z@t>E>ef=z1@4fI`w$}UM}<(_0O#iChyT( z@C|eqbyV;VJxrfse8#2pFuoP|2JXR|;D>DAe)&_L+f+|}|GU>}{q$;~-|0W(c<69& z7JLDBwD^es25zwox3u5$eV@Z;@EhF^UU5A5C_E7Sh)<(m!7unBcr)s_hJMiM&-4qh z%-d_8!0wr!HRIA%8vIl)fDAD+jVadK~Yb>fhT{`#U^X^)B_AH#Pq0u6u3& zCvrc79)TW#mpTG)PWWrypLHqmynZn2-sAmsUwy70tnZzNvkpoX`{gZwcy6Z}zkKz%{b3s4V7o6{hFOBb+??;~lI+}Vt_4sf;-w)hF2jlyR z>wPHsRyvq^gx2>Q%lA~g(|yk`_4BcBuScLqVEad)#X0-}k>5X+{S4`0fkQTV^-;pu zlkcDW39-FH+2>IG3SR^rOdl40ir_Kks&8m6>y{&rF68`4q1Pa1K+?+>aXZm@Q(H29ykf#bEy$uWNg=m=UUzfK7yC< zR`47B5Z=-Uo6ZQI(ZTqs;81>OI2CS%WA!h>|It7BqxC7`k9M8#iTI(=cbDt?z`5jw z;BtKqg6}+;eaQn4E@XYben;l<4Zd=!{{AM5J`d`^{LcLD!uPW;f0z1Az(I8F3-zzg z|7`y!ct3+4fgXWZDgy9Qj6>a6JYPRt`$XSb^T9pUf3UOqQSZw>C-J<#z4G%PNnV~0 z8}Af&>&~2iUY!d)jeZvX)g#&Whi^3as{J|tY3NP|Yd@Vs*&m1=*Y@$@OXbJV?+}io zTkvt{_lwWcr!V-8p^pt*7rNL&3BF@K`(d|!5d9S4NIXHr{i*81Ih5yVJ}AEQi0eeo zBa1f>Px?vJOYfN)$< zUyuLLf5G?7hh^kPQ&%|gj;%FMWVX-|5Y@-o5*NUa99~-%pP~ zkHGeg0GtDlM83PB`k_Bp)SJkIfd}?xe>?dp-gBQU`Uu9nkw>!+kiI@}h55N+ztcHS zHXVVlRK8J1jmOcK1wZrAKYIR$Z`-$AmjBq&>GyosO8LImZ7~8Xh3|t81pm^GbQ5}t zdThR+mS5nv<>#T-;3?Ew;WzL%cp3e7B7Z$w_CEf`pZoUjc&_qX&lYv+qw@HlelF)1 z)dvXAgV({!v^-4ftG1r+wfqquG=H@H=^JF!hsfWJ`W5k8>kDK*cq6_gekr^Vos8~g z{#bkvevE&}b)kpxJ>z@mV6Hcwhd-VV$o<1t#&3@YJpR9LIegCKJg9I{;FYD?hiS2> zCxeIE`giv`oj7=#6BYL#E$}&958uI=>c9dIKUM;_-&OCMk2UzG^FG`6$=r{;N1#XG zm5KnKC&nFFSF0Zo9nAYZe#QH${=VL4120V$b-?-@;!VQmF;_zOn9sZsJkMN-Jh+g3 zDQm!m_eXZF5rJ}`O5d}4gnpM2L=MfRxzPX+#1s`WQ#3Ll6(DSyhR{I>ii>WBD9 zEb|wc{}i4Io@A}~yY0YHd@$et;+VgXmCvIdD;nhv;MK%lw`0 zrY?<-$@c8W{>`h}>REhJ`T_8l!!!KS`ud2QxU1WPSLs>m`&_sG<4*WqKqU#J7a|3sd9y5MQx40Y`MI{1>f zZbLmgK4n~8J6;A)(~jf#8T-LcIS%;8h`-@;78f`U4uL=LZ}6V_EcI^c^Z0S_biT)@ z%tyuN?)t0G3f=Nt_HQ;1s?mL+Pf+N5%XMDc!Pf%^@!1EDdAh*ObT9Q@5s!uJ_pIJ4 z_`#vyGyXI7J6X(c@4X>#_~GLBh4-Or(k0_~9H`rhyPN__zLxQ0iUkckw@TuE=9k1^;8wGEn zE*`I;-=O*?eS+{Icp83SxCo!ZKirOR6Wl>J!n^pKu4H{Yk7eJ3&m52AGpcj99=|fa ziN1%&(T^vt?|OlU;2e0<_4qGG0CP2UO8#Q{Cfq^)y5;SJ+@%+-Di3+4Mpji8ru zzBN2w`1;Qz&j(MtulShlmml7!-b;UH{3X6oJv&^(zZ`tg(8rmMh0h5;|D)AUw~mXWo|nRUTq#M%5Qd}I1Z`5gWUUFlTC^(S*)7J94e z509z;i~DDx_Vu2t^L5RZw(gz3-unW-kA6RRR`(^}dK~BOI`7-gO_DvLZJhA?hMZJ#qVDHCKmo%0Afx_o8 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 LS}j`*;F739R|+bqb2HQq{i*$sb{|%` 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�>85kf$#hE27KTD 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

    #^RE9ZAY}yrAI!u8H-E5*Ux=< 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�B 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 z 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Έau#d@=*O1JzxFwzc^p^ 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

      <~VMePXxRJ9dz)_L3c~c9}gV*=gx2-6!Dy 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

      9|FWG*e*7rur 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%0A99pMJJD;=4l!w5!B*50+TpMsvTZu7+>Y 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�k5`U)WFhztrJz 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

      maT*|2=SXJnnh5elPodcnAO32jC>! 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