diff --git a/stable b/stable index 4d8f7f2bf..e7fc21bd3 120000 --- a/stable +++ b/stable @@ -1 +1 @@ -v0.9.11 \ No newline at end of file +v0.9.12 \ No newline at end of file diff --git a/v0.9 b/v0.9 index 4d8f7f2bf..e7fc21bd3 120000 --- a/v0.9 +++ b/v0.9 @@ -1 +1 @@ -v0.9.11 \ No newline at end of file +v0.9.12 \ No newline at end of file diff --git a/v0.9.12/.documenter-siteinfo.json b/v0.9.12/.documenter-siteinfo.json new file mode 100644 index 000000000..6084d242b --- /dev/null +++ b/v0.9.12/.documenter-siteinfo.json @@ -0,0 +1 @@ +{"documenter":{"julia_version":"1.11.1","generation_timestamp":"2024-10-18T09:44:32","documenter_version":"1.7.0"}} \ No newline at end of file diff --git a/v0.9.12/API/index.html b/v0.9.12/API/index.html new file mode 100644 index 000000000..5570ad606 --- /dev/null +++ b/v0.9.12/API/index.html @@ -0,0 +1,792 @@ + +API · QuantumClifford.jl

Full API

States

Stabilizer states can be represented with the Stabilizer, Destabilizer, MixedStabilizer, and MixedDestabilizer tableau data structures. You probably want to use MixedDestabilizer which supports the widest set of operations.

Moreover, a MixedDestabilizer can be stored inside a Register together with a set of classical bits in which measurement results can be written.

Lastly, for Pauli frame simulations there is the PauliFrame type, a tableau in which each row represents a different Pauli frame.

There are convenience constructors for common types of states and operators.

Operations

Acting on quantum states can be performed either:

  • In a "linear algebra" language where unitaries, measurements, and other operations have separate interfaces. This is an explicitly deterministic lower-level interface, which provides a great deal of control over how tableaux are manipulated. See the Stabilizer Tableau Algebra Manual as a primer on these approaches.
  • Or in a "circuit" language, where the operators (and measurements and noise) are represented as circuit gates. This is a higher-level interface in which the outcome of an operation can be stochastic. The API for it is centered around the apply! function. Particularly useful for Monte Carlo simulations and Perturbative Expansion Symbolic Results.

See the full list of operations for a list of implemented operations.

Autogenerated API list

QuantumClifford.BellMeasurementType

A Bell measurement performing the correlation measurement corresponding to the given pauli projections on the qubits at the selected indices.

source
QuantumClifford.CliffordOperatorType

Clifford Operator specified by the mapping of the basis generators.

julia> tCNOT
+X₁ ⟼ + XX
+X₂ ⟼ + _X
+Z₁ ⟼ + Z_
+Z₂ ⟼ + ZZ
+
+julia> phase_gate = C"Y
+                      Z"
+X₁ ⟼ + Y
+Z₁ ⟼ + Z
+
+julia> stab = S"XI
+                IZ";
+
+
+julia> entangled = tCNOT*stab
++ XX
++ ZZ
+
+julia> CliffordOperator(T"YY")
+ERROR: DimensionMismatch: Input tableau should be of size 2n×n (top half is the X mappings and the bottom half are the Z mappings).
+[...]

Destabilizer can also be converted.

julia> d = Destabilizer(S"Y")
+𝒟ℯ𝓈𝓉𝒶𝒷
++ Z
+𝒮𝓉𝒶𝒷
++ Y
+
+julia> CliffordOperator(d)
+X₁ ⟼ + Z
+Z₁ ⟼ + Y
source
QuantumClifford.DestabilizerType

A tableau representation of a pure stabilizer state. The tableau tracks the destabilizers as well, for efficient projections. On initialization there are no checks that the provided state is indeed pure. This enables the use of this data structure for mixed stabilizer state, but a better choice would be to use MixedDestabilizer.

source
QuantumClifford.MixedDestabilizerType

A tableau representation for mixed stabilizer states that keeps track of the destabilizers in order to provide efficient projection operations.

The rank r of the n-qubit tableau is tracked, either so that it can be used to represent a mixed stabilizer state, or so that it can be used to represent an n-r logical-qubit code over n physical qubits. The "logical" operators are tracked as well.

When the constructor is called on an incomplete Stabilizer it automatically calculates the destabilizers and logical operators, following chapter 4 of (Gottesman, 1997). Under the hood the conversion uses the canonicalize_gott! canonicalization. That canonicalization permutes the columns of the tableau, but we automatically undo the column permutation in the preparation of a MixedDestabilizer so that qubits are not reindexed. The boolean keyword arguments undoperm and reportperm can be used to control this behavior and to report the permutations explicitly.

See also: stabilizerview, destabilizerview, logicalxview, logicalzview

source
QuantumClifford.PauliFrameType
struct PauliFrame{T, S} <: QuantumClifford.AbstractQCState

This is a wrapper around a tableau. This "frame" tableau is not to be viewed as a normal stabilizer tableau, although it does conjugate the same under Clifford operations. Each row in the tableau refers to a single frame. The row represents the Pauli operation by which the frame and the reference differ.

source
QuantumClifford.PauliFrameMethod
PauliFrame(
+    frames,
+    qubits,
+    measurements
+) -> PauliFrame{Stabilizer{QuantumClifford.Tableau{Vector{UInt8}, LinearAlgebra.Adjoint{UInt64, Matrix{UInt64}}}}}
+

Prepare an empty set of Pauli frames with the given number of frames and qubits. Preallocates spaces for measurement number of measurements.

source
QuantumClifford.PauliOperatorType

A multi-qubit Pauli operator ($±\{1,i\}\{I,Z,X,Y\}^{\otimes n}$).

A Pauli can be constructed with the P custom string macro or by building up one through products and tensor products of smaller operators.

julia> pauli3 = P"-iXYZ"
+-iXYZ
+
+julia> pauli4 = 1im * pauli3 ⊗ X
++ XYZX
+
+julia> Z*X
++iY

We use a typical F(2,2) encoding internally. The X and Z bits are stored in a single concatenated padded array of UInt chunks of a bit array.

julia> p = P"-IZXY";
+
+
+julia> p.xz
+2-element Vector{UInt64}:
+ 0x000000000000000c
+ 0x000000000000000a

You can access the X and Z bits through getters and setters or through the xview, zview, xbit, and zbit functions.

julia> p = P"XYZ"; p[1]
+(true, false)
+
+julia> p[1] = (true, true); p
++ YYZ
source
QuantumClifford.RegisterType

A register, representing the state of a computer including both a tableaux and an array of classical bits (e.g. for storing measurement results)

source
QuantumClifford.ResetType

Reset the specified qubits to the given state.

Be careful, this operation implies first tracing out the qubits, which can lead to mixed states if these qubits were entangled with the rest of the system.

See also: sMRZ

source
QuantumClifford.SingleQubitOperatorType

A "symbolic" general single-qubit operator which permits faster multiplication than an operator expressed as an explicit tableau.

julia> op = SingleQubitOperator(2, true, true, true, false, true, true) # Tableau components and phases
+SingleQubitOperator on qubit 2
+X₁ ⟼ - Y
+Z₁ ⟼ - X
+
+julia> typeof(op)
+SingleQubitOperator
+
+julia> t_op = CliffordOperator(op, 3) # Transforming it back into an explicit tableau representation (specifying the size)
+X₁ ⟼ + X__
+X₂ ⟼ - _Y_
+X₃ ⟼ + __X
+Z₁ ⟼ + Z__
+Z₂ ⟼ - _X_
+Z₃ ⟼ + __Z
+
+julia> typeof(t_op)
+CliffordOperator{QuantumClifford.Tableau{Vector{UInt8}, Matrix{UInt64}}}
+
+julia> CliffordOperator(op, 1, compact=true) # You can also extract just the non-trivial part of the tableau
+X₁ ⟼ - Y
+Z₁ ⟼ - X

See also: sHadamard, sPhase, sId1, sX, sY, sZ, CliffordOperator

Or simply consult subtypes(QuantumClifford.AbstractSingleQubitOperator) and subtypes(QuantumClifford.AbstractTwoQubitOperator) for a full list. You can think of the s prefix as "symbolic" or "sparse".

source
QuantumClifford.SparseGateType

A Clifford gate, applying the given cliff operator to the qubits at the selected indices.

apply!(state, cliff, indices) and apply!(state, SparseGate(cliff, indices)) give the same result.

source
QuantumClifford.StabMixtureType
mutable struct StabMixture{T, F}

Represents mixture ∑ ϕᵢⱼ Pᵢ ρ Pⱼ† where ρ is a pure stabilizer state.

julia> StabMixture(S"-X")
+A mixture ∑ ϕᵢⱼ Pᵢ ρ Pⱼ† where ρ is
+𝒟ℯ𝓈𝓉𝒶𝒷
++ Z
+𝒮𝓉𝒶𝒷
+- X
+with ϕᵢⱼ | Pᵢ | Pⱼ:
+ 1.0+0.0im | + _ | + _
+
+julia> pcT
+A unitary Pauli channel P = ∑ ϕᵢ Pᵢ with the following branches:
+with ϕᵢ | Pᵢ
+ 0.853553+0.353553im | + _
+ 0.146447-0.353553im | + Z
+
+julia> apply!(StabMixture(S"-X"), pcT)
+A mixture ∑ ϕᵢⱼ Pᵢ ρ Pⱼ† where ρ is
+𝒟ℯ𝓈𝓉𝒶𝒷
++ Z
+𝒮𝓉𝒶𝒷
+- X
+with ϕᵢⱼ | Pᵢ | Pⱼ:
+ 0.0+0.353553im | + _ | + Z
+ 0.0-0.353553im | + Z | + _
+ 0.853553+0.0im | + _ | + _
+ 0.146447+0.0im | + Z | + Z

See also: PauliChannel

source
QuantumClifford.StabilizerType

Stabilizer, i.e. a list of commuting multi-qubit Hermitian Pauli operators.

Instances can be created with the S custom string macro or as direct sum of other stabilizers.

Stabilizers and Destabilizers

In many cases you probably would prefer to use the MixedDestabilizer data structure, as it caries a lot of useful additional information, like tracking rank and destabilizer operators. Stabilizer has mostly a pedagogical value, and it is also used for slightly faster simulation of a particular subset of Clifford operations.

julia> s = S"XXX
+             ZZI
+             IZZ"
++ XXX
++ ZZ_
++ _ZZ
+
+julia> s⊗s
++ XXX___
++ ZZ____
++ _ZZ___
++ ___XXX
++ ___ZZ_
++ ____ZZ

It has an indexing API, looking like a list of PauliOperators.

julia> s[2]
++ ZZ_

Pauli operators can act directly on the a stabilizer.

julia> P"YYY" * s
+- XXX
++ ZZ_
++ _ZZ

There are a number of ways to create a Stabilizer, including:

  • generate Stabilizers from a list of Pauli operators
julia> Stabilizer([P"XX", P"ZZ"])
++ XX
++ ZZ
  • generate Stabilizers from boolean matrices
julia> a = [true true; false false]; b = [false true; true true];
+
+julia> Stabilizer(a, b)
++ XY
++ ZZ
+
+julia> Stabilizer([0x0, 0x2], a, b)
++ XY
+- ZZ
  • initialize an empty Stabilizer and fill it through indexing
julia> s = zero(Stabilizer, 2)
++ __
++ __
+
+julia> s[1,1] = (true, false); s
++ X_
++ __

There are no automatic checks for correctness (i.e. independence of all rows, commutativity of all rows, hermiticity of all rows). The rank (number of rows) is permitted to be less than the number of qubits (number of columns): canonilization, projection, etc. continue working in that case. To great extent this library uses the Stabilizer data structure simply as a tableau. This might be properly abstracted away in future versions.

See also: PauliOperator, canonicalize!

source
QuantumClifford.UnitaryPauliChannelType

A Pauli channel datastructure, mainly for use with StabMixture.

More convenient to use than PauliChannel when you know your Pauli channel is unitary.

julia> Tgate = UnitaryPauliChannel(
+           (I, Z),
+           ((1+exp(im*π/4))/2, (1-exp(im*π/4))/2)
+       )
+A unitary Pauli channel P = ∑ ϕᵢ Pᵢ with the following branches:
+with ϕᵢ | Pᵢ
+ 0.853553+0.353553im | + _
+ 0.146447-0.353553im | + Z
+
+julia> PauliChannel(Tgate)
+Pauli channel ρ ↦ ∑ ϕᵢⱼ Pᵢ ρ Pⱼ† with the following branches:
+with ϕᵢⱼ | Pᵢ | Pⱼ:
+ 0.853553+0.0im | + _ | + _
+ 0.0+0.353553im | + _ | + Z
+ 0.0-0.353553im | + Z | + _
+ 0.146447+0.0im | + Z | + Z
source
QuantumClifford.VerifyOpType

A "probe" to verify that the state of the qubits corresponds to a desired good_state, e.g. at the end of the execution of a circuit.

source
QuantumClifford.sMRZType

Measure a qubit in the Z basis and reset to the |0⟩ state.

It does not trace out the qubit!

As described below there is a difference between measuring the qubit (followed by setting it to a given known state) and "tracing out" the qubit. By reset here we mean "measuring and setting to a known state", not "tracing out".

julia> s = MixedDestabilizer(S"XXX ZZI IZZ") # |000⟩+|111⟩
+𝒟ℯ𝓈𝓉𝒶𝒷
++ Z__
++ _X_
++ __X
+𝒮𝓉𝒶𝒷━
++ XXX
++ ZZ_
++ Z_Z
+
+julia> traceout!(copy(s), 1) # = I⊗(|00⟩⟨00| + |11⟩⟨11|)
+𝒟ℯ𝓈𝓉𝒶𝒷
++ _X_
+𝒳ₗ━━━
++ _XX
++ Z__
+𝒮𝓉𝒶𝒷━
++ _ZZ
+𝒵ₗ━━━
++ Z_Z
++ XXX
+
+julia> projectZ!(traceout!(copy(s), 1), 1)[1] # = |000⟩⟨000|+|011⟩⟨011| or |100⟩⟨100|+|111⟩⟨111| (use projectZrand! to actually get a random result)
+𝒟ℯ𝓈𝓉𝒶𝒷
++ _X_
++ XXX
+𝒳ₗ━━━
++ _XX
+𝒮𝓉𝒶𝒷━
++ _ZZ
++ Z__
+𝒵ₗ━━━
++ Z_Z
+
+julia> projectZ!(copy(s), 1)[1] # = |000⟩ or |111⟩ (use projectZrand! to actually get a random result)
+𝒟ℯ𝓈𝓉𝒶𝒷
++ XXX
++ _X_
++ __X
+𝒮𝓉𝒶𝒷━
++ Z__
++ ZZ_
++ Z_Z
julia> apply!(Register(copy(s)), sMRZ(1)) |> quantumstate # |000⟩ or |011⟩, depending on randomization
+𝒟ℯ𝓈𝓉𝒶𝒷
++ XXX
++ _X_
++ __X
+𝒮𝓉𝒶𝒷━
++ Z__
+- ZZ_
+- Z_Z

See also: Reset, sMZ

source
QuantumClifford.PauliErrorFunction

A convenient constructor for various types of Pauli errors, that can be used as circuit gates in simulations. Returns more specific types when necessary.

source
QuantumClifford.PauliErrorMethod

"Construct a gate operation that applies a biased Pauli error on all qubits independently, each with probabilities px, py, pz. Note that the probability of any error occurring is px+py+pz. Because of this, PauliError(1, p) is equivalent to PauliError(1,p/3,p/3,p/3). Similarly, if one wanted to exclude Z errors from PauliError(1,p/3,p/3,p/3) while mainting the same rate of X errors, one could write PauliError(1, p*2/3, 0, 0) (in the sense that Y errors can be interpreted as an X and a Z happening at the same time).

source
QuantumClifford.PauliErrorMethod

"Construct a gate operation that applies a biased Pauli error on qubit q with independent probabilities px, py, pz. Note that the probability of any error occurring is px+py+pz. Because of this, PauliError(1, p) is equivalent to PauliError(1,p/3,p/3,p/3). Similarly, if one wanted to exclude Z errors from PauliError(1,p/3,p/3,p/3) while mainting the same rate of X errors, one could write PauliError(1, p*2/3, 0, 0) (in the sense that Y errors can be interpreted as an X and a Z happening at the same time).

source
QuantumClifford.applybranchesFunction

Compute all possible new states after the application of the given operator. Reports the probability of each one of them. Deterministic (as it reports all branches of potentially random processes), part of the Perturbative Expansion interface.

source
QuantumClifford.applynoise!Function

A method modifying a given state by applying the corresponding noise model. It is non-deterministic, part of the Noise interface.

source
QuantumClifford.bellFunction

Prepare one or more Bell pairs (with optional phases).

julia> bell()
++ XX
++ ZZ
+
+julia> bell(2)
++ XX__
++ ZZ__
++ __XX
++ __ZZ
+
+julia> bell((true, false))
+- XX
++ ZZ
+
+julia> bell([true, false, true, true])
+- XX__
++ ZZ__
+- __XX
+- __ZZ
source
QuantumClifford.bigramMethod
bigram(
+    state::QuantumClifford.AbstractStabilizer;
+    clip
+) -> Matrix{Int64}
+

Get the bigram of a tableau.

It is the list of endpoints of a tableau in the clipped gauge.

If clip=true (the default) the tableau is converted to the clipped gauge in-place before calculating the bigram. Otherwise, the clip gauge conversion is skipped (for cases where the input is already known to be in the correct gauge).

Introduced in (Nahum et al., 2017), with a more detailed explanation of the algorithm in (Li et al., 2019) and (Gullans et al., 2021).

See also: canonicalize_clip!

source
QuantumClifford.canonicalize!Method
canonicalize!(
+    state::QuantumClifford.AbstractStabilizer;
+    phases,
+    ranks
+) -> Union{Tuple{QuantumClifford.AbstractStabilizer, Int64, Int64}, QuantumClifford.AbstractStabilizer}
+

Canonicalize a stabilizer (in place).

Assumes the input is a valid stabilizer (all operators commute and have real phases). It permits redundant generators and identity generators.

julia> ghz = S"XXXX
+               ZZII
+               IZZI
+               IIZZ";
+
+
+julia> canonicalize!(ghz)
++ XXXX
++ Z__Z
++ _Z_Z
++ __ZZ
+
+julia> canonicalize!(S"XXXX
+                       IZZI
+                       IIZZ")
++ XXXX
++ _Z_Z
++ __ZZ

Not all rows in the tableau in the next example are independent:

julia> canonicalize!(S"XXXX
+                       ZZII
+                       IZZI
+                       IZIZ
+                       IIZZ")
++ XXXX
++ Z__Z
++ _Z_Z
++ __ZZ
++ ____

In cases of lower rank, more advanced tableau structures might be better. For instance the MixedStabilizer or MixedDestabilizer structures (you can read more about them in the Data Structures section of the documentation).

If phases=false is set, the canonicalization does not track the phases in the tableau, leading to significant (constant factor) speedup.

julia> s = S"-ZX
+              XZ"
+- ZX
++ XZ
+
+julia> canonicalize!(copy(s), phases=false)
+- XZ
++ ZX
+
+julia> canonicalize!(copy(s))
++ XZ
+- ZX

If ranks=true is set, the last pivot indices for the X and Z stage of the canonicalization are returned as well.

julia> s = S"XXXX
+             ZZII
+             IZIZ
+             ZIIZ";
+
+
+julia> _, ix, iz = canonicalize!(s, ranks=true); ix, iz
+(1, 3)
+
+julia> s
++ XXXX
++ Z__Z
++ _Z_Z
++ ____

Based on (Garcia et al., 2012).

See also: canonicalize_rref!, canonicalize_gott!

source
QuantumClifford.canonicalize_clip!Method
canonicalize_clip!(
+    state::QuantumClifford.AbstractStabilizer;
+    phases
+) -> QuantumClifford.AbstractStabilizer
+

Fix the clipped gauge of a stabilizer (in place).

Assumes the input is a valid full-rank stabilizer (all operators commute and have real phases).

julia> s = S"- X_ZX_X
+             + XXYZ__
+             - YZ_Z_X
+             - XZX__Y
+             + _Z_Y_Y
+             - ____Z_";
+
+
+julia> canonicalize_clip!(s)
+- X_XY__
++ YZY___
++ _XZX__
+- _ZYX_Z
+- __YZ_X
+- ____Z_

If phases=false is set, the canonicalization does not track the phases in the tableau, leading to a significant speedup.

Introduced in (Nahum et al., 2017), with a more detailed explanation of the algorithm in Appendix A of (Li et al., 2019)

See also: canonicalize!, canonicalize_rref!, canonicalize_gott!.

source
QuantumClifford.canonicalize_gott!Method

Inplace Gottesman canonicalization of a tableau.

This uses different canonical form from canonicalize!. It is used in the computation of the logical X and Z operators of a MixedDestabilizer.

It returns the (in place) modified state, the indices of the last pivot of both Gaussian elimination steps, and the permutations that have been used to put the X and Z tableaux in standard form.

Based on (Gottesman, 1997).

See also: canonicalize!, canonicalize_rref!

source
QuantumClifford.canonicalize_rref!Method
canonicalize_rref!(
+    state::QuantumClifford.AbstractStabilizer,
+    colindices;
+    phases
+) -> Tuple{QuantumClifford.AbstractStabilizer, Any}
+

Canonicalize a stabilizer (in place) along only some columns.

This uses different canonical form from canonicalize!. It also indexes in reverse in order to make its use in traceout! more efficient. Its use in traceout! is its main application.

It returns the (in place) modified state and the index of the last pivot.

Based on (Audenaert and Plenio, 2005).

See also: canonicalize!, canonicalize_gott!

source
QuantumClifford.centralizerMethod

For a given set of Paulis (in the form of a Tableau), return the subset of Paulis that commute with all Paulis in set.

julia> centralizer(T"XX ZZ _Z")
++ ZZ
source
QuantumClifford.clifford_cardinalityMethod

The size of the Clifford group 𝒞 over a given number of qubits, possibly modulo the phases.

For n qubits, not accounting for phases is 2ⁿⁿΠⱼ₌₁ⁿ(4ʲ-1). There are 4ⁿ different phase configurations.

julia> clifford_cardinality(7)
+457620995529680351512370381586432000

When not accounting for phases (phases = false) the result is the same as the size of the Symplectic group Sp(2n) ≡ 𝒞ₙ/𝒫ₙ, where 𝒫ₙ is the Pauli group over n qubits.

julia> clifford_cardinality(7, phases=false)
+27930968965434591767112450048000

See also: enumerate_cliffords.

source
QuantumClifford.commFunction

Check whether two operators commute.

0x0 if they commute, 0x1 if they anticommute.

julia> P"XX"*P"ZZ", P"ZZ"*P"XX"
+(- YY, - YY)
+
+julia> comm(P"ZZ", P"XX")
+0x00
+
+julia> comm(P"IZ", P"XX")
+0x01

See also: comm!

source
QuantumClifford.compactify_circuitMethod

Convert a list of gates to a more optimized "sum type" format which permits faster dispatch.

Generally, this should be called on a circuit before it is used in a simulation.

source
QuantumClifford.contractorMethod

Return the subset of Paulis in a Stabilizer that have identity operators on all qubits corresponding to the given subset, without the entries corresponding to subset.

julia> contractor(S"_X X_", [1])
++ X
source
QuantumClifford.delete_columnsMethod

Return the given stabilizer without all the qubits in the given iterable.

The resulting tableaux is not guaranteed to be valid (to retain its commutation relationships).

julia> delete_columns(S"XYZ YZX ZXY", [1,3])
++ Y
++ Z
++ X

See also: traceout!

source
QuantumClifford.enumerate_single_qubit_gatesMethod

Generate a symbolic single-qubit gate given its index. Optionally, set non-trivial phases.

julia> enumerate_single_qubit_gates(6)
+sPhase on qubit 1
+X₁ ⟼ + Y
+Z₁ ⟼ + Z
+
+julia> enumerate_single_qubit_gates(6, qubit=2, phases=(true, true))
+SingleQubitOperator on qubit 2
+X₁ ⟼ - Y
+Z₁ ⟼ - Z

See also: enumerate_cliffords.

source
QuantumClifford.fastcolumnFunction

Convert a tableau to a memory layout that is fast for column operations.

In this layout a column of the tableau is stored (mostly) contiguously in memory. Due to bitpacking, e.g., packing 64 bits into a single UInt64, the memory layout is not perfectly contiguous, but it is still optimal given that some bitwrangling is required to extract a given bit.

See also: fastrow

source
QuantumClifford.fastrowFunction

Convert a tableau to a memory layout that is fast for row operations.

In this layout a Pauli string (a row of the tableau) is stored contiguously in memory.

See also: fastrow

source
QuantumClifford.generate!Method

Generate a Pauli operator by using operators from a given the Stabilizer.

It assumes the stabilizer is already canonicalized. It modifies the Pauli operator in place, generating it in reverse, up to a phase. That phase is left in the modified operator, which should be the identity up to a phase. Returns the new operator and the list of indices denoting the elements of stabilizer that were used for the generation.

julia> ghz = S"XXXX
+               ZZII
+               IZZI
+               IIZZ";
+
+
+julia> canonicalize!(ghz)
++ XXXX
++ Z__Z
++ _Z_Z
++ __ZZ
+
+julia> generate!(P"-ZIZI", ghz)
+(- ____, [2, 4])

When the Pauli operator can not be generated by the given tableau, nothing is returned.

julia> generate!(P"XII",canonicalize!(S"ZII")) === nothing
+true
+
+julia> generate!(P"XII",canonicalize!(S"XII")) === nothing
+false
source
QuantumClifford.ghzFunction

Prepare a GHZ state of n qubits.

julia> ghz()
++ XXX
++ ZZ_
++ _ZZ
+
+julia> ghz(2)
++ XX
++ ZZ
+
+julia> ghz(4)
++ XXXX
++ ZZ__
++ _ZZ_
++ __ZZ
source
QuantumClifford.graph_gateMethod

A helper function converting the gate indices from graphstate into a Clifford operator.

julia> s = S" XXX
+              YZ_
+             -_ZZ";
+
+
+julia> graph, h_idx, ip_idx, z_idx = graphstate(s);
+
+
+julia> gate = graph_gate(h_idx, ip_idx, z_idx, nqubits(s));
+
+
+julia> apply!(s, gate) # This is now a graph state (notice you need to multiply row 1 by row 2)
++ YYZ
++ XZ_
++ _ZX
+
+julia> canonicalize!(s) == canonicalize!(Stabilizer(graph))
+true

See also: graph_gatesequence

source
QuantumClifford.graph_gatesequenceMethod

A helper function converting the gate indices from graphstate into a sequence of gates.

julia> s = S" XXX
+              YZ_
+             -_ZZ";
+
+
+julia> graph, h_idx, ip_idx, z_idx = graphstate(s);
+
+
+julia> gates = graph_gatesequence(h_idx, ip_idx, z_idx);
+
+
+julia> for gate in vcat(gates...) apply!(s, gate) end
+
+
+julia> s # This is now a graph state (notice you need to multiply row 1 by row 2)
++ YYZ
++ XZ_
++ _ZX
+
+julia> canonicalize!(s) == canonicalize!(Stabilizer(graph))
+true

See also: graph_gatesequence

source
QuantumClifford.graphstateMethod

Convert any stabilizer state to a graph state

Graph states are a special type of entangled stabilizer states that can be represented by a graph. For a graph $G=(V,E)$ the corresponding stabilizers are $S_v = X_v \prod_{u ∈ N(v)} Z_u$. Notice that such tableau rows contain only a single X operator. There is a set of single qubit gates that converts any stabilizer state to a graph state.

This function returns the graph state corresponding to a stabilizer and the gates that might be necessary to convert the stabilizer into a state representable as a graph.

For a tableau stab you can convert it with:

graph, hadamard_idx, iphase_idx, flips_idx = graphstate()

where graph is the graph representation of stab, and the rest specifies the single-qubit gates converting stab to graph: hadamard_idx are the qubits that require a Hadamard gate (mapping X ↔ Z), iphase_idx are (different) qubits that require an inverse Phase gate (Y → X), and flips_idx are the qubits that require a phase flip (Pauli Z gate), after the previous two sets of gates.

julia> using Graphs
+
+julia> s = S" XXX
+              ZZ_
+             -_ZZ";
+
+
+julia> g, h_idx, ip_idx, z_idx = graphstate(s);
+
+
+julia> collect(edges(g))
+2-element Vector{Graphs.SimpleGraphs.SimpleEdge{Int64}}:
+ Edge 1 => 2
+ Edge 1 => 3
+
+julia> h_idx
+2-element Vector{Int64}:
+ 2
+ 3
+
+julia> ip_idx
+Int64[]
+
+julia> z_idx
+1-element Vector{Int64}:
+ 3

The Graphs.jl library provides many graph-theory tools and the MakieGraphs.jl library provides plotting utilities for graphs.

You can directly call the graph constructor on a stabilizer, if you just want the graph and do not care about the Clifford operation necessary to convert an arbitrary state to a state representable as a graph:

julia> collect(edges( Graph(bell()) ))
+1-element Vector{Graphs.SimpleGraphs.SimpleEdge{Int64}}:
+ Edge 1 => 2

For a version that does not copy the stabilizer, but rather performs transformations in-place, use graphstate!. It would perform canonicalize_gott! on its argument as it finds a way to convert it to a graph state.

source
QuantumClifford.groupifyMethod

Return the full stabilizer group represented by the input generating set (a Stabilizer).

The returned object is exponentially long.

julia> groupify(S"XZ ZX")
++ __
++ XZ
++ ZX
++ YY
source
QuantumClifford.logdotMethod

Logarithm of the inner product between to Stabilizer states.

If the result is nothing, the dot inner product is zero. Otherwise the inner product is 2^(-logdot/2).

The actual inner product can be computed with LinearAlgebra.dot.

Based on (Garcia et al., 2012).

source
QuantumClifford.minimal_generating_setMethod

For a not-necessarily-minimal generating set, return the minimal generating set.

The input has to have only real phases.

julia> minimal_generating_set(S"__ XZ ZX YY")
++ XZ
++ ZX
source
QuantumClifford.normalizerMethod

Return all Pauli operators with the same number of qubits as the given Tableau t that commute with all operators in t.

julia> normalizer(T"X")
++ _
++ X
source
QuantumClifford.pauligroupMethod

Return the full Pauli group of a given length. Phases are ignored by default, but can be included by setting phases=true.

julia> pauligroup(1)
++ _
++ X
++ Z
++ Y
+
+julia> pauligroup(1, phases=true)
++ _
++ X
++ Z
++ Y
+- _
+- X
+- Z
+- Y
++i_
++iX
++iZ
++iY
+-i_
+-iX
+-iZ
+-iY
source
QuantumClifford.pfmeasurementsMethod
pfmeasurements(frame::PauliFrame) -> Any
+

Returns the measurement results for each frame in the PauliFrame instance.

Relative measurements

The return measurements are relative to the reference measurements, i.e. they only say whether the reference measurements have been flipped in the given frame.

source
QuantumClifford.pfmeasurementsMethod
pfmeasurements(register::Register, frame::PauliFrame) -> Any
+

Takes the references measurements from the given Register and applies the flips as prescribed by the PauliFrame relative measurements. The result is the actual (non-relative) measurement results for each frame.

source
QuantumClifford.pftrajectoriesMethod
pftrajectories(
+    circuit;
+    trajectories,
+    threads
+) -> PauliFrame{Stabilizer{QuantumClifford.Tableau{Vector{UInt8}, LinearAlgebra.Adjoint{UInt64, Matrix{UInt64}}}}, Matrix{Bool}}
+

The main method for running Pauli frame simulations of circuits. See the other methods for lower level access.

Multithreading is enabled by default, but can be disabled by setting threads=false. Do not forget to launch Julia with multiple threads enabled, e.g. julia -t4, if you want to use multithreading.

See also: mctrajectories, petrajectories

source
QuantumClifford.pftrajectoriesMethod
pftrajectories(
+    register::Register,
+    circuit;
+    trajectories
+) -> Tuple{Register, PauliFrame{Stabilizer{QuantumClifford.Tableau{Vector{UInt8}, LinearAlgebra.Adjoint{UInt64, Matrix{UInt64}}}}, Matrix{Bool}}}
+

For a given Register and circuit, simulates the reference circuit acting on the register and then also simulate numerous PauliFrame trajectories. Returns the register and the PauliFrame instance.

Use pfmeasurements to get the measurement results.

source
QuantumClifford.phasesMethod

The phases of a given tableau. It is a view, i.e. if you modify this array, the original tableau caries these changes.

source
QuantumClifford.prodphaseMethod

Get the phase of the product of two Pauli operators.

Phase is encoded as F(4) in the low qubits of an UInt8.

julia> P"ZZZ"*P"XXX"
+-iYYY
+
+julia> prodphase(P"ZZZ", P"XXX")
+0x03
+
+julia> prodphase(P"XXX", P"ZZZ")
+0x01
source
QuantumClifford.random_brickwork_clifford_circuitMethod

Random brickwork Clifford circuit.

The connectivity of the random circuit is brickwork in some dimensions. Each gate in the circuit is a random 2-qubit Clifford gate.

The brickwork is defined as follows: The qubits are arranged as a lattice, and lattice_size contains side length in each dimension. For example, a chain of length five will have lattice_size = (5,), and a 5×5 lattice will have lattice_size = (5, 5).

In multi-dimensional cases, gate layers act alternatively along each direction. The nearest two layers along the same direction are offset by one qubit, forming a so-called brickwork. The boundary condition is chosen as open.

source
QuantumClifford.random_pauliFunction

A random Pauli operator on n qubits.

Use nophase=false to randomize the phase. Use realphase=false to get operators with phases including ±i.

Optionally, a "flip" probability p can be provided specified, in which case each bit is set to I with probability 1-p and to X or Y or Z with probability p. Useful for simulating unbiased Pauli noise.

See also random_pauli!

source
QuantumClifford.stabilizerplotFunction

A Makie.jl recipe for pictorial representation of a tableau.

Requires a Makie.jl backend to be loaded, e.g. using CairoMakie.

Alternatively, you can use the Plots.jl plotting ecosystem, e.g. using Plots; plot(S"XXX ZZZ").

Consult the documentation for more details on visualization options.

source
QuantumClifford.stabilizerplot_axisFunction

A Makie.jl recipe for pictorial representation of a tableau.

Requires a Makie.jl backend to be loaded, e.g. using CairoMakie.

Alternatively, you can use the Plots.jl plotting ecosystem, e.g. using Plots; plot(S"XXX ZZZ").

Consult the documentation for more details on visualization options.

source
QuantumClifford.tabMethod

Extract the underlying tableau structure.

julia> s = S"X"
++ X
+
+julia> tab(s)
++ X
+
+julia> tab(Destabilizer(s))
++ Z
++ X
+
+julia> tab(MixedDestabilizer(s))
++ Z
++ X
+
+julia> tab(tHadamard)
++ Z
++ X
+
+julia> typeof(tab(tHadamard))
+QuantumClifford.Tableau{Vector{UInt8}, Matrix{UInt64}}

See also: stabilizerview, destabilizerview, logicalxview, logicalzview

source
QuantumClifford.xbitMethod

Extract as a new bit array the X part of the UInt array of packed qubits of a given Pauli operator.

source
QuantumClifford.zbitMethod

Extract as a new bit array the Z part of the UInt array of packed qubits of a given Pauli operator.

source
QuantumInterface.apply!Function

In QuantumClifford the apply! function is used to apply any quantum operation to a stabilizer state, including unitary Clifford operations, Pauli measurements, and noise. Thus, this function may result in a random/stochastic result (e.g. with measurements or noise).

source
QuantumInterface.embedMethod

Embed a Pauli operator in a larger Pauli operator.

julia> embed(5, 3, P"-Y")
+- __Y__
+
+julia> embed(5, (3,5), P"-YX")
+- __Y_X
source
QuantumInterface.entanglement_entropyFunction

Get bipartite entanglement entropy of a subsystem

Defined as entropy of the reduced density matrix.

It can be calculated with multiple different algorithms, the most performant one depending on the particular case.

Currently implemented are the :clip (clipped gauge), :graph (graph state), and :rref (Gaussian elimination) algorithms. Benchmark your particular case to choose the best one.

source
QuantumInterface.entanglement_entropyMethod

Get bipartite entanglement entropy by first converting the state to a graph and computing the rank of the adjacency matrix.

Based on "Entanglement in graph states and its applications".

source
QuantumInterface.expectMethod
expect(p::PauliOperator, st::AbstractStabilizer)

Compute the expectation value of a Pauli operator p on a stabilizer state st. This function will allocate a temporary copy of the stabilizer state st.

source
QuantumInterface.project!Method
project!(
+    state,
+    pauli::PauliOperator;
+    keep_result,
+    phases
+) -> Tuple{MixedStabilizer, Any, Any}
+

Project the state of a Stabilizer on the two eigenspaces of a Pauli operator.

Assumes the input is a valid stabilizer. The projection is done inplace on that stabilizer and it does not modify the projection operator.

It returns

  • a stabilizer that might not be in canonical form
  • the index of the row where the non-commuting operator was (that row is now equal to pauli; its phase is not updated and for a faithful measurement simulation it needs to be randomized by the user)
  • and the result of the projection if there was no non-commuting operator (nothing otherwise)

If keep_result==false that result of the projection in case of anticommutation is not computed, sparing a canonicalization operation. This canonicalization operation is the only one potentially of cubic complexity. The rest of the calculations are of quadratic complexity.

If you need to measure a single qubit instead of a multiqubit Pauli operator, the faster projectX!, projectY!, and projectZ! are available.

For less boilerplate and automatic randomization of the phase use projectrand!.

Here is an example of a projection destroying entanglement:

julia> ghz = S"XXXX
+               ZZII
+               IZZI
+               IIZZ";
+
+
+julia> canonicalize!(ghz)
++ XXXX
++ Z__Z
++ _Z_Z
++ __ZZ
+
+julia> state, anticom_index, result = project!(ghz, P"ZIII");
+
+
+julia> state
++ Z___
++ Z__Z
++ _Z_Z
++ __ZZ
+
+julia> canonicalize!(state)
++ Z___
++ _Z__
++ __Z_
++ ___Z
+
+julia> anticom_index, result
+(1, nothing)

And an example of projection consistent with the stabilizer state.

julia> s = S"ZII
+             IXI
+             IIY";
+
+
+julia> canonicalize!(s)
++ _X_
++ __Y
++ Z__
+
+julia> state, anticom_index, result = project!(s, P"-ZII");
+
+
+julia> state
++ _X_
++ __Y
++ Z__
+
+julia> anticom_index, result
+(0, 0x02)

While not the best choice, Stabilizer can be used for mixed states, simply by providing an incomplete tableau. In that case it is possible to attempt to project on an operator that can not be generated by the provided stabilizer operators. In that case we have anticom_index==rank and result===nothing, where rank is the the new rank of the tableau, one more than the number of rows in the initial tableau. However, if keep_result was set to false, then anticom_index would stay at zero.

julia> s = S"XZI
+             IZI";
+
+
+julia> project!(s, P"IIX")[1]
++ X__
++ _Z_

If we had used MixedStabilizer we would have added the projector to the list of stabilizers.

julia> s = one(MixedStabilizer, 2, 3)
++ Z__
++ _Z_
+
+julia> project!(s, P"IIX")[1]
++ Z__
++ _Z_
++ __X

However, MixedDestabilizer would be an even better choice as it has $\mathcal{O}(n^2)$ complexity instead of the $\mathcal{O}(n^3)$ complexity of *Stabilizer.

julia> s = one(MixedDestabilizer, 2, 3)
+𝒟ℯ𝓈𝓉𝒶𝒷
++ X__
++ _X_
+𝒳ₗ━━━
++ __X
+𝒮𝓉𝒶𝒷━
++ Z__
++ _Z_
+𝒵ₗ━━━
++ __Z
+
+julia> project!(s, P"IIX")[1]
+𝒟ℯ𝓈𝓉𝒶𝒷
++ X__
++ _X_
++ __Z
+𝒮𝓉𝒶𝒷━
++ Z__
++ _Z_
++ __X

See the "Datastructure Choice" section in the documentation for more details.

See also: projectX!, projectY!, projectZ!, projectrand!

source
QuantumInterface.project!Method
project!(
+    state::MixedStabilizer,
+    pauli::PauliOperator;
+    phases
+) -> Tuple{MixedStabilizer, Any, Any}
+

When using project! on MixedStabilizer it automates some of the extra steps we encounter when implicitly using the Stabilizer datastructure to represent mixed states. Namely, it helps when the projector is not among the list of stabilizers:

julia> s = S"XZI
+             IZI";
+
+
+julia> ms = MixedStabilizer(s)
++ X__
++ _Z_
+
+julia> project!(ms, P"IIY")[1]
++ X__
++ _Z_
++ __Y

Similarly to project! on Stabilizer, this function has cubic complexity when the Pauli operator commutes with all rows of the tableau. Most of the time it is better to simply use MixedDestabilizer representation.

Unlike other project! methods, this one does not allow for keep_result=false, as the correct rank or anticommutation index can not be calculated without the expensive (cubic) canonicalization operation required by keep_result=true.

See the "Datastructure Choice" section in the documentation for more details.

See also: projectX!, projectY!, projectZ!.

source
QuantumInterface.reset_qubits!Method
reset_qubits!(
+    s::Stabilizer,
+    newstate,
+    qubits;
+    phases
+) -> Union{PauliOperator, Stabilizer}
+

Reset a given set of qubits to be in the state newstate. These qubits are traced out first, which could lead to "nonlocal" changes in the tableau.

source
QuantumInterface.tensorFunction

Tensor product between operators or tableaux.

Tensor product between CiffordOperators:

julia> tensor(CliffordOperator(sCNOT), CliffordOperator(sCNOT))
+X₁ ⟼ + XX__
+X₂ ⟼ + _X__
+X₃ ⟼ + __XX
+X₄ ⟼ + ___X
+Z₁ ⟼ + Z___
+Z₂ ⟼ + ZZ__
+Z₃ ⟼ + __Z_
+Z₄ ⟼ + __ZZ

Tensor product between PauliOperators:

julia> tensor(P"-IXYZ", P"iIXYZ")
+-i_XYZ_XYZ

Tensor product between Tableaux:

julia> s = S"-XX
+             +ZZ";
+
+julia> tensor(s, s, s)
+- XX____
++ ZZ____
+- __XX__
++ __ZZ__
+- ____XX
++ ____ZZ
+
+julia> s = S"+XZI
+             -IZI";
+
+julia> tensor(s, s)
++ XZ____
+- _Z____
++ ___XZ_
+- ____Z_

See also tensor_pow.

source
QuantumInterface.tensor_powMethod

Repeated tensor product of an operators or a tableau.

For CliffordOperator:

julia> tensor_pow(CliffordOperator(sHadamard), 3)
+X₁ ⟼ + Z__
+X₂ ⟼ + _Z_
+X₃ ⟼ + __Z
+Z₁ ⟼ + X__
+Z₂ ⟼ + _X_
+Z₃ ⟼ + __X

For PauliOperator:

julia> tensor_pow(P"IXYZ", 2)
++ _XYZ_XYZ

For Tableaux:

julia> tensor_pow(S"Z", 4)
++ Z___
++ _Z__
++ __Z_
++ ___Z
+
+julia> s = S"+XZI
+             +IZI";
+
+julia> tensor_pow(s, 3)
++ XZ_______
++ _Z_______
++ ___XZ____
++ ____Z____
++ ______XZ_
++ _______Z_

See also tensor.

source
QuantumInterface.traceout!Method
traceout!(
+    s::Union{MixedDestabilizer, MixedStabilizer},
+    qubits;
+    phases,
+    rank
+) -> Union{Tuple{Union{MixedDestabilizer, MixedStabilizer}, Any}, MixedDestabilizer, MixedStabilizer}
+
source

Private API

Private Implementation Details

These functions are used internally by the library and might be drastically modified or deleted without warning or deprecation.

QuantumClifford.TableauType

Internal Tableau type for storing a list of Pauli operators in a compact form. No special semantic meaning is attached to this type, it is just a convenient way to store a list of Pauli operators. E.g. it is not used to represent a stabilizer state, or a stabilizer group, or a Clifford circuit.

source
Base.hcatMethod

Horizontally concatenates tableaux.

julia> hcat(ghz(2), ghz(2))
++ XXXX
++ ZZZZ

See also: vcat

source
Base.invMethod
inv(
+    c::CliffordOperator;
+    phases
+) -> CliffordOperator{QuantumClifford.Tableau{Vector{UInt8}, Matrix{UInt64}}}
+

Inverse of a CliffordOperator

julia> inv(CliffordOperator(sCNOT))
+X₁ ⟼ + XX
+X₂ ⟼ + _X
+Z₁ ⟼ + Z_
+Z₂ ⟼ + ZZ
+
+julia> inv(CliffordOperator(sCNOT(2, 1), 2))
+X₁ ⟼ + X_
+X₂ ⟼ + XX
+Z₁ ⟼ + ZZ
+Z₂ ⟼ + _Z
+
+julia> inv(CliffordOperator(tHadamard))
+X₁ ⟼ + Z
+Z₁ ⟼ + X
source
Base.vcatMethod

Vertically concatenates tableaux.

julia> vcat(ghz(2), ghz(2))
++ XX
++ ZZ
++ XX
++ ZZ

See also: hcat

source
QuantumClifford._remove_rowcol!Method

Unexported low-level function that removes a row (by shifting all rows up as necessary)

Because MixedDestabilizer is not mutable we return a new MixedDestabilizer with the same (modified) xzs array.

Used on its own, this function will break invariants. Meant to be used with projectremove!.

source
QuantumClifford._rowmove!Method

Unexported low-level function that moves row i to row j.

Used on its own, this function will break invariants. Meant to be used in _remove_rowcol!.

source
QuantumClifford.applynoise_branchesFunction

Compute all possible new states after the application of the given noise model. Reports the probability of each one of them. Deterministic (as it reports all branches of potentially random processes), part of the Noise interface.

source
QuantumClifford.initZ!Method
initZ!(frame::PauliFrame) -> PauliFrame
+

Inject random Z errors over all frames and qubits for the supplied PauliFrame with probability 0.5.

Calling this after initialization is essential for simulating any non-deterministic circuit. It is done automatically by most PauliFrame constructors.

source
QuantumClifford.make_sumtype_methodFunction

``` julia> makesumtypemethod([sCNOT], :apply!, (:s,)) quote function QuantumClifford.apply!(s, g::CompactifiedGate) @cases g begin sCNOT(q1, q2) => apply!(s, sCNOT(q1, q2)) end end end

source
QuantumClifford.projectremoverand!Method

Unexported low-level function that projects a qubit and returns the result while making the tableau smaller by a qubit.

Because MixedDestabilizer is not mutable we return a new MixedDestabilizer with the same (modified) xzs array.

source
QuantumClifford.remove_column!Method

Unexported low-level function that removes a column (by shifting all columns to the right of the target by one step to the left)

Because Tableau is not mutable we return a new Tableau with the same (modified) xzs array.

source
QuantumClifford.rowdecomposeMethod

Decompose a Pauli $P$ in terms of stabilizer and destabilizer rows from a given tableaux.

For given tableaux of rows destabilizer rows $\{d_i\}$ and stabilizer rows $\{s_i\}$, there are boolean vectors $b$ and $c$ such that $P = i^p \prod_i d_i^{b_i} \prod_i s_i^{c_i}$.

This function returns p, b, c.

julia> s = MixedDestabilizer(ghz(2))
+𝒟ℯ𝓈𝓉𝒶𝒷
++ Z_
++ _X
+𝒮𝓉𝒶𝒷
++ XX
++ ZZ
+
+julia> phase, destab_rows, stab_rows = QuantumClifford.rowdecompose(P"XY", s)
+(3, Bool[1, 0], Bool[1, 1])
+
+julia> im^3 * P"Z_" * P"XX" * P"ZZ"
++ XY
source
QuantumClifford.to_cpuFunction

copies the memory content of the object to CPU

You can only use this function if CUDA.jl is imported

For more advanced users to_cpu(data, element_type) will reinterpret elements of data and converts them to element_type. For example based on your CPU architecture, if working with matrices of UInt32 is faster than UInt64, you can use to_cpu(data, UInt32)

julia> using QuantumClifford: to_cpu, to_gpu
+
+julia> using CUDA # without this import, to_cpu, to_gpu are just function
+
+julia> stab = S"- X_Z\n+ _ZZ\n+ __Z"
+- X_Z
++ _ZZ
++ __Z
+
+julia> stab_gpu = to_gpu(stab);
+
+julia> apply!(stab_gpu, sHadamard(1));
+
+julia> stab_result_cpu = to_cpu(stab_gpu)
+- Z_Z
++ _ZZ
++ __Z
julia> using QuantumClifford: to_cpu, to_gpu
+
+julia> using CUDA # without this import, to_cpu, to_gpu are just function
+
+julia> pf_gpu = to_gpu(PauliFrame(1000, 2, 2));
+julia> circuit = [sMZ(1, 1), sHadamard(2), sMZ(2, 2)];
+julia> pftrajectories(pf_gpu, circuit);
+julia> measurements = to_cpu(pf_gpu.measurements);

See also: to_gpu

source
QuantumClifford.to_gpuFunction

copies the memory content of the object to GPU

You can only use this function if CUDA.jl is imported

For more advanced users to_gpu(data, element_type) will reinterpret elements of data and converts them to element_type. For example based on your GPU architecture, if working with matrices of UInt64 is faster than UInt32, you can use to_gpu(data, UInt64)

julia> using QuantumClifford: to_cpu, to_gpu
+
+julia> using CUDA # without this import, to_cpu, to_gpu are just function
+
+julia> stab = S"- X_Z\n+ _ZZ\n+ __Z"
+- X_Z
++ _ZZ
++ __Z
+
+julia> stab_gpu = to_gpu(stab);
+
+julia> apply!(stab_gpu, sHadamard(1));
+
+julia> stab_result_cpu = to_cpu(stab_gpu)
+- Z_Z
++ _ZZ
++ __Z
julia> using QuantumClifford: to_cpu, to_gpu
+
+julia> using CUDA # without this import, to_cpu, to_gpu are just function
+
+julia> pf_gpu = to_gpu(PauliFrame(1000, 2, 2));
+julia> circuit = [sMZ(1, 1), sHadamard(2), sMZ(2, 2)];
+julia> pftrajectories(pf_gpu, circuit);
+julia> measurements = to_cpu(pf_gpu.measurements);

See also: to_cpu

source
diff --git a/v0.9.12/ECC_API/index.html b/v0.9.12/ECC_API/index.html new file mode 100644 index 000000000..8400910bf --- /dev/null +++ b/v0.9.12/ECC_API/index.html @@ -0,0 +1,190 @@ + +API · QuantumClifford.jl

Full ECC API (autogenerated)

QuantumClifford.ECC.CSSType

An arbitrary CSS error correcting code defined by its X and Z checks.

julia> CSS([0 1 1 0; 1 1 0 0], [1 1 1 1]) |> parity_checks
++ _XX_
++ XX__
++ ZZZZ
source
QuantumClifford.ECC.ConcatType

Concat(c₁, c₂) is a code concatenation of two quantum codes (Knill and Laflamme, 1996).

The inner code c₁ and the outer code c₂. The construction is the following: replace each qubit in code c₂ with logical qubits encoded by code c₁. The resulting code will have n = n₁ × n₂ qubits and k = k₁ × k₂ logical qubits.

source
QuantumClifford.ECC.QuantumReedMullerType

The family of [[2ᵐ - 1, 1, 3]] CSS Quantum-Reed-Muller codes, as discovered by Steane in his 1999 paper (Steane, 1999).

Quantum codes are constructed from shortened Reed-Muller codes RM(1, m), by removing the first row and column of the generator matrix Gₘ. Similarly, we can define truncated dual codes RM(m - 2, m) using the generator matrix Hₘ (Anderson et al., 2014). The quantum Reed-Muller codes QRM(m) derived from RM(1, m) are CSS codes.

Given that the stabilizers of the quantum code are defined through the generator matrix of the classical code, the minimum distance of the quantum code corresponds to the minimum distance of the dual classical code, which is d = 3, thus it can correct any single qubit error. Since one stabilizer from the original and one from the dual code are removed in the truncation process, the code parameters are [[2ᵐ - 1, 1, 3]].

You might be interested in consulting (Anderson et al., 2014) and (Campbell et al., 2012) as well.

The ECC Zoo has an entry for this family.

source
QuantumClifford.ECC.ShorSyndromeECCSetupType

Configuration for ECC evaluators that simulate the Shor-style syndrome measurement (without a flag qubit).

The simulated circuit includes:

  • perfect noiseless encoding (encoding and its fault tolerance are not being studied here)
  • one round of "memory noise" after the encoding but before the syndrome measurement
  • perfect preparation of entangled ancillary qubits
  • noisy Shor-style syndrome measurement (only two-qubit gate noise)
  • noiseless "logical state measurement" (providing the comparison data when evaluating the decoder)

See also: CommutationCheckECCSetup, NaiveSyndromeECCSetup

source
QuantumClifford.ECC.SurfaceType

The planar surface code refers to the code (Kitaev, 2003) in a 2D lattice with open boundaries.

Illustration of a 3×2 surface code, where qubits are located on the edges:

|---1--(Z)--2---|---3---|
+|  (X)  7       8       o
+|---4---|---5---|---6---|
+|       o       o       o
+|       |       |       |

The surface code has open boundary conditions, unlike the toric code. To this end, we remove qubits (denoted by "o") and parity checks on the right and bottom sides.

Faces like (1,4,7) have X checks, and crosses like (1,2,7) have Z checks. Due to the removal of the bottom and right sides, we have some 3-qubit checks on the boundaries.

julia> parity_checks(Surface(3,2))
++ X__X__X_
++ _X__X_XX
++ __X__X_X
++ ZZ____Z_
++ _ZZ____Z
++ ___ZZ_Z_
++ ____ZZ_Z

More information can be seen in (Fowler et al., 2012).

source
QuantumClifford.ECC.TableDecoderType

A simple look-up table decoder for error correcting codes.

The lookup table contains only weight=1 errors, thus it is small, but at best it provides only for distance=3 decoding.

The size of the lookup table would grow exponentially quickly for higher distances.

source
QuantumClifford.ECC.ToricType

The Toric code (Kitaev, 2003).

Illustration of a 2x2 toric code, where qubits are located on the edges:

|--1-(Z)-2--|
+| (X) 5     6
+|--3--|--4--|
+|     7     8
+|     |     |

It is important to note that the toric code has periodic boundary conditions, which means that the top and bottom sides are essentially glued together, as are the left and right sides.

Faces like (1,3,5,6) have X checks, and crosses like (1,2,5,7) have Z checks.

julia> parity_checks(Toric(2,2))
++ X_X_XX__
++ _X_XXX__
++ X_X___XX
++ ZZ__Z_Z_
++ ZZ___Z_Z
++ __ZZZ_Z_
source
QuantumClifford.ECC.code_kMethod

The number of logical qubits in a code.

Note that when redundant rows exist in the parity check matrix, the number of logical qubits code_k(c) will be greater than code_n(c) - code_s(c), where the difference equals the redundancy.

source
QuantumClifford.ECC.code_sFunction

The number of stabilizer checks in a code. They might not be all linearly independent, thus code_s >= code_n-code_k. For the number of linearly independent checks you can use LinearAlgebra.rank.

source
QuantumClifford.ECC.evaluate_decoderMethod

Evaluate the performance of an error-correcting circuit.

This method requires you give the circuit that performs both syndrome measurements and (probably noiseless) logical state measurements. The faults matrix that translates an error vector into corresponding logical errors is necessary as well.

This is a relatively barebones method that assumes the user prepares necessary circuits, etc. It is a method that is used internally by more user-frienly methods providing automatic conversion of codes and noise models to the necessary noisy circuits.

source
QuantumClifford.ECC.faults_matrixMethod

Error-to-logical-observable map (a.k.a. fault matrix) of a code.

For a code with n physical qubits and k logical qubits this function returns a 2k × 2n binary matrix O such that O[i,j] is true if the logical observable of index i is flipped by the single physical qubit error of index j. Indexing is such that:

  • O[1:k,:] is the error-to-logical-X-observable map (logical X observable, i.e. triggered by logical Z errors)
  • O[k+1:2k,:] is the error-to-logical-Z-observable map
  • O[:,1:n] is the X-physical-error-to-logical-observable map
  • O[n+1:2n,:] is the Z-physical-error-to-logical-observable map

E.g. for k=1, n=10, then if O[2,5] is true, then the logical Z observable is flipped by a X₅ error; and if O[1,12] is true, then the logical X observable is flipped by a Z₂ error.

Of note is that there is a lot of freedom in choosing the logical operations! A logical operator multiplied by a stabilizer operator is still a logical operator. Similarly there is a different fault matrix for each choice of logical operators. But once the logical operators are picked, the fault matrix is fixed.

Below we show an example that uses the Shor code. While it is not the smallest code, it is a convenient choice to showcase the importance of the fault matrix when dealing with degenerate codes where a correction operation and an error do not need to be the same.

First, consider a single-qubit error, potential correction operations, and their effect on the Shor code:

julia> using QuantumClifford.ECC: faults_matrix, Shor9
+
+julia> state = MixedDestabilizer(Shor9())
+𝒟ℯ𝓈𝓉𝒶𝒷━━━━━
++ Z________
++ ___Z_____
++ _X_______
++ __X______
++ ____X____
++ _____X___
++ ______X__
++ _______X_
+𝒳ₗ━━━━━━━━━
++ ______XXX
+𝒮𝓉𝒶𝒷━━━━━━━
++ XXX___XXX
++ ___XXXXXX
++ ZZ_______
++ Z_Z______
++ ___ZZ____
++ ___Z_Z___
++ ______Z_Z
++ _______ZZ
+𝒵ₗ━━━━━━━━━
++ Z__Z____Z
+
+julia> err_Z₁ = single_z(9,1) # the error we will simulate
++ Z________
+
+julia> cor_Z₂ = single_z(9,2) # the correction operation we will perform
++ _Z_______
+
+julia> err_Z₁ * state # observe that one of the syndrome bits is now flipped
+𝒟ℯ𝓈𝓉𝒶𝒷━━━━━
++ Z________
++ ___Z_____
++ _X_______
++ __X______
++ ____X____
++ _____X___
++ ______X__
++ _______X_
+𝒳ₗ━━━━━━━━━
++ ______XXX
+𝒮𝓉𝒶𝒷━━━━━━━
+- XXX___XXX
++ ___XXXXXX
++ ZZ_______
++ Z_Z______
++ ___ZZ____
++ ___Z_Z___
++ ______Z_Z
++ _______ZZ
+𝒵ₗ━━━━━━━━━
++ Z__Z____Z
+
+julia> cor_Z₂ * err_Z₁ * state # we are back to a good code state
+𝒟ℯ𝓈𝓉𝒶𝒷━━━━━
++ Z________
++ ___Z_____
+- _X_______
++ __X______
++ ____X____
++ _____X___
++ ______X__
++ _______X_
+𝒳ₗ━━━━━━━━━
++ ______XXX
+𝒮𝓉𝒶𝒷━━━━━━━
++ XXX___XXX
++ ___XXXXXX
++ ZZ_______
++ Z_Z______
++ ___ZZ____
++ ___Z_Z___
++ ______Z_Z
++ _______ZZ
+𝒵ₗ━━━━━━━━━
++ Z__Z____Z
+
+julia> bad_Z₆Z₉ = single_z(9,6) * single_z(9,9) # a different "correction" operation
++ _____Z__Z
+
+julia> bad_Z₆Z₉ * err_Z₁ * state # the syndrome is trivial, but now we have a logical error
+𝒟ℯ𝓈𝓉𝒶𝒷━━━━━
++ Z________
++ ___Z_____
++ _X_______
++ __X______
++ ____X____
+- _____X___
++ ______X__
++ _______X_
+𝒳ₗ━━━━━━━━━
+- ______XXX
+𝒮𝓉𝒶𝒷━━━━━━━
++ XXX___XXX
++ ___XXXXXX
++ ZZ_______
++ Z_Z______
++ ___ZZ____
++ ___Z_Z___
++ ______Z_Z
++ _______ZZ
+𝒵ₗ━━━━━━━━━
++ Z__Z____Z

The success of cor_Z₂ and the failure of bad_Z₆Z₉ can be immediately seen through the fault matrix, as the wrong "correction" does not result in the same logical flips ad the error:

julia> O = faults_matrix(Shor9())
+2×18 BitMatrix:
+ 0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  1  1  1
+ 1  0  0  1  0  0  0  0  1  0  0  0  0  0  0  0  0  0
+
+julia> O * stab_to_gf2(err_Z₁)
+2-element Vector{Int64}:
+ 0
+ 0
+
+julia> O * stab_to_gf2(cor_Z₂)
+2-element Vector{Int64}:
+ 0
+ 0
+
+julia> O * stab_to_gf2(bad_Z₆Z₉)
+2-element Vector{Int64}:
+ 1
+ 0

While its use in this situation is rather contrived, the fault matrix is incredibly useful when running large scale simulations in which we want a separate fast error sampling process, (e.g. with Pauli frames) and a syndrome decoding process, without coupling between them. We just gather all our syndrome measurement and logical observables from the Pauli frame simulations, and then use them with the fault matrix in the syndrome decoding simulation.

source
QuantumClifford.ECC.isdegenerateFunction

Check if the code is degenerate with respect to a given set of error or with respect to all "up to d physical-qubit" errors (defaulting to d=1).

julia> using QuantumClifford.ECC
+
+julia> isdegenerate(Shor9(), [single_z(9,1), single_z(9,2)])
+true
+
+julia> isdegenerate(Shor9(), [single_z(9,1), single_x(9,1)])
+false
+
+julia> isdegenerate(Steane7(), 1)
+false
+
+julia> isdegenerate(Steane7(), 2)
+true
source
QuantumClifford.ECC.naive_encoding_circuitMethod

Encoding physical qubits into a larger logical code.

The initial physical qubits to be encoded have to be at indices n-k+1:n.

Encoding circuits are not fault-tolerant

Encoding circuits are not fault-tolerant, and thus should not be used in practice. Instead, you should measure the stabilizers of the code and the logical observables, thus projecting into the code space (which can be fault-tolerant).

The canonicalization operation performed on the code may permute the qubits (see canonicalize_gott!). That permutation is corrected for with SWAP gates by default (controlled by the undoperm keyword argument).

Based on (Cleve and Gottesman, 1997) and (Gottesman, 1997), however it seems the published algorithm has some errors. Consult the erratum, as well as the more recent (Grassl, 2002) and (Grassl, 2011), and be aware that this implementation also uses H instead of Z gates.

source
QuantumClifford.ECC.naive_syndrome_circuitFunction

Generate the non-fault-tolerant stabilizer measurement cicuit for a given code instance or parity check tableau.

Use the ancillary_index and bit_index arguments to offset where the corresponding part the circuit starts.

Returns the circuit, the number of ancillary qubits that were added, and a list of bit indices that will store the measurement results.

See also: shor_syndrome_circuit

source
QuantumClifford.ECC.shor_syndrome_circuitFunction

Generate the Shor fault-tolerant stabilizer measurement cicuit for a given code instance or parity check tableau.

Use the ancillary_index and bit_index arguments to offset where the corresponding part the circuit starts. Ancillary qubits

Returns:

  • The ancillary cat state preparation circuit.
  • The Shor syndrome measurement circuit.
  • The number of ancillary qubits that were added.
  • The list of bit indices that store the final measurement results.

See also: naive_syndrome_circuit

source

Implemented in an extension requiring Hecke.jl

QuantumCliffordHeckeExt.LPCodeType
struct LPCode <: QuantumClifford.ECC.AbstractECC

Lifted product codes ((Panteleev and Kalachev, 2021), (Panteleev and Kalachev, Jun 2022))

A lifted product code is defined by the hypergraph product of a base matrices A and the conjugate of another base matrix B'. Here, the hypergraph product is taken over a group algebra, of which the base matrices are consisting.

The binary parity check matrix is obtained by applying repr to each element of the matrix resulted from the hypergraph product, which is mathematically a linear map from each group algebra element to a binary matrix.

Constructors

Multiple constructors are available:

  1. Two base matrices of group algebra elements.

  2. Two lifted codes, whose base matrices are for quantum code construction.

  3. Two base matrices of group elements, where each group element will be considered as a group algebra element by assigning a unit coefficient.

  4. Two base matrices of integers, where each integer represent the shift of a cyclic permutation. The order of the cyclic permutation should be specified.

Examples

A [[882, 24, d ≤ 24]] code from Appendix B of (Roffe et al., 2023). We use the 1st constructor to generate the code and check its length and dimension. During the construction, we do arithmetic operations to get the group algebra elements in base matrices A and B. Here x is the generator of the group algebra, i.e., offset-1 cyclic permutation, and GA(1) is the unit element.

julia> import Hecke: group_algebra, GF, abelian_group, gens; import LinearAlgebra: diagind;
+
+julia> l = 63; GA = group_algebra(GF(2), abelian_group(l)); x = gens(GA)[];
+
+julia> A = zeros(GA, 7, 7);
+
+julia> A[diagind(A)] .= x^27;
+
+julia> A[diagind(A, -1)] .= x^54;
+
+julia> A[diagind(A, 6)] .= x^54;
+
+julia> A[diagind(A, -2)] .= GA(1);
+
+julia> A[diagind(A, 5)] .= GA(1);
+
+julia> B = reshape([1 + x + x^6], (1, 1));
+
+julia> c1 = LPCode(A, B);
+
+julia> code_n(c1), code_k(c1)
+(882, 24)

A [[175, 19, d ≤ 0]] code from Eq. (18) in Appendix A of (Raveendran et al., 2022), following the 4th constructor.

julia> base_matrix = [0 0 0 0; 0 1 2 5; 0 6 3 1]; l = 7;
+
+julia> c2 = LPCode(base_matrix, l .- base_matrix', l);
+
+julia> code_n(c2), code_k(c2)
+(175, 19)

Code subfamilies and convenience constructors for them

  • When the base matrices of the LPCode are 1×1, the code is called a two-block group-algebra code two_block_group_algebra_codes.
  • When the base matrices of the LPCode are 1×1 and their elements are sums of cyclic permutations, the code is called a generalized bicycle code generalized_bicycle_codes.
  • When the two matrices are adjoint to each other, the code is called a bicycle code bicycle_codes.

The representation function

We use the default representation function Hecke.representation_matrix to convert a GF(2)-group algebra element to a binary matrix. The default representation, provided by Hecke, is the permutation representation.

We also accept a custom representation function as detailed in LiftedCode.

See also: LiftedCode, two_block_group_algebra_codes, generalized_bicycle_codes, bicycle_codes.

  • A::Union{LinearAlgebra.Adjoint{<:Hecke.GroupAlgebraElem, <:Matrix{<:Hecke.GroupAlgebraElem}}, Matrix{<:Hecke.GroupAlgebraElem}}: the first base matrix of the code, whose elements are in a group algebra.

  • B::Union{LinearAlgebra.Adjoint{<:Hecke.GroupAlgebraElem, <:Matrix{<:Hecke.GroupAlgebraElem}}, Matrix{<:Hecke.GroupAlgebraElem}}: the second base matrix of the code, whose elements are in the same group algebra as A.

  • GA::Hecke.GroupAlgebra: the group algebra for which elements in A and B are from.

  • repr::Function: a function that converts a group algebra element to a binary matrix; default to be the permutation representation for GF(2)-algebra.

source
QuantumCliffordHeckeExt.LiftedCodeType
struct LiftedCode <: QuantumClifford.ECC.ClassicalCode

Classical codes lifted over a group algebra, used for lifted product code construction ((Panteleev and Kalachev, 2021), (Panteleev and Kalachev, Jun 2022))

The parity-check matrix is constructed by applying repr to each element of A, which is mathematically a linear map from a group algebra element to a binary matrix. The size of the parity check matrix will enlarged with each element of A being inflated into a matrix. The procedure is called a lift (Panteleev and Kalachev, Jun 2022).

Constructors

A lifted code can be constructed via the following approaches:

  1. A matrix of group algebra elements.

  2. A matrix of group elements, where a group element will be considered as a group algebra element by assigning a unit coefficient.

  3. A matrix of integers, where each integer represent the shift of a cyclic permutation. The order of the cyclic permutation should be specified.

The default GA is the group algebra of A[1, 1], the default representation repr is the permutation representation.

The representation function repr

We use the default representation function Hecke.representation_matrix to convert a GF(2)-group algebra element to a binary matrix. The default representation, provided by Hecke, is the permutation representation.

We also accept a custom representation function (the repr field of the constructor). Whatever the representation, the matrix elements need to be convertible to Integers (e.g. permit lift(ZZ, ...)). Such a customization would be useful to reduce the number of bits required by the code construction.

For example, if we use a D4 group for lifting, our default representation will be 8×8 permutation matrices, where 8 is the group's order. However, we can find a 4×4 matrix representation for the group, e.g. by using the typical 2×2 representation and converting it into binary representation by replacing "1" with the Pauli I, and "-1" with the Pauli X matrix.

See also: LPCode.

  • A::Union{LinearAlgebra.Adjoint{<:Hecke.GroupAlgebraElem, <:Matrix{<:Hecke.GroupAlgebraElem}}, Matrix{<:Hecke.GroupAlgebraElem}}: the base matrix of the code, whose elements are in a group algebra.

  • GA::Hecke.GroupAlgebra: the group algebra for which elements in A are from.

  • repr::Function: a function that converts a group algebra element to a binary matrix; default to be the permutation representation for GF(2)-algebra.

source
QuantumCliffordHeckeExt.LiftedCodeMethod

LiftedCode constructor using the default GF(2) representation (coefficients converted to a permutation matrix by representation_matrix provided by Hecke).

source
QuantumClifford.ECC.generalized_bicycle_codesMethod

Generalized bicycle codes, which are a special case of 2GBA codes (and therefore of lifted product codes). Here the group is chosen as the cyclic group of order l, and the base matrices a and b are the sum of the group algebra elements corresponding to the shifts a_shifts and b_shifts.

See also: two_block_group_algebra_codes, bicycle_codes.

A [[254, 28, 14 ≤ d ≤ 20]] code from (A1) in Appendix B of (Panteleev and Kalachev, 2021).

julia> c = generalized_bicycle_codes([0, 15, 20, 28, 66], [0, 58, 59, 100, 121], 127);
+
+julia> code_n(c), code_k(c)
+(254, 28)
source
diff --git a/v0.9.12/ECC_evaluating/0ebe37ea.png b/v0.9.12/ECC_evaluating/0ebe37ea.png new file mode 100644 index 000000000..1c8c1a885 Binary files /dev/null and b/v0.9.12/ECC_evaluating/0ebe37ea.png differ diff --git a/v0.9.12/ECC_evaluating/2587f444.png b/v0.9.12/ECC_evaluating/2587f444.png new file mode 100644 index 000000000..66a75fd2d Binary files /dev/null and b/v0.9.12/ECC_evaluating/2587f444.png differ diff --git a/v0.9.12/ECC_evaluating/index.html b/v0.9.12/ECC_evaluating/index.html new file mode 100644 index 000000000..8443621c1 --- /dev/null +++ b/v0.9.12/ECC_evaluating/index.html @@ -0,0 +1,56 @@ + +Evaluating codes and decoders · QuantumClifford.jl

Evaluating an ECC code and decoders

The documentation is incomplete

While waiting for a better documentation than the small example below, consider looking into evaluate_decoder, TableDecoder, BeliefPropDecoder, PyBeliefPropDecoder, PyMatchingDecoder, CommutationCheckECCSetup, NaiveSyndromeECCSetup, ShorSyndromeECCSetup

This is a quick and durty example on how to use some of the decoders.

A function to plot the results of

using CairoMakie
+
+function make_decoder_figure(phys_errors, results, title="")
+    minlim = min(minimum(phys_errors),minimum(results[results.!=0]))
+    maxlim = min(1, max(maximum(phys_errors),maximum(results[results.!=0])))
+
+    fresults = copy(results)
+    fresults[results.==0] .= NaN
+
+    f = Figure()
+    a = Axis(f[1,1],
+        xscale=log10, yscale=log10,
+        limits=(minlim,maxlim,minlim,maxlim),
+        aspect=DataAspect(),
+        xlabel="physical error rate",
+        ylabel="logical error rate",
+        title=title)
+    lines!(a, [minlim,maxlim],[minlim,maxlim], color=:black)
+    for (i,sresults) in enumerate(eachslice(fresults, dims=1))
+        scatter!(a, phys_errors, sresults[:,1], marker=:+, color=Cycled(i))
+        scatter!(a, phys_errors, sresults[:,2], marker=:x, color=Cycled(i))
+    end
+    f
+end
make_decoder_figure (generic function with 2 methods)

Testing out a lookup table decoder on a small code.

using QuantumClifford
+using QuantumClifford.ECC
+
+mem_errors = 0.001:0.0005:0.01
+codes = [Shor9()]
+results = zeros(length(codes), length(mem_errors), 2)
+
+for (ic, c) in pairs(codes)
+    for (i,m) in pairs(mem_errors)
+        setup = CommutationCheckECCSetup(m)
+        decoder = TableDecoder(c)
+        r = evaluate_decoder(decoder, setup, 10000)
+        results[ic,i,:] .= r
+    end
+end
+
+make_decoder_figure(mem_errors, results, "Shor's code with a lookup table decoder")
Example block output

Testing out the toric code with a decoder provided by the python package pymatching (provided in julia by the meta package PyQDecoders.jl).

import PyQDecoders
+
+mem_errors = 0.001:0.005:0.1
+codes = [Toric(4,4), Toric(6,6)]
+results = zeros(length(codes), length(mem_errors), 2)
+
+for (ic, c) in pairs(codes)
+    for (i,m) in pairs(mem_errors)
+        setup = ShorSyndromeECCSetup(m, 0)
+        decoder = PyMatchingDecoder(c)
+        r = evaluate_decoder(decoder, setup, 1000)
+        results[ic,i,:] .= r
+    end
+end
+
+make_decoder_figure(mem_errors, results, "Toric code with a MWPM decoder")
Example block output
diff --git a/v0.9.12/allops/index.html b/v0.9.12/allops/index.html new file mode 100644 index 000000000..dd3d4a575 --- /dev/null +++ b/v0.9.12/allops/index.html @@ -0,0 +1,13 @@ + +All Gates · QuantumClifford.jl

Operations - Gates, Measurements, and More

Operations

Acting on quantum states can be performed either:

  • In a "linear algebra" language where unitaries, measurements, and other operations have separate interfaces. This is an explicitly deterministic lower-level interface, which provides a great deal of control over how tableaux are manipulated. See the Stabilizer Tableau Algebra Manual as a primer on these approaches.
  • Or in a "circuit" language, where the operators (and measurements and noise) are represented as circuit gates. This is a higher-level interface in which the outcome of an operation can be stochastic. The API for it is centered around the apply! function. Particularly useful for Monte Carlo simulations and Perturbative Expansion Symbolic Results.

In the circuit language, all operations can be applied on a state with the apply! function. Whether they are deterministic and their computational complexity is listed in the table below. A list of lower-level "linear algebra style" functions for more control over how an operation is performed is also given.

TypeDeterministic𝒪(nˣ)Low-level functions
AbstractOperation
├─ AbstractCliffordOperator
│ ├─ AbstractSymbolicOperator
│ │ ├─ AbstractSingleQubitOperator
│ │ │ ├─ SingleQubitOperator✔️n
│ │ │ ├─ sHadamard✔️n
│ │ │ ├─ sId1✔️n
│ │ │ ├─ sInvPhase✔️n
│ │ │ ├─ sPhase✔️n
│ │ │ ├─ sX✔️n
│ │ │ ├─ sY✔️n
│ │ │ └─ sZ✔️n
│ │ └─ AbstractTwoQubitOperator
│ │ ├─ sCNOT✔️n
│ │ ├─ sCPHASE✔️n
│ │ └─ sSWAP✔️n
│ │
│ ├─ CliffordOperator✔️
│ ├─ PauliOperator✔️
│ └─ SparseGate✔️kn²
├─ AbstractMeasurement
│ ├─ PauliMeasurementproject!, projectrand!
│ ├─ sMXprojectX!
│ ├─ sMYprojectY!
│ └─ sMZprojectZ!
├─ BellMeasurement
├─ NoiseOp?applynoise!
├─ NoiseOpAll?applynoise!
├─ NoisyGate?applynoise!
└─ Reset✔️kn²reset_qubits!

Details of Operations Supported by apply!

Unitary Gates

We distinguish between symbolic gates like sCNOT that have specialized (fast) apply! methods (usually just for single and two qubit gates) and general tableau representation of gates like CliffordOperator that can represent any multi-qubit gate.

Predefined unitary gates are available, like sCNOT, sHadamard, etc.

[sCNOT(2,4),sHadamard(2),sCPHASE(1,3),sSWAP(2,4)]
Example block output

Any arbitrary tableaux can be used as a gate too.

They can be specified by giving a Clifford operator tableaux and the indices on which it acts (particularly useful for gates acting on a small part of a circuit):

SparseGate(tCNOT, [2,4])
Example block output

The Clifford operator tableaux can be completely arbitrary.

SparseGate(random_clifford(3), [2,4,5])
Example block output

If the Clifford operator acts on all qubits, we do not need to specify indices, just use the operator.

Noisy Gates

Each gate can be followed by noise applied to the qubits on which it has acted. This is done by wrapping the given gate into a NoisyGate

ε = 0.03 # X/Y/Z error probability
+noise = UnbiasedUncorrelatedNoise(ε)
+noisy_gate = NoisyGate(SparseGate(tCNOT, [2,4]), noise)
Example block output

In circuit diagrams the noise is not depicted, but after each application of the gate defined in noisy_gate, a noise operator will also be applied. The example above is of Pauli Depolarization implemented by UnbiasedUncorrelatedNoise.

One can also apply only the noise operator by using NoiseOp which acts only on specified qubits. Or alternatively, one can use NoiseOpAll in order to apply noise to all qubits.

[NoiseOp(noise, [4,5]), NoiseOpAll(noise)]
Example block output

The machinery behind noise processes and different types of noise is detailed in the section on noise

Coincidence Measurements

Global parity measurements involving single-qubit projections and classical communication are implemented with BellMeasurement. One needs to specify the axes of measurement and the qubits being measured. If the parity is trivial, the circuit continues, if the parity is non-trivial, the circuit ends and reports a detected failure. This operator is frequently used in the simulation of entanglement purification.

BellMeasurement([sMX(1), sMY(3), sMZ(4)])
Example block output

There is also NoisyBellMeasurement that takes the bit-flip probability of a single-qubit measurement as a third argument.

Stabilizer Measurements

A measurement over one or more qubits can also be performed, e.g., a direct stabilizer measurement on multiple qubits without the use of ancillary qubits. When applied to multiple qubits, this differs from BellMeasurement as it performs a single projection, unlike BellMeasurement which performs a separate projection for every single qubit involved. This measurement is implemented in PauliMeasurement which requires a Pauli operator on which to project and the index of the classical bit in which to store the result. Alternatively, there are sMX, sMZ, sMY if you are measuring a single qubit.

[PauliMeasurement(P"XYZ", 1), sMZ(2, 2)]
Example block output

Reset Operations

The Reset operations lets you trace out the specified qubits and set their state to a specific tableau.

new_state = random_stabilizer(3)
+qubit_indices = [1,2,3]
+Reset(new_state, qubit_indices)
Example block output

It can be done anywhere in a circuit, not just at the beginning.

diff --git a/v0.9.12/assets/documenter.js b/v0.9.12/assets/documenter.js new file mode 100644 index 000000000..82252a11d --- /dev/null +++ b/v0.9.12/assets/documenter.js @@ -0,0 +1,1064 @@ +// Generated by Documenter.jl +requirejs.config({ + paths: { + 'highlight-julia': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/languages/julia.min', + 'headroom': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/headroom.min', + 'jqueryui': 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min', + 'katex-auto-render': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/contrib/auto-render.min', + 'jquery': 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.0/jquery.min', + 'headroom-jquery': 'https://cdnjs.cloudflare.com/ajax/libs/headroom/0.12.0/jQuery.headroom.min', + 'katex': 'https://cdnjs.cloudflare.com/ajax/libs/KaTeX/0.16.8/katex.min', + 'highlight': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/highlight.min', + 'highlight-julia-repl': 'https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.8.0/languages/julia-repl.min', + }, + shim: { + "highlight-julia": { + "deps": [ + "highlight" + ] + }, + "katex-auto-render": { + "deps": [ + "katex" + ] + }, + "headroom-jquery": { + "deps": [ + "jquery", + "headroom" + ] + }, + "highlight-julia-repl": { + "deps": [ + "highlight" + ] + } +} +}); +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'katex', 'katex-auto-render'], function($, katex, renderMathInElement) { +$(document).ready(function() { + renderMathInElement( + document.body, + { + "delimiters": [ + { + "left": "$", + "right": "$", + "display": false + }, + { + "left": "$$", + "right": "$$", + "display": true + }, + { + "left": "\\[", + "right": "\\]", + "display": true + } + ] +} + + ); +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'highlight', 'highlight-julia', 'highlight-julia-repl'], function($) { +$(document).ready(function() { + hljs.highlightAll(); +}) + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +let timer = 0; +var isExpanded = true; + +$(document).on( + "click", + ".docstring .docstring-article-toggle-button", + function () { + let articleToggleTitle = "Expand docstring"; + const parent = $(this).parent(); + + debounce(() => { + if (parent.siblings("section").is(":visible")) { + parent + .find("a.docstring-article-toggle-button") + .removeClass("fa-chevron-down") + .addClass("fa-chevron-right"); + } else { + parent + .find("a.docstring-article-toggle-button") + .removeClass("fa-chevron-right") + .addClass("fa-chevron-down"); + + articleToggleTitle = "Collapse docstring"; + } + + parent + .children(".docstring-article-toggle-button") + .prop("title", articleToggleTitle); + parent.siblings("section").slideToggle(); + }); + } +); + +$(document).on("click", ".docs-article-toggle-button", function (event) { + let articleToggleTitle = "Expand docstring"; + let navArticleToggleTitle = "Expand all docstrings"; + let animationSpeed = event.noToggleAnimation ? 0 : 400; + + debounce(() => { + if (isExpanded) { + $(this).removeClass("fa-chevron-up").addClass("fa-chevron-down"); + $("a.docstring-article-toggle-button") + .removeClass("fa-chevron-down") + .addClass("fa-chevron-right"); + + isExpanded = false; + + $(".docstring section").slideUp(animationSpeed); + } else { + $(this).removeClass("fa-chevron-down").addClass("fa-chevron-up"); + $("a.docstring-article-toggle-button") + .removeClass("fa-chevron-right") + .addClass("fa-chevron-down"); + + isExpanded = true; + articleToggleTitle = "Collapse docstring"; + navArticleToggleTitle = "Collapse all docstrings"; + + $(".docstring section").slideDown(animationSpeed); + } + + $(this).prop("title", navArticleToggleTitle); + $(".docstring-article-toggle-button").prop("title", articleToggleTitle); + }); +}); + +function debounce(callback, timeout = 300) { + if (Date.now() - timer > timeout) { + callback(); + } + + clearTimeout(timer); + + timer = Date.now(); +} + +}) +//////////////////////////////////////////////////////////////////////////////// +require([], function() { +function addCopyButtonCallbacks() { + for (const el of document.getElementsByTagName("pre")) { + const button = document.createElement("button"); + button.classList.add("copy-button", "fa-solid", "fa-copy"); + button.setAttribute("aria-label", "Copy this code block"); + button.setAttribute("title", "Copy"); + + el.appendChild(button); + + const success = function () { + button.classList.add("success", "fa-check"); + button.classList.remove("fa-copy"); + }; + + const failure = function () { + button.classList.add("error", "fa-xmark"); + button.classList.remove("fa-copy"); + }; + + button.addEventListener("click", function () { + copyToClipboard(el.innerText).then(success, failure); + + setTimeout(function () { + button.classList.add("fa-copy"); + button.classList.remove("success", "fa-check", "fa-xmark"); + }, 5000); + }); + } +} + +function copyToClipboard(text) { + // clipboard API is only available in secure contexts + if (window.navigator && window.navigator.clipboard) { + return window.navigator.clipboard.writeText(text); + } else { + return new Promise(function (resolve, reject) { + try { + const el = document.createElement("textarea"); + el.textContent = text; + el.style.position = "fixed"; + el.style.opacity = 0; + document.body.appendChild(el); + el.select(); + document.execCommand("copy"); + + resolve(); + } catch (err) { + reject(err); + } finally { + document.body.removeChild(el); + } + }); + } +} + +if (document.readyState === "loading") { + document.addEventListener("DOMContentLoaded", addCopyButtonCallbacks); +} else { + addCopyButtonCallbacks(); +} + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery', 'headroom', 'headroom-jquery'], function($, Headroom) { + +// Manages the top navigation bar (hides it when the user starts scrolling down on the +// mobile). +window.Headroom = Headroom; // work around buggy module loading? +$(document).ready(function () { + $("#documenter .docs-navbar").headroom({ + tolerance: { up: 10, down: 10 }, + }); +}); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +$(document).ready(function () { + let meta = $("div[data-docstringscollapsed]").data(); + + if (meta?.docstringscollapsed) { + $("#documenter-article-toggle-button").trigger({ + type: "click", + noToggleAnimation: true, + }); + } +}); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +/* +To get an in-depth about the thought process you can refer: https://hetarth02.hashnode.dev/series/gsoc + +PSEUDOCODE: + +Searching happens automatically as the user types or adjusts the selected filters. +To preserve responsiveness, as much as possible of the slow parts of the search are done +in a web worker. Searching and result generation are done in the worker, and filtering and +DOM updates are done in the main thread. The filters are in the main thread as they should +be very quick to apply. This lets filters be changed without re-searching with minisearch +(which is possible even if filtering is on the worker thread) and also lets filters be +changed _while_ the worker is searching and without message passing (neither of which are +possible if filtering is on the worker thread) + +SEARCH WORKER: + +Import minisearch + +Build index + +On message from main thread + run search + find the first 200 unique results from each category, and compute their divs for display + note that this is necessary and sufficient information for the main thread to find the + first 200 unique results from any given filter set + post results to main thread + +MAIN: + +Launch worker + +Declare nonconstant globals (worker_is_running, last_search_text, unfiltered_results) + +On text update + if worker is not running, launch_search() + +launch_search + set worker_is_running to true, set last_search_text to the search text + post the search query to worker + +on message from worker + if last_search_text is not the same as the text in the search field, + the latest search result is not reflective of the latest search query, so update again + launch_search() + otherwise + set worker_is_running to false + + regardless, display the new search results to the user + save the unfiltered_results as a global + update_search() + +on filter click + adjust the filter selection + update_search() + +update_search + apply search filters by looping through the unfiltered_results and finding the first 200 + unique results that match the filters + + Update the DOM +*/ + +/////// SEARCH WORKER /////// + +function worker_function(documenterSearchIndex, documenterBaseURL, filters) { + importScripts( + "https://cdn.jsdelivr.net/npm/minisearch@6.1.0/dist/umd/index.min.js" + ); + + let data = documenterSearchIndex.map((x, key) => { + x["id"] = key; // minisearch requires a unique for each object + return x; + }); + + // list below is the lunr 2.1.3 list minus the intersect with names(Base) + // (all, any, get, in, is, only, which) and (do, else, for, let, where, while, with) + // ideally we'd just filter the original list but it's not available as a variable + const stopWords = new Set([ + "a", + "able", + "about", + "across", + "after", + "almost", + "also", + "am", + "among", + "an", + "and", + "are", + "as", + "at", + "be", + "because", + "been", + "but", + "by", + "can", + "cannot", + "could", + "dear", + "did", + "does", + "either", + "ever", + "every", + "from", + "got", + "had", + "has", + "have", + "he", + "her", + "hers", + "him", + "his", + "how", + "however", + "i", + "if", + "into", + "it", + "its", + "just", + "least", + "like", + "likely", + "may", + "me", + "might", + "most", + "must", + "my", + "neither", + "no", + "nor", + "not", + "of", + "off", + "often", + "on", + "or", + "other", + "our", + "own", + "rather", + "said", + "say", + "says", + "she", + "should", + "since", + "so", + "some", + "than", + "that", + "the", + "their", + "them", + "then", + "there", + "these", + "they", + "this", + "tis", + "to", + "too", + "twas", + "us", + "wants", + "was", + "we", + "were", + "what", + "when", + "who", + "whom", + "why", + "will", + "would", + "yet", + "you", + "your", + ]); + + let index = new MiniSearch({ + fields: ["title", "text"], // fields to index for full-text search + storeFields: ["location", "title", "text", "category", "page"], // fields to return with results + processTerm: (term) => { + let word = stopWords.has(term) ? null : term; + if (word) { + // custom trimmer that doesn't strip @ and !, which are used in julia macro and function names + word = word + .replace(/^[^a-zA-Z0-9@!]+/, "") + .replace(/[^a-zA-Z0-9@!]+$/, ""); + + word = word.toLowerCase(); + } + + return word ?? null; + }, + // add . as a separator, because otherwise "title": "Documenter.Anchors.add!", would not + // find anything if searching for "add!", only for the entire qualification + tokenize: (string) => string.split(/[\s\-\.]+/), + // options which will be applied during the search + searchOptions: { + prefix: true, + boost: { title: 100 }, + fuzzy: 2, + }, + }); + + index.addAll(data); + + /** + * Used to map characters to HTML entities. + * Refer: https://github.com/lodash/lodash/blob/main/src/escape.ts + */ + const htmlEscapes = { + "&": "&", + "<": "<", + ">": ">", + '"': """, + "'": "'", + }; + + /** + * Used to match HTML entities and HTML characters. + * Refer: https://github.com/lodash/lodash/blob/main/src/escape.ts + */ + const reUnescapedHtml = /[&<>"']/g; + const reHasUnescapedHtml = RegExp(reUnescapedHtml.source); + + /** + * Escape function from lodash + * Refer: https://github.com/lodash/lodash/blob/main/src/escape.ts + */ + function escape(string) { + return string && reHasUnescapedHtml.test(string) + ? string.replace(reUnescapedHtml, (chr) => htmlEscapes[chr]) + : string || ""; + } + + /** + * RegX escape function from MDN + * Refer: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#escaping + */ + function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string + } + + /** + * Make the result component given a minisearch result data object and the value + * of the search input as queryString. To view the result object structure, refer: + * https://lucaong.github.io/minisearch/modules/_minisearch_.html#searchresult + * + * @param {object} result + * @param {string} querystring + * @returns string + */ + function make_search_result(result, querystring) { + let search_divider = `
`; + let display_link = + result.location.slice(Math.max(0), Math.min(50, result.location.length)) + + (result.location.length > 30 ? "..." : ""); // To cut-off the link because it messes with the overflow of the whole div + + if (result.page !== "") { + display_link += ` (${result.page})`; + } + searchstring = escapeRegExp(querystring); + let textindex = new RegExp(`${searchstring}`, "i").exec(result.text); + let text = + textindex !== null + ? result.text.slice( + Math.max(textindex.index - 100, 0), + Math.min( + textindex.index + querystring.length + 100, + result.text.length + ) + ) + : ""; // cut-off text before and after from the match + + text = text.length ? escape(text) : ""; + + let display_result = text.length + ? "..." + + text.replace( + new RegExp(`${escape(searchstring)}`, "i"), // For first occurrence + '$&' + ) + + "..." + : ""; // highlights the match + + let in_code = false; + if (!["page", "section"].includes(result.category.toLowerCase())) { + in_code = true; + } + + // We encode the full url to escape some special characters which can lead to broken links + let result_div = ` + +
+
${escape(result.title)}
+
${result.category}
+
+

+ ${display_result} +

+
+ ${display_link} +
+
+ ${search_divider} + `; + + return result_div; + } + + self.onmessage = function (e) { + let query = e.data; + let results = index.search(query, { + filter: (result) => { + // Only return relevant results + return result.score >= 1; + }, + combineWith: "AND", + }); + + // Pre-filter to deduplicate and limit to 200 per category to the extent + // possible without knowing what the filters are. + let filtered_results = []; + let counts = {}; + for (let filter of filters) { + counts[filter] = 0; + } + let present = {}; + + for (let result of results) { + cat = result.category; + cnt = counts[cat]; + if (cnt < 200) { + id = cat + "---" + result.location; + if (present[id]) { + continue; + } + present[id] = true; + filtered_results.push({ + location: result.location, + category: cat, + div: make_search_result(result, query), + }); + } + } + + postMessage(filtered_results); + }; +} + +// `worker = Threads.@spawn worker_function(documenterSearchIndex)`, but in JavaScript! +const filters = [ + ...new Set(documenterSearchIndex["docs"].map((x) => x.category)), +]; +const worker_str = + "(" + + worker_function.toString() + + ")(" + + JSON.stringify(documenterSearchIndex["docs"]) + + "," + + JSON.stringify(documenterBaseURL) + + "," + + JSON.stringify(filters) + + ")"; +const worker_blob = new Blob([worker_str], { type: "text/javascript" }); +const worker = new Worker(URL.createObjectURL(worker_blob)); + +/////// SEARCH MAIN /////// + +// Whether the worker is currently handling a search. This is a boolean +// as the worker only ever handles 1 or 0 searches at a time. +var worker_is_running = false; + +// The last search text that was sent to the worker. This is used to determine +// if the worker should be launched again when it reports back results. +var last_search_text = ""; + +// The results of the last search. This, in combination with the state of the filters +// in the DOM, is used compute the results to display on calls to update_search. +var unfiltered_results = []; + +// Which filter is currently selected +var selected_filter = ""; + +$(document).on("input", ".documenter-search-input", function (event) { + if (!worker_is_running) { + launch_search(); + } +}); + +function launch_search() { + worker_is_running = true; + last_search_text = $(".documenter-search-input").val(); + worker.postMessage(last_search_text); +} + +worker.onmessage = function (e) { + if (last_search_text !== $(".documenter-search-input").val()) { + launch_search(); + } else { + worker_is_running = false; + } + + unfiltered_results = e.data; + update_search(); +}; + +$(document).on("click", ".search-filter", function () { + if ($(this).hasClass("search-filter-selected")) { + selected_filter = ""; + } else { + selected_filter = $(this).text().toLowerCase(); + } + + // This updates search results and toggles classes for UI: + update_search(); +}); + +/** + * Make/Update the search component + */ +function update_search() { + let querystring = $(".documenter-search-input").val(); + + if (querystring.trim()) { + if (selected_filter == "") { + results = unfiltered_results; + } else { + results = unfiltered_results.filter((result) => { + return selected_filter == result.category.toLowerCase(); + }); + } + + let search_result_container = ``; + let modal_filters = make_modal_body_filters(); + let search_divider = `
`; + + if (results.length) { + let links = []; + let count = 0; + let search_results = ""; + + for (var i = 0, n = results.length; i < n && count < 200; ++i) { + let result = results[i]; + if (result.location && !links.includes(result.location)) { + search_results += result.div; + count++; + links.push(result.location); + } + } + + if (count == 1) { + count_str = "1 result"; + } else if (count == 200) { + count_str = "200+ results"; + } else { + count_str = count + " results"; + } + let result_count = `
${count_str}
`; + + search_result_container = ` +
+ ${modal_filters} + ${search_divider} + ${result_count} +
+ ${search_results} +
+
+ `; + } else { + search_result_container = ` +
+ ${modal_filters} + ${search_divider} +
0 result(s)
+
+
No result found!
+ `; + } + + if ($(".search-modal-card-body").hasClass("is-justify-content-center")) { + $(".search-modal-card-body").removeClass("is-justify-content-center"); + } + + $(".search-modal-card-body").html(search_result_container); + } else { + if (!$(".search-modal-card-body").hasClass("is-justify-content-center")) { + $(".search-modal-card-body").addClass("is-justify-content-center"); + } + + $(".search-modal-card-body").html(` +
Type something to get started!
+ `); + } +} + +/** + * Make the modal filter html + * + * @returns string + */ +function make_modal_body_filters() { + let str = filters + .map((val) => { + if (selected_filter == val.toLowerCase()) { + return `${val}`; + } else { + return `${val}`; + } + }) + .join(""); + + return ` +
+ Filters: + ${str} +
`; +} + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// Modal settings dialog +$(document).ready(function () { + var settings = $("#documenter-settings"); + $("#documenter-settings-button").click(function () { + settings.toggleClass("is-active"); + }); + // Close the dialog if X is clicked + $("#documenter-settings button.delete").click(function () { + settings.removeClass("is-active"); + }); + // Close dialog if ESC is pressed + $(document).keyup(function (e) { + if (e.keyCode == 27) settings.removeClass("is-active"); + }); +}); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +$(document).ready(function () { + let search_modal_header = ` + + `; + + let initial_search_body = ` +
Type something to get started!
+ `; + + let search_modal_footer = ` + + `; + + $(document.body).append( + ` + + ` + ); + + document.querySelector(".docs-search-query").addEventListener("click", () => { + openModal(); + }); + + document + .querySelector(".close-search-modal") + .addEventListener("click", () => { + closeModal(); + }); + + $(document).on("click", ".search-result-link", function () { + closeModal(); + }); + + document.addEventListener("keydown", (event) => { + if ((event.ctrlKey || event.metaKey) && event.key === "/") { + openModal(); + } else if (event.key === "Escape") { + closeModal(); + } + + return false; + }); + + // Functions to open and close a modal + function openModal() { + let searchModal = document.querySelector("#search-modal"); + + searchModal.classList.add("is-active"); + document.querySelector(".documenter-search-input").focus(); + } + + function closeModal() { + let searchModal = document.querySelector("#search-modal"); + let initial_search_body = ` +
Type something to get started!
+ `; + + searchModal.classList.remove("is-active"); + document.querySelector(".documenter-search-input").blur(); + + if (!$(".search-modal-card-body").hasClass("is-justify-content-center")) { + $(".search-modal-card-body").addClass("is-justify-content-center"); + } + + $(".documenter-search-input").val(""); + $(".search-modal-card-body").html(initial_search_body); + } + + document + .querySelector("#search-modal .modal-background") + .addEventListener("click", () => { + closeModal(); + }); +}); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// Manages the showing and hiding of the sidebar. +$(document).ready(function () { + var sidebar = $("#documenter > .docs-sidebar"); + var sidebar_button = $("#documenter-sidebar-button"); + sidebar_button.click(function (ev) { + ev.preventDefault(); + sidebar.toggleClass("visible"); + if (sidebar.hasClass("visible")) { + // Makes sure that the current menu item is visible in the sidebar. + $("#documenter .docs-menu a.is-active").focus(); + } + }); + $("#documenter > .docs-main").bind("click", function (ev) { + if ($(ev.target).is(sidebar_button)) { + return; + } + if (sidebar.hasClass("visible")) { + sidebar.removeClass("visible"); + } + }); +}); + +// Resizes the package name / sitename in the sidebar if it is too wide. +// Inspired by: https://github.com/davatron5000/FitText.js +$(document).ready(function () { + e = $("#documenter .docs-autofit"); + function resize() { + var L = parseInt(e.css("max-width"), 10); + var L0 = e.width(); + if (L0 > L) { + var h0 = parseInt(e.css("font-size"), 10); + e.css("font-size", (L * h0) / L0); + // TODO: make sure it survives resizes? + } + } + // call once and then register events + resize(); + $(window).resize(resize); + $(window).on("orientationchange", resize); +}); + +// Scroll the navigation bar to the currently selected menu item +$(document).ready(function () { + var sidebar = $("#documenter .docs-menu").get(0); + var active = $("#documenter .docs-menu .is-active").get(0); + if (typeof active !== "undefined") { + sidebar.scrollTop = active.offsetTop - sidebar.offsetTop - 15; + } +}); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// Theme picker setup +$(document).ready(function () { + // onchange callback + $("#documenter-themepicker").change(function themepick_callback(ev) { + var themename = $("#documenter-themepicker option:selected").attr("value"); + if (themename === "auto") { + // set_theme(window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'); + window.localStorage.removeItem("documenter-theme"); + } else { + // set_theme(themename); + window.localStorage.setItem("documenter-theme", themename); + } + // We re-use the global function from themeswap.js to actually do the swapping. + set_theme_from_local_storage(); + }); + + // Make sure that the themepicker displays the correct theme when the theme is retrieved + // from localStorage + if (typeof window.localStorage !== "undefined") { + var theme = window.localStorage.getItem("documenter-theme"); + if (theme !== null) { + $("#documenter-themepicker option").each(function (i, e) { + e.selected = e.value === theme; + }); + } + } +}); + +}) +//////////////////////////////////////////////////////////////////////////////// +require(['jquery'], function($) { + +// update the version selector with info from the siteinfo.js and ../versions.js files +$(document).ready(function () { + // If the version selector is disabled with DOCUMENTER_VERSION_SELECTOR_DISABLED in the + // siteinfo.js file, we just return immediately and not display the version selector. + if ( + typeof DOCUMENTER_VERSION_SELECTOR_DISABLED === "boolean" && + DOCUMENTER_VERSION_SELECTOR_DISABLED + ) { + return; + } + + var version_selector = $("#documenter .docs-version-selector"); + var version_selector_select = $("#documenter .docs-version-selector select"); + + version_selector_select.change(function (x) { + target_href = version_selector_select + .children("option:selected") + .get(0).value; + window.location.href = target_href; + }); + + // add the current version to the selector based on siteinfo.js, but only if the selector is empty + if ( + typeof DOCUMENTER_CURRENT_VERSION !== "undefined" && + $("#version-selector > option").length == 0 + ) { + var option = $( + "" + ); + version_selector_select.append(option); + } + + if (typeof DOC_VERSIONS !== "undefined") { + var existing_versions = version_selector_select.children("option"); + var existing_versions_texts = existing_versions.map(function (i, x) { + return x.text; + }); + DOC_VERSIONS.forEach(function (each) { + var version_url = documenterBaseURL + "/../" + each + "/"; + var existing_id = $.inArray(each, existing_versions_texts); + // if not already in the version selector, add it as a new option, + // otherwise update the old option with the URL and enable it + if (existing_id == -1) { + var option = $( + "" + ); + version_selector_select.append(option); + } else { + var option = existing_versions[existing_id]; + option.value = version_url; + option.disabled = false; + } + }); + } + + // only show the version selector if the selector has been populated + if (version_selector_select.children("option").length > 0) { + version_selector.toggleClass("visible"); + } +}); + +}) diff --git a/v0.9.12/assets/themes/catppuccin-frappe.css b/v0.9.12/assets/themes/catppuccin-frappe.css new file mode 100644 index 000000000..32e3f0082 --- /dev/null +++ b/v0.9.12/assets/themes/catppuccin-frappe.css @@ -0,0 +1 @@ +html.theme--catppuccin-frappe .pagination-previous,html.theme--catppuccin-frappe .pagination-next,html.theme--catppuccin-frappe .pagination-link,html.theme--catppuccin-frappe .pagination-ellipsis,html.theme--catppuccin-frappe .file-cta,html.theme--catppuccin-frappe .file-name,html.theme--catppuccin-frappe .select select,html.theme--catppuccin-frappe .textarea,html.theme--catppuccin-frappe .input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-frappe .button{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:.4em;box-shadow:none;display:inline-flex;font-size:1rem;height:2.5em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.5em - 1px);padding-left:calc(0.75em - 1px);padding-right:calc(0.75em - 1px);padding-top:calc(0.5em - 1px);position:relative;vertical-align:top}html.theme--catppuccin-frappe .pagination-previous:focus,html.theme--catppuccin-frappe .pagination-next:focus,html.theme--catppuccin-frappe .pagination-link:focus,html.theme--catppuccin-frappe .pagination-ellipsis:focus,html.theme--catppuccin-frappe .file-cta:focus,html.theme--catppuccin-frappe .file-name:focus,html.theme--catppuccin-frappe .select select:focus,html.theme--catppuccin-frappe .textarea:focus,html.theme--catppuccin-frappe .input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input:focus,html.theme--catppuccin-frappe .button:focus,html.theme--catppuccin-frappe .is-focused.pagination-previous,html.theme--catppuccin-frappe .is-focused.pagination-next,html.theme--catppuccin-frappe .is-focused.pagination-link,html.theme--catppuccin-frappe .is-focused.pagination-ellipsis,html.theme--catppuccin-frappe .is-focused.file-cta,html.theme--catppuccin-frappe .is-focused.file-name,html.theme--catppuccin-frappe .select select.is-focused,html.theme--catppuccin-frappe .is-focused.textarea,html.theme--catppuccin-frappe .is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .is-focused.button,html.theme--catppuccin-frappe .pagination-previous:active,html.theme--catppuccin-frappe .pagination-next:active,html.theme--catppuccin-frappe .pagination-link:active,html.theme--catppuccin-frappe .pagination-ellipsis:active,html.theme--catppuccin-frappe .file-cta:active,html.theme--catppuccin-frappe .file-name:active,html.theme--catppuccin-frappe .select select:active,html.theme--catppuccin-frappe .textarea:active,html.theme--catppuccin-frappe .input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input:active,html.theme--catppuccin-frappe .button:active,html.theme--catppuccin-frappe .is-active.pagination-previous,html.theme--catppuccin-frappe .is-active.pagination-next,html.theme--catppuccin-frappe .is-active.pagination-link,html.theme--catppuccin-frappe .is-active.pagination-ellipsis,html.theme--catppuccin-frappe .is-active.file-cta,html.theme--catppuccin-frappe .is-active.file-name,html.theme--catppuccin-frappe .select select.is-active,html.theme--catppuccin-frappe .is-active.textarea,html.theme--catppuccin-frappe .is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-frappe .is-active.button{outline:none}html.theme--catppuccin-frappe .pagination-previous[disabled],html.theme--catppuccin-frappe .pagination-next[disabled],html.theme--catppuccin-frappe .pagination-link[disabled],html.theme--catppuccin-frappe .pagination-ellipsis[disabled],html.theme--catppuccin-frappe .file-cta[disabled],html.theme--catppuccin-frappe .file-name[disabled],html.theme--catppuccin-frappe .select select[disabled],html.theme--catppuccin-frappe .textarea[disabled],html.theme--catppuccin-frappe .input[disabled],html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input[disabled],html.theme--catppuccin-frappe .button[disabled],fieldset[disabled] html.theme--catppuccin-frappe .pagination-previous,html.theme--catppuccin-frappe fieldset[disabled] .pagination-previous,fieldset[disabled] html.theme--catppuccin-frappe .pagination-next,html.theme--catppuccin-frappe fieldset[disabled] .pagination-next,fieldset[disabled] html.theme--catppuccin-frappe .pagination-link,html.theme--catppuccin-frappe fieldset[disabled] .pagination-link,fieldset[disabled] html.theme--catppuccin-frappe .pagination-ellipsis,html.theme--catppuccin-frappe fieldset[disabled] .pagination-ellipsis,fieldset[disabled] html.theme--catppuccin-frappe .file-cta,html.theme--catppuccin-frappe fieldset[disabled] .file-cta,fieldset[disabled] html.theme--catppuccin-frappe .file-name,html.theme--catppuccin-frappe fieldset[disabled] .file-name,fieldset[disabled] html.theme--catppuccin-frappe .select select,fieldset[disabled] html.theme--catppuccin-frappe .textarea,fieldset[disabled] html.theme--catppuccin-frappe .input,fieldset[disabled] html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-frappe fieldset[disabled] .select select,html.theme--catppuccin-frappe .select fieldset[disabled] select,html.theme--catppuccin-frappe fieldset[disabled] .textarea,html.theme--catppuccin-frappe fieldset[disabled] .input,html.theme--catppuccin-frappe fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-frappe #documenter .docs-sidebar fieldset[disabled] form.docs-search>input,fieldset[disabled] html.theme--catppuccin-frappe .button,html.theme--catppuccin-frappe fieldset[disabled] .button{cursor:not-allowed}html.theme--catppuccin-frappe .tabs,html.theme--catppuccin-frappe .pagination-previous,html.theme--catppuccin-frappe .pagination-next,html.theme--catppuccin-frappe .pagination-link,html.theme--catppuccin-frappe .pagination-ellipsis,html.theme--catppuccin-frappe .breadcrumb,html.theme--catppuccin-frappe .file,html.theme--catppuccin-frappe .button,.is-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.theme--catppuccin-frappe .navbar-link:not(.is-arrowless)::after,html.theme--catppuccin-frappe .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--catppuccin-frappe .admonition:not(:last-child),html.theme--catppuccin-frappe .tabs:not(:last-child),html.theme--catppuccin-frappe .pagination:not(:last-child),html.theme--catppuccin-frappe .message:not(:last-child),html.theme--catppuccin-frappe .level:not(:last-child),html.theme--catppuccin-frappe .breadcrumb:not(:last-child),html.theme--catppuccin-frappe .block:not(:last-child),html.theme--catppuccin-frappe .title:not(:last-child),html.theme--catppuccin-frappe .subtitle:not(:last-child),html.theme--catppuccin-frappe .table-container:not(:last-child),html.theme--catppuccin-frappe .table:not(:last-child),html.theme--catppuccin-frappe .progress:not(:last-child),html.theme--catppuccin-frappe .notification:not(:last-child),html.theme--catppuccin-frappe .content:not(:last-child),html.theme--catppuccin-frappe .box:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-frappe .modal-close,html.theme--catppuccin-frappe .delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:9999px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:none;position:relative;vertical-align:top;width:20px}html.theme--catppuccin-frappe .modal-close::before,html.theme--catppuccin-frappe .delete::before,html.theme--catppuccin-frappe .modal-close::after,html.theme--catppuccin-frappe .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--catppuccin-frappe .modal-close::before,html.theme--catppuccin-frappe .delete::before{height:2px;width:50%}html.theme--catppuccin-frappe .modal-close::after,html.theme--catppuccin-frappe .delete::after{height:50%;width:2px}html.theme--catppuccin-frappe .modal-close:hover,html.theme--catppuccin-frappe .delete:hover,html.theme--catppuccin-frappe .modal-close:focus,html.theme--catppuccin-frappe .delete:focus{background-color:rgba(10,10,10,0.3)}html.theme--catppuccin-frappe .modal-close:active,html.theme--catppuccin-frappe .delete:active{background-color:rgba(10,10,10,0.4)}html.theme--catppuccin-frappe .is-small.modal-close,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.modal-close,html.theme--catppuccin-frappe .is-small.delete,html.theme--catppuccin-frappe #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--catppuccin-frappe .is-medium.modal-close,html.theme--catppuccin-frappe .is-medium.delete{height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;width:24px}html.theme--catppuccin-frappe .is-large.modal-close,html.theme--catppuccin-frappe .is-large.delete{height:32px;max-height:32px;max-width:32px;min-height:32px;min-width:32px;width:32px}html.theme--catppuccin-frappe .control.is-loading::after,html.theme--catppuccin-frappe .select.is-loading::after,html.theme--catppuccin-frappe .loader,html.theme--catppuccin-frappe .button.is-loading::after{animation:spinAround 500ms infinite linear;border:2px solid #838ba7;border-radius:9999px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}html.theme--catppuccin-frappe .hero-video,html.theme--catppuccin-frappe .modal-background,html.theme--catppuccin-frappe .modal,html.theme--catppuccin-frappe .image.is-square img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--catppuccin-frappe .image.is-square .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--catppuccin-frappe .image.is-1by1 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--catppuccin-frappe .image.is-1by1 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--catppuccin-frappe .image.is-5by4 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--catppuccin-frappe .image.is-5by4 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--catppuccin-frappe .image.is-4by3 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--catppuccin-frappe .image.is-4by3 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--catppuccin-frappe .image.is-3by2 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--catppuccin-frappe .image.is-3by2 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--catppuccin-frappe .image.is-5by3 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--catppuccin-frappe .image.is-5by3 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--catppuccin-frappe .image.is-16by9 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--catppuccin-frappe .image.is-16by9 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--catppuccin-frappe .image.is-2by1 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--catppuccin-frappe .image.is-2by1 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--catppuccin-frappe .image.is-3by1 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--catppuccin-frappe .image.is-3by1 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--catppuccin-frappe .image.is-4by5 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--catppuccin-frappe .image.is-4by5 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--catppuccin-frappe .image.is-3by4 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--catppuccin-frappe .image.is-3by4 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--catppuccin-frappe .image.is-2by3 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--catppuccin-frappe .image.is-2by3 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--catppuccin-frappe .image.is-3by5 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--catppuccin-frappe .image.is-3by5 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--catppuccin-frappe .image.is-9by16 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--catppuccin-frappe .image.is-9by16 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--catppuccin-frappe .image.is-1by2 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--catppuccin-frappe .image.is-1by2 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--catppuccin-frappe .image.is-1by3 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--catppuccin-frappe .image.is-1by3 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio,.is-overlay{bottom:0;left:0;position:absolute;right:0;top:0}html.theme--catppuccin-frappe .navbar-burger{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0}/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:inherit}.has-text-white{color:#fff !important}a.has-text-white:hover,a.has-text-white:focus{color:#e6e6e6 !important}.has-background-white{background-color:#fff !important}.has-text-black{color:#0a0a0a !important}a.has-text-black:hover,a.has-text-black:focus{color:#000 !important}.has-background-black{background-color:#0a0a0a !important}.has-text-light{color:#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:#414559 !important}a.has-text-dark:hover,a.has-text-dark:focus{color:#2b2e3c !important}.has-background-dark{background-color:#414559 !important}.has-text-primary{color:#8caaee !important}a.has-text-primary:hover,a.has-text-primary:focus{color:#6089e7 !important}.has-background-primary{background-color:#8caaee !important}.has-text-primary-light{color:#edf2fc !important}a.has-text-primary-light:hover,a.has-text-primary-light:focus{color:#c1d1f6 !important}.has-background-primary-light{background-color:#edf2fc !important}.has-text-primary-dark{color:#153a8e !important}a.has-text-primary-dark:hover,a.has-text-primary-dark:focus{color:#1c4cbb !important}.has-background-primary-dark{background-color:#153a8e !important}.has-text-link{color:#8caaee !important}a.has-text-link:hover,a.has-text-link:focus{color:#6089e7 !important}.has-background-link{background-color:#8caaee !important}.has-text-link-light{color:#edf2fc !important}a.has-text-link-light:hover,a.has-text-link-light:focus{color:#c1d1f6 !important}.has-background-link-light{background-color:#edf2fc !important}.has-text-link-dark{color:#153a8e !important}a.has-text-link-dark:hover,a.has-text-link-dark:focus{color:#1c4cbb !important}.has-background-link-dark{background-color:#153a8e !important}.has-text-info{color:#81c8be !important}a.has-text-info:hover,a.has-text-info:focus{color:#5db9ac !important}.has-background-info{background-color:#81c8be !important}.has-text-info-light{color:#f1f9f8 !important}a.has-text-info-light:hover,a.has-text-info-light:focus{color:#cde9e5 !important}.has-background-info-light{background-color:#f1f9f8 !important}.has-text-info-dark{color:#2d675f !important}a.has-text-info-dark:hover,a.has-text-info-dark:focus{color:#3c8a7f !important}.has-background-info-dark{background-color:#2d675f !important}.has-text-success{color:#a6d189 !important}a.has-text-success:hover,a.has-text-success:focus{color:#8ac364 !important}.has-background-success{background-color:#a6d189 !important}.has-text-success-light{color:#f4f9f0 !important}a.has-text-success-light:hover,a.has-text-success-light:focus{color:#d8ebcc !important}.has-background-success-light{background-color:#f4f9f0 !important}.has-text-success-dark{color:#446a29 !important}a.has-text-success-dark:hover,a.has-text-success-dark:focus{color:#5b8f38 !important}.has-background-success-dark{background-color:#446a29 !important}.has-text-warning{color:#e5c890 !important}a.has-text-warning:hover,a.has-text-warning:focus{color:#dbb467 !important}.has-background-warning{background-color:#e5c890 !important}.has-text-warning-light{color:#fbf7ee !important}a.has-text-warning-light:hover,a.has-text-warning-light:focus{color:#f1e2c5 !important}.has-background-warning-light{background-color:#fbf7ee !important}.has-text-warning-dark{color:#78591c !important}a.has-text-warning-dark:hover,a.has-text-warning-dark:focus{color:#a17726 !important}.has-background-warning-dark{background-color:#78591c !important}.has-text-danger{color:#e78284 !important}a.has-text-danger:hover,a.has-text-danger:focus{color:#df575a !important}.has-background-danger{background-color:#e78284 !important}.has-text-danger-light{color:#fceeee !important}a.has-text-danger-light:hover,a.has-text-danger-light:focus{color:#f3c3c4 !important}.has-background-danger-light{background-color:#fceeee !important}.has-text-danger-dark{color:#9a1e20 !important}a.has-text-danger-dark:hover,a.has-text-danger-dark:focus{color:#c52629 !important}.has-background-danger-dark{background-color:#9a1e20 !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:#414559 !important}.has-background-grey-darker{background-color:#414559 !important}.has-text-grey-dark{color:#51576d !important}.has-background-grey-dark{background-color:#51576d !important}.has-text-grey{color:#626880 !important}.has-background-grey{background-color:#626880 !important}.has-text-grey-light{color:#737994 !important}.has-background-grey-light{background-color:#737994 !important}.has-text-grey-lighter{color:#838ba7 !important}.has-background-grey-lighter{background-color:#838ba7 !important}.has-text-white-ter{color:#f5f5f5 !important}.has-background-white-ter{background-color:#f5f5f5 !important}.has-text-white-bis{color:#fafafa !important}.has-background-white-bis{background-color:#fafafa !important}.is-flex-direction-row{flex-direction:row !important}.is-flex-direction-row-reverse{flex-direction:row-reverse !important}.is-flex-direction-column{flex-direction:column !important}.is-flex-direction-column-reverse{flex-direction:column-reverse !important}.is-flex-wrap-nowrap{flex-wrap:nowrap !important}.is-flex-wrap-wrap{flex-wrap:wrap !important}.is-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse !important}.is-justify-content-flex-start{justify-content:flex-start !important}.is-justify-content-flex-end{justify-content:flex-end !important}.is-justify-content-center{justify-content:center !important}.is-justify-content-space-between{justify-content:space-between !important}.is-justify-content-space-around{justify-content:space-around !important}.is-justify-content-space-evenly{justify-content:space-evenly !important}.is-justify-content-start{justify-content:start !important}.is-justify-content-end{justify-content:end !important}.is-justify-content-left{justify-content:left !important}.is-justify-content-right{justify-content:right !important}.is-align-content-flex-start{align-content:flex-start !important}.is-align-content-flex-end{align-content:flex-end !important}.is-align-content-center{align-content:center !important}.is-align-content-space-between{align-content:space-between !important}.is-align-content-space-around{align-content:space-around !important}.is-align-content-space-evenly{align-content:space-evenly !important}.is-align-content-stretch{align-content:stretch !important}.is-align-content-start{align-content:start !important}.is-align-content-end{align-content:end !important}.is-align-content-baseline{align-content:baseline !important}.is-align-items-stretch{align-items:stretch !important}.is-align-items-flex-start{align-items:flex-start !important}.is-align-items-flex-end{align-items:flex-end !important}.is-align-items-center{align-items:center !important}.is-align-items-baseline{align-items:baseline !important}.is-align-items-start{align-items:start !important}.is-align-items-end{align-items:end !important}.is-align-items-self-start{align-items:self-start !important}.is-align-items-self-end{align-items:self-end !important}.is-align-self-auto{align-self:auto !important}.is-align-self-flex-start{align-self:flex-start !important}.is-align-self-flex-end{align-self:flex-end !important}.is-align-self-center{align-self:center !important}.is-align-self-baseline{align-self:baseline !important}.is-align-self-stretch{align-self:stretch !important}.is-flex-grow-0{flex-grow:0 !important}.is-flex-grow-1{flex-grow:1 !important}.is-flex-grow-2{flex-grow:2 !important}.is-flex-grow-3{flex-grow:3 !important}.is-flex-grow-4{flex-grow:4 !important}.is-flex-grow-5{flex-grow:5 !important}.is-flex-shrink-0{flex-shrink:0 !important}.is-flex-shrink-1{flex-shrink:1 !important}.is-flex-shrink-2{flex-shrink:2 !important}.is-flex-shrink-3{flex-shrink:3 !important}.is-flex-shrink-4{flex-shrink:4 !important}.is-flex-shrink-5{flex-shrink:5 !important}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-clickable{cursor:pointer !important;pointer-events:all !important}.is-clipped{overflow:hidden !important}.is-relative{position:relative !important}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.m-0{margin:0 !important}.mt-0{margin-top:0 !important}.mr-0{margin-right:0 !important}.mb-0{margin-bottom:0 !important}.ml-0{margin-left:0 !important}.mx-0{margin-left:0 !important;margin-right:0 !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.m-1{margin:.25rem !important}.mt-1{margin-top:.25rem !important}.mr-1{margin-right:.25rem !important}.mb-1{margin-bottom:.25rem !important}.ml-1{margin-left:.25rem !important}.mx-1{margin-left:.25rem !important;margin-right:.25rem !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-2{margin:.5rem !important}.mt-2{margin-top:.5rem !important}.mr-2{margin-right:.5rem !important}.mb-2{margin-bottom:.5rem !important}.ml-2{margin-left:.5rem !important}.mx-2{margin-left:.5rem !important;margin-right:.5rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-3{margin:.75rem !important}.mt-3{margin-top:.75rem !important}.mr-3{margin-right:.75rem !important}.mb-3{margin-bottom:.75rem !important}.ml-3{margin-left:.75rem !important}.mx-3{margin-left:.75rem !important;margin-right:.75rem !important}.my-3{margin-top:.75rem !important;margin-bottom:.75rem !important}.m-4{margin:1rem !important}.mt-4{margin-top:1rem !important}.mr-4{margin-right:1rem !important}.mb-4{margin-bottom:1rem !important}.ml-4{margin-left:1rem !important}.mx-4{margin-left:1rem !important;margin-right:1rem !important}.my-4{margin-top:1rem !important;margin-bottom:1rem !important}.m-5{margin:1.5rem !important}.mt-5{margin-top:1.5rem !important}.mr-5{margin-right:1.5rem !important}.mb-5{margin-bottom:1.5rem !important}.ml-5{margin-left:1.5rem !important}.mx-5{margin-left:1.5rem !important;margin-right:1.5rem !important}.my-5{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-6{margin:3rem !important}.mt-6{margin-top:3rem !important}.mr-6{margin-right:3rem !important}.mb-6{margin-bottom:3rem !important}.ml-6{margin-left:3rem !important}.mx-6{margin-left:3rem !important;margin-right:3rem !important}.my-6{margin-top:3rem !important;margin-bottom:3rem !important}.m-auto{margin:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-right:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-left:auto !important}.mx-auto{margin-left:auto !important;margin-right:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.p-0{padding:0 !important}.pt-0{padding-top:0 !important}.pr-0{padding-right:0 !important}.pb-0{padding-bottom:0 !important}.pl-0{padding-left:0 !important}.px-0{padding-left:0 !important;padding-right:0 !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.p-1{padding:.25rem !important}.pt-1{padding-top:.25rem !important}.pr-1{padding-right:.25rem !important}.pb-1{padding-bottom:.25rem !important}.pl-1{padding-left:.25rem !important}.px-1{padding-left:.25rem !important;padding-right:.25rem !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-2{padding:.5rem !important}.pt-2{padding-top:.5rem !important}.pr-2{padding-right:.5rem !important}.pb-2{padding-bottom:.5rem !important}.pl-2{padding-left:.5rem !important}.px-2{padding-left:.5rem !important;padding-right:.5rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-3{padding:.75rem !important}.pt-3{padding-top:.75rem !important}.pr-3{padding-right:.75rem !important}.pb-3{padding-bottom:.75rem !important}.pl-3{padding-left:.75rem !important}.px-3{padding-left:.75rem !important;padding-right:.75rem !important}.py-3{padding-top:.75rem !important;padding-bottom:.75rem !important}.p-4{padding:1rem !important}.pt-4{padding-top:1rem !important}.pr-4{padding-right:1rem !important}.pb-4{padding-bottom:1rem !important}.pl-4{padding-left:1rem !important}.px-4{padding-left:1rem !important;padding-right:1rem !important}.py-4{padding-top:1rem !important;padding-bottom:1rem !important}.p-5{padding:1.5rem !important}.pt-5{padding-top:1.5rem !important}.pr-5{padding-right:1.5rem !important}.pb-5{padding-bottom:1.5rem !important}.pl-5{padding-left:1.5rem !important}.px-5{padding-left:1.5rem !important;padding-right:1.5rem !important}.py-5{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-6{padding:3rem !important}.pt-6{padding-top:3rem !important}.pr-6{padding-right:3rem !important}.pb-6{padding-bottom:3rem !important}.pl-6{padding-left:3rem !important}.px-6{padding-left:3rem !important;padding-right:3rem !important}.py-6{padding-top:3rem !important;padding-bottom:3rem !important}.p-auto{padding:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-right:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-left:auto !important}.px-auto{padding-left:auto !important;padding-right:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !important}.is-size-1{font-size:3rem !important}.is-size-2{font-size:2.5rem !important}.is-size-3{font-size:2rem !important}.is-size-4{font-size:1.5rem !important}.is-size-5{font-size:1.25rem !important}.is-size-6{font-size:1rem !important}.is-size-7,html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink{font-size:.75rem !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:1rem !important}.is-size-7-mobile{font-size:.75rem !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:1rem !important}.is-size-7-tablet{font-size:.75rem !important}}@media screen and (max-width: 1055px){.is-size-1-touch{font-size:3rem !important}.is-size-2-touch{font-size:2.5rem !important}.is-size-3-touch{font-size:2rem !important}.is-size-4-touch{font-size:1.5rem !important}.is-size-5-touch{font-size:1.25rem !important}.is-size-6-touch{font-size:1rem !important}.is-size-7-touch{font-size:.75rem !important}}@media screen and (min-width: 1056px){.is-size-1-desktop{font-size:3rem !important}.is-size-2-desktop{font-size:2.5rem !important}.is-size-3-desktop{font-size:2rem !important}.is-size-4-desktop{font-size:1.5rem !important}.is-size-5-desktop{font-size:1.25rem !important}.is-size-6-desktop{font-size:1rem !important}.is-size-7-desktop{font-size:.75rem !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:1rem !important}.is-size-7-widescreen{font-size:.75rem !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:1rem !important}.is-size-7-fullhd{font-size:.75rem !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-centered-tablet-only{text-align:center !important}}@media screen and (max-width: 1055px){.has-text-centered-touch{text-align:center !important}}@media screen and (min-width: 1056px){.has-text-centered-desktop{text-align:center !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-centered-desktop-only{text-align:center !important}}@media screen and (min-width: 1216px){.has-text-centered-widescreen{text-align:center !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-centered-widescreen-only{text-align:center !important}}@media screen and (min-width: 1408px){.has-text-centered-fullhd{text-align:center !important}}@media screen and (max-width: 768px){.has-text-justified-mobile{text-align:justify !important}}@media screen and (min-width: 769px),print{.has-text-justified-tablet{text-align:justify !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-justified-tablet-only{text-align:justify !important}}@media screen and (max-width: 1055px){.has-text-justified-touch{text-align:justify !important}}@media screen and (min-width: 1056px){.has-text-justified-desktop{text-align:justify !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-justified-desktop-only{text-align:justify !important}}@media screen and (min-width: 1216px){.has-text-justified-widescreen{text-align:justify !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-justified-widescreen-only{text-align:justify !important}}@media screen and (min-width: 1408px){.has-text-justified-fullhd{text-align:justify !important}}@media screen and (max-width: 768px){.has-text-left-mobile{text-align:left !important}}@media screen and (min-width: 769px),print{.has-text-left-tablet{text-align:left !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-left-tablet-only{text-align:left !important}}@media screen and (max-width: 1055px){.has-text-left-touch{text-align:left !important}}@media screen and (min-width: 1056px){.has-text-left-desktop{text-align:left !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-left-desktop-only{text-align:left !important}}@media screen and (min-width: 1216px){.has-text-left-widescreen{text-align:left !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-left-widescreen-only{text-align:left !important}}@media screen and (min-width: 1408px){.has-text-left-fullhd{text-align:left !important}}@media screen and (max-width: 768px){.has-text-right-mobile{text-align:right !important}}@media screen and (min-width: 769px),print{.has-text-right-tablet{text-align:right !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-right-tablet-only{text-align:right !important}}@media screen and (max-width: 1055px){.has-text-right-touch{text-align:right !important}}@media screen and (min-width: 1056px){.has-text-right-desktop{text-align:right !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-right-desktop-only{text-align:right !important}}@media screen and (min-width: 1216px){.has-text-right-widescreen{text-align:right !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-right-widescreen-only{text-align:right !important}}@media screen and (min-width: 1408px){.has-text-right-fullhd{text-align:right !important}}.is-capitalized{text-transform:capitalize !important}.is-lowercase{text-transform:lowercase !important}.is-uppercase{text-transform:uppercase !important}.is-italic{font-style:italic !important}.is-underlined{text-decoration:underline !important}.has-text-weight-light{font-weight:300 !important}.has-text-weight-normal{font-weight:400 !important}.has-text-weight-medium{font-weight:500 !important}.has-text-weight-semibold{font-weight:600 !important}.has-text-weight-bold{font-weight:700 !important}.is-family-primary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-secondary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-sans-serif{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-monospace{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-family-code{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-block{display:block !important}@media screen and (max-width: 768px){.is-block-mobile{display:block !important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-block-tablet-only{display:block !important}}@media screen and (max-width: 1055px){.is-block-touch{display:block !important}}@media screen and (min-width: 1056px){.is-block-desktop{display:block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-block-desktop-only{display:block !important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block !important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block !important}}.is-flex{display:flex !important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex !important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-flex-tablet-only{display:flex !important}}@media screen and (max-width: 1055px){.is-flex-touch{display:flex !important}}@media screen and (min-width: 1056px){.is-flex-desktop{display:flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-flex-desktop-only{display:flex !important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex !important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex !important}}.is-inline{display:inline !important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline !important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-tablet-only{display:inline !important}}@media screen and (max-width: 1055px){.is-inline-touch{display:inline !important}}@media screen and (min-width: 1056px){.is-inline-desktop{display:inline !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-desktop-only{display:inline !important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline !important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline !important}}.is-inline-block{display:inline-block !important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block !important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-block-tablet-only{display:inline-block !important}}@media screen and (max-width: 1055px){.is-inline-block-touch{display:inline-block !important}}@media screen and (min-width: 1056px){.is-inline-block-desktop{display:inline-block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block !important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block !important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block !important}}.is-inline-flex{display:inline-flex !important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex !important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-flex-tablet-only{display:inline-flex !important}}@media screen and (max-width: 1055px){.is-inline-flex-touch{display:inline-flex !important}}@media screen and (min-width: 1056px){.is-inline-flex-desktop{display:inline-flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex !important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex !important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex !important}}.is-hidden{display:none !important}.is-sr-only{border:none !important;clip:rect(0, 0, 0, 0) !important;height:0.01em !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:0.01em !important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none !important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-hidden-tablet-only{display:none !important}}@media screen and (max-width: 1055px){.is-hidden-touch{display:none !important}}@media screen and (min-width: 1056px){.is-hidden-desktop{display:none !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-hidden-desktop-only{display:none !important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none !important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none !important}}.is-invisible{visibility:hidden !important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden !important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-invisible-tablet-only{visibility:hidden !important}}@media screen and (max-width: 1055px){.is-invisible-touch{visibility:hidden !important}}@media screen and (min-width: 1056px){.is-invisible-desktop{visibility:hidden !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden !important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden !important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden !important}}html.theme--catppuccin-frappe html{background-color:#303446;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--catppuccin-frappe article,html.theme--catppuccin-frappe aside,html.theme--catppuccin-frappe figure,html.theme--catppuccin-frappe footer,html.theme--catppuccin-frappe header,html.theme--catppuccin-frappe hgroup,html.theme--catppuccin-frappe section{display:block}html.theme--catppuccin-frappe body,html.theme--catppuccin-frappe button,html.theme--catppuccin-frappe input,html.theme--catppuccin-frappe optgroup,html.theme--catppuccin-frappe select,html.theme--catppuccin-frappe textarea{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif}html.theme--catppuccin-frappe code,html.theme--catppuccin-frappe 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--catppuccin-frappe body{color:#c6d0f5;font-size:1em;font-weight:400;line-height:1.5}html.theme--catppuccin-frappe a{color:#8caaee;cursor:pointer;text-decoration:none}html.theme--catppuccin-frappe a strong{color:currentColor}html.theme--catppuccin-frappe a:hover{color:#99d1db}html.theme--catppuccin-frappe code{background-color:#292c3c;color:#c6d0f5;font-size:.875em;font-weight:normal;padding:.1em}html.theme--catppuccin-frappe hr{background-color:#292c3c;border:none;display:block;height:2px;margin:1.5rem 0}html.theme--catppuccin-frappe img{height:auto;max-width:100%}html.theme--catppuccin-frappe input[type="checkbox"],html.theme--catppuccin-frappe input[type="radio"]{vertical-align:baseline}html.theme--catppuccin-frappe small{font-size:.875em}html.theme--catppuccin-frappe span{font-style:inherit;font-weight:inherit}html.theme--catppuccin-frappe strong{color:#b0bef1;font-weight:700}html.theme--catppuccin-frappe fieldset{border:none}html.theme--catppuccin-frappe pre{-webkit-overflow-scrolling:touch;background-color:#292c3c;color:#c6d0f5;font-size:.875em;overflow-x:auto;padding:1.25rem 1.5rem;white-space:pre;word-wrap:normal}html.theme--catppuccin-frappe pre code{background-color:transparent;color:currentColor;font-size:1em;padding:0}html.theme--catppuccin-frappe table td,html.theme--catppuccin-frappe table th{vertical-align:top}html.theme--catppuccin-frappe table td:not([align]),html.theme--catppuccin-frappe table th:not([align]){text-align:inherit}html.theme--catppuccin-frappe table th{color:#b0bef1}html.theme--catppuccin-frappe .box{background-color:#51576d;border-radius:8px;box-shadow:none;color:#c6d0f5;display:block;padding:1.25rem}html.theme--catppuccin-frappe a.box:hover,html.theme--catppuccin-frappe a.box:focus{box-shadow:0 0.5em 1em -0.125em rgba(10,10,10,0.1),0 0 0 1px #8caaee}html.theme--catppuccin-frappe a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2),0 0 0 1px #8caaee}html.theme--catppuccin-frappe .button{background-color:#292c3c;border-color:#484d69;border-width:1px;color:#8caaee;cursor:pointer;justify-content:center;padding-bottom:calc(0.5em - 1px);padding-left:1em;padding-right:1em;padding-top:calc(0.5em - 1px);text-align:center;white-space:nowrap}html.theme--catppuccin-frappe .button strong{color:inherit}html.theme--catppuccin-frappe .button .icon,html.theme--catppuccin-frappe .button .icon.is-small,html.theme--catppuccin-frappe .button #documenter .docs-sidebar form.docs-search>input.icon,html.theme--catppuccin-frappe #documenter .docs-sidebar .button form.docs-search>input.icon,html.theme--catppuccin-frappe .button .icon.is-medium,html.theme--catppuccin-frappe .button .icon.is-large{height:1.5em;width:1.5em}html.theme--catppuccin-frappe .button .icon:first-child:not(:last-child){margin-left:calc(-0.5em - 1px);margin-right:.25em}html.theme--catppuccin-frappe .button .icon:last-child:not(:first-child){margin-left:.25em;margin-right:calc(-0.5em - 1px)}html.theme--catppuccin-frappe .button .icon:first-child:last-child{margin-left:calc(-0.5em - 1px);margin-right:calc(-0.5em - 1px)}html.theme--catppuccin-frappe .button:hover,html.theme--catppuccin-frappe .button.is-hovered{border-color:#737994;color:#b0bef1}html.theme--catppuccin-frappe .button:focus,html.theme--catppuccin-frappe .button.is-focused{border-color:#737994;color:#769aeb}html.theme--catppuccin-frappe .button:focus:not(:active),html.theme--catppuccin-frappe .button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(140,170,238,0.25)}html.theme--catppuccin-frappe .button:active,html.theme--catppuccin-frappe .button.is-active{border-color:#51576d;color:#b0bef1}html.theme--catppuccin-frappe .button.is-text{background-color:transparent;border-color:transparent;color:#c6d0f5;text-decoration:underline}html.theme--catppuccin-frappe .button.is-text:hover,html.theme--catppuccin-frappe .button.is-text.is-hovered,html.theme--catppuccin-frappe .button.is-text:focus,html.theme--catppuccin-frappe .button.is-text.is-focused{background-color:#292c3c;color:#b0bef1}html.theme--catppuccin-frappe .button.is-text:active,html.theme--catppuccin-frappe .button.is-text.is-active{background-color:#1f212d;color:#b0bef1}html.theme--catppuccin-frappe .button.is-text[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}html.theme--catppuccin-frappe .button.is-ghost{background:none;border-color:rgba(0,0,0,0);color:#8caaee;text-decoration:none}html.theme--catppuccin-frappe .button.is-ghost:hover,html.theme--catppuccin-frappe .button.is-ghost.is-hovered{color:#8caaee;text-decoration:underline}html.theme--catppuccin-frappe .button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-white:hover,html.theme--catppuccin-frappe .button.is-white.is-hovered{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-white:focus,html.theme--catppuccin-frappe .button.is-white.is-focused{border-color:transparent;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-white:focus:not(:active),html.theme--catppuccin-frappe .button.is-white.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-frappe .button.is-white:active,html.theme--catppuccin-frappe .button.is-white.is-active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-white[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-white{background-color:#fff;border-color:#fff;box-shadow:none}html.theme--catppuccin-frappe .button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .button.is-white.is-inverted:hover,html.theme--catppuccin-frappe .button.is-white.is-inverted.is-hovered{background-color:#000}html.theme--catppuccin-frappe .button.is-white.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-white.is-inverted{background-color:#0a0a0a;border-color:transparent;box-shadow:none;color:#fff}html.theme--catppuccin-frappe .button.is-white.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-frappe .button.is-white.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-frappe .button.is-white.is-outlined:hover,html.theme--catppuccin-frappe .button.is-white.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-white.is-outlined:focus,html.theme--catppuccin-frappe .button.is-white.is-outlined.is-focused{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-white.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-white.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-white.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-white.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-frappe .button.is-white.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-white.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined.is-focused{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-black{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-black:hover,html.theme--catppuccin-frappe .button.is-black.is-hovered{background-color:#040404;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-black:focus,html.theme--catppuccin-frappe .button.is-black.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-black:focus:not(:active),html.theme--catppuccin-frappe .button.is-black.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-frappe .button.is-black:active,html.theme--catppuccin-frappe .button.is-black.is-active{background-color:#000;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-black[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-black{background-color:#0a0a0a;border-color:#0a0a0a;box-shadow:none}html.theme--catppuccin-frappe .button.is-black.is-inverted{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-black.is-inverted:hover,html.theme--catppuccin-frappe .button.is-black.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-frappe .button.is-black.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-black.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-black.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-black.is-outlined:hover,html.theme--catppuccin-frappe .button.is-black.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-black.is-outlined:focus,html.theme--catppuccin-frappe .button.is-black.is-outlined.is-focused{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .button.is-black.is-outlined.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-frappe .button.is-black.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-black.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-black.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-black.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-black.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined.is-focused{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-frappe .button.is-light{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-light:hover,html.theme--catppuccin-frappe .button.is-light.is-hovered{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-light:focus,html.theme--catppuccin-frappe .button.is-light.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-light:focus:not(:active),html.theme--catppuccin-frappe .button.is-light.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-frappe .button.is-light:active,html.theme--catppuccin-frappe .button.is-light.is-active{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-light[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-light{background-color:#f5f5f5;border-color:#f5f5f5;box-shadow:none}html.theme--catppuccin-frappe .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-frappe .button.is-light.is-inverted:hover,html.theme--catppuccin-frappe .button.is-light.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-light.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#f5f5f5}html.theme--catppuccin-frappe .button.is-light.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-frappe .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;color:#f5f5f5}html.theme--catppuccin-frappe .button.is-light.is-outlined:hover,html.theme--catppuccin-frappe .button.is-light.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-light.is-outlined:focus,html.theme--catppuccin-frappe .button.is-light.is-outlined.is-focused{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}html.theme--catppuccin-frappe .button.is-light.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-light.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-light.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-light.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-frappe .button.is-light.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;box-shadow:none;color:#f5f5f5}html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-dark,html.theme--catppuccin-frappe .content kbd.button{background-color:#414559;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-dark:hover,html.theme--catppuccin-frappe .content kbd.button:hover,html.theme--catppuccin-frappe .button.is-dark.is-hovered,html.theme--catppuccin-frappe .content kbd.button.is-hovered{background-color:#3c3f52;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-dark:focus,html.theme--catppuccin-frappe .content kbd.button:focus,html.theme--catppuccin-frappe .button.is-dark.is-focused,html.theme--catppuccin-frappe .content kbd.button.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-dark:focus:not(:active),html.theme--catppuccin-frappe .content kbd.button:focus:not(:active),html.theme--catppuccin-frappe .button.is-dark.is-focused:not(:active),html.theme--catppuccin-frappe .content kbd.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(65,69,89,0.25)}html.theme--catppuccin-frappe .button.is-dark:active,html.theme--catppuccin-frappe .content kbd.button:active,html.theme--catppuccin-frappe .button.is-dark.is-active,html.theme--catppuccin-frappe .content kbd.button.is-active{background-color:#363a4a;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-dark[disabled],html.theme--catppuccin-frappe .content kbd.button[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-dark,fieldset[disabled] html.theme--catppuccin-frappe .content kbd.button{background-color:#414559;border-color:#414559;box-shadow:none}html.theme--catppuccin-frappe .button.is-dark.is-inverted,html.theme--catppuccin-frappe .content kbd.button.is-inverted{background-color:#fff;color:#414559}html.theme--catppuccin-frappe .button.is-dark.is-inverted:hover,html.theme--catppuccin-frappe .content kbd.button.is-inverted:hover,html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-hovered,html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-frappe .button.is-dark.is-inverted[disabled],html.theme--catppuccin-frappe .content kbd.button.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-dark.is-inverted,fieldset[disabled] html.theme--catppuccin-frappe .content kbd.button.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#414559}html.theme--catppuccin-frappe .button.is-dark.is-loading::after,html.theme--catppuccin-frappe .content kbd.button.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-dark.is-outlined,html.theme--catppuccin-frappe .content kbd.button.is-outlined{background-color:transparent;border-color:#414559;color:#414559}html.theme--catppuccin-frappe .button.is-dark.is-outlined:hover,html.theme--catppuccin-frappe .content kbd.button.is-outlined:hover,html.theme--catppuccin-frappe .button.is-dark.is-outlined.is-hovered,html.theme--catppuccin-frappe .content kbd.button.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-dark.is-outlined:focus,html.theme--catppuccin-frappe .content kbd.button.is-outlined:focus,html.theme--catppuccin-frappe .button.is-dark.is-outlined.is-focused,html.theme--catppuccin-frappe .content kbd.button.is-outlined.is-focused{background-color:#414559;border-color:#414559;color:#fff}html.theme--catppuccin-frappe .button.is-dark.is-outlined.is-loading::after,html.theme--catppuccin-frappe .content kbd.button.is-outlined.is-loading::after{border-color:transparent transparent #414559 #414559 !important}html.theme--catppuccin-frappe .button.is-dark.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .content kbd.button.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-dark.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .content kbd.button.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-dark.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .content kbd.button.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-dark.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-frappe .content kbd.button.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-dark.is-outlined[disabled],html.theme--catppuccin-frappe .content kbd.button.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-dark.is-outlined,fieldset[disabled] html.theme--catppuccin-frappe .content kbd.button.is-outlined{background-color:transparent;border-color:#414559;box-shadow:none;color:#414559}html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined,html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined.is-focused,html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined.is-focused{background-color:#fff;color:#414559}html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #414559 #414559 !important}html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined[disabled],html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-dark.is-inverted.is-outlined,fieldset[disabled] html.theme--catppuccin-frappe .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-frappe .button.is-primary,html.theme--catppuccin-frappe .docstring>section>a.button.docs-sourcelink{background-color:#8caaee;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-primary:hover,html.theme--catppuccin-frappe .docstring>section>a.button.docs-sourcelink:hover,html.theme--catppuccin-frappe .button.is-primary.is-hovered,html.theme--catppuccin-frappe .docstring>section>a.button.is-hovered.docs-sourcelink{background-color:#81a2ec;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-primary:focus,html.theme--catppuccin-frappe .docstring>section>a.button.docs-sourcelink:focus,html.theme--catppuccin-frappe .button.is-primary.is-focused,html.theme--catppuccin-frappe .docstring>section>a.button.is-focused.docs-sourcelink{border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-primary:focus:not(:active),html.theme--catppuccin-frappe .docstring>section>a.button.docs-sourcelink:focus:not(:active),html.theme--catppuccin-frappe .button.is-primary.is-focused:not(:active),html.theme--catppuccin-frappe .docstring>section>a.button.is-focused.docs-sourcelink:not(:active){box-shadow:0 0 0 0.125em rgba(140,170,238,0.25)}html.theme--catppuccin-frappe .button.is-primary:active,html.theme--catppuccin-frappe .docstring>section>a.button.docs-sourcelink:active,html.theme--catppuccin-frappe .button.is-primary.is-active,html.theme--catppuccin-frappe .docstring>section>a.button.is-active.docs-sourcelink{background-color:#769aeb;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-primary[disabled],html.theme--catppuccin-frappe .docstring>section>a.button.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-primary,fieldset[disabled] html.theme--catppuccin-frappe .docstring>section>a.button.docs-sourcelink{background-color:#8caaee;border-color:#8caaee;box-shadow:none}html.theme--catppuccin-frappe .button.is-primary.is-inverted,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;color:#8caaee}html.theme--catppuccin-frappe .button.is-primary.is-inverted:hover,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.docs-sourcelink:hover,html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-hovered,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-hovered.docs-sourcelink{background-color:#f2f2f2}html.theme--catppuccin-frappe .button.is-primary.is-inverted[disabled],html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-primary.is-inverted,fieldset[disabled] html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;border-color:transparent;box-shadow:none;color:#8caaee}html.theme--catppuccin-frappe .button.is-primary.is-loading::after,html.theme--catppuccin-frappe .docstring>section>a.button.is-loading.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-primary.is-outlined,html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#8caaee;color:#8caaee}html.theme--catppuccin-frappe .button.is-primary.is-outlined:hover,html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.docs-sourcelink:hover,html.theme--catppuccin-frappe .button.is-primary.is-outlined.is-hovered,html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.is-hovered.docs-sourcelink,html.theme--catppuccin-frappe .button.is-primary.is-outlined:focus,html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.docs-sourcelink:focus,html.theme--catppuccin-frappe .button.is-primary.is-outlined.is-focused,html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.is-focused.docs-sourcelink{background-color:#8caaee;border-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .button.is-primary.is-outlined.is-loading::after,html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink::after{border-color:transparent transparent #8caaee #8caaee !important}html.theme--catppuccin-frappe .button.is-primary.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--catppuccin-frappe .button.is-primary.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--catppuccin-frappe .button.is-primary.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--catppuccin-frappe .button.is-primary.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-primary.is-outlined[disabled],html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-primary.is-outlined,fieldset[disabled] html.theme--catppuccin-frappe .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#8caaee;box-shadow:none;color:#8caaee}html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:hover,html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink,html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:focus,html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined.is-focused,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.is-focused.docs-sourcelink{background-color:#fff;color:#8caaee}html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #8caaee #8caaee !important}html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined[disabled],html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-primary.is-inverted.is-outlined,fieldset[disabled] html.theme--catppuccin-frappe .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-frappe .button.is-primary.is-light,html.theme--catppuccin-frappe .docstring>section>a.button.is-light.docs-sourcelink{background-color:#edf2fc;color:#153a8e}html.theme--catppuccin-frappe .button.is-primary.is-light:hover,html.theme--catppuccin-frappe .docstring>section>a.button.is-light.docs-sourcelink:hover,html.theme--catppuccin-frappe .button.is-primary.is-light.is-hovered,html.theme--catppuccin-frappe .docstring>section>a.button.is-light.is-hovered.docs-sourcelink{background-color:#e2eafb;border-color:transparent;color:#153a8e}html.theme--catppuccin-frappe .button.is-primary.is-light:active,html.theme--catppuccin-frappe .docstring>section>a.button.is-light.docs-sourcelink:active,html.theme--catppuccin-frappe .button.is-primary.is-light.is-active,html.theme--catppuccin-frappe .docstring>section>a.button.is-light.is-active.docs-sourcelink{background-color:#d7e1f9;border-color:transparent;color:#153a8e}html.theme--catppuccin-frappe .button.is-link{background-color:#8caaee;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-link:hover,html.theme--catppuccin-frappe .button.is-link.is-hovered{background-color:#81a2ec;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-link:focus,html.theme--catppuccin-frappe .button.is-link.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-link:focus:not(:active),html.theme--catppuccin-frappe .button.is-link.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(140,170,238,0.25)}html.theme--catppuccin-frappe .button.is-link:active,html.theme--catppuccin-frappe .button.is-link.is-active{background-color:#769aeb;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-link[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-link{background-color:#8caaee;border-color:#8caaee;box-shadow:none}html.theme--catppuccin-frappe .button.is-link.is-inverted{background-color:#fff;color:#8caaee}html.theme--catppuccin-frappe .button.is-link.is-inverted:hover,html.theme--catppuccin-frappe .button.is-link.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-frappe .button.is-link.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#8caaee}html.theme--catppuccin-frappe .button.is-link.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-link.is-outlined{background-color:transparent;border-color:#8caaee;color:#8caaee}html.theme--catppuccin-frappe .button.is-link.is-outlined:hover,html.theme--catppuccin-frappe .button.is-link.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-link.is-outlined:focus,html.theme--catppuccin-frappe .button.is-link.is-outlined.is-focused{background-color:#8caaee;border-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #8caaee #8caaee !important}html.theme--catppuccin-frappe .button.is-link.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-link.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-link.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-link.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-link.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-link.is-outlined{background-color:transparent;border-color:#8caaee;box-shadow:none;color:#8caaee}html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined.is-focused{background-color:#fff;color:#8caaee}html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #8caaee #8caaee !important}html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-frappe .button.is-link.is-light{background-color:#edf2fc;color:#153a8e}html.theme--catppuccin-frappe .button.is-link.is-light:hover,html.theme--catppuccin-frappe .button.is-link.is-light.is-hovered{background-color:#e2eafb;border-color:transparent;color:#153a8e}html.theme--catppuccin-frappe .button.is-link.is-light:active,html.theme--catppuccin-frappe .button.is-link.is-light.is-active{background-color:#d7e1f9;border-color:transparent;color:#153a8e}html.theme--catppuccin-frappe .button.is-info{background-color:#81c8be;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-info:hover,html.theme--catppuccin-frappe .button.is-info.is-hovered{background-color:#78c4b9;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-info:focus,html.theme--catppuccin-frappe .button.is-info.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-info:focus:not(:active),html.theme--catppuccin-frappe .button.is-info.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(129,200,190,0.25)}html.theme--catppuccin-frappe .button.is-info:active,html.theme--catppuccin-frappe .button.is-info.is-active{background-color:#6fc0b5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-info[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-info{background-color:#81c8be;border-color:#81c8be;box-shadow:none}html.theme--catppuccin-frappe .button.is-info.is-inverted{background-color:rgba(0,0,0,0.7);color:#81c8be}html.theme--catppuccin-frappe .button.is-info.is-inverted:hover,html.theme--catppuccin-frappe .button.is-info.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-info.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-info.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#81c8be}html.theme--catppuccin-frappe .button.is-info.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-frappe .button.is-info.is-outlined{background-color:transparent;border-color:#81c8be;color:#81c8be}html.theme--catppuccin-frappe .button.is-info.is-outlined:hover,html.theme--catppuccin-frappe .button.is-info.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-info.is-outlined:focus,html.theme--catppuccin-frappe .button.is-info.is-outlined.is-focused{background-color:#81c8be;border-color:#81c8be;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #81c8be #81c8be !important}html.theme--catppuccin-frappe .button.is-info.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-info.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-info.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-info.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-frappe .button.is-info.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-info.is-outlined{background-color:transparent;border-color:#81c8be;box-shadow:none;color:#81c8be}html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#81c8be}html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #81c8be #81c8be !important}html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-info.is-light{background-color:#f1f9f8;color:#2d675f}html.theme--catppuccin-frappe .button.is-info.is-light:hover,html.theme--catppuccin-frappe .button.is-info.is-light.is-hovered{background-color:#e8f5f3;border-color:transparent;color:#2d675f}html.theme--catppuccin-frappe .button.is-info.is-light:active,html.theme--catppuccin-frappe .button.is-info.is-light.is-active{background-color:#dff1ef;border-color:transparent;color:#2d675f}html.theme--catppuccin-frappe .button.is-success{background-color:#a6d189;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-success:hover,html.theme--catppuccin-frappe .button.is-success.is-hovered{background-color:#9fcd80;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-success:focus,html.theme--catppuccin-frappe .button.is-success.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-success:focus:not(:active),html.theme--catppuccin-frappe .button.is-success.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(166,209,137,0.25)}html.theme--catppuccin-frappe .button.is-success:active,html.theme--catppuccin-frappe .button.is-success.is-active{background-color:#98ca77;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-success[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-success{background-color:#a6d189;border-color:#a6d189;box-shadow:none}html.theme--catppuccin-frappe .button.is-success.is-inverted{background-color:rgba(0,0,0,0.7);color:#a6d189}html.theme--catppuccin-frappe .button.is-success.is-inverted:hover,html.theme--catppuccin-frappe .button.is-success.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-success.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-success.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#a6d189}html.theme--catppuccin-frappe .button.is-success.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-frappe .button.is-success.is-outlined{background-color:transparent;border-color:#a6d189;color:#a6d189}html.theme--catppuccin-frappe .button.is-success.is-outlined:hover,html.theme--catppuccin-frappe .button.is-success.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-success.is-outlined:focus,html.theme--catppuccin-frappe .button.is-success.is-outlined.is-focused{background-color:#a6d189;border-color:#a6d189;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #a6d189 #a6d189 !important}html.theme--catppuccin-frappe .button.is-success.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-success.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-success.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-success.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-frappe .button.is-success.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-success.is-outlined{background-color:transparent;border-color:#a6d189;box-shadow:none;color:#a6d189}html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#a6d189}html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #a6d189 #a6d189 !important}html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-success.is-light{background-color:#f4f9f0;color:#446a29}html.theme--catppuccin-frappe .button.is-success.is-light:hover,html.theme--catppuccin-frappe .button.is-success.is-light.is-hovered{background-color:#edf6e7;border-color:transparent;color:#446a29}html.theme--catppuccin-frappe .button.is-success.is-light:active,html.theme--catppuccin-frappe .button.is-success.is-light.is-active{background-color:#e6f2de;border-color:transparent;color:#446a29}html.theme--catppuccin-frappe .button.is-warning{background-color:#e5c890;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-warning:hover,html.theme--catppuccin-frappe .button.is-warning.is-hovered{background-color:#e3c386;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-warning:focus,html.theme--catppuccin-frappe .button.is-warning.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-warning:focus:not(:active),html.theme--catppuccin-frappe .button.is-warning.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(229,200,144,0.25)}html.theme--catppuccin-frappe .button.is-warning:active,html.theme--catppuccin-frappe .button.is-warning.is-active{background-color:#e0be7b;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-warning[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-warning{background-color:#e5c890;border-color:#e5c890;box-shadow:none}html.theme--catppuccin-frappe .button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);color:#e5c890}html.theme--catppuccin-frappe .button.is-warning.is-inverted:hover,html.theme--catppuccin-frappe .button.is-warning.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-warning.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#e5c890}html.theme--catppuccin-frappe .button.is-warning.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-frappe .button.is-warning.is-outlined{background-color:transparent;border-color:#e5c890;color:#e5c890}html.theme--catppuccin-frappe .button.is-warning.is-outlined:hover,html.theme--catppuccin-frappe .button.is-warning.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-warning.is-outlined:focus,html.theme--catppuccin-frappe .button.is-warning.is-outlined.is-focused{background-color:#e5c890;border-color:#e5c890;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #e5c890 #e5c890 !important}html.theme--catppuccin-frappe .button.is-warning.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-warning.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-warning.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .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}html.theme--catppuccin-frappe .button.is-warning.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-warning.is-outlined{background-color:transparent;border-color:#e5c890;box-shadow:none;color:#e5c890}html.theme--catppuccin-frappe .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)}html.theme--catppuccin-frappe .button.is-warning.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .button.is-warning.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-warning.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .button.is-warning.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#e5c890}html.theme--catppuccin-frappe .button.is-warning.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-warning.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #e5c890 #e5c890 !important}html.theme--catppuccin-frappe .button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .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)}html.theme--catppuccin-frappe .button.is-warning.is-light{background-color:#fbf7ee;color:#78591c}html.theme--catppuccin-frappe .button.is-warning.is-light:hover,html.theme--catppuccin-frappe .button.is-warning.is-light.is-hovered{background-color:#f9f2e4;border-color:transparent;color:#78591c}html.theme--catppuccin-frappe .button.is-warning.is-light:active,html.theme--catppuccin-frappe .button.is-warning.is-light.is-active{background-color:#f6edda;border-color:transparent;color:#78591c}html.theme--catppuccin-frappe .button.is-danger{background-color:#e78284;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-danger:hover,html.theme--catppuccin-frappe .button.is-danger.is-hovered{background-color:#e57779;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-danger:focus,html.theme--catppuccin-frappe .button.is-danger.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-danger:focus:not(:active),html.theme--catppuccin-frappe .button.is-danger.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(231,130,132,0.25)}html.theme--catppuccin-frappe .button.is-danger:active,html.theme--catppuccin-frappe .button.is-danger.is-active{background-color:#e36d6f;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .button.is-danger[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-danger{background-color:#e78284;border-color:#e78284;box-shadow:none}html.theme--catppuccin-frappe .button.is-danger.is-inverted{background-color:#fff;color:#e78284}html.theme--catppuccin-frappe .button.is-danger.is-inverted:hover,html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-frappe .button.is-danger.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-danger.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#e78284}html.theme--catppuccin-frappe .button.is-danger.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-danger.is-outlined{background-color:transparent;border-color:#e78284;color:#e78284}html.theme--catppuccin-frappe .button.is-danger.is-outlined:hover,html.theme--catppuccin-frappe .button.is-danger.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-danger.is-outlined:focus,html.theme--catppuccin-frappe .button.is-danger.is-outlined.is-focused{background-color:#e78284;border-color:#e78284;color:#fff}html.theme--catppuccin-frappe .button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #e78284 #e78284 !important}html.theme--catppuccin-frappe .button.is-danger.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-danger.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-danger.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-danger.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-frappe .button.is-danger.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-danger.is-outlined{background-color:transparent;border-color:#e78284;box-shadow:none;color:#e78284}html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined:hover,html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined:focus,html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined.is-focused{background-color:#fff;color:#e78284}html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #e78284 #e78284 !important}html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-frappe .button.is-danger.is-light{background-color:#fceeee;color:#9a1e20}html.theme--catppuccin-frappe .button.is-danger.is-light:hover,html.theme--catppuccin-frappe .button.is-danger.is-light.is-hovered{background-color:#fae3e4;border-color:transparent;color:#9a1e20}html.theme--catppuccin-frappe .button.is-danger.is-light:active,html.theme--catppuccin-frappe .button.is-danger.is-light.is-active{background-color:#f8d8d9;border-color:transparent;color:#9a1e20}html.theme--catppuccin-frappe .button.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.button{font-size:.75rem}html.theme--catppuccin-frappe .button.is-small:not(.is-rounded),html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.button:not(.is-rounded){border-radius:3px}html.theme--catppuccin-frappe .button.is-normal{font-size:1rem}html.theme--catppuccin-frappe .button.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .button.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .button[disabled],fieldset[disabled] html.theme--catppuccin-frappe .button{background-color:#737994;border-color:#626880;box-shadow:none;opacity:.5}html.theme--catppuccin-frappe .button.is-fullwidth{display:flex;width:100%}html.theme--catppuccin-frappe .button.is-loading{color:transparent !important;pointer-events:none}html.theme--catppuccin-frappe .button.is-loading::after{position:absolute;left:calc(50% - (1em * 0.5));top:calc(50% - (1em * 0.5));position:absolute !important}html.theme--catppuccin-frappe .button.is-static{background-color:#292c3c;border-color:#626880;color:#838ba7;box-shadow:none;pointer-events:none}html.theme--catppuccin-frappe .button.is-rounded,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.button{border-radius:9999px;padding-left:calc(1em + 0.25em);padding-right:calc(1em + 0.25em)}html.theme--catppuccin-frappe .buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-frappe .buttons .button{margin-bottom:0.5rem}html.theme--catppuccin-frappe .buttons .button:not(:last-child):not(.is-fullwidth){margin-right:.5rem}html.theme--catppuccin-frappe .buttons:last-child{margin-bottom:-0.5rem}html.theme--catppuccin-frappe .buttons:not(:last-child){margin-bottom:1rem}html.theme--catppuccin-frappe .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){font-size:.75rem}html.theme--catppuccin-frappe .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large):not(.is-rounded){border-radius:3px}html.theme--catppuccin-frappe .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}html.theme--catppuccin-frappe .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}html.theme--catppuccin-frappe .buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-frappe .buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}html.theme--catppuccin-frappe .buttons.has-addons .button:last-child{margin-right:0}html.theme--catppuccin-frappe .buttons.has-addons .button:hover,html.theme--catppuccin-frappe .buttons.has-addons .button.is-hovered{z-index:2}html.theme--catppuccin-frappe .buttons.has-addons .button:focus,html.theme--catppuccin-frappe .buttons.has-addons .button.is-focused,html.theme--catppuccin-frappe .buttons.has-addons .button:active,html.theme--catppuccin-frappe .buttons.has-addons .button.is-active,html.theme--catppuccin-frappe .buttons.has-addons .button.is-selected{z-index:3}html.theme--catppuccin-frappe .buttons.has-addons .button:focus:hover,html.theme--catppuccin-frappe .buttons.has-addons .button.is-focused:hover,html.theme--catppuccin-frappe .buttons.has-addons .button:active:hover,html.theme--catppuccin-frappe .buttons.has-addons .button.is-active:hover,html.theme--catppuccin-frappe .buttons.has-addons .button.is-selected:hover{z-index:4}html.theme--catppuccin-frappe .buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-frappe .buttons.is-centered{justify-content:center}html.theme--catppuccin-frappe .buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}html.theme--catppuccin-frappe .buttons.is-right{justify-content:flex-end}html.theme--catppuccin-frappe .buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .button.is-responsive.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.5625rem}html.theme--catppuccin-frappe .button.is-responsive,html.theme--catppuccin-frappe .button.is-responsive.is-normal{font-size:.65625rem}html.theme--catppuccin-frappe .button.is-responsive.is-medium{font-size:.75rem}html.theme--catppuccin-frappe .button.is-responsive.is-large{font-size:1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-frappe .button.is-responsive.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.65625rem}html.theme--catppuccin-frappe .button.is-responsive,html.theme--catppuccin-frappe .button.is-responsive.is-normal{font-size:.75rem}html.theme--catppuccin-frappe .button.is-responsive.is-medium{font-size:1rem}html.theme--catppuccin-frappe .button.is-responsive.is-large{font-size:1.25rem}}html.theme--catppuccin-frappe .container{flex-grow:1;margin:0 auto;position:relative;width:auto}html.theme--catppuccin-frappe .container.is-fluid{max-width:none !important;padding-left:32px;padding-right:32px;width:100%}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .container{max-width:992px}}@media screen and (max-width: 1215px){html.theme--catppuccin-frappe .container.is-widescreen:not(.is-max-desktop){max-width:1152px}}@media screen and (max-width: 1407px){html.theme--catppuccin-frappe .container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .container:not(.is-max-desktop){max-width:1152px}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .container:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}html.theme--catppuccin-frappe .content li+li{margin-top:0.25em}html.theme--catppuccin-frappe .content p:not(:last-child),html.theme--catppuccin-frappe .content dl:not(:last-child),html.theme--catppuccin-frappe .content ol:not(:last-child),html.theme--catppuccin-frappe .content ul:not(:last-child),html.theme--catppuccin-frappe .content blockquote:not(:last-child),html.theme--catppuccin-frappe .content pre:not(:last-child),html.theme--catppuccin-frappe .content table:not(:last-child){margin-bottom:1em}html.theme--catppuccin-frappe .content h1,html.theme--catppuccin-frappe .content h2,html.theme--catppuccin-frappe .content h3,html.theme--catppuccin-frappe .content h4,html.theme--catppuccin-frappe .content h5,html.theme--catppuccin-frappe .content h6{color:#c6d0f5;font-weight:600;line-height:1.125}html.theme--catppuccin-frappe .content h1{font-size:2em;margin-bottom:0.5em}html.theme--catppuccin-frappe .content h1:not(:first-child){margin-top:1em}html.theme--catppuccin-frappe .content h2{font-size:1.75em;margin-bottom:0.5714em}html.theme--catppuccin-frappe .content h2:not(:first-child){margin-top:1.1428em}html.theme--catppuccin-frappe .content h3{font-size:1.5em;margin-bottom:0.6666em}html.theme--catppuccin-frappe .content h3:not(:first-child){margin-top:1.3333em}html.theme--catppuccin-frappe .content h4{font-size:1.25em;margin-bottom:0.8em}html.theme--catppuccin-frappe .content h5{font-size:1.125em;margin-bottom:0.8888em}html.theme--catppuccin-frappe .content h6{font-size:1em;margin-bottom:1em}html.theme--catppuccin-frappe .content blockquote{background-color:#292c3c;border-left:5px solid #626880;padding:1.25em 1.5em}html.theme--catppuccin-frappe .content ol{list-style-position:outside;margin-left:2em;margin-top:1em}html.theme--catppuccin-frappe .content ol:not([type]){list-style-type:decimal}html.theme--catppuccin-frappe .content ol.is-lower-alpha:not([type]){list-style-type:lower-alpha}html.theme--catppuccin-frappe .content ol.is-lower-roman:not([type]){list-style-type:lower-roman}html.theme--catppuccin-frappe .content ol.is-upper-alpha:not([type]){list-style-type:upper-alpha}html.theme--catppuccin-frappe .content ol.is-upper-roman:not([type]){list-style-type:upper-roman}html.theme--catppuccin-frappe .content ul{list-style:disc outside;margin-left:2em;margin-top:1em}html.theme--catppuccin-frappe .content ul ul{list-style-type:circle;margin-top:0.5em}html.theme--catppuccin-frappe .content ul ul ul{list-style-type:square}html.theme--catppuccin-frappe .content dd{margin-left:2em}html.theme--catppuccin-frappe .content figure{margin-left:2em;margin-right:2em;text-align:center}html.theme--catppuccin-frappe .content figure:not(:first-child){margin-top:2em}html.theme--catppuccin-frappe .content figure:not(:last-child){margin-bottom:2em}html.theme--catppuccin-frappe .content figure img{display:inline-block}html.theme--catppuccin-frappe .content figure figcaption{font-style:italic}html.theme--catppuccin-frappe .content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:0;white-space:pre;word-wrap:normal}html.theme--catppuccin-frappe .content sup,html.theme--catppuccin-frappe .content sub{font-size:75%}html.theme--catppuccin-frappe .content table{width:100%}html.theme--catppuccin-frappe .content table td,html.theme--catppuccin-frappe .content table th{border:1px solid #626880;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--catppuccin-frappe .content table th{color:#b0bef1}html.theme--catppuccin-frappe .content table th:not([align]){text-align:inherit}html.theme--catppuccin-frappe .content table thead td,html.theme--catppuccin-frappe .content table thead th{border-width:0 0 2px;color:#b0bef1}html.theme--catppuccin-frappe .content table tfoot td,html.theme--catppuccin-frappe .content table tfoot th{border-width:2px 0 0;color:#b0bef1}html.theme--catppuccin-frappe .content table tbody tr:last-child td,html.theme--catppuccin-frappe .content table tbody tr:last-child th{border-bottom-width:0}html.theme--catppuccin-frappe .content .tabs li+li{margin-top:0}html.theme--catppuccin-frappe .content.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.content{font-size:.75rem}html.theme--catppuccin-frappe .content.is-normal{font-size:1rem}html.theme--catppuccin-frappe .content.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .content.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}html.theme--catppuccin-frappe .icon.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.icon{height:1rem;width:1rem}html.theme--catppuccin-frappe .icon.is-medium{height:2rem;width:2rem}html.theme--catppuccin-frappe .icon.is-large{height:3rem;width:3rem}html.theme--catppuccin-frappe .icon-text{align-items:flex-start;color:inherit;display:inline-flex;flex-wrap:wrap;line-height:1.5rem;vertical-align:top}html.theme--catppuccin-frappe .icon-text .icon{flex-grow:0;flex-shrink:0}html.theme--catppuccin-frappe .icon-text .icon:not(:last-child){margin-right:.25em}html.theme--catppuccin-frappe .icon-text .icon:not(:first-child){margin-left:.25em}html.theme--catppuccin-frappe div.icon-text{display:flex}html.theme--catppuccin-frappe .image,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img{display:block;position:relative}html.theme--catppuccin-frappe .image img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img img{display:block;height:auto;width:100%}html.theme--catppuccin-frappe .image img.is-rounded,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img img.is-rounded{border-radius:9999px}html.theme--catppuccin-frappe .image.is-fullwidth,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-fullwidth{width:100%}html.theme--catppuccin-frappe .image.is-square img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--catppuccin-frappe .image.is-square .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--catppuccin-frappe .image.is-1by1 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--catppuccin-frappe .image.is-1by1 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--catppuccin-frappe .image.is-5by4 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--catppuccin-frappe .image.is-5by4 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--catppuccin-frappe .image.is-4by3 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--catppuccin-frappe .image.is-4by3 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--catppuccin-frappe .image.is-3by2 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--catppuccin-frappe .image.is-3by2 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--catppuccin-frappe .image.is-5by3 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--catppuccin-frappe .image.is-5by3 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--catppuccin-frappe .image.is-16by9 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--catppuccin-frappe .image.is-16by9 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--catppuccin-frappe .image.is-2by1 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--catppuccin-frappe .image.is-2by1 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--catppuccin-frappe .image.is-3by1 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--catppuccin-frappe .image.is-3by1 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--catppuccin-frappe .image.is-4by5 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--catppuccin-frappe .image.is-4by5 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--catppuccin-frappe .image.is-3by4 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--catppuccin-frappe .image.is-3by4 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--catppuccin-frappe .image.is-2by3 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--catppuccin-frappe .image.is-2by3 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--catppuccin-frappe .image.is-3by5 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--catppuccin-frappe .image.is-3by5 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--catppuccin-frappe .image.is-9by16 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--catppuccin-frappe .image.is-9by16 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--catppuccin-frappe .image.is-1by2 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--catppuccin-frappe .image.is-1by2 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--catppuccin-frappe .image.is-1by3 img,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--catppuccin-frappe .image.is-1by3 .has-ratio,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio{height:100%;width:100%}html.theme--catppuccin-frappe .image.is-square,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-square,html.theme--catppuccin-frappe .image.is-1by1,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by1{padding-top:100%}html.theme--catppuccin-frappe .image.is-5by4,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-5by4{padding-top:80%}html.theme--catppuccin-frappe .image.is-4by3,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-4by3{padding-top:75%}html.theme--catppuccin-frappe .image.is-3by2,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by2{padding-top:66.6666%}html.theme--catppuccin-frappe .image.is-5by3,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-5by3{padding-top:60%}html.theme--catppuccin-frappe .image.is-16by9,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-16by9{padding-top:56.25%}html.theme--catppuccin-frappe .image.is-2by1,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-2by1{padding-top:50%}html.theme--catppuccin-frappe .image.is-3by1,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by1{padding-top:33.3333%}html.theme--catppuccin-frappe .image.is-4by5,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-4by5{padding-top:125%}html.theme--catppuccin-frappe .image.is-3by4,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by4{padding-top:133.3333%}html.theme--catppuccin-frappe .image.is-2by3,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-2by3{padding-top:150%}html.theme--catppuccin-frappe .image.is-3by5,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-3by5{padding-top:166.6666%}html.theme--catppuccin-frappe .image.is-9by16,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-9by16{padding-top:177.7777%}html.theme--catppuccin-frappe .image.is-1by2,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by2{padding-top:200%}html.theme--catppuccin-frappe .image.is-1by3,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-1by3{padding-top:300%}html.theme--catppuccin-frappe .image.is-16x16,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-16x16{height:16px;width:16px}html.theme--catppuccin-frappe .image.is-24x24,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-24x24{height:24px;width:24px}html.theme--catppuccin-frappe .image.is-32x32,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-32x32{height:32px;width:32px}html.theme--catppuccin-frappe .image.is-48x48,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-48x48{height:48px;width:48px}html.theme--catppuccin-frappe .image.is-64x64,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-64x64{height:64px;width:64px}html.theme--catppuccin-frappe .image.is-96x96,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-96x96{height:96px;width:96px}html.theme--catppuccin-frappe .image.is-128x128,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img.is-128x128{height:128px;width:128px}html.theme--catppuccin-frappe .notification{background-color:#292c3c;border-radius:.4em;position:relative;padding:1.25rem 2.5rem 1.25rem 1.5rem}html.theme--catppuccin-frappe .notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--catppuccin-frappe .notification strong{color:currentColor}html.theme--catppuccin-frappe .notification code,html.theme--catppuccin-frappe .notification pre{background:#fff}html.theme--catppuccin-frappe .notification pre code{background:transparent}html.theme--catppuccin-frappe .notification>.delete{right:.5rem;position:absolute;top:0.5rem}html.theme--catppuccin-frappe .notification .title,html.theme--catppuccin-frappe .notification .subtitle,html.theme--catppuccin-frappe .notification .content{color:currentColor}html.theme--catppuccin-frappe .notification.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .notification.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .notification.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .notification.is-dark,html.theme--catppuccin-frappe .content kbd.notification{background-color:#414559;color:#fff}html.theme--catppuccin-frappe .notification.is-primary,html.theme--catppuccin-frappe .docstring>section>a.notification.docs-sourcelink{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .notification.is-primary.is-light,html.theme--catppuccin-frappe .docstring>section>a.notification.is-light.docs-sourcelink{background-color:#edf2fc;color:#153a8e}html.theme--catppuccin-frappe .notification.is-link{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .notification.is-link.is-light{background-color:#edf2fc;color:#153a8e}html.theme--catppuccin-frappe .notification.is-info{background-color:#81c8be;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .notification.is-info.is-light{background-color:#f1f9f8;color:#2d675f}html.theme--catppuccin-frappe .notification.is-success{background-color:#a6d189;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .notification.is-success.is-light{background-color:#f4f9f0;color:#446a29}html.theme--catppuccin-frappe .notification.is-warning{background-color:#e5c890;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .notification.is-warning.is-light{background-color:#fbf7ee;color:#78591c}html.theme--catppuccin-frappe .notification.is-danger{background-color:#e78284;color:#fff}html.theme--catppuccin-frappe .notification.is-danger.is-light{background-color:#fceeee;color:#9a1e20}html.theme--catppuccin-frappe .progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:9999px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}html.theme--catppuccin-frappe .progress::-webkit-progress-bar{background-color:#51576d}html.theme--catppuccin-frappe .progress::-webkit-progress-value{background-color:#838ba7}html.theme--catppuccin-frappe .progress::-moz-progress-bar{background-color:#838ba7}html.theme--catppuccin-frappe .progress::-ms-fill{background-color:#838ba7;border:none}html.theme--catppuccin-frappe .progress.is-white::-webkit-progress-value{background-color:#fff}html.theme--catppuccin-frappe .progress.is-white::-moz-progress-bar{background-color:#fff}html.theme--catppuccin-frappe .progress.is-white::-ms-fill{background-color:#fff}html.theme--catppuccin-frappe .progress.is-white:indeterminate{background-image:linear-gradient(to right, #fff 30%, #51576d 30%)}html.theme--catppuccin-frappe .progress.is-black::-webkit-progress-value{background-color:#0a0a0a}html.theme--catppuccin-frappe .progress.is-black::-moz-progress-bar{background-color:#0a0a0a}html.theme--catppuccin-frappe .progress.is-black::-ms-fill{background-color:#0a0a0a}html.theme--catppuccin-frappe .progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #51576d 30%)}html.theme--catppuccin-frappe .progress.is-light::-webkit-progress-value{background-color:#f5f5f5}html.theme--catppuccin-frappe .progress.is-light::-moz-progress-bar{background-color:#f5f5f5}html.theme--catppuccin-frappe .progress.is-light::-ms-fill{background-color:#f5f5f5}html.theme--catppuccin-frappe .progress.is-light:indeterminate{background-image:linear-gradient(to right, #f5f5f5 30%, #51576d 30%)}html.theme--catppuccin-frappe .progress.is-dark::-webkit-progress-value,html.theme--catppuccin-frappe .content kbd.progress::-webkit-progress-value{background-color:#414559}html.theme--catppuccin-frappe .progress.is-dark::-moz-progress-bar,html.theme--catppuccin-frappe .content kbd.progress::-moz-progress-bar{background-color:#414559}html.theme--catppuccin-frappe .progress.is-dark::-ms-fill,html.theme--catppuccin-frappe .content kbd.progress::-ms-fill{background-color:#414559}html.theme--catppuccin-frappe .progress.is-dark:indeterminate,html.theme--catppuccin-frappe .content kbd.progress:indeterminate{background-image:linear-gradient(to right, #414559 30%, #51576d 30%)}html.theme--catppuccin-frappe .progress.is-primary::-webkit-progress-value,html.theme--catppuccin-frappe .docstring>section>a.progress.docs-sourcelink::-webkit-progress-value{background-color:#8caaee}html.theme--catppuccin-frappe .progress.is-primary::-moz-progress-bar,html.theme--catppuccin-frappe .docstring>section>a.progress.docs-sourcelink::-moz-progress-bar{background-color:#8caaee}html.theme--catppuccin-frappe .progress.is-primary::-ms-fill,html.theme--catppuccin-frappe .docstring>section>a.progress.docs-sourcelink::-ms-fill{background-color:#8caaee}html.theme--catppuccin-frappe .progress.is-primary:indeterminate,html.theme--catppuccin-frappe .docstring>section>a.progress.docs-sourcelink:indeterminate{background-image:linear-gradient(to right, #8caaee 30%, #51576d 30%)}html.theme--catppuccin-frappe .progress.is-link::-webkit-progress-value{background-color:#8caaee}html.theme--catppuccin-frappe .progress.is-link::-moz-progress-bar{background-color:#8caaee}html.theme--catppuccin-frappe .progress.is-link::-ms-fill{background-color:#8caaee}html.theme--catppuccin-frappe .progress.is-link:indeterminate{background-image:linear-gradient(to right, #8caaee 30%, #51576d 30%)}html.theme--catppuccin-frappe .progress.is-info::-webkit-progress-value{background-color:#81c8be}html.theme--catppuccin-frappe .progress.is-info::-moz-progress-bar{background-color:#81c8be}html.theme--catppuccin-frappe .progress.is-info::-ms-fill{background-color:#81c8be}html.theme--catppuccin-frappe .progress.is-info:indeterminate{background-image:linear-gradient(to right, #81c8be 30%, #51576d 30%)}html.theme--catppuccin-frappe .progress.is-success::-webkit-progress-value{background-color:#a6d189}html.theme--catppuccin-frappe .progress.is-success::-moz-progress-bar{background-color:#a6d189}html.theme--catppuccin-frappe .progress.is-success::-ms-fill{background-color:#a6d189}html.theme--catppuccin-frappe .progress.is-success:indeterminate{background-image:linear-gradient(to right, #a6d189 30%, #51576d 30%)}html.theme--catppuccin-frappe .progress.is-warning::-webkit-progress-value{background-color:#e5c890}html.theme--catppuccin-frappe .progress.is-warning::-moz-progress-bar{background-color:#e5c890}html.theme--catppuccin-frappe .progress.is-warning::-ms-fill{background-color:#e5c890}html.theme--catppuccin-frappe .progress.is-warning:indeterminate{background-image:linear-gradient(to right, #e5c890 30%, #51576d 30%)}html.theme--catppuccin-frappe .progress.is-danger::-webkit-progress-value{background-color:#e78284}html.theme--catppuccin-frappe .progress.is-danger::-moz-progress-bar{background-color:#e78284}html.theme--catppuccin-frappe .progress.is-danger::-ms-fill{background-color:#e78284}html.theme--catppuccin-frappe .progress.is-danger:indeterminate{background-image:linear-gradient(to right, #e78284 30%, #51576d 30%)}html.theme--catppuccin-frappe .progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#51576d;background-image:linear-gradient(to right, #c6d0f5 30%, #51576d 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}html.theme--catppuccin-frappe .progress:indeterminate::-webkit-progress-bar{background-color:transparent}html.theme--catppuccin-frappe .progress:indeterminate::-moz-progress-bar{background-color:transparent}html.theme--catppuccin-frappe .progress:indeterminate::-ms-fill{animation-name:none}html.theme--catppuccin-frappe .progress.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.progress{height:.75rem}html.theme--catppuccin-frappe .progress.is-medium{height:1.25rem}html.theme--catppuccin-frappe .progress.is-large{height:1.5rem}@keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}html.theme--catppuccin-frappe .table{background-color:#51576d;color:#c6d0f5}html.theme--catppuccin-frappe .table td,html.theme--catppuccin-frappe .table th{border:1px solid #626880;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--catppuccin-frappe .table td.is-white,html.theme--catppuccin-frappe .table th.is-white{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .table td.is-black,html.theme--catppuccin-frappe .table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .table td.is-light,html.theme--catppuccin-frappe .table th.is-light{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .table td.is-dark,html.theme--catppuccin-frappe .table th.is-dark{background-color:#414559;border-color:#414559;color:#fff}html.theme--catppuccin-frappe .table td.is-primary,html.theme--catppuccin-frappe .table th.is-primary{background-color:#8caaee;border-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .table td.is-link,html.theme--catppuccin-frappe .table th.is-link{background-color:#8caaee;border-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .table td.is-info,html.theme--catppuccin-frappe .table th.is-info{background-color:#81c8be;border-color:#81c8be;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .table td.is-success,html.theme--catppuccin-frappe .table th.is-success{background-color:#a6d189;border-color:#a6d189;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .table td.is-warning,html.theme--catppuccin-frappe .table th.is-warning{background-color:#e5c890;border-color:#e5c890;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .table td.is-danger,html.theme--catppuccin-frappe .table th.is-danger{background-color:#e78284;border-color:#e78284;color:#fff}html.theme--catppuccin-frappe .table td.is-narrow,html.theme--catppuccin-frappe .table th.is-narrow{white-space:nowrap;width:1%}html.theme--catppuccin-frappe .table td.is-selected,html.theme--catppuccin-frappe .table th.is-selected{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .table td.is-selected a,html.theme--catppuccin-frappe .table td.is-selected strong,html.theme--catppuccin-frappe .table th.is-selected a,html.theme--catppuccin-frappe .table th.is-selected strong{color:currentColor}html.theme--catppuccin-frappe .table td.is-vcentered,html.theme--catppuccin-frappe .table th.is-vcentered{vertical-align:middle}html.theme--catppuccin-frappe .table th{color:#b0bef1}html.theme--catppuccin-frappe .table th:not([align]){text-align:left}html.theme--catppuccin-frappe .table tr.is-selected{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .table tr.is-selected a,html.theme--catppuccin-frappe .table tr.is-selected strong{color:currentColor}html.theme--catppuccin-frappe .table tr.is-selected td,html.theme--catppuccin-frappe .table tr.is-selected th{border-color:#fff;color:currentColor}html.theme--catppuccin-frappe .table thead{background-color:rgba(0,0,0,0)}html.theme--catppuccin-frappe .table thead td,html.theme--catppuccin-frappe .table thead th{border-width:0 0 2px;color:#b0bef1}html.theme--catppuccin-frappe .table tfoot{background-color:rgba(0,0,0,0)}html.theme--catppuccin-frappe .table tfoot td,html.theme--catppuccin-frappe .table tfoot th{border-width:2px 0 0;color:#b0bef1}html.theme--catppuccin-frappe .table tbody{background-color:rgba(0,0,0,0)}html.theme--catppuccin-frappe .table tbody tr:last-child td,html.theme--catppuccin-frappe .table tbody tr:last-child th{border-bottom-width:0}html.theme--catppuccin-frappe .table.is-bordered td,html.theme--catppuccin-frappe .table.is-bordered th{border-width:1px}html.theme--catppuccin-frappe .table.is-bordered tr:last-child td,html.theme--catppuccin-frappe .table.is-bordered tr:last-child th{border-bottom-width:1px}html.theme--catppuccin-frappe .table.is-fullwidth{width:100%}html.theme--catppuccin-frappe .table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#414559}html.theme--catppuccin-frappe .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#414559}html.theme--catppuccin-frappe .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:#454a5f}html.theme--catppuccin-frappe .table.is-narrow td,html.theme--catppuccin-frappe .table.is-narrow th{padding:0.25em 0.5em}html.theme--catppuccin-frappe .table.is-striped tbody tr:not(.is-selected):nth-child(even){background-color:#414559}html.theme--catppuccin-frappe .table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}html.theme--catppuccin-frappe .tags{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-frappe .tags .tag,html.theme--catppuccin-frappe .tags .content kbd,html.theme--catppuccin-frappe .content .tags kbd,html.theme--catppuccin-frappe .tags .docstring>section>a.docs-sourcelink{margin-bottom:0.5rem}html.theme--catppuccin-frappe .tags .tag:not(:last-child),html.theme--catppuccin-frappe .tags .content kbd:not(:last-child),html.theme--catppuccin-frappe .content .tags kbd:not(:last-child),html.theme--catppuccin-frappe .tags .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:.5rem}html.theme--catppuccin-frappe .tags:last-child{margin-bottom:-0.5rem}html.theme--catppuccin-frappe .tags:not(:last-child){margin-bottom:1rem}html.theme--catppuccin-frappe .tags.are-medium .tag:not(.is-normal):not(.is-large),html.theme--catppuccin-frappe .tags.are-medium .content kbd:not(.is-normal):not(.is-large),html.theme--catppuccin-frappe .content .tags.are-medium kbd:not(.is-normal):not(.is-large),html.theme--catppuccin-frappe .tags.are-medium .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-large){font-size:1rem}html.theme--catppuccin-frappe .tags.are-large .tag:not(.is-normal):not(.is-medium),html.theme--catppuccin-frappe .tags.are-large .content kbd:not(.is-normal):not(.is-medium),html.theme--catppuccin-frappe .content .tags.are-large kbd:not(.is-normal):not(.is-medium),html.theme--catppuccin-frappe .tags.are-large .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-medium){font-size:1.25rem}html.theme--catppuccin-frappe .tags.is-centered{justify-content:center}html.theme--catppuccin-frappe .tags.is-centered .tag,html.theme--catppuccin-frappe .tags.is-centered .content kbd,html.theme--catppuccin-frappe .content .tags.is-centered kbd,html.theme--catppuccin-frappe .tags.is-centered .docstring>section>a.docs-sourcelink{margin-right:0.25rem;margin-left:0.25rem}html.theme--catppuccin-frappe .tags.is-right{justify-content:flex-end}html.theme--catppuccin-frappe .tags.is-right .tag:not(:first-child),html.theme--catppuccin-frappe .tags.is-right .content kbd:not(:first-child),html.theme--catppuccin-frappe .content .tags.is-right kbd:not(:first-child),html.theme--catppuccin-frappe .tags.is-right .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0.5rem}html.theme--catppuccin-frappe .tags.is-right .tag:not(:last-child),html.theme--catppuccin-frappe .tags.is-right .content kbd:not(:last-child),html.theme--catppuccin-frappe .content .tags.is-right kbd:not(:last-child),html.theme--catppuccin-frappe .tags.is-right .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0}html.theme--catppuccin-frappe .tags.has-addons .tag,html.theme--catppuccin-frappe .tags.has-addons .content kbd,html.theme--catppuccin-frappe .content .tags.has-addons kbd,html.theme--catppuccin-frappe .tags.has-addons .docstring>section>a.docs-sourcelink{margin-right:0}html.theme--catppuccin-frappe .tags.has-addons .tag:not(:first-child),html.theme--catppuccin-frappe .tags.has-addons .content kbd:not(:first-child),html.theme--catppuccin-frappe .content .tags.has-addons kbd:not(:first-child),html.theme--catppuccin-frappe .tags.has-addons .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}html.theme--catppuccin-frappe .tags.has-addons .tag:not(:last-child),html.theme--catppuccin-frappe .tags.has-addons .content kbd:not(:last-child),html.theme--catppuccin-frappe .content .tags.has-addons kbd:not(:last-child),html.theme--catppuccin-frappe .tags.has-addons .docstring>section>a.docs-sourcelink:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}html.theme--catppuccin-frappe .tag:not(body),html.theme--catppuccin-frappe .content kbd:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#292c3c;border-radius:.4em;color:#c6d0f5;display:inline-flex;font-size:.75rem;height:2em;justify-content:center;line-height:1.5;padding-left:0.75em;padding-right:0.75em;white-space:nowrap}html.theme--catppuccin-frappe .tag:not(body) .delete,html.theme--catppuccin-frappe .content kbd:not(body) .delete,html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink:not(body) .delete{margin-left:.25rem;margin-right:-.375rem}html.theme--catppuccin-frappe .tag.is-white:not(body),html.theme--catppuccin-frappe .content kbd.is-white:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .tag.is-black:not(body),html.theme--catppuccin-frappe .content kbd.is-black:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-black:not(body){background-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .tag.is-light:not(body),html.theme--catppuccin-frappe .content kbd.is-light:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .tag.is-dark:not(body),html.theme--catppuccin-frappe .content kbd:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-dark:not(body),html.theme--catppuccin-frappe .content .docstring>section>kbd:not(body){background-color:#414559;color:#fff}html.theme--catppuccin-frappe .tag.is-primary:not(body),html.theme--catppuccin-frappe .content kbd.is-primary:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink:not(body){background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .tag.is-primary.is-light:not(body),html.theme--catppuccin-frappe .content kbd.is-primary.is-light:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#edf2fc;color:#153a8e}html.theme--catppuccin-frappe .tag.is-link:not(body),html.theme--catppuccin-frappe .content kbd.is-link:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-link:not(body){background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .tag.is-link.is-light:not(body),html.theme--catppuccin-frappe .content kbd.is-link.is-light:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-link.is-light:not(body){background-color:#edf2fc;color:#153a8e}html.theme--catppuccin-frappe .tag.is-info:not(body),html.theme--catppuccin-frappe .content kbd.is-info:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-info:not(body){background-color:#81c8be;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .tag.is-info.is-light:not(body),html.theme--catppuccin-frappe .content kbd.is-info.is-light:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-info.is-light:not(body){background-color:#f1f9f8;color:#2d675f}html.theme--catppuccin-frappe .tag.is-success:not(body),html.theme--catppuccin-frappe .content kbd.is-success:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-success:not(body){background-color:#a6d189;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .tag.is-success.is-light:not(body),html.theme--catppuccin-frappe .content kbd.is-success.is-light:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-success.is-light:not(body){background-color:#f4f9f0;color:#446a29}html.theme--catppuccin-frappe .tag.is-warning:not(body),html.theme--catppuccin-frappe .content kbd.is-warning:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-warning:not(body){background-color:#e5c890;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .tag.is-warning.is-light:not(body),html.theme--catppuccin-frappe .content kbd.is-warning.is-light:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-warning.is-light:not(body){background-color:#fbf7ee;color:#78591c}html.theme--catppuccin-frappe .tag.is-danger:not(body),html.theme--catppuccin-frappe .content kbd.is-danger:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-danger:not(body){background-color:#e78284;color:#fff}html.theme--catppuccin-frappe .tag.is-danger.is-light:not(body),html.theme--catppuccin-frappe .content kbd.is-danger.is-light:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-danger.is-light:not(body){background-color:#fceeee;color:#9a1e20}html.theme--catppuccin-frappe .tag.is-normal:not(body),html.theme--catppuccin-frappe .content kbd.is-normal:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.75rem}html.theme--catppuccin-frappe .tag.is-medium:not(body),html.theme--catppuccin-frappe .content kbd.is-medium:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-medium:not(body){font-size:1rem}html.theme--catppuccin-frappe .tag.is-large:not(body),html.theme--catppuccin-frappe .content kbd.is-large:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-large:not(body){font-size:1.25rem}html.theme--catppuccin-frappe .tag:not(body) .icon:first-child:not(:last-child),html.theme--catppuccin-frappe .content kbd:not(body) .icon:first-child:not(:last-child),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:not(:last-child){margin-left:-.375em;margin-right:.1875em}html.theme--catppuccin-frappe .tag:not(body) .icon:last-child:not(:first-child),html.theme--catppuccin-frappe .content kbd:not(body) .icon:last-child:not(:first-child),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink:not(body) .icon:last-child:not(:first-child){margin-left:.1875em;margin-right:-.375em}html.theme--catppuccin-frappe .tag:not(body) .icon:first-child:last-child,html.theme--catppuccin-frappe .content kbd:not(body) .icon:first-child:last-child,html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:last-child{margin-left:-.375em;margin-right:-.375em}html.theme--catppuccin-frappe .tag.is-delete:not(body),html.theme--catppuccin-frappe .content kbd.is-delete:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-delete:not(body){margin-left:1px;padding:0;position:relative;width:2em}html.theme--catppuccin-frappe .tag.is-delete:not(body)::before,html.theme--catppuccin-frappe .content kbd.is-delete:not(body)::before,html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-delete:not(body)::before,html.theme--catppuccin-frappe .tag.is-delete:not(body)::after,html.theme--catppuccin-frappe .content kbd.is-delete:not(body)::after,html.theme--catppuccin-frappe .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--catppuccin-frappe .tag.is-delete:not(body)::before,html.theme--catppuccin-frappe .content kbd.is-delete:not(body)::before,html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-delete:not(body)::before{height:1px;width:50%}html.theme--catppuccin-frappe .tag.is-delete:not(body)::after,html.theme--catppuccin-frappe .content kbd.is-delete:not(body)::after,html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-delete:not(body)::after{height:50%;width:1px}html.theme--catppuccin-frappe .tag.is-delete:not(body):hover,html.theme--catppuccin-frappe .content kbd.is-delete:not(body):hover,html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-delete:not(body):hover,html.theme--catppuccin-frappe .tag.is-delete:not(body):focus,html.theme--catppuccin-frappe .content kbd.is-delete:not(body):focus,html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-delete:not(body):focus{background-color:#1f212d}html.theme--catppuccin-frappe .tag.is-delete:not(body):active,html.theme--catppuccin-frappe .content kbd.is-delete:not(body):active,html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-delete:not(body):active{background-color:#14161e}html.theme--catppuccin-frappe .tag.is-rounded:not(body),html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input:not(body),html.theme--catppuccin-frappe .content kbd.is-rounded:not(body),html.theme--catppuccin-frappe #documenter .docs-sidebar .content form.docs-search>input:not(body),html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink.is-rounded:not(body){border-radius:9999px}html.theme--catppuccin-frappe a.tag:hover,html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink:hover{text-decoration:underline}html.theme--catppuccin-frappe .title,html.theme--catppuccin-frappe .subtitle{word-break:break-word}html.theme--catppuccin-frappe .title em,html.theme--catppuccin-frappe .title span,html.theme--catppuccin-frappe .subtitle em,html.theme--catppuccin-frappe .subtitle span{font-weight:inherit}html.theme--catppuccin-frappe .title sub,html.theme--catppuccin-frappe .subtitle sub{font-size:.75em}html.theme--catppuccin-frappe .title sup,html.theme--catppuccin-frappe .subtitle sup{font-size:.75em}html.theme--catppuccin-frappe .title .tag,html.theme--catppuccin-frappe .title .content kbd,html.theme--catppuccin-frappe .content .title kbd,html.theme--catppuccin-frappe .title .docstring>section>a.docs-sourcelink,html.theme--catppuccin-frappe .subtitle .tag,html.theme--catppuccin-frappe .subtitle .content kbd,html.theme--catppuccin-frappe .content .subtitle kbd,html.theme--catppuccin-frappe .subtitle .docstring>section>a.docs-sourcelink{vertical-align:middle}html.theme--catppuccin-frappe .title{color:#fff;font-size:2rem;font-weight:500;line-height:1.125}html.theme--catppuccin-frappe .title strong{color:inherit;font-weight:inherit}html.theme--catppuccin-frappe .title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}html.theme--catppuccin-frappe .title.is-1{font-size:3rem}html.theme--catppuccin-frappe .title.is-2{font-size:2.5rem}html.theme--catppuccin-frappe .title.is-3{font-size:2rem}html.theme--catppuccin-frappe .title.is-4{font-size:1.5rem}html.theme--catppuccin-frappe .title.is-5{font-size:1.25rem}html.theme--catppuccin-frappe .title.is-6{font-size:1rem}html.theme--catppuccin-frappe .title.is-7{font-size:.75rem}html.theme--catppuccin-frappe .subtitle{color:#737994;font-size:1.25rem;font-weight:400;line-height:1.25}html.theme--catppuccin-frappe .subtitle strong{color:#737994;font-weight:600}html.theme--catppuccin-frappe .subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}html.theme--catppuccin-frappe .subtitle.is-1{font-size:3rem}html.theme--catppuccin-frappe .subtitle.is-2{font-size:2.5rem}html.theme--catppuccin-frappe .subtitle.is-3{font-size:2rem}html.theme--catppuccin-frappe .subtitle.is-4{font-size:1.5rem}html.theme--catppuccin-frappe .subtitle.is-5{font-size:1.25rem}html.theme--catppuccin-frappe .subtitle.is-6{font-size:1rem}html.theme--catppuccin-frappe .subtitle.is-7{font-size:.75rem}html.theme--catppuccin-frappe .heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}html.theme--catppuccin-frappe .number{align-items:center;background-color:#292c3c;border-radius:9999px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:0.25rem 0.5rem;text-align:center;vertical-align:top}html.theme--catppuccin-frappe .select select,html.theme--catppuccin-frappe .textarea,html.theme--catppuccin-frappe .input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input{background-color:#303446;border-color:#626880;border-radius:.4em;color:#838ba7}html.theme--catppuccin-frappe .select select::-moz-placeholder,html.theme--catppuccin-frappe .textarea::-moz-placeholder,html.theme--catppuccin-frappe .input::-moz-placeholder,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:#868c98}html.theme--catppuccin-frappe .select select::-webkit-input-placeholder,html.theme--catppuccin-frappe .textarea::-webkit-input-placeholder,html.theme--catppuccin-frappe .input::-webkit-input-placeholder,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:#868c98}html.theme--catppuccin-frappe .select select:-moz-placeholder,html.theme--catppuccin-frappe .textarea:-moz-placeholder,html.theme--catppuccin-frappe .input:-moz-placeholder,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:#868c98}html.theme--catppuccin-frappe .select select:-ms-input-placeholder,html.theme--catppuccin-frappe .textarea:-ms-input-placeholder,html.theme--catppuccin-frappe .input:-ms-input-placeholder,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:#868c98}html.theme--catppuccin-frappe .select select:hover,html.theme--catppuccin-frappe .textarea:hover,html.theme--catppuccin-frappe .input:hover,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input:hover,html.theme--catppuccin-frappe .select select.is-hovered,html.theme--catppuccin-frappe .is-hovered.textarea,html.theme--catppuccin-frappe .is-hovered.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-hovered{border-color:#737994}html.theme--catppuccin-frappe .select select:focus,html.theme--catppuccin-frappe .textarea:focus,html.theme--catppuccin-frappe .input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input:focus,html.theme--catppuccin-frappe .select select.is-focused,html.theme--catppuccin-frappe .is-focused.textarea,html.theme--catppuccin-frappe .is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .select select:active,html.theme--catppuccin-frappe .textarea:active,html.theme--catppuccin-frappe .input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input:active,html.theme--catppuccin-frappe .select select.is-active,html.theme--catppuccin-frappe .is-active.textarea,html.theme--catppuccin-frappe .is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active{border-color:#8caaee;box-shadow:0 0 0 0.125em rgba(140,170,238,0.25)}html.theme--catppuccin-frappe .select select[disabled],html.theme--catppuccin-frappe .textarea[disabled],html.theme--catppuccin-frappe .input[disabled],html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input[disabled],fieldset[disabled] html.theme--catppuccin-frappe .select select,fieldset[disabled] html.theme--catppuccin-frappe .textarea,fieldset[disabled] html.theme--catppuccin-frappe .input,fieldset[disabled] html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input{background-color:#737994;border-color:#292c3c;box-shadow:none;color:#f1f4fd}html.theme--catppuccin-frappe .select select[disabled]::-moz-placeholder,html.theme--catppuccin-frappe .textarea[disabled]::-moz-placeholder,html.theme--catppuccin-frappe .input[disabled]::-moz-placeholder,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input[disabled]::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .select select::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .textarea::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .input::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:rgba(241,244,253,0.3)}html.theme--catppuccin-frappe .select select[disabled]::-webkit-input-placeholder,html.theme--catppuccin-frappe .textarea[disabled]::-webkit-input-placeholder,html.theme--catppuccin-frappe .input[disabled]::-webkit-input-placeholder,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input[disabled]::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .select select::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .textarea::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .input::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:rgba(241,244,253,0.3)}html.theme--catppuccin-frappe .select select[disabled]:-moz-placeholder,html.theme--catppuccin-frappe .textarea[disabled]:-moz-placeholder,html.theme--catppuccin-frappe .input[disabled]:-moz-placeholder,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input[disabled]:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .select select:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .textarea:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .input:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:rgba(241,244,253,0.3)}html.theme--catppuccin-frappe .select select[disabled]:-ms-input-placeholder,html.theme--catppuccin-frappe .textarea[disabled]:-ms-input-placeholder,html.theme--catppuccin-frappe .input[disabled]:-ms-input-placeholder,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input[disabled]:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .select select:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .textarea:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-frappe .input:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:rgba(241,244,253,0.3)}html.theme--catppuccin-frappe .textarea,html.theme--catppuccin-frappe .input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input{box-shadow:inset 0 0.0625em 0.125em rgba(10,10,10,0.05);max-width:100%;width:100%}html.theme--catppuccin-frappe .textarea[readonly],html.theme--catppuccin-frappe .input[readonly],html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input[readonly]{box-shadow:none}html.theme--catppuccin-frappe .is-white.textarea,html.theme--catppuccin-frappe .is-white.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-white{border-color:#fff}html.theme--catppuccin-frappe .is-white.textarea:focus,html.theme--catppuccin-frappe .is-white.input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-white:focus,html.theme--catppuccin-frappe .is-white.is-focused.textarea,html.theme--catppuccin-frappe .is-white.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .is-white.textarea:active,html.theme--catppuccin-frappe .is-white.input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-white:active,html.theme--catppuccin-frappe .is-white.is-active.textarea,html.theme--catppuccin-frappe .is-white.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-frappe .is-black.textarea,html.theme--catppuccin-frappe .is-black.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-black{border-color:#0a0a0a}html.theme--catppuccin-frappe .is-black.textarea:focus,html.theme--catppuccin-frappe .is-black.input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-black:focus,html.theme--catppuccin-frappe .is-black.is-focused.textarea,html.theme--catppuccin-frappe .is-black.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .is-black.textarea:active,html.theme--catppuccin-frappe .is-black.input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-black:active,html.theme--catppuccin-frappe .is-black.is-active.textarea,html.theme--catppuccin-frappe .is-black.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-frappe .is-light.textarea,html.theme--catppuccin-frappe .is-light.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-light{border-color:#f5f5f5}html.theme--catppuccin-frappe .is-light.textarea:focus,html.theme--catppuccin-frappe .is-light.input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-light:focus,html.theme--catppuccin-frappe .is-light.is-focused.textarea,html.theme--catppuccin-frappe .is-light.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .is-light.textarea:active,html.theme--catppuccin-frappe .is-light.input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-light:active,html.theme--catppuccin-frappe .is-light.is-active.textarea,html.theme--catppuccin-frappe .is-light.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-frappe .is-dark.textarea,html.theme--catppuccin-frappe .content kbd.textarea,html.theme--catppuccin-frappe .is-dark.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-dark,html.theme--catppuccin-frappe .content kbd.input{border-color:#414559}html.theme--catppuccin-frappe .is-dark.textarea:focus,html.theme--catppuccin-frappe .content kbd.textarea:focus,html.theme--catppuccin-frappe .is-dark.input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-dark:focus,html.theme--catppuccin-frappe .content kbd.input:focus,html.theme--catppuccin-frappe .is-dark.is-focused.textarea,html.theme--catppuccin-frappe .content kbd.is-focused.textarea,html.theme--catppuccin-frappe .is-dark.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .content kbd.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar .content form.docs-search>input.is-focused,html.theme--catppuccin-frappe .is-dark.textarea:active,html.theme--catppuccin-frappe .content kbd.textarea:active,html.theme--catppuccin-frappe .is-dark.input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-dark:active,html.theme--catppuccin-frappe .content kbd.input:active,html.theme--catppuccin-frappe .is-dark.is-active.textarea,html.theme--catppuccin-frappe .content kbd.is-active.textarea,html.theme--catppuccin-frappe .is-dark.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-frappe .content kbd.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar .content form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(65,69,89,0.25)}html.theme--catppuccin-frappe .is-primary.textarea,html.theme--catppuccin-frappe .docstring>section>a.textarea.docs-sourcelink,html.theme--catppuccin-frappe .is-primary.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-primary,html.theme--catppuccin-frappe .docstring>section>a.input.docs-sourcelink{border-color:#8caaee}html.theme--catppuccin-frappe .is-primary.textarea:focus,html.theme--catppuccin-frappe .docstring>section>a.textarea.docs-sourcelink:focus,html.theme--catppuccin-frappe .is-primary.input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-primary:focus,html.theme--catppuccin-frappe .docstring>section>a.input.docs-sourcelink:focus,html.theme--catppuccin-frappe .is-primary.is-focused.textarea,html.theme--catppuccin-frappe .docstring>section>a.is-focused.textarea.docs-sourcelink,html.theme--catppuccin-frappe .is-primary.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .docstring>section>a.is-focused.input.docs-sourcelink,html.theme--catppuccin-frappe .is-primary.textarea:active,html.theme--catppuccin-frappe .docstring>section>a.textarea.docs-sourcelink:active,html.theme--catppuccin-frappe .is-primary.input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-primary:active,html.theme--catppuccin-frappe .docstring>section>a.input.docs-sourcelink:active,html.theme--catppuccin-frappe .is-primary.is-active.textarea,html.theme--catppuccin-frappe .docstring>section>a.is-active.textarea.docs-sourcelink,html.theme--catppuccin-frappe .is-primary.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-frappe .docstring>section>a.is-active.input.docs-sourcelink{box-shadow:0 0 0 0.125em rgba(140,170,238,0.25)}html.theme--catppuccin-frappe .is-link.textarea,html.theme--catppuccin-frappe .is-link.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-link{border-color:#8caaee}html.theme--catppuccin-frappe .is-link.textarea:focus,html.theme--catppuccin-frappe .is-link.input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-link:focus,html.theme--catppuccin-frappe .is-link.is-focused.textarea,html.theme--catppuccin-frappe .is-link.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .is-link.textarea:active,html.theme--catppuccin-frappe .is-link.input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-link:active,html.theme--catppuccin-frappe .is-link.is-active.textarea,html.theme--catppuccin-frappe .is-link.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(140,170,238,0.25)}html.theme--catppuccin-frappe .is-info.textarea,html.theme--catppuccin-frappe .is-info.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-info{border-color:#81c8be}html.theme--catppuccin-frappe .is-info.textarea:focus,html.theme--catppuccin-frappe .is-info.input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-info:focus,html.theme--catppuccin-frappe .is-info.is-focused.textarea,html.theme--catppuccin-frappe .is-info.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .is-info.textarea:active,html.theme--catppuccin-frappe .is-info.input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-info:active,html.theme--catppuccin-frappe .is-info.is-active.textarea,html.theme--catppuccin-frappe .is-info.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(129,200,190,0.25)}html.theme--catppuccin-frappe .is-success.textarea,html.theme--catppuccin-frappe .is-success.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-success{border-color:#a6d189}html.theme--catppuccin-frappe .is-success.textarea:focus,html.theme--catppuccin-frappe .is-success.input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-success:focus,html.theme--catppuccin-frappe .is-success.is-focused.textarea,html.theme--catppuccin-frappe .is-success.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .is-success.textarea:active,html.theme--catppuccin-frappe .is-success.input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-success:active,html.theme--catppuccin-frappe .is-success.is-active.textarea,html.theme--catppuccin-frappe .is-success.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(166,209,137,0.25)}html.theme--catppuccin-frappe .is-warning.textarea,html.theme--catppuccin-frappe .is-warning.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-warning{border-color:#e5c890}html.theme--catppuccin-frappe .is-warning.textarea:focus,html.theme--catppuccin-frappe .is-warning.input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-warning:focus,html.theme--catppuccin-frappe .is-warning.is-focused.textarea,html.theme--catppuccin-frappe .is-warning.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .is-warning.textarea:active,html.theme--catppuccin-frappe .is-warning.input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-warning:active,html.theme--catppuccin-frappe .is-warning.is-active.textarea,html.theme--catppuccin-frappe .is-warning.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(229,200,144,0.25)}html.theme--catppuccin-frappe .is-danger.textarea,html.theme--catppuccin-frappe .is-danger.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-danger{border-color:#e78284}html.theme--catppuccin-frappe .is-danger.textarea:focus,html.theme--catppuccin-frappe .is-danger.input:focus,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-danger:focus,html.theme--catppuccin-frappe .is-danger.is-focused.textarea,html.theme--catppuccin-frappe .is-danger.is-focused.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-frappe .is-danger.textarea:active,html.theme--catppuccin-frappe .is-danger.input:active,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-danger:active,html.theme--catppuccin-frappe .is-danger.is-active.textarea,html.theme--catppuccin-frappe .is-danger.is-active.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(231,130,132,0.25)}html.theme--catppuccin-frappe .is-small.textarea,html.theme--catppuccin-frappe .is-small.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input{border-radius:3px;font-size:.75rem}html.theme--catppuccin-frappe .is-medium.textarea,html.theme--catppuccin-frappe .is-medium.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .is-large.textarea,html.theme--catppuccin-frappe .is-large.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .is-fullwidth.textarea,html.theme--catppuccin-frappe .is-fullwidth.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-fullwidth{display:block;width:100%}html.theme--catppuccin-frappe .is-inline.textarea,html.theme--catppuccin-frappe .is-inline.input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-inline{display:inline;width:auto}html.theme--catppuccin-frappe .input.is-rounded,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input{border-radius:9999px;padding-left:calc(calc(0.75em - 1px) + 0.375em);padding-right:calc(calc(0.75em - 1px) + 0.375em)}html.theme--catppuccin-frappe .input.is-static,html.theme--catppuccin-frappe #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--catppuccin-frappe .textarea{display:block;max-width:100%;min-width:100%;padding:calc(0.75em - 1px);resize:vertical}html.theme--catppuccin-frappe .textarea:not([rows]){max-height:40em;min-height:8em}html.theme--catppuccin-frappe .textarea[rows]{height:initial}html.theme--catppuccin-frappe .textarea.has-fixed-size{resize:none}html.theme--catppuccin-frappe .radio,html.theme--catppuccin-frappe .checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}html.theme--catppuccin-frappe .radio input,html.theme--catppuccin-frappe .checkbox input{cursor:pointer}html.theme--catppuccin-frappe .radio:hover,html.theme--catppuccin-frappe .checkbox:hover{color:#99d1db}html.theme--catppuccin-frappe .radio[disabled],html.theme--catppuccin-frappe .checkbox[disabled],fieldset[disabled] html.theme--catppuccin-frappe .radio,fieldset[disabled] html.theme--catppuccin-frappe .checkbox,html.theme--catppuccin-frappe .radio input[disabled],html.theme--catppuccin-frappe .checkbox input[disabled]{color:#f1f4fd;cursor:not-allowed}html.theme--catppuccin-frappe .radio+.radio{margin-left:.5em}html.theme--catppuccin-frappe .select{display:inline-block;max-width:100%;position:relative;vertical-align:top}html.theme--catppuccin-frappe .select:not(.is-multiple){height:2.5em}html.theme--catppuccin-frappe .select:not(.is-multiple):not(.is-loading)::after{border-color:#8caaee;right:1.125em;z-index:4}html.theme--catppuccin-frappe .select.is-rounded select,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.select select{border-radius:9999px;padding-left:1em}html.theme--catppuccin-frappe .select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}html.theme--catppuccin-frappe .select select::-ms-expand{display:none}html.theme--catppuccin-frappe .select select[disabled]:hover,fieldset[disabled] html.theme--catppuccin-frappe .select select:hover{border-color:#292c3c}html.theme--catppuccin-frappe .select select:not([multiple]){padding-right:2.5em}html.theme--catppuccin-frappe .select select[multiple]{height:auto;padding:0}html.theme--catppuccin-frappe .select select[multiple] option{padding:0.5em 1em}html.theme--catppuccin-frappe .select:not(.is-multiple):not(.is-loading):hover::after{border-color:#99d1db}html.theme--catppuccin-frappe .select.is-white:not(:hover)::after{border-color:#fff}html.theme--catppuccin-frappe .select.is-white select{border-color:#fff}html.theme--catppuccin-frappe .select.is-white select:hover,html.theme--catppuccin-frappe .select.is-white select.is-hovered{border-color:#f2f2f2}html.theme--catppuccin-frappe .select.is-white select:focus,html.theme--catppuccin-frappe .select.is-white select.is-focused,html.theme--catppuccin-frappe .select.is-white select:active,html.theme--catppuccin-frappe .select.is-white select.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-frappe .select.is-black:not(:hover)::after{border-color:#0a0a0a}html.theme--catppuccin-frappe .select.is-black select{border-color:#0a0a0a}html.theme--catppuccin-frappe .select.is-black select:hover,html.theme--catppuccin-frappe .select.is-black select.is-hovered{border-color:#000}html.theme--catppuccin-frappe .select.is-black select:focus,html.theme--catppuccin-frappe .select.is-black select.is-focused,html.theme--catppuccin-frappe .select.is-black select:active,html.theme--catppuccin-frappe .select.is-black select.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-frappe .select.is-light:not(:hover)::after{border-color:#f5f5f5}html.theme--catppuccin-frappe .select.is-light select{border-color:#f5f5f5}html.theme--catppuccin-frappe .select.is-light select:hover,html.theme--catppuccin-frappe .select.is-light select.is-hovered{border-color:#e8e8e8}html.theme--catppuccin-frappe .select.is-light select:focus,html.theme--catppuccin-frappe .select.is-light select.is-focused,html.theme--catppuccin-frappe .select.is-light select:active,html.theme--catppuccin-frappe .select.is-light select.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-frappe .select.is-dark:not(:hover)::after,html.theme--catppuccin-frappe .content kbd.select:not(:hover)::after{border-color:#414559}html.theme--catppuccin-frappe .select.is-dark select,html.theme--catppuccin-frappe .content kbd.select select{border-color:#414559}html.theme--catppuccin-frappe .select.is-dark select:hover,html.theme--catppuccin-frappe .content kbd.select select:hover,html.theme--catppuccin-frappe .select.is-dark select.is-hovered,html.theme--catppuccin-frappe .content kbd.select select.is-hovered{border-color:#363a4a}html.theme--catppuccin-frappe .select.is-dark select:focus,html.theme--catppuccin-frappe .content kbd.select select:focus,html.theme--catppuccin-frappe .select.is-dark select.is-focused,html.theme--catppuccin-frappe .content kbd.select select.is-focused,html.theme--catppuccin-frappe .select.is-dark select:active,html.theme--catppuccin-frappe .content kbd.select select:active,html.theme--catppuccin-frappe .select.is-dark select.is-active,html.theme--catppuccin-frappe .content kbd.select select.is-active{box-shadow:0 0 0 0.125em rgba(65,69,89,0.25)}html.theme--catppuccin-frappe .select.is-primary:not(:hover)::after,html.theme--catppuccin-frappe .docstring>section>a.select.docs-sourcelink:not(:hover)::after{border-color:#8caaee}html.theme--catppuccin-frappe .select.is-primary select,html.theme--catppuccin-frappe .docstring>section>a.select.docs-sourcelink select{border-color:#8caaee}html.theme--catppuccin-frappe .select.is-primary select:hover,html.theme--catppuccin-frappe .docstring>section>a.select.docs-sourcelink select:hover,html.theme--catppuccin-frappe .select.is-primary select.is-hovered,html.theme--catppuccin-frappe .docstring>section>a.select.docs-sourcelink select.is-hovered{border-color:#769aeb}html.theme--catppuccin-frappe .select.is-primary select:focus,html.theme--catppuccin-frappe .docstring>section>a.select.docs-sourcelink select:focus,html.theme--catppuccin-frappe .select.is-primary select.is-focused,html.theme--catppuccin-frappe .docstring>section>a.select.docs-sourcelink select.is-focused,html.theme--catppuccin-frappe .select.is-primary select:active,html.theme--catppuccin-frappe .docstring>section>a.select.docs-sourcelink select:active,html.theme--catppuccin-frappe .select.is-primary select.is-active,html.theme--catppuccin-frappe .docstring>section>a.select.docs-sourcelink select.is-active{box-shadow:0 0 0 0.125em rgba(140,170,238,0.25)}html.theme--catppuccin-frappe .select.is-link:not(:hover)::after{border-color:#8caaee}html.theme--catppuccin-frappe .select.is-link select{border-color:#8caaee}html.theme--catppuccin-frappe .select.is-link select:hover,html.theme--catppuccin-frappe .select.is-link select.is-hovered{border-color:#769aeb}html.theme--catppuccin-frappe .select.is-link select:focus,html.theme--catppuccin-frappe .select.is-link select.is-focused,html.theme--catppuccin-frappe .select.is-link select:active,html.theme--catppuccin-frappe .select.is-link select.is-active{box-shadow:0 0 0 0.125em rgba(140,170,238,0.25)}html.theme--catppuccin-frappe .select.is-info:not(:hover)::after{border-color:#81c8be}html.theme--catppuccin-frappe .select.is-info select{border-color:#81c8be}html.theme--catppuccin-frappe .select.is-info select:hover,html.theme--catppuccin-frappe .select.is-info select.is-hovered{border-color:#6fc0b5}html.theme--catppuccin-frappe .select.is-info select:focus,html.theme--catppuccin-frappe .select.is-info select.is-focused,html.theme--catppuccin-frappe .select.is-info select:active,html.theme--catppuccin-frappe .select.is-info select.is-active{box-shadow:0 0 0 0.125em rgba(129,200,190,0.25)}html.theme--catppuccin-frappe .select.is-success:not(:hover)::after{border-color:#a6d189}html.theme--catppuccin-frappe .select.is-success select{border-color:#a6d189}html.theme--catppuccin-frappe .select.is-success select:hover,html.theme--catppuccin-frappe .select.is-success select.is-hovered{border-color:#98ca77}html.theme--catppuccin-frappe .select.is-success select:focus,html.theme--catppuccin-frappe .select.is-success select.is-focused,html.theme--catppuccin-frappe .select.is-success select:active,html.theme--catppuccin-frappe .select.is-success select.is-active{box-shadow:0 0 0 0.125em rgba(166,209,137,0.25)}html.theme--catppuccin-frappe .select.is-warning:not(:hover)::after{border-color:#e5c890}html.theme--catppuccin-frappe .select.is-warning select{border-color:#e5c890}html.theme--catppuccin-frappe .select.is-warning select:hover,html.theme--catppuccin-frappe .select.is-warning select.is-hovered{border-color:#e0be7b}html.theme--catppuccin-frappe .select.is-warning select:focus,html.theme--catppuccin-frappe .select.is-warning select.is-focused,html.theme--catppuccin-frappe .select.is-warning select:active,html.theme--catppuccin-frappe .select.is-warning select.is-active{box-shadow:0 0 0 0.125em rgba(229,200,144,0.25)}html.theme--catppuccin-frappe .select.is-danger:not(:hover)::after{border-color:#e78284}html.theme--catppuccin-frappe .select.is-danger select{border-color:#e78284}html.theme--catppuccin-frappe .select.is-danger select:hover,html.theme--catppuccin-frappe .select.is-danger select.is-hovered{border-color:#e36d6f}html.theme--catppuccin-frappe .select.is-danger select:focus,html.theme--catppuccin-frappe .select.is-danger select.is-focused,html.theme--catppuccin-frappe .select.is-danger select:active,html.theme--catppuccin-frappe .select.is-danger select.is-active{box-shadow:0 0 0 0.125em rgba(231,130,132,0.25)}html.theme--catppuccin-frappe .select.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.select{border-radius:3px;font-size:.75rem}html.theme--catppuccin-frappe .select.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .select.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .select.is-disabled::after{border-color:#f1f4fd !important;opacity:0.5}html.theme--catppuccin-frappe .select.is-fullwidth{width:100%}html.theme--catppuccin-frappe .select.is-fullwidth select{width:100%}html.theme--catppuccin-frappe .select.is-loading::after{margin-top:0;position:absolute;right:.625em;top:0.625em;transform:none}html.theme--catppuccin-frappe .select.is-loading.is-small:after,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}html.theme--catppuccin-frappe .select.is-loading.is-medium:after{font-size:1.25rem}html.theme--catppuccin-frappe .select.is-loading.is-large:after{font-size:1.5rem}html.theme--catppuccin-frappe .file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}html.theme--catppuccin-frappe .file.is-white .file-cta{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-frappe .file.is-white:hover .file-cta,html.theme--catppuccin-frappe .file.is-white.is-hovered .file-cta{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-frappe .file.is-white:focus .file-cta,html.theme--catppuccin-frappe .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--catppuccin-frappe .file.is-white:active .file-cta,html.theme--catppuccin-frappe .file.is-white.is-active .file-cta{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-frappe .file.is-black .file-cta{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-black:hover .file-cta,html.theme--catppuccin-frappe .file.is-black.is-hovered .file-cta{background-color:#040404;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-black:focus .file-cta,html.theme--catppuccin-frappe .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--catppuccin-frappe .file.is-black:active .file-cta,html.theme--catppuccin-frappe .file.is-black.is-active .file-cta{background-color:#000;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-light .file-cta{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-light:hover .file-cta,html.theme--catppuccin-frappe .file.is-light.is-hovered .file-cta{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-light:focus .file-cta,html.theme--catppuccin-frappe .file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(245,245,245,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-light:active .file-cta,html.theme--catppuccin-frappe .file.is-light.is-active .file-cta{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-dark .file-cta,html.theme--catppuccin-frappe .content kbd.file .file-cta{background-color:#414559;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-dark:hover .file-cta,html.theme--catppuccin-frappe .content kbd.file:hover .file-cta,html.theme--catppuccin-frappe .file.is-dark.is-hovered .file-cta,html.theme--catppuccin-frappe .content kbd.file.is-hovered .file-cta{background-color:#3c3f52;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-dark:focus .file-cta,html.theme--catppuccin-frappe .content kbd.file:focus .file-cta,html.theme--catppuccin-frappe .file.is-dark.is-focused .file-cta,html.theme--catppuccin-frappe .content kbd.file.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(65,69,89,0.25);color:#fff}html.theme--catppuccin-frappe .file.is-dark:active .file-cta,html.theme--catppuccin-frappe .content kbd.file:active .file-cta,html.theme--catppuccin-frappe .file.is-dark.is-active .file-cta,html.theme--catppuccin-frappe .content kbd.file.is-active .file-cta{background-color:#363a4a;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-primary .file-cta,html.theme--catppuccin-frappe .docstring>section>a.file.docs-sourcelink .file-cta{background-color:#8caaee;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-primary:hover .file-cta,html.theme--catppuccin-frappe .docstring>section>a.file.docs-sourcelink:hover .file-cta,html.theme--catppuccin-frappe .file.is-primary.is-hovered .file-cta,html.theme--catppuccin-frappe .docstring>section>a.file.is-hovered.docs-sourcelink .file-cta{background-color:#81a2ec;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-primary:focus .file-cta,html.theme--catppuccin-frappe .docstring>section>a.file.docs-sourcelink:focus .file-cta,html.theme--catppuccin-frappe .file.is-primary.is-focused .file-cta,html.theme--catppuccin-frappe .docstring>section>a.file.is-focused.docs-sourcelink .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(140,170,238,0.25);color:#fff}html.theme--catppuccin-frappe .file.is-primary:active .file-cta,html.theme--catppuccin-frappe .docstring>section>a.file.docs-sourcelink:active .file-cta,html.theme--catppuccin-frappe .file.is-primary.is-active .file-cta,html.theme--catppuccin-frappe .docstring>section>a.file.is-active.docs-sourcelink .file-cta{background-color:#769aeb;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-link .file-cta{background-color:#8caaee;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-link:hover .file-cta,html.theme--catppuccin-frappe .file.is-link.is-hovered .file-cta{background-color:#81a2ec;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-link:focus .file-cta,html.theme--catppuccin-frappe .file.is-link.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(140,170,238,0.25);color:#fff}html.theme--catppuccin-frappe .file.is-link:active .file-cta,html.theme--catppuccin-frappe .file.is-link.is-active .file-cta{background-color:#769aeb;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-info .file-cta{background-color:#81c8be;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-info:hover .file-cta,html.theme--catppuccin-frappe .file.is-info.is-hovered .file-cta{background-color:#78c4b9;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-info:focus .file-cta,html.theme--catppuccin-frappe .file.is-info.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(129,200,190,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-info:active .file-cta,html.theme--catppuccin-frappe .file.is-info.is-active .file-cta{background-color:#6fc0b5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-success .file-cta{background-color:#a6d189;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-success:hover .file-cta,html.theme--catppuccin-frappe .file.is-success.is-hovered .file-cta{background-color:#9fcd80;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-success:focus .file-cta,html.theme--catppuccin-frappe .file.is-success.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(166,209,137,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-success:active .file-cta,html.theme--catppuccin-frappe .file.is-success.is-active .file-cta{background-color:#98ca77;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-warning .file-cta{background-color:#e5c890;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-warning:hover .file-cta,html.theme--catppuccin-frappe .file.is-warning.is-hovered .file-cta{background-color:#e3c386;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-warning:focus .file-cta,html.theme--catppuccin-frappe .file.is-warning.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(229,200,144,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-warning:active .file-cta,html.theme--catppuccin-frappe .file.is-warning.is-active .file-cta{background-color:#e0be7b;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .file.is-danger .file-cta{background-color:#e78284;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-danger:hover .file-cta,html.theme--catppuccin-frappe .file.is-danger.is-hovered .file-cta{background-color:#e57779;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-danger:focus .file-cta,html.theme--catppuccin-frappe .file.is-danger.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(231,130,132,0.25);color:#fff}html.theme--catppuccin-frappe .file.is-danger:active .file-cta,html.theme--catppuccin-frappe .file.is-danger.is-active .file-cta{background-color:#e36d6f;border-color:transparent;color:#fff}html.theme--catppuccin-frappe .file.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.file{font-size:.75rem}html.theme--catppuccin-frappe .file.is-normal{font-size:1rem}html.theme--catppuccin-frappe .file.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .file.is-medium .file-icon .fa{font-size:21px}html.theme--catppuccin-frappe .file.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .file.is-large .file-icon .fa{font-size:28px}html.theme--catppuccin-frappe .file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--catppuccin-frappe .file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-frappe .file.has-name.is-empty .file-cta{border-radius:.4em}html.theme--catppuccin-frappe .file.has-name.is-empty .file-name{display:none}html.theme--catppuccin-frappe .file.is-boxed .file-label{flex-direction:column}html.theme--catppuccin-frappe .file.is-boxed .file-cta{flex-direction:column;height:auto;padding:1em 3em}html.theme--catppuccin-frappe .file.is-boxed .file-name{border-width:0 1px 1px}html.theme--catppuccin-frappe .file.is-boxed .file-icon{height:1.5em;width:1.5em}html.theme--catppuccin-frappe .file.is-boxed .file-icon .fa{font-size:21px}html.theme--catppuccin-frappe .file.is-boxed.is-small .file-icon .fa,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-boxed .file-icon .fa{font-size:14px}html.theme--catppuccin-frappe .file.is-boxed.is-medium .file-icon .fa{font-size:28px}html.theme--catppuccin-frappe .file.is-boxed.is-large .file-icon .fa{font-size:35px}html.theme--catppuccin-frappe .file.is-boxed.has-name .file-cta{border-radius:.4em .4em 0 0}html.theme--catppuccin-frappe .file.is-boxed.has-name .file-name{border-radius:0 0 .4em .4em;border-width:0 1px 1px}html.theme--catppuccin-frappe .file.is-centered{justify-content:center}html.theme--catppuccin-frappe .file.is-fullwidth .file-label{width:100%}html.theme--catppuccin-frappe .file.is-fullwidth .file-name{flex-grow:1;max-width:none}html.theme--catppuccin-frappe .file.is-right{justify-content:flex-end}html.theme--catppuccin-frappe .file.is-right .file-cta{border-radius:0 .4em .4em 0}html.theme--catppuccin-frappe .file.is-right .file-name{border-radius:.4em 0 0 .4em;border-width:1px 0 1px 1px;order:-1}html.theme--catppuccin-frappe .file-label{align-items:stretch;display:flex;cursor:pointer;justify-content:flex-start;overflow:hidden;position:relative}html.theme--catppuccin-frappe .file-label:hover .file-cta{background-color:#3c3f52;color:#b0bef1}html.theme--catppuccin-frappe .file-label:hover .file-name{border-color:#5c6279}html.theme--catppuccin-frappe .file-label:active .file-cta{background-color:#363a4a;color:#b0bef1}html.theme--catppuccin-frappe .file-label:active .file-name{border-color:#575c72}html.theme--catppuccin-frappe .file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}html.theme--catppuccin-frappe .file-cta,html.theme--catppuccin-frappe .file-name{border-color:#626880;border-radius:.4em;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}html.theme--catppuccin-frappe .file-cta{background-color:#414559;color:#c6d0f5}html.theme--catppuccin-frappe .file-name{border-color:#626880;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:inherit;text-overflow:ellipsis}html.theme--catppuccin-frappe .file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:.5em;width:1em}html.theme--catppuccin-frappe .file-icon .fa{font-size:14px}html.theme--catppuccin-frappe .label{color:#b0bef1;display:block;font-size:1rem;font-weight:700}html.theme--catppuccin-frappe .label:not(:last-child){margin-bottom:0.5em}html.theme--catppuccin-frappe .label.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.label{font-size:.75rem}html.theme--catppuccin-frappe .label.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .label.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .help{display:block;font-size:.75rem;margin-top:0.25rem}html.theme--catppuccin-frappe .help.is-white{color:#fff}html.theme--catppuccin-frappe .help.is-black{color:#0a0a0a}html.theme--catppuccin-frappe .help.is-light{color:#f5f5f5}html.theme--catppuccin-frappe .help.is-dark,html.theme--catppuccin-frappe .content kbd.help{color:#414559}html.theme--catppuccin-frappe .help.is-primary,html.theme--catppuccin-frappe .docstring>section>a.help.docs-sourcelink{color:#8caaee}html.theme--catppuccin-frappe .help.is-link{color:#8caaee}html.theme--catppuccin-frappe .help.is-info{color:#81c8be}html.theme--catppuccin-frappe .help.is-success{color:#a6d189}html.theme--catppuccin-frappe .help.is-warning{color:#e5c890}html.theme--catppuccin-frappe .help.is-danger{color:#e78284}html.theme--catppuccin-frappe .field:not(:last-child){margin-bottom:0.75rem}html.theme--catppuccin-frappe .field.has-addons{display:flex;justify-content:flex-start}html.theme--catppuccin-frappe .field.has-addons .control:not(:last-child){margin-right:-1px}html.theme--catppuccin-frappe .field.has-addons .control:not(:first-child):not(:last-child) .button,html.theme--catppuccin-frappe .field.has-addons .control:not(:first-child):not(:last-child) .input,html.theme--catppuccin-frappe .field.has-addons .control:not(:first-child):not(:last-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control:not(:first-child):not(:last-child) form.docs-search>input,html.theme--catppuccin-frappe .field.has-addons .control:not(:first-child):not(:last-child) .select select{border-radius:0}html.theme--catppuccin-frappe .field.has-addons .control:first-child:not(:only-child) .button,html.theme--catppuccin-frappe .field.has-addons .control:first-child:not(:only-child) .input,html.theme--catppuccin-frappe .field.has-addons .control:first-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control:first-child:not(:only-child) form.docs-search>input,html.theme--catppuccin-frappe .field.has-addons .control:first-child:not(:only-child) .select select{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--catppuccin-frappe .field.has-addons .control:last-child:not(:only-child) .button,html.theme--catppuccin-frappe .field.has-addons .control:last-child:not(:only-child) .input,html.theme--catppuccin-frappe .field.has-addons .control:last-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control:last-child:not(:only-child) form.docs-search>input,html.theme--catppuccin-frappe .field.has-addons .control:last-child:not(:only-child) .select select{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-frappe .field.has-addons .control .button:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control .button.is-hovered:not([disabled]),html.theme--catppuccin-frappe .field.has-addons .control .input:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):hover,html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control .input.is-hovered:not([disabled]),html.theme--catppuccin-frappe .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-hovered:not([disabled]),html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-hovered:not([disabled]),html.theme--catppuccin-frappe .field.has-addons .control .select select:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control .select select.is-hovered:not([disabled]){z-index:2}html.theme--catppuccin-frappe .field.has-addons .control .button:not([disabled]):focus,html.theme--catppuccin-frappe .field.has-addons .control .button.is-focused:not([disabled]),html.theme--catppuccin-frappe .field.has-addons .control .button:not([disabled]):active,html.theme--catppuccin-frappe .field.has-addons .control .button.is-active:not([disabled]),html.theme--catppuccin-frappe .field.has-addons .control .input:not([disabled]):focus,html.theme--catppuccin-frappe .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus,html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus,html.theme--catppuccin-frappe .field.has-addons .control .input.is-focused:not([disabled]),html.theme--catppuccin-frappe .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]),html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]),html.theme--catppuccin-frappe .field.has-addons .control .input:not([disabled]):active,html.theme--catppuccin-frappe .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active,html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active,html.theme--catppuccin-frappe .field.has-addons .control .input.is-active:not([disabled]),html.theme--catppuccin-frappe .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]),html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]),html.theme--catppuccin-frappe .field.has-addons .control .select select:not([disabled]):focus,html.theme--catppuccin-frappe .field.has-addons .control .select select.is-focused:not([disabled]),html.theme--catppuccin-frappe .field.has-addons .control .select select:not([disabled]):active,html.theme--catppuccin-frappe .field.has-addons .control .select select.is-active:not([disabled]){z-index:3}html.theme--catppuccin-frappe .field.has-addons .control .button:not([disabled]):focus:hover,html.theme--catppuccin-frappe .field.has-addons .control .button.is-focused:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control .button:not([disabled]):active:hover,html.theme--catppuccin-frappe .field.has-addons .control .button.is-active:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control .input:not([disabled]):focus:hover,html.theme--catppuccin-frappe .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus:hover,html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus:hover,html.theme--catppuccin-frappe .field.has-addons .control .input.is-focused:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]):hover,html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control .input:not([disabled]):active:hover,html.theme--catppuccin-frappe .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active:hover,html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active:hover,html.theme--catppuccin-frappe .field.has-addons .control .input.is-active:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]):hover,html.theme--catppuccin-frappe #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control .select select:not([disabled]):focus:hover,html.theme--catppuccin-frappe .field.has-addons .control .select select.is-focused:not([disabled]):hover,html.theme--catppuccin-frappe .field.has-addons .control .select select:not([disabled]):active:hover,html.theme--catppuccin-frappe .field.has-addons .control .select select.is-active:not([disabled]):hover{z-index:4}html.theme--catppuccin-frappe .field.has-addons .control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-frappe .field.has-addons.has-addons-centered{justify-content:center}html.theme--catppuccin-frappe .field.has-addons.has-addons-right{justify-content:flex-end}html.theme--catppuccin-frappe .field.has-addons.has-addons-fullwidth .control{flex-grow:1;flex-shrink:0}html.theme--catppuccin-frappe .field.is-grouped{display:flex;justify-content:flex-start}html.theme--catppuccin-frappe .field.is-grouped>.control{flex-shrink:0}html.theme--catppuccin-frappe .field.is-grouped>.control:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--catppuccin-frappe .field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-frappe .field.is-grouped.is-grouped-centered{justify-content:center}html.theme--catppuccin-frappe .field.is-grouped.is-grouped-right{justify-content:flex-end}html.theme--catppuccin-frappe .field.is-grouped.is-grouped-multiline{flex-wrap:wrap}html.theme--catppuccin-frappe .field.is-grouped.is-grouped-multiline>.control:last-child,html.theme--catppuccin-frappe .field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:0.75rem}html.theme--catppuccin-frappe .field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-0.75rem}html.theme--catppuccin-frappe .field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .field.is-horizontal{display:flex}}html.theme--catppuccin-frappe .field-label .label{font-size:inherit}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .field-label{margin-bottom:0.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}html.theme--catppuccin-frappe .field-label.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.field-label{font-size:.75rem;padding-top:0.375em}html.theme--catppuccin-frappe .field-label.is-normal{padding-top:0.375em}html.theme--catppuccin-frappe .field-label.is-medium{font-size:1.25rem;padding-top:0.375em}html.theme--catppuccin-frappe .field-label.is-large{font-size:1.5rem;padding-top:0.375em}}html.theme--catppuccin-frappe .field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}html.theme--catppuccin-frappe .field-body .field{margin-bottom:0}html.theme--catppuccin-frappe .field-body>.field{flex-shrink:1}html.theme--catppuccin-frappe .field-body>.field:not(.is-narrow){flex-grow:1}html.theme--catppuccin-frappe .field-body>.field:not(:last-child){margin-right:.75rem}}html.theme--catppuccin-frappe .control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:inherit}html.theme--catppuccin-frappe .control.has-icons-left .input:focus~.icon,html.theme--catppuccin-frappe .control.has-icons-left #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--catppuccin-frappe #documenter .docs-sidebar .control.has-icons-left form.docs-search>input:focus~.icon,html.theme--catppuccin-frappe .control.has-icons-left .select:focus~.icon,html.theme--catppuccin-frappe .control.has-icons-right .input:focus~.icon,html.theme--catppuccin-frappe .control.has-icons-right #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--catppuccin-frappe #documenter .docs-sidebar .control.has-icons-right form.docs-search>input:focus~.icon,html.theme--catppuccin-frappe .control.has-icons-right .select:focus~.icon{color:#414559}html.theme--catppuccin-frappe .control.has-icons-left .input.is-small~.icon,html.theme--catppuccin-frappe .control.has-icons-left #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--catppuccin-frappe #documenter .docs-sidebar .control.has-icons-left form.docs-search>input~.icon,html.theme--catppuccin-frappe .control.has-icons-left .select.is-small~.icon,html.theme--catppuccin-frappe .control.has-icons-right .input.is-small~.icon,html.theme--catppuccin-frappe .control.has-icons-right #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--catppuccin-frappe #documenter .docs-sidebar .control.has-icons-right form.docs-search>input~.icon,html.theme--catppuccin-frappe .control.has-icons-right .select.is-small~.icon{font-size:.75rem}html.theme--catppuccin-frappe .control.has-icons-left .input.is-medium~.icon,html.theme--catppuccin-frappe .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--catppuccin-frappe #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-medium~.icon,html.theme--catppuccin-frappe .control.has-icons-left .select.is-medium~.icon,html.theme--catppuccin-frappe .control.has-icons-right .input.is-medium~.icon,html.theme--catppuccin-frappe .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--catppuccin-frappe #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-medium~.icon,html.theme--catppuccin-frappe .control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}html.theme--catppuccin-frappe .control.has-icons-left .input.is-large~.icon,html.theme--catppuccin-frappe .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--catppuccin-frappe #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-large~.icon,html.theme--catppuccin-frappe .control.has-icons-left .select.is-large~.icon,html.theme--catppuccin-frappe .control.has-icons-right .input.is-large~.icon,html.theme--catppuccin-frappe .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--catppuccin-frappe #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-large~.icon,html.theme--catppuccin-frappe .control.has-icons-right .select.is-large~.icon{font-size:1.5rem}html.theme--catppuccin-frappe .control.has-icons-left .icon,html.theme--catppuccin-frappe .control.has-icons-right .icon{color:#626880;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}html.theme--catppuccin-frappe .control.has-icons-left .input,html.theme--catppuccin-frappe .control.has-icons-left #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-frappe #documenter .docs-sidebar .control.has-icons-left form.docs-search>input,html.theme--catppuccin-frappe .control.has-icons-left .select select{padding-left:2.5em}html.theme--catppuccin-frappe .control.has-icons-left .icon.is-left{left:0}html.theme--catppuccin-frappe .control.has-icons-right .input,html.theme--catppuccin-frappe .control.has-icons-right #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-frappe #documenter .docs-sidebar .control.has-icons-right form.docs-search>input,html.theme--catppuccin-frappe .control.has-icons-right .select select{padding-right:2.5em}html.theme--catppuccin-frappe .control.has-icons-right .icon.is-right{right:0}html.theme--catppuccin-frappe .control.is-loading::after{position:absolute !important;right:.625em;top:0.625em;z-index:4}html.theme--catppuccin-frappe .control.is-loading.is-small:after,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}html.theme--catppuccin-frappe .control.is-loading.is-medium:after{font-size:1.25rem}html.theme--catppuccin-frappe .control.is-loading.is-large:after{font-size:1.5rem}html.theme--catppuccin-frappe .breadcrumb{font-size:1rem;white-space:nowrap}html.theme--catppuccin-frappe .breadcrumb a{align-items:center;color:#8caaee;display:flex;justify-content:center;padding:0 .75em}html.theme--catppuccin-frappe .breadcrumb a:hover{color:#99d1db}html.theme--catppuccin-frappe .breadcrumb li{align-items:center;display:flex}html.theme--catppuccin-frappe .breadcrumb li:first-child a{padding-left:0}html.theme--catppuccin-frappe .breadcrumb li.is-active a{color:#b0bef1;cursor:default;pointer-events:none}html.theme--catppuccin-frappe .breadcrumb li+li::before{color:#737994;content:"\0002f"}html.theme--catppuccin-frappe .breadcrumb ul,html.theme--catppuccin-frappe .breadcrumb ol{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-frappe .breadcrumb .icon:first-child{margin-right:.5em}html.theme--catppuccin-frappe .breadcrumb .icon:last-child{margin-left:.5em}html.theme--catppuccin-frappe .breadcrumb.is-centered ol,html.theme--catppuccin-frappe .breadcrumb.is-centered ul{justify-content:center}html.theme--catppuccin-frappe .breadcrumb.is-right ol,html.theme--catppuccin-frappe .breadcrumb.is-right ul{justify-content:flex-end}html.theme--catppuccin-frappe .breadcrumb.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.75rem}html.theme--catppuccin-frappe .breadcrumb.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .breadcrumb.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .breadcrumb.has-arrow-separator li+li::before{content:"\02192"}html.theme--catppuccin-frappe .breadcrumb.has-bullet-separator li+li::before{content:"\02022"}html.theme--catppuccin-frappe .breadcrumb.has-dot-separator li+li::before{content:"\000b7"}html.theme--catppuccin-frappe .breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}html.theme--catppuccin-frappe .card{background-color:#fff;border-radius:.25rem;box-shadow:#171717;color:#c6d0f5;max-width:100%;position:relative}html.theme--catppuccin-frappe .card-footer:first-child,html.theme--catppuccin-frappe .card-content:first-child,html.theme--catppuccin-frappe .card-header:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--catppuccin-frappe .card-footer:last-child,html.theme--catppuccin-frappe .card-content:last-child,html.theme--catppuccin-frappe .card-header:last-child{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--catppuccin-frappe .card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);display:flex}html.theme--catppuccin-frappe .card-header-title{align-items:center;color:#b0bef1;display:flex;flex-grow:1;font-weight:700;padding:0.75rem 1rem}html.theme--catppuccin-frappe .card-header-title.is-centered{justify-content:center}html.theme--catppuccin-frappe .card-header-icon{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0;align-items:center;cursor:pointer;display:flex;justify-content:center;padding:0.75rem 1rem}html.theme--catppuccin-frappe .card-image{display:block;position:relative}html.theme--catppuccin-frappe .card-image:first-child img{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--catppuccin-frappe .card-image:last-child img{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--catppuccin-frappe .card-content{background-color:rgba(0,0,0,0);padding:1.5rem}html.theme--catppuccin-frappe .card-footer{background-color:rgba(0,0,0,0);border-top:1px solid #ededed;align-items:stretch;display:flex}html.theme--catppuccin-frappe .card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}html.theme--catppuccin-frappe .card-footer-item:not(:last-child){border-right:1px solid #ededed}html.theme--catppuccin-frappe .card .media:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-frappe .dropdown{display:inline-flex;position:relative;vertical-align:top}html.theme--catppuccin-frappe .dropdown.is-active .dropdown-menu,html.theme--catppuccin-frappe .dropdown.is-hoverable:hover .dropdown-menu{display:block}html.theme--catppuccin-frappe .dropdown.is-right .dropdown-menu{left:auto;right:0}html.theme--catppuccin-frappe .dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}html.theme--catppuccin-frappe .dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}html.theme--catppuccin-frappe .dropdown-content{background-color:#292c3c;border-radius:.4em;box-shadow:#171717;padding-bottom:.5rem;padding-top:.5rem}html.theme--catppuccin-frappe .dropdown-item{color:#c6d0f5;display:block;font-size:0.875rem;line-height:1.5;padding:0.375rem 1rem;position:relative}html.theme--catppuccin-frappe a.dropdown-item,html.theme--catppuccin-frappe button.dropdown-item{padding-right:3rem;text-align:inherit;white-space:nowrap;width:100%}html.theme--catppuccin-frappe a.dropdown-item:hover,html.theme--catppuccin-frappe button.dropdown-item:hover{background-color:#292c3c;color:#0a0a0a}html.theme--catppuccin-frappe a.dropdown-item.is-active,html.theme--catppuccin-frappe button.dropdown-item.is-active{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .dropdown-divider{background-color:#ededed;border:none;display:block;height:1px;margin:0.5rem 0}html.theme--catppuccin-frappe .level{align-items:center;justify-content:space-between}html.theme--catppuccin-frappe .level code{border-radius:.4em}html.theme--catppuccin-frappe .level img{display:inline-block;vertical-align:top}html.theme--catppuccin-frappe .level.is-mobile{display:flex}html.theme--catppuccin-frappe .level.is-mobile .level-left,html.theme--catppuccin-frappe .level.is-mobile .level-right{display:flex}html.theme--catppuccin-frappe .level.is-mobile .level-left+.level-right{margin-top:0}html.theme--catppuccin-frappe .level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--catppuccin-frappe .level.is-mobile .level-item:not(.is-narrow){flex-grow:1}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .level{display:flex}html.theme--catppuccin-frappe .level>.level-item:not(.is-narrow){flex-grow:1}}html.theme--catppuccin-frappe .level-item{align-items:center;display:flex;flex-basis:auto;flex-grow:0;flex-shrink:0;justify-content:center}html.theme--catppuccin-frappe .level-item .title,html.theme--catppuccin-frappe .level-item .subtitle{margin-bottom:0}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .level-item:not(:last-child){margin-bottom:.75rem}}html.theme--catppuccin-frappe .level-left,html.theme--catppuccin-frappe .level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--catppuccin-frappe .level-left .level-item.is-flexible,html.theme--catppuccin-frappe .level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .level-left .level-item:not(:last-child),html.theme--catppuccin-frappe .level-right .level-item:not(:last-child){margin-right:.75rem}}html.theme--catppuccin-frappe .level-left{align-items:center;justify-content:flex-start}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .level-left{display:flex}}html.theme--catppuccin-frappe .level-right{align-items:center;justify-content:flex-end}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .level-right{display:flex}}html.theme--catppuccin-frappe .media{align-items:flex-start;display:flex;text-align:inherit}html.theme--catppuccin-frappe .media .content:not(:last-child){margin-bottom:.75rem}html.theme--catppuccin-frappe .media .media{border-top:1px solid rgba(98,104,128,0.5);display:flex;padding-top:.75rem}html.theme--catppuccin-frappe .media .media .content:not(:last-child),html.theme--catppuccin-frappe .media .media .control:not(:last-child){margin-bottom:.5rem}html.theme--catppuccin-frappe .media .media .media{padding-top:.5rem}html.theme--catppuccin-frappe .media .media .media+.media{margin-top:.5rem}html.theme--catppuccin-frappe .media+.media{border-top:1px solid rgba(98,104,128,0.5);margin-top:1rem;padding-top:1rem}html.theme--catppuccin-frappe .media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}html.theme--catppuccin-frappe .media-left,html.theme--catppuccin-frappe .media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--catppuccin-frappe .media-left{margin-right:1rem}html.theme--catppuccin-frappe .media-right{margin-left:1rem}html.theme--catppuccin-frappe .media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:inherit}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .media-content{overflow-x:auto}}html.theme--catppuccin-frappe .menu{font-size:1rem}html.theme--catppuccin-frappe .menu.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.menu{font-size:.75rem}html.theme--catppuccin-frappe .menu.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .menu.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .menu-list{line-height:1.25}html.theme--catppuccin-frappe .menu-list a{border-radius:3px;color:#c6d0f5;display:block;padding:0.5em 0.75em}html.theme--catppuccin-frappe .menu-list a:hover{background-color:#292c3c;color:#b0bef1}html.theme--catppuccin-frappe .menu-list a.is-active{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .menu-list li ul{border-left:1px solid #626880;margin:.75em;padding-left:.75em}html.theme--catppuccin-frappe .menu-label{color:#f1f4fd;font-size:.75em;letter-spacing:.1em;text-transform:uppercase}html.theme--catppuccin-frappe .menu-label:not(:first-child){margin-top:1em}html.theme--catppuccin-frappe .menu-label:not(:last-child){margin-bottom:1em}html.theme--catppuccin-frappe .message{background-color:#292c3c;border-radius:.4em;font-size:1rem}html.theme--catppuccin-frappe .message strong{color:currentColor}html.theme--catppuccin-frappe .message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--catppuccin-frappe .message.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.message{font-size:.75rem}html.theme--catppuccin-frappe .message.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .message.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .message.is-white{background-color:#fff}html.theme--catppuccin-frappe .message.is-white .message-header{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .message.is-white .message-body{border-color:#fff}html.theme--catppuccin-frappe .message.is-black{background-color:#fafafa}html.theme--catppuccin-frappe .message.is-black .message-header{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .message.is-black .message-body{border-color:#0a0a0a}html.theme--catppuccin-frappe .message.is-light{background-color:#fafafa}html.theme--catppuccin-frappe .message.is-light .message-header{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .message.is-light .message-body{border-color:#f5f5f5}html.theme--catppuccin-frappe .message.is-dark,html.theme--catppuccin-frappe .content kbd.message{background-color:#f9f9fb}html.theme--catppuccin-frappe .message.is-dark .message-header,html.theme--catppuccin-frappe .content kbd.message .message-header{background-color:#414559;color:#fff}html.theme--catppuccin-frappe .message.is-dark .message-body,html.theme--catppuccin-frappe .content kbd.message .message-body{border-color:#414559}html.theme--catppuccin-frappe .message.is-primary,html.theme--catppuccin-frappe .docstring>section>a.message.docs-sourcelink{background-color:#edf2fc}html.theme--catppuccin-frappe .message.is-primary .message-header,html.theme--catppuccin-frappe .docstring>section>a.message.docs-sourcelink .message-header{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .message.is-primary .message-body,html.theme--catppuccin-frappe .docstring>section>a.message.docs-sourcelink .message-body{border-color:#8caaee;color:#153a8e}html.theme--catppuccin-frappe .message.is-link{background-color:#edf2fc}html.theme--catppuccin-frappe .message.is-link .message-header{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .message.is-link .message-body{border-color:#8caaee;color:#153a8e}html.theme--catppuccin-frappe .message.is-info{background-color:#f1f9f8}html.theme--catppuccin-frappe .message.is-info .message-header{background-color:#81c8be;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .message.is-info .message-body{border-color:#81c8be;color:#2d675f}html.theme--catppuccin-frappe .message.is-success{background-color:#f4f9f0}html.theme--catppuccin-frappe .message.is-success .message-header{background-color:#a6d189;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .message.is-success .message-body{border-color:#a6d189;color:#446a29}html.theme--catppuccin-frappe .message.is-warning{background-color:#fbf7ee}html.theme--catppuccin-frappe .message.is-warning .message-header{background-color:#e5c890;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .message.is-warning .message-body{border-color:#e5c890;color:#78591c}html.theme--catppuccin-frappe .message.is-danger{background-color:#fceeee}html.theme--catppuccin-frappe .message.is-danger .message-header{background-color:#e78284;color:#fff}html.theme--catppuccin-frappe .message.is-danger .message-body{border-color:#e78284;color:#9a1e20}html.theme--catppuccin-frappe .message-header{align-items:center;background-color:#c6d0f5;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--catppuccin-frappe .message-header .delete{flex-grow:0;flex-shrink:0;margin-left:.75em}html.theme--catppuccin-frappe .message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}html.theme--catppuccin-frappe .message-body{border-color:#626880;border-radius:.4em;border-style:solid;border-width:0 0 0 4px;color:#c6d0f5;padding:1.25em 1.5em}html.theme--catppuccin-frappe .message-body code,html.theme--catppuccin-frappe .message-body pre{background-color:#fff}html.theme--catppuccin-frappe .message-body pre code{background-color:rgba(0,0,0,0)}html.theme--catppuccin-frappe .modal{align-items:center;display:none;flex-direction:column;justify-content:center;overflow:hidden;position:fixed;z-index:40}html.theme--catppuccin-frappe .modal.is-active{display:flex}html.theme--catppuccin-frappe .modal-background{background-color:rgba(10,10,10,0.86)}html.theme--catppuccin-frappe .modal-content,html.theme--catppuccin-frappe .modal-card{margin:0 20px;max-height:calc(100vh - 160px);overflow:auto;position:relative;width:100%}@media screen and (min-width: 769px){html.theme--catppuccin-frappe .modal-content,html.theme--catppuccin-frappe .modal-card{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}html.theme--catppuccin-frappe .modal-close{background:none;height:40px;position:fixed;right:20px;top:20px;width:40px}html.theme--catppuccin-frappe .modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}html.theme--catppuccin-frappe .modal-card-head,html.theme--catppuccin-frappe .modal-card-foot{align-items:center;background-color:#292c3c;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}html.theme--catppuccin-frappe .modal-card-head{border-bottom:1px solid #626880;border-top-left-radius:8px;border-top-right-radius:8px}html.theme--catppuccin-frappe .modal-card-title{color:#c6d0f5;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}html.theme--catppuccin-frappe .modal-card-foot{border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top:1px solid #626880}html.theme--catppuccin-frappe .modal-card-foot .button:not(:last-child){margin-right:.5em}html.theme--catppuccin-frappe .modal-card-body{-webkit-overflow-scrolling:touch;background-color:#303446;flex-grow:1;flex-shrink:1;overflow:auto;padding:20px}html.theme--catppuccin-frappe .navbar{background-color:#8caaee;min-height:4rem;position:relative;z-index:30}html.theme--catppuccin-frappe .navbar.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .navbar.is-white .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .navbar.is-white .navbar-brand .navbar-link{color:#0a0a0a}html.theme--catppuccin-frappe .navbar.is-white .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-white .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-white .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-white .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-white .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-white .navbar-brand .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-frappe .navbar.is-white .navbar-brand .navbar-link::after{border-color:#0a0a0a}html.theme--catppuccin-frappe .navbar.is-white .navbar-burger{color:#0a0a0a}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar.is-white .navbar-start>.navbar-item,html.theme--catppuccin-frappe .navbar.is-white .navbar-start .navbar-link,html.theme--catppuccin-frappe .navbar.is-white .navbar-end>.navbar-item,html.theme--catppuccin-frappe .navbar.is-white .navbar-end .navbar-link{color:#0a0a0a}html.theme--catppuccin-frappe .navbar.is-white .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-white .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-white .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-white .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-white .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-white .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .navbar.is-white .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-white .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-white .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-white .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-white .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-white .navbar-end .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-frappe .navbar.is-white .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .navbar.is-white .navbar-end .navbar-link::after{border-color:#0a0a0a}html.theme--catppuccin-frappe .navbar.is-white .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-frappe .navbar.is-white .navbar-dropdown a.navbar-item.is-active{background-color:#fff;color:#0a0a0a}}html.theme--catppuccin-frappe .navbar.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .navbar.is-black .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .navbar.is-black .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-frappe .navbar.is-black .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-black .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-black .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-black .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-black .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-black .navbar-brand .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-frappe .navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-frappe .navbar.is-black .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar.is-black .navbar-start>.navbar-item,html.theme--catppuccin-frappe .navbar.is-black .navbar-start .navbar-link,html.theme--catppuccin-frappe .navbar.is-black .navbar-end>.navbar-item,html.theme--catppuccin-frappe .navbar.is-black .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-frappe .navbar.is-black .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-black .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-black .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-black .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-black .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-black .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .navbar.is-black .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-black .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-black .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-black .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-black .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-black .navbar-end .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-frappe .navbar.is-black .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .navbar.is-black .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-frappe .navbar.is-black .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link{background-color:#000;color:#fff}html.theme--catppuccin-frappe .navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}html.theme--catppuccin-frappe .navbar.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-light .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .navbar.is-light .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-light .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-light .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-light .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-light .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-light .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-light .navbar-brand .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-light .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-light .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar.is-light .navbar-start>.navbar-item,html.theme--catppuccin-frappe .navbar.is-light .navbar-start .navbar-link,html.theme--catppuccin-frappe .navbar.is-light .navbar-end>.navbar-item,html.theme--catppuccin-frappe .navbar.is-light .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-light .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-light .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-light .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-light .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-light .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-light .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .navbar.is-light .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-light .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-light .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-light .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-light .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-light .navbar-end .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-light .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .navbar.is-light .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-frappe .navbar.is-dark,html.theme--catppuccin-frappe .content kbd.navbar{background-color:#414559;color:#fff}html.theme--catppuccin-frappe .navbar.is-dark .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .content kbd.navbar .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .navbar.is-dark .navbar-brand .navbar-link,html.theme--catppuccin-frappe .content kbd.navbar .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-frappe .navbar.is-dark .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .content kbd.navbar .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-dark .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .content kbd.navbar .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-dark .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .content kbd.navbar .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-dark .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .content kbd.navbar .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-dark .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .content kbd.navbar .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-dark .navbar-brand .navbar-link.is-active,html.theme--catppuccin-frappe .content kbd.navbar .navbar-brand .navbar-link.is-active{background-color:#363a4a;color:#fff}html.theme--catppuccin-frappe .navbar.is-dark .navbar-brand .navbar-link::after,html.theme--catppuccin-frappe .content kbd.navbar .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-frappe .navbar.is-dark .navbar-burger,html.theme--catppuccin-frappe .content kbd.navbar .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar.is-dark .navbar-start>.navbar-item,html.theme--catppuccin-frappe .content kbd.navbar .navbar-start>.navbar-item,html.theme--catppuccin-frappe .navbar.is-dark .navbar-start .navbar-link,html.theme--catppuccin-frappe .content kbd.navbar .navbar-start .navbar-link,html.theme--catppuccin-frappe .navbar.is-dark .navbar-end>.navbar-item,html.theme--catppuccin-frappe .content kbd.navbar .navbar-end>.navbar-item,html.theme--catppuccin-frappe .navbar.is-dark .navbar-end .navbar-link,html.theme--catppuccin-frappe .content kbd.navbar .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-frappe .navbar.is-dark .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .content kbd.navbar .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-dark .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .content kbd.navbar .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-dark .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .content kbd.navbar .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-dark .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .content kbd.navbar .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-dark .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .content kbd.navbar .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-dark .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .content kbd.navbar .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .navbar.is-dark .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .content kbd.navbar .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-dark .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .content kbd.navbar .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-dark .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .content kbd.navbar .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-dark .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .content kbd.navbar .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-dark .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .content kbd.navbar .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-dark .navbar-end .navbar-link.is-active,html.theme--catppuccin-frappe .content kbd.navbar .navbar-end .navbar-link.is-active{background-color:#363a4a;color:#fff}html.theme--catppuccin-frappe .navbar.is-dark .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .content kbd.navbar .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .navbar.is-dark .navbar-end .navbar-link::after,html.theme--catppuccin-frappe .content kbd.navbar .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-frappe .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-frappe .content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link{background-color:#363a4a;color:#fff}html.theme--catppuccin-frappe .navbar.is-dark .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-frappe .content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#414559;color:#fff}}html.theme--catppuccin-frappe .navbar.is-primary,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .navbar.is-primary .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .navbar.is-primary .navbar-brand .navbar-link,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-frappe .navbar.is-primary .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-primary .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-primary .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-primary .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-primary .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-primary .navbar-brand .navbar-link.is-active,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active{background-color:#769aeb;color:#fff}html.theme--catppuccin-frappe .navbar.is-primary .navbar-brand .navbar-link::after,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-frappe .navbar.is-primary .navbar-burger,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar.is-primary .navbar-start>.navbar-item,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-start>.navbar-item,html.theme--catppuccin-frappe .navbar.is-primary .navbar-start .navbar-link,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link,html.theme--catppuccin-frappe .navbar.is-primary .navbar-end>.navbar-item,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-end>.navbar-item,html.theme--catppuccin-frappe .navbar.is-primary .navbar-end .navbar-link,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-frappe .navbar.is-primary .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-primary .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-primary .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-primary .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-primary .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-primary .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .navbar.is-primary .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-primary .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-primary .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-primary .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-primary .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-primary .navbar-end .navbar-link.is-active,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active{background-color:#769aeb;color:#fff}html.theme--catppuccin-frappe .navbar.is-primary .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .navbar.is-primary .navbar-end .navbar-link::after,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-frappe .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link{background-color:#769aeb;color:#fff}html.theme--catppuccin-frappe .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#8caaee;color:#fff}}html.theme--catppuccin-frappe .navbar.is-link{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .navbar.is-link .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .navbar.is-link .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-frappe .navbar.is-link .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-link .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-link .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-link .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-link .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-link .navbar-brand .navbar-link.is-active{background-color:#769aeb;color:#fff}html.theme--catppuccin-frappe .navbar.is-link .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-frappe .navbar.is-link .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar.is-link .navbar-start>.navbar-item,html.theme--catppuccin-frappe .navbar.is-link .navbar-start .navbar-link,html.theme--catppuccin-frappe .navbar.is-link .navbar-end>.navbar-item,html.theme--catppuccin-frappe .navbar.is-link .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-frappe .navbar.is-link .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-link .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-link .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-link .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-link .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-link .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .navbar.is-link .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-link .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-link .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-link .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-link .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-link .navbar-end .navbar-link.is-active{background-color:#769aeb;color:#fff}html.theme--catppuccin-frappe .navbar.is-link .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .navbar.is-link .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-frappe .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link{background-color:#769aeb;color:#fff}html.theme--catppuccin-frappe .navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:#8caaee;color:#fff}}html.theme--catppuccin-frappe .navbar.is-info{background-color:#81c8be;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-info .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .navbar.is-info .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-info .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-info .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-info .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-info .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-info .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-info .navbar-brand .navbar-link.is-active{background-color:#6fc0b5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-info .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-info .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar.is-info .navbar-start>.navbar-item,html.theme--catppuccin-frappe .navbar.is-info .navbar-start .navbar-link,html.theme--catppuccin-frappe .navbar.is-info .navbar-end>.navbar-item,html.theme--catppuccin-frappe .navbar.is-info .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-info .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-info .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-info .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-info .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-info .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-info .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .navbar.is-info .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-info .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-info .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-info .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-info .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-info .navbar-end .navbar-link.is-active{background-color:#6fc0b5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-info .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .navbar.is-info .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-info .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link{background-color:#6fc0b5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:#81c8be;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-frappe .navbar.is-success{background-color:#a6d189;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-success .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .navbar.is-success .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-success .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-success .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-success .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-success .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-success .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-success .navbar-brand .navbar-link.is-active{background-color:#98ca77;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-success .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-success .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar.is-success .navbar-start>.navbar-item,html.theme--catppuccin-frappe .navbar.is-success .navbar-start .navbar-link,html.theme--catppuccin-frappe .navbar.is-success .navbar-end>.navbar-item,html.theme--catppuccin-frappe .navbar.is-success .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-success .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-success .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-success .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-success .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-success .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-success .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .navbar.is-success .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-success .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-success .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-success .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-success .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-success .navbar-end .navbar-link.is-active{background-color:#98ca77;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-success .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .navbar.is-success .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-success .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link{background-color:#98ca77;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:#a6d189;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-frappe .navbar.is-warning{background-color:#e5c890;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-warning .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .navbar.is-warning .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-warning .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-warning .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-warning .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-warning .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-warning .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-warning .navbar-brand .navbar-link.is-active{background-color:#e0be7b;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-warning .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-warning .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar.is-warning .navbar-start>.navbar-item,html.theme--catppuccin-frappe .navbar.is-warning .navbar-start .navbar-link,html.theme--catppuccin-frappe .navbar.is-warning .navbar-end>.navbar-item,html.theme--catppuccin-frappe .navbar.is-warning .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-warning .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-warning .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-warning .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-warning .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-warning .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-warning .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .navbar.is-warning .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-warning .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-warning .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-warning .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-warning .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-warning .navbar-end .navbar-link.is-active{background-color:#e0be7b;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-warning .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .navbar.is-warning .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link{background-color:#e0be7b;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:#e5c890;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-frappe .navbar.is-danger{background-color:#e78284;color:#fff}html.theme--catppuccin-frappe .navbar.is-danger .navbar-brand>.navbar-item,html.theme--catppuccin-frappe .navbar.is-danger .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-frappe .navbar.is-danger .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-danger .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-danger .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-danger .navbar-brand .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-danger .navbar-brand .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-danger .navbar-brand .navbar-link.is-active{background-color:#e36d6f;color:#fff}html.theme--catppuccin-frappe .navbar.is-danger .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-frappe .navbar.is-danger .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar.is-danger .navbar-start>.navbar-item,html.theme--catppuccin-frappe .navbar.is-danger .navbar-start .navbar-link,html.theme--catppuccin-frappe .navbar.is-danger .navbar-end>.navbar-item,html.theme--catppuccin-frappe .navbar.is-danger .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-frappe .navbar.is-danger .navbar-start>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-danger .navbar-start>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-danger .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-danger .navbar-start .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-danger .navbar-start .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-danger .navbar-start .navbar-link.is-active,html.theme--catppuccin-frappe .navbar.is-danger .navbar-end>a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-danger .navbar-end>a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-danger .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-danger .navbar-end .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-danger .navbar-end .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-danger .navbar-end .navbar-link.is-active{background-color:#e36d6f;color:#fff}html.theme--catppuccin-frappe .navbar.is-danger .navbar-start .navbar-link::after,html.theme--catppuccin-frappe .navbar.is-danger .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-frappe .navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link{background-color:#e36d6f;color:#fff}html.theme--catppuccin-frappe .navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:#e78284;color:#fff}}html.theme--catppuccin-frappe .navbar>.container{align-items:stretch;display:flex;min-height:4rem;width:100%}html.theme--catppuccin-frappe .navbar.has-shadow{box-shadow:0 2px 0 0 #292c3c}html.theme--catppuccin-frappe .navbar.is-fixed-bottom,html.theme--catppuccin-frappe .navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-frappe .navbar.is-fixed-bottom{bottom:0}html.theme--catppuccin-frappe .navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #292c3c}html.theme--catppuccin-frappe .navbar.is-fixed-top{top:0}html.theme--catppuccin-frappe html.has-navbar-fixed-top,html.theme--catppuccin-frappe body.has-navbar-fixed-top{padding-top:4rem}html.theme--catppuccin-frappe html.has-navbar-fixed-bottom,html.theme--catppuccin-frappe body.has-navbar-fixed-bottom{padding-bottom:4rem}html.theme--catppuccin-frappe .navbar-brand,html.theme--catppuccin-frappe .navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:4rem}html.theme--catppuccin-frappe .navbar-brand a.navbar-item:focus,html.theme--catppuccin-frappe .navbar-brand a.navbar-item:hover{background-color:transparent}html.theme--catppuccin-frappe .navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}html.theme--catppuccin-frappe .navbar-burger{color:#c6d0f5;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:block;height:4rem;position:relative;width:4rem;margin-left:auto}html.theme--catppuccin-frappe .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--catppuccin-frappe .navbar-burger span:nth-child(1){top:calc(50% - 6px)}html.theme--catppuccin-frappe .navbar-burger span:nth-child(2){top:calc(50% - 1px)}html.theme--catppuccin-frappe .navbar-burger span:nth-child(3){top:calc(50% + 4px)}html.theme--catppuccin-frappe .navbar-burger:hover{background-color:rgba(0,0,0,0.05)}html.theme--catppuccin-frappe .navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}html.theme--catppuccin-frappe .navbar-burger.is-active span:nth-child(2){opacity:0}html.theme--catppuccin-frappe .navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}html.theme--catppuccin-frappe .navbar-menu{display:none}html.theme--catppuccin-frappe .navbar-item,html.theme--catppuccin-frappe .navbar-link{color:#c6d0f5;display:block;line-height:1.5;padding:0.5rem 0.75rem;position:relative}html.theme--catppuccin-frappe .navbar-item .icon:only-child,html.theme--catppuccin-frappe .navbar-link .icon:only-child{margin-left:-0.25rem;margin-right:-0.25rem}html.theme--catppuccin-frappe a.navbar-item,html.theme--catppuccin-frappe .navbar-link{cursor:pointer}html.theme--catppuccin-frappe a.navbar-item:focus,html.theme--catppuccin-frappe a.navbar-item:focus-within,html.theme--catppuccin-frappe a.navbar-item:hover,html.theme--catppuccin-frappe a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar-link:focus,html.theme--catppuccin-frappe .navbar-link:focus-within,html.theme--catppuccin-frappe .navbar-link:hover,html.theme--catppuccin-frappe .navbar-link.is-active{background-color:rgba(0,0,0,0);color:#8caaee}html.theme--catppuccin-frappe .navbar-item{flex-grow:0;flex-shrink:0}html.theme--catppuccin-frappe .navbar-item img{max-height:1.75rem}html.theme--catppuccin-frappe .navbar-item.has-dropdown{padding:0}html.theme--catppuccin-frappe .navbar-item.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-frappe .navbar-item.is-tab{border-bottom:1px solid transparent;min-height:4rem;padding-bottom:calc(0.5rem - 1px)}html.theme--catppuccin-frappe .navbar-item.is-tab:focus,html.theme--catppuccin-frappe .navbar-item.is-tab:hover{background-color:rgba(0,0,0,0);border-bottom-color:#8caaee}html.theme--catppuccin-frappe .navbar-item.is-tab.is-active{background-color:rgba(0,0,0,0);border-bottom-color:#8caaee;border-bottom-style:solid;border-bottom-width:3px;color:#8caaee;padding-bottom:calc(0.5rem - 3px)}html.theme--catppuccin-frappe .navbar-content{flex-grow:1;flex-shrink:1}html.theme--catppuccin-frappe .navbar-link:not(.is-arrowless){padding-right:2.5em}html.theme--catppuccin-frappe .navbar-link:not(.is-arrowless)::after{border-color:#fff;margin-top:-0.375em;right:1.125em}html.theme--catppuccin-frappe .navbar-dropdown{font-size:0.875rem;padding-bottom:0.5rem;padding-top:0.5rem}html.theme--catppuccin-frappe .navbar-dropdown .navbar-item{padding-left:1.5rem;padding-right:1.5rem}html.theme--catppuccin-frappe .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--catppuccin-frappe .navbar>.container{display:block}html.theme--catppuccin-frappe .navbar-brand .navbar-item,html.theme--catppuccin-frappe .navbar-tabs .navbar-item{align-items:center;display:flex}html.theme--catppuccin-frappe .navbar-link::after{display:none}html.theme--catppuccin-frappe .navbar-menu{background-color:#8caaee;box-shadow:0 8px 16px rgba(10,10,10,0.1);padding:0.5rem 0}html.theme--catppuccin-frappe .navbar-menu.is-active{display:block}html.theme--catppuccin-frappe .navbar.is-fixed-bottom-touch,html.theme--catppuccin-frappe .navbar.is-fixed-top-touch{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-frappe .navbar.is-fixed-bottom-touch{bottom:0}html.theme--catppuccin-frappe .navbar.is-fixed-bottom-touch.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .navbar.is-fixed-top-touch{top:0}html.theme--catppuccin-frappe .navbar.is-fixed-top .navbar-menu,html.theme--catppuccin-frappe .navbar.is-fixed-top-touch .navbar-menu{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 4rem);overflow:auto}html.theme--catppuccin-frappe html.has-navbar-fixed-top-touch,html.theme--catppuccin-frappe body.has-navbar-fixed-top-touch{padding-top:4rem}html.theme--catppuccin-frappe html.has-navbar-fixed-bottom-touch,html.theme--catppuccin-frappe body.has-navbar-fixed-bottom-touch{padding-bottom:4rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .navbar,html.theme--catppuccin-frappe .navbar-menu,html.theme--catppuccin-frappe .navbar-start,html.theme--catppuccin-frappe .navbar-end{align-items:stretch;display:flex}html.theme--catppuccin-frappe .navbar{min-height:4rem}html.theme--catppuccin-frappe .navbar.is-spaced{padding:1rem 2rem}html.theme--catppuccin-frappe .navbar.is-spaced .navbar-start,html.theme--catppuccin-frappe .navbar.is-spaced .navbar-end{align-items:center}html.theme--catppuccin-frappe .navbar.is-spaced a.navbar-item,html.theme--catppuccin-frappe .navbar.is-spaced .navbar-link{border-radius:.4em}html.theme--catppuccin-frappe .navbar.is-transparent a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-transparent a.navbar-item:hover,html.theme--catppuccin-frappe .navbar.is-transparent a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar.is-transparent .navbar-link:focus,html.theme--catppuccin-frappe .navbar.is-transparent .navbar-link:hover,html.theme--catppuccin-frappe .navbar.is-transparent .navbar-link.is-active{background-color:transparent !important}html.theme--catppuccin-frappe .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-frappe .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link,html.theme--catppuccin-frappe .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link,html.theme--catppuccin-frappe .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link{background-color:transparent !important}html.theme--catppuccin-frappe .navbar.is-transparent .navbar-dropdown a.navbar-item:focus,html.theme--catppuccin-frappe .navbar.is-transparent .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#838ba7}html.theme--catppuccin-frappe .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#8caaee}html.theme--catppuccin-frappe .navbar-burger{display:none}html.theme--catppuccin-frappe .navbar-item,html.theme--catppuccin-frappe .navbar-link{align-items:center;display:flex}html.theme--catppuccin-frappe .navbar-item.has-dropdown{align-items:stretch}html.theme--catppuccin-frappe .navbar-item.has-dropdown-up .navbar-link::after{transform:rotate(135deg) translate(0.25em, -0.25em)}html.theme--catppuccin-frappe .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--catppuccin-frappe .navbar-item.is-active .navbar-dropdown,html.theme--catppuccin-frappe .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--catppuccin-frappe .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--catppuccin-frappe .navbar-item.is-hoverable:hover .navbar-dropdown{display:block}.navbar.is-spaced html.theme--catppuccin-frappe .navbar-item.is-active .navbar-dropdown,html.theme--catppuccin-frappe .navbar-item.is-active .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-frappe .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--catppuccin-frappe .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-frappe .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--catppuccin-frappe .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-frappe .navbar-item.is-hoverable:hover .navbar-dropdown,html.theme--catppuccin-frappe .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed{opacity:1;pointer-events:auto;transform:translateY(0)}html.theme--catppuccin-frappe .navbar-menu{flex-grow:1;flex-shrink:0}html.theme--catppuccin-frappe .navbar-start{justify-content:flex-start;margin-right:auto}html.theme--catppuccin-frappe .navbar-end{justify-content:flex-end;margin-left:auto}html.theme--catppuccin-frappe .navbar-dropdown{background-color:#8caaee;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--catppuccin-frappe .navbar-dropdown .navbar-item{padding:0.375rem 1rem;white-space:nowrap}html.theme--catppuccin-frappe .navbar-dropdown a.navbar-item{padding-right:3rem}html.theme--catppuccin-frappe .navbar-dropdown a.navbar-item:focus,html.theme--catppuccin-frappe .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#838ba7}html.theme--catppuccin-frappe .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#8caaee}.navbar.is-spaced html.theme--catppuccin-frappe .navbar-dropdown,html.theme--catppuccin-frappe .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--catppuccin-frappe .navbar-dropdown.is-right{left:auto;right:0}html.theme--catppuccin-frappe .navbar-divider{display:block}html.theme--catppuccin-frappe .navbar>.container .navbar-brand,html.theme--catppuccin-frappe .container>.navbar .navbar-brand{margin-left:-.75rem}html.theme--catppuccin-frappe .navbar>.container .navbar-menu,html.theme--catppuccin-frappe .container>.navbar .navbar-menu{margin-right:-.75rem}html.theme--catppuccin-frappe .navbar.is-fixed-bottom-desktop,html.theme--catppuccin-frappe .navbar.is-fixed-top-desktop{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-frappe .navbar.is-fixed-bottom-desktop{bottom:0}html.theme--catppuccin-frappe .navbar.is-fixed-bottom-desktop.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .navbar.is-fixed-top-desktop{top:0}html.theme--catppuccin-frappe html.has-navbar-fixed-top-desktop,html.theme--catppuccin-frappe body.has-navbar-fixed-top-desktop{padding-top:4rem}html.theme--catppuccin-frappe html.has-navbar-fixed-bottom-desktop,html.theme--catppuccin-frappe body.has-navbar-fixed-bottom-desktop{padding-bottom:4rem}html.theme--catppuccin-frappe html.has-spaced-navbar-fixed-top,html.theme--catppuccin-frappe body.has-spaced-navbar-fixed-top{padding-top:6rem}html.theme--catppuccin-frappe html.has-spaced-navbar-fixed-bottom,html.theme--catppuccin-frappe body.has-spaced-navbar-fixed-bottom{padding-bottom:6rem}html.theme--catppuccin-frappe a.navbar-item.is-active,html.theme--catppuccin-frappe .navbar-link.is-active{color:#8caaee}html.theme--catppuccin-frappe a.navbar-item.is-active:not(:focus):not(:hover),html.theme--catppuccin-frappe .navbar-link.is-active:not(:focus):not(:hover){background-color:rgba(0,0,0,0)}html.theme--catppuccin-frappe .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-frappe .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-frappe .navbar-item.has-dropdown.is-active .navbar-link{background-color:rgba(0,0,0,0)}}html.theme--catppuccin-frappe .hero.is-fullheight-with-navbar{min-height:calc(100vh - 4rem)}html.theme--catppuccin-frappe .pagination{font-size:1rem;margin:-.25rem}html.theme--catppuccin-frappe .pagination.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.pagination{font-size:.75rem}html.theme--catppuccin-frappe .pagination.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .pagination.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .pagination.is-rounded .pagination-previous,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.pagination .pagination-previous,html.theme--catppuccin-frappe .pagination.is-rounded .pagination-next,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.pagination .pagination-next{padding-left:1em;padding-right:1em;border-radius:9999px}html.theme--catppuccin-frappe .pagination.is-rounded .pagination-link,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:9999px}html.theme--catppuccin-frappe .pagination,html.theme--catppuccin-frappe .pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}html.theme--catppuccin-frappe .pagination-previous,html.theme--catppuccin-frappe .pagination-next,html.theme--catppuccin-frappe .pagination-link,html.theme--catppuccin-frappe .pagination-ellipsis{font-size:1em;justify-content:center;margin:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}html.theme--catppuccin-frappe .pagination-previous,html.theme--catppuccin-frappe .pagination-next,html.theme--catppuccin-frappe .pagination-link{border-color:#626880;color:#8caaee;min-width:2.5em}html.theme--catppuccin-frappe .pagination-previous:hover,html.theme--catppuccin-frappe .pagination-next:hover,html.theme--catppuccin-frappe .pagination-link:hover{border-color:#737994;color:#99d1db}html.theme--catppuccin-frappe .pagination-previous:focus,html.theme--catppuccin-frappe .pagination-next:focus,html.theme--catppuccin-frappe .pagination-link:focus{border-color:#737994}html.theme--catppuccin-frappe .pagination-previous:active,html.theme--catppuccin-frappe .pagination-next:active,html.theme--catppuccin-frappe .pagination-link:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2)}html.theme--catppuccin-frappe .pagination-previous[disabled],html.theme--catppuccin-frappe .pagination-previous.is-disabled,html.theme--catppuccin-frappe .pagination-next[disabled],html.theme--catppuccin-frappe .pagination-next.is-disabled,html.theme--catppuccin-frappe .pagination-link[disabled],html.theme--catppuccin-frappe .pagination-link.is-disabled{background-color:#626880;border-color:#626880;box-shadow:none;color:#f1f4fd;opacity:0.5}html.theme--catppuccin-frappe .pagination-previous,html.theme--catppuccin-frappe .pagination-next{padding-left:.75em;padding-right:.75em;white-space:nowrap}html.theme--catppuccin-frappe .pagination-link.is-current{background-color:#8caaee;border-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .pagination-ellipsis{color:#737994;pointer-events:none}html.theme--catppuccin-frappe .pagination-list{flex-wrap:wrap}html.theme--catppuccin-frappe .pagination-list li{list-style:none}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .pagination{flex-wrap:wrap}html.theme--catppuccin-frappe .pagination-previous,html.theme--catppuccin-frappe .pagination-next{flex-grow:1;flex-shrink:1}html.theme--catppuccin-frappe .pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}html.theme--catppuccin-frappe .pagination-previous,html.theme--catppuccin-frappe .pagination-next,html.theme--catppuccin-frappe .pagination-link,html.theme--catppuccin-frappe .pagination-ellipsis{margin-bottom:0;margin-top:0}html.theme--catppuccin-frappe .pagination-previous{order:2}html.theme--catppuccin-frappe .pagination-next{order:3}html.theme--catppuccin-frappe .pagination{justify-content:space-between;margin-bottom:0;margin-top:0}html.theme--catppuccin-frappe .pagination.is-centered .pagination-previous{order:1}html.theme--catppuccin-frappe .pagination.is-centered .pagination-list{justify-content:center;order:2}html.theme--catppuccin-frappe .pagination.is-centered .pagination-next{order:3}html.theme--catppuccin-frappe .pagination.is-right .pagination-previous{order:1}html.theme--catppuccin-frappe .pagination.is-right .pagination-next{order:2}html.theme--catppuccin-frappe .pagination.is-right .pagination-list{justify-content:flex-end;order:3}}html.theme--catppuccin-frappe .panel{border-radius:8px;box-shadow:#171717;font-size:1rem}html.theme--catppuccin-frappe .panel:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-frappe .panel.is-white .panel-heading{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .panel.is-white .panel-tabs a.is-active{border-bottom-color:#fff}html.theme--catppuccin-frappe .panel.is-white .panel-block.is-active .panel-icon{color:#fff}html.theme--catppuccin-frappe .panel.is-black .panel-heading{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .panel.is-black .panel-tabs a.is-active{border-bottom-color:#0a0a0a}html.theme--catppuccin-frappe .panel.is-black .panel-block.is-active .panel-icon{color:#0a0a0a}html.theme--catppuccin-frappe .panel.is-light .panel-heading{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .panel.is-light .panel-tabs a.is-active{border-bottom-color:#f5f5f5}html.theme--catppuccin-frappe .panel.is-light .panel-block.is-active .panel-icon{color:#f5f5f5}html.theme--catppuccin-frappe .panel.is-dark .panel-heading,html.theme--catppuccin-frappe .content kbd.panel .panel-heading{background-color:#414559;color:#fff}html.theme--catppuccin-frappe .panel.is-dark .panel-tabs a.is-active,html.theme--catppuccin-frappe .content kbd.panel .panel-tabs a.is-active{border-bottom-color:#414559}html.theme--catppuccin-frappe .panel.is-dark .panel-block.is-active .panel-icon,html.theme--catppuccin-frappe .content kbd.panel .panel-block.is-active .panel-icon{color:#414559}html.theme--catppuccin-frappe .panel.is-primary .panel-heading,html.theme--catppuccin-frappe .docstring>section>a.panel.docs-sourcelink .panel-heading{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .panel.is-primary .panel-tabs a.is-active,html.theme--catppuccin-frappe .docstring>section>a.panel.docs-sourcelink .panel-tabs a.is-active{border-bottom-color:#8caaee}html.theme--catppuccin-frappe .panel.is-primary .panel-block.is-active .panel-icon,html.theme--catppuccin-frappe .docstring>section>a.panel.docs-sourcelink .panel-block.is-active .panel-icon{color:#8caaee}html.theme--catppuccin-frappe .panel.is-link .panel-heading{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .panel.is-link .panel-tabs a.is-active{border-bottom-color:#8caaee}html.theme--catppuccin-frappe .panel.is-link .panel-block.is-active .panel-icon{color:#8caaee}html.theme--catppuccin-frappe .panel.is-info .panel-heading{background-color:#81c8be;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .panel.is-info .panel-tabs a.is-active{border-bottom-color:#81c8be}html.theme--catppuccin-frappe .panel.is-info .panel-block.is-active .panel-icon{color:#81c8be}html.theme--catppuccin-frappe .panel.is-success .panel-heading{background-color:#a6d189;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .panel.is-success .panel-tabs a.is-active{border-bottom-color:#a6d189}html.theme--catppuccin-frappe .panel.is-success .panel-block.is-active .panel-icon{color:#a6d189}html.theme--catppuccin-frappe .panel.is-warning .panel-heading{background-color:#e5c890;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .panel.is-warning .panel-tabs a.is-active{border-bottom-color:#e5c890}html.theme--catppuccin-frappe .panel.is-warning .panel-block.is-active .panel-icon{color:#e5c890}html.theme--catppuccin-frappe .panel.is-danger .panel-heading{background-color:#e78284;color:#fff}html.theme--catppuccin-frappe .panel.is-danger .panel-tabs a.is-active{border-bottom-color:#e78284}html.theme--catppuccin-frappe .panel.is-danger .panel-block.is-active .panel-icon{color:#e78284}html.theme--catppuccin-frappe .panel-tabs:not(:last-child),html.theme--catppuccin-frappe .panel-block:not(:last-child){border-bottom:1px solid #ededed}html.theme--catppuccin-frappe .panel-heading{background-color:#51576d;border-radius:8px 8px 0 0;color:#b0bef1;font-size:1.25em;font-weight:700;line-height:1.25;padding:0.75em 1em}html.theme--catppuccin-frappe .panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}html.theme--catppuccin-frappe .panel-tabs a{border-bottom:1px solid #626880;margin-bottom:-1px;padding:0.5em}html.theme--catppuccin-frappe .panel-tabs a.is-active{border-bottom-color:#51576d;color:#769aeb}html.theme--catppuccin-frappe .panel-list a{color:#c6d0f5}html.theme--catppuccin-frappe .panel-list a:hover{color:#8caaee}html.theme--catppuccin-frappe .panel-block{align-items:center;color:#b0bef1;display:flex;justify-content:flex-start;padding:0.5em 0.75em}html.theme--catppuccin-frappe .panel-block input[type="checkbox"]{margin-right:.75em}html.theme--catppuccin-frappe .panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}html.theme--catppuccin-frappe .panel-block.is-wrapped{flex-wrap:wrap}html.theme--catppuccin-frappe .panel-block.is-active{border-left-color:#8caaee;color:#769aeb}html.theme--catppuccin-frappe .panel-block.is-active .panel-icon{color:#8caaee}html.theme--catppuccin-frappe .panel-block:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}html.theme--catppuccin-frappe a.panel-block,html.theme--catppuccin-frappe label.panel-block{cursor:pointer}html.theme--catppuccin-frappe a.panel-block:hover,html.theme--catppuccin-frappe label.panel-block:hover{background-color:#292c3c}html.theme--catppuccin-frappe .panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#f1f4fd;margin-right:.75em}html.theme--catppuccin-frappe .panel-icon .fa{font-size:inherit;line-height:inherit}html.theme--catppuccin-frappe .tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:1rem;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}html.theme--catppuccin-frappe .tabs a{align-items:center;border-bottom-color:#626880;border-bottom-style:solid;border-bottom-width:1px;color:#c6d0f5;display:flex;justify-content:center;margin-bottom:-1px;padding:0.5em 1em;vertical-align:top}html.theme--catppuccin-frappe .tabs a:hover{border-bottom-color:#b0bef1;color:#b0bef1}html.theme--catppuccin-frappe .tabs li{display:block}html.theme--catppuccin-frappe .tabs li.is-active a{border-bottom-color:#8caaee;color:#8caaee}html.theme--catppuccin-frappe .tabs ul{align-items:center;border-bottom-color:#626880;border-bottom-style:solid;border-bottom-width:1px;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}html.theme--catppuccin-frappe .tabs ul.is-left{padding-right:0.75em}html.theme--catppuccin-frappe .tabs ul.is-center{flex:none;justify-content:center;padding-left:0.75em;padding-right:0.75em}html.theme--catppuccin-frappe .tabs ul.is-right{justify-content:flex-end;padding-left:0.75em}html.theme--catppuccin-frappe .tabs .icon:first-child{margin-right:.5em}html.theme--catppuccin-frappe .tabs .icon:last-child{margin-left:.5em}html.theme--catppuccin-frappe .tabs.is-centered ul{justify-content:center}html.theme--catppuccin-frappe .tabs.is-right ul{justify-content:flex-end}html.theme--catppuccin-frappe .tabs.is-boxed a{border:1px solid transparent;border-radius:.4em .4em 0 0}html.theme--catppuccin-frappe .tabs.is-boxed a:hover{background-color:#292c3c;border-bottom-color:#626880}html.theme--catppuccin-frappe .tabs.is-boxed li.is-active a{background-color:#fff;border-color:#626880;border-bottom-color:rgba(0,0,0,0) !important}html.theme--catppuccin-frappe .tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}html.theme--catppuccin-frappe .tabs.is-toggle a{border-color:#626880;border-style:solid;border-width:1px;margin-bottom:0;position:relative}html.theme--catppuccin-frappe .tabs.is-toggle a:hover{background-color:#292c3c;border-color:#737994;z-index:2}html.theme--catppuccin-frappe .tabs.is-toggle li+li{margin-left:-1px}html.theme--catppuccin-frappe .tabs.is-toggle li:first-child a{border-top-left-radius:.4em;border-bottom-left-radius:.4em}html.theme--catppuccin-frappe .tabs.is-toggle li:last-child a{border-top-right-radius:.4em;border-bottom-right-radius:.4em}html.theme--catppuccin-frappe .tabs.is-toggle li.is-active a{background-color:#8caaee;border-color:#8caaee;color:#fff;z-index:1}html.theme--catppuccin-frappe .tabs.is-toggle ul{border-bottom:none}html.theme--catppuccin-frappe .tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:9999px;border-top-left-radius:9999px;padding-left:1.25em}html.theme--catppuccin-frappe .tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:9999px;border-top-right-radius:9999px;padding-right:1.25em}html.theme--catppuccin-frappe .tabs.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.tabs{font-size:.75rem}html.theme--catppuccin-frappe .tabs.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .tabs.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-narrow{flex:none;width:unset}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-full{flex:none;width:100%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-half{flex:none;width:50%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-half{margin-left:50%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-0{flex:none;width:0%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-0{margin-left:0%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-1{flex:none;width:8.33333337%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-1{margin-left:8.33333337%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-2{flex:none;width:16.66666674%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-2{margin-left:16.66666674%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-3{flex:none;width:25%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-3{margin-left:25%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-4{flex:none;width:33.33333337%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-4{margin-left:33.33333337%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-5{flex:none;width:41.66666674%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-5{margin-left:41.66666674%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-6{flex:none;width:50%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-6{margin-left:50%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-7{flex:none;width:58.33333337%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-7{margin-left:58.33333337%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-8{flex:none;width:66.66666674%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-8{margin-left:66.66666674%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-9{flex:none;width:75%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-9{margin-left:75%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-10{flex:none;width:83.33333337%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-10{margin-left:83.33333337%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-11{flex:none;width:91.66666674%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-11{margin-left:91.66666674%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-12{flex:none;width:100%}.columns.is-mobile>html.theme--catppuccin-frappe .column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .column.is-narrow-mobile{flex:none;width:unset}html.theme--catppuccin-frappe .column.is-full-mobile{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-three-quarters-mobile{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-two-thirds-mobile{flex:none;width:66.6666%}html.theme--catppuccin-frappe .column.is-half-mobile{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-one-third-mobile{flex:none;width:33.3333%}html.theme--catppuccin-frappe .column.is-one-quarter-mobile{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-one-fifth-mobile{flex:none;width:20%}html.theme--catppuccin-frappe .column.is-two-fifths-mobile{flex:none;width:40%}html.theme--catppuccin-frappe .column.is-three-fifths-mobile{flex:none;width:60%}html.theme--catppuccin-frappe .column.is-four-fifths-mobile{flex:none;width:80%}html.theme--catppuccin-frappe .column.is-offset-three-quarters-mobile{margin-left:75%}html.theme--catppuccin-frappe .column.is-offset-two-thirds-mobile{margin-left:66.6666%}html.theme--catppuccin-frappe .column.is-offset-half-mobile{margin-left:50%}html.theme--catppuccin-frappe .column.is-offset-one-third-mobile{margin-left:33.3333%}html.theme--catppuccin-frappe .column.is-offset-one-quarter-mobile{margin-left:25%}html.theme--catppuccin-frappe .column.is-offset-one-fifth-mobile{margin-left:20%}html.theme--catppuccin-frappe .column.is-offset-two-fifths-mobile{margin-left:40%}html.theme--catppuccin-frappe .column.is-offset-three-fifths-mobile{margin-left:60%}html.theme--catppuccin-frappe .column.is-offset-four-fifths-mobile{margin-left:80%}html.theme--catppuccin-frappe .column.is-0-mobile{flex:none;width:0%}html.theme--catppuccin-frappe .column.is-offset-0-mobile{margin-left:0%}html.theme--catppuccin-frappe .column.is-1-mobile{flex:none;width:8.33333337%}html.theme--catppuccin-frappe .column.is-offset-1-mobile{margin-left:8.33333337%}html.theme--catppuccin-frappe .column.is-2-mobile{flex:none;width:16.66666674%}html.theme--catppuccin-frappe .column.is-offset-2-mobile{margin-left:16.66666674%}html.theme--catppuccin-frappe .column.is-3-mobile{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-offset-3-mobile{margin-left:25%}html.theme--catppuccin-frappe .column.is-4-mobile{flex:none;width:33.33333337%}html.theme--catppuccin-frappe .column.is-offset-4-mobile{margin-left:33.33333337%}html.theme--catppuccin-frappe .column.is-5-mobile{flex:none;width:41.66666674%}html.theme--catppuccin-frappe .column.is-offset-5-mobile{margin-left:41.66666674%}html.theme--catppuccin-frappe .column.is-6-mobile{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-offset-6-mobile{margin-left:50%}html.theme--catppuccin-frappe .column.is-7-mobile{flex:none;width:58.33333337%}html.theme--catppuccin-frappe .column.is-offset-7-mobile{margin-left:58.33333337%}html.theme--catppuccin-frappe .column.is-8-mobile{flex:none;width:66.66666674%}html.theme--catppuccin-frappe .column.is-offset-8-mobile{margin-left:66.66666674%}html.theme--catppuccin-frappe .column.is-9-mobile{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-offset-9-mobile{margin-left:75%}html.theme--catppuccin-frappe .column.is-10-mobile{flex:none;width:83.33333337%}html.theme--catppuccin-frappe .column.is-offset-10-mobile{margin-left:83.33333337%}html.theme--catppuccin-frappe .column.is-11-mobile{flex:none;width:91.66666674%}html.theme--catppuccin-frappe .column.is-offset-11-mobile{margin-left:91.66666674%}html.theme--catppuccin-frappe .column.is-12-mobile{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .column.is-narrow,html.theme--catppuccin-frappe .column.is-narrow-tablet{flex:none;width:unset}html.theme--catppuccin-frappe .column.is-full,html.theme--catppuccin-frappe .column.is-full-tablet{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-three-quarters,html.theme--catppuccin-frappe .column.is-three-quarters-tablet{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-two-thirds,html.theme--catppuccin-frappe .column.is-two-thirds-tablet{flex:none;width:66.6666%}html.theme--catppuccin-frappe .column.is-half,html.theme--catppuccin-frappe .column.is-half-tablet{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-one-third,html.theme--catppuccin-frappe .column.is-one-third-tablet{flex:none;width:33.3333%}html.theme--catppuccin-frappe .column.is-one-quarter,html.theme--catppuccin-frappe .column.is-one-quarter-tablet{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-one-fifth,html.theme--catppuccin-frappe .column.is-one-fifth-tablet{flex:none;width:20%}html.theme--catppuccin-frappe .column.is-two-fifths,html.theme--catppuccin-frappe .column.is-two-fifths-tablet{flex:none;width:40%}html.theme--catppuccin-frappe .column.is-three-fifths,html.theme--catppuccin-frappe .column.is-three-fifths-tablet{flex:none;width:60%}html.theme--catppuccin-frappe .column.is-four-fifths,html.theme--catppuccin-frappe .column.is-four-fifths-tablet{flex:none;width:80%}html.theme--catppuccin-frappe .column.is-offset-three-quarters,html.theme--catppuccin-frappe .column.is-offset-three-quarters-tablet{margin-left:75%}html.theme--catppuccin-frappe .column.is-offset-two-thirds,html.theme--catppuccin-frappe .column.is-offset-two-thirds-tablet{margin-left:66.6666%}html.theme--catppuccin-frappe .column.is-offset-half,html.theme--catppuccin-frappe .column.is-offset-half-tablet{margin-left:50%}html.theme--catppuccin-frappe .column.is-offset-one-third,html.theme--catppuccin-frappe .column.is-offset-one-third-tablet{margin-left:33.3333%}html.theme--catppuccin-frappe .column.is-offset-one-quarter,html.theme--catppuccin-frappe .column.is-offset-one-quarter-tablet{margin-left:25%}html.theme--catppuccin-frappe .column.is-offset-one-fifth,html.theme--catppuccin-frappe .column.is-offset-one-fifth-tablet{margin-left:20%}html.theme--catppuccin-frappe .column.is-offset-two-fifths,html.theme--catppuccin-frappe .column.is-offset-two-fifths-tablet{margin-left:40%}html.theme--catppuccin-frappe .column.is-offset-three-fifths,html.theme--catppuccin-frappe .column.is-offset-three-fifths-tablet{margin-left:60%}html.theme--catppuccin-frappe .column.is-offset-four-fifths,html.theme--catppuccin-frappe .column.is-offset-four-fifths-tablet{margin-left:80%}html.theme--catppuccin-frappe .column.is-0,html.theme--catppuccin-frappe .column.is-0-tablet{flex:none;width:0%}html.theme--catppuccin-frappe .column.is-offset-0,html.theme--catppuccin-frappe .column.is-offset-0-tablet{margin-left:0%}html.theme--catppuccin-frappe .column.is-1,html.theme--catppuccin-frappe .column.is-1-tablet{flex:none;width:8.33333337%}html.theme--catppuccin-frappe .column.is-offset-1,html.theme--catppuccin-frappe .column.is-offset-1-tablet{margin-left:8.33333337%}html.theme--catppuccin-frappe .column.is-2,html.theme--catppuccin-frappe .column.is-2-tablet{flex:none;width:16.66666674%}html.theme--catppuccin-frappe .column.is-offset-2,html.theme--catppuccin-frappe .column.is-offset-2-tablet{margin-left:16.66666674%}html.theme--catppuccin-frappe .column.is-3,html.theme--catppuccin-frappe .column.is-3-tablet{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-offset-3,html.theme--catppuccin-frappe .column.is-offset-3-tablet{margin-left:25%}html.theme--catppuccin-frappe .column.is-4,html.theme--catppuccin-frappe .column.is-4-tablet{flex:none;width:33.33333337%}html.theme--catppuccin-frappe .column.is-offset-4,html.theme--catppuccin-frappe .column.is-offset-4-tablet{margin-left:33.33333337%}html.theme--catppuccin-frappe .column.is-5,html.theme--catppuccin-frappe .column.is-5-tablet{flex:none;width:41.66666674%}html.theme--catppuccin-frappe .column.is-offset-5,html.theme--catppuccin-frappe .column.is-offset-5-tablet{margin-left:41.66666674%}html.theme--catppuccin-frappe .column.is-6,html.theme--catppuccin-frappe .column.is-6-tablet{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-offset-6,html.theme--catppuccin-frappe .column.is-offset-6-tablet{margin-left:50%}html.theme--catppuccin-frappe .column.is-7,html.theme--catppuccin-frappe .column.is-7-tablet{flex:none;width:58.33333337%}html.theme--catppuccin-frappe .column.is-offset-7,html.theme--catppuccin-frappe .column.is-offset-7-tablet{margin-left:58.33333337%}html.theme--catppuccin-frappe .column.is-8,html.theme--catppuccin-frappe .column.is-8-tablet{flex:none;width:66.66666674%}html.theme--catppuccin-frappe .column.is-offset-8,html.theme--catppuccin-frappe .column.is-offset-8-tablet{margin-left:66.66666674%}html.theme--catppuccin-frappe .column.is-9,html.theme--catppuccin-frappe .column.is-9-tablet{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-offset-9,html.theme--catppuccin-frappe .column.is-offset-9-tablet{margin-left:75%}html.theme--catppuccin-frappe .column.is-10,html.theme--catppuccin-frappe .column.is-10-tablet{flex:none;width:83.33333337%}html.theme--catppuccin-frappe .column.is-offset-10,html.theme--catppuccin-frappe .column.is-offset-10-tablet{margin-left:83.33333337%}html.theme--catppuccin-frappe .column.is-11,html.theme--catppuccin-frappe .column.is-11-tablet{flex:none;width:91.66666674%}html.theme--catppuccin-frappe .column.is-offset-11,html.theme--catppuccin-frappe .column.is-offset-11-tablet{margin-left:91.66666674%}html.theme--catppuccin-frappe .column.is-12,html.theme--catppuccin-frappe .column.is-12-tablet{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-offset-12,html.theme--catppuccin-frappe .column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .column.is-narrow-touch{flex:none;width:unset}html.theme--catppuccin-frappe .column.is-full-touch{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-three-quarters-touch{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-two-thirds-touch{flex:none;width:66.6666%}html.theme--catppuccin-frappe .column.is-half-touch{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-one-third-touch{flex:none;width:33.3333%}html.theme--catppuccin-frappe .column.is-one-quarter-touch{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-one-fifth-touch{flex:none;width:20%}html.theme--catppuccin-frappe .column.is-two-fifths-touch{flex:none;width:40%}html.theme--catppuccin-frappe .column.is-three-fifths-touch{flex:none;width:60%}html.theme--catppuccin-frappe .column.is-four-fifths-touch{flex:none;width:80%}html.theme--catppuccin-frappe .column.is-offset-three-quarters-touch{margin-left:75%}html.theme--catppuccin-frappe .column.is-offset-two-thirds-touch{margin-left:66.6666%}html.theme--catppuccin-frappe .column.is-offset-half-touch{margin-left:50%}html.theme--catppuccin-frappe .column.is-offset-one-third-touch{margin-left:33.3333%}html.theme--catppuccin-frappe .column.is-offset-one-quarter-touch{margin-left:25%}html.theme--catppuccin-frappe .column.is-offset-one-fifth-touch{margin-left:20%}html.theme--catppuccin-frappe .column.is-offset-two-fifths-touch{margin-left:40%}html.theme--catppuccin-frappe .column.is-offset-three-fifths-touch{margin-left:60%}html.theme--catppuccin-frappe .column.is-offset-four-fifths-touch{margin-left:80%}html.theme--catppuccin-frappe .column.is-0-touch{flex:none;width:0%}html.theme--catppuccin-frappe .column.is-offset-0-touch{margin-left:0%}html.theme--catppuccin-frappe .column.is-1-touch{flex:none;width:8.33333337%}html.theme--catppuccin-frappe .column.is-offset-1-touch{margin-left:8.33333337%}html.theme--catppuccin-frappe .column.is-2-touch{flex:none;width:16.66666674%}html.theme--catppuccin-frappe .column.is-offset-2-touch{margin-left:16.66666674%}html.theme--catppuccin-frappe .column.is-3-touch{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-offset-3-touch{margin-left:25%}html.theme--catppuccin-frappe .column.is-4-touch{flex:none;width:33.33333337%}html.theme--catppuccin-frappe .column.is-offset-4-touch{margin-left:33.33333337%}html.theme--catppuccin-frappe .column.is-5-touch{flex:none;width:41.66666674%}html.theme--catppuccin-frappe .column.is-offset-5-touch{margin-left:41.66666674%}html.theme--catppuccin-frappe .column.is-6-touch{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-offset-6-touch{margin-left:50%}html.theme--catppuccin-frappe .column.is-7-touch{flex:none;width:58.33333337%}html.theme--catppuccin-frappe .column.is-offset-7-touch{margin-left:58.33333337%}html.theme--catppuccin-frappe .column.is-8-touch{flex:none;width:66.66666674%}html.theme--catppuccin-frappe .column.is-offset-8-touch{margin-left:66.66666674%}html.theme--catppuccin-frappe .column.is-9-touch{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-offset-9-touch{margin-left:75%}html.theme--catppuccin-frappe .column.is-10-touch{flex:none;width:83.33333337%}html.theme--catppuccin-frappe .column.is-offset-10-touch{margin-left:83.33333337%}html.theme--catppuccin-frappe .column.is-11-touch{flex:none;width:91.66666674%}html.theme--catppuccin-frappe .column.is-offset-11-touch{margin-left:91.66666674%}html.theme--catppuccin-frappe .column.is-12-touch{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .column.is-narrow-desktop{flex:none;width:unset}html.theme--catppuccin-frappe .column.is-full-desktop{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-three-quarters-desktop{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-two-thirds-desktop{flex:none;width:66.6666%}html.theme--catppuccin-frappe .column.is-half-desktop{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-one-third-desktop{flex:none;width:33.3333%}html.theme--catppuccin-frappe .column.is-one-quarter-desktop{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-one-fifth-desktop{flex:none;width:20%}html.theme--catppuccin-frappe .column.is-two-fifths-desktop{flex:none;width:40%}html.theme--catppuccin-frappe .column.is-three-fifths-desktop{flex:none;width:60%}html.theme--catppuccin-frappe .column.is-four-fifths-desktop{flex:none;width:80%}html.theme--catppuccin-frappe .column.is-offset-three-quarters-desktop{margin-left:75%}html.theme--catppuccin-frappe .column.is-offset-two-thirds-desktop{margin-left:66.6666%}html.theme--catppuccin-frappe .column.is-offset-half-desktop{margin-left:50%}html.theme--catppuccin-frappe .column.is-offset-one-third-desktop{margin-left:33.3333%}html.theme--catppuccin-frappe .column.is-offset-one-quarter-desktop{margin-left:25%}html.theme--catppuccin-frappe .column.is-offset-one-fifth-desktop{margin-left:20%}html.theme--catppuccin-frappe .column.is-offset-two-fifths-desktop{margin-left:40%}html.theme--catppuccin-frappe .column.is-offset-three-fifths-desktop{margin-left:60%}html.theme--catppuccin-frappe .column.is-offset-four-fifths-desktop{margin-left:80%}html.theme--catppuccin-frappe .column.is-0-desktop{flex:none;width:0%}html.theme--catppuccin-frappe .column.is-offset-0-desktop{margin-left:0%}html.theme--catppuccin-frappe .column.is-1-desktop{flex:none;width:8.33333337%}html.theme--catppuccin-frappe .column.is-offset-1-desktop{margin-left:8.33333337%}html.theme--catppuccin-frappe .column.is-2-desktop{flex:none;width:16.66666674%}html.theme--catppuccin-frappe .column.is-offset-2-desktop{margin-left:16.66666674%}html.theme--catppuccin-frappe .column.is-3-desktop{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-offset-3-desktop{margin-left:25%}html.theme--catppuccin-frappe .column.is-4-desktop{flex:none;width:33.33333337%}html.theme--catppuccin-frappe .column.is-offset-4-desktop{margin-left:33.33333337%}html.theme--catppuccin-frappe .column.is-5-desktop{flex:none;width:41.66666674%}html.theme--catppuccin-frappe .column.is-offset-5-desktop{margin-left:41.66666674%}html.theme--catppuccin-frappe .column.is-6-desktop{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-offset-6-desktop{margin-left:50%}html.theme--catppuccin-frappe .column.is-7-desktop{flex:none;width:58.33333337%}html.theme--catppuccin-frappe .column.is-offset-7-desktop{margin-left:58.33333337%}html.theme--catppuccin-frappe .column.is-8-desktop{flex:none;width:66.66666674%}html.theme--catppuccin-frappe .column.is-offset-8-desktop{margin-left:66.66666674%}html.theme--catppuccin-frappe .column.is-9-desktop{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-offset-9-desktop{margin-left:75%}html.theme--catppuccin-frappe .column.is-10-desktop{flex:none;width:83.33333337%}html.theme--catppuccin-frappe .column.is-offset-10-desktop{margin-left:83.33333337%}html.theme--catppuccin-frappe .column.is-11-desktop{flex:none;width:91.66666674%}html.theme--catppuccin-frappe .column.is-offset-11-desktop{margin-left:91.66666674%}html.theme--catppuccin-frappe .column.is-12-desktop{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .column.is-narrow-widescreen{flex:none;width:unset}html.theme--catppuccin-frappe .column.is-full-widescreen{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-three-quarters-widescreen{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-two-thirds-widescreen{flex:none;width:66.6666%}html.theme--catppuccin-frappe .column.is-half-widescreen{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-one-third-widescreen{flex:none;width:33.3333%}html.theme--catppuccin-frappe .column.is-one-quarter-widescreen{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-one-fifth-widescreen{flex:none;width:20%}html.theme--catppuccin-frappe .column.is-two-fifths-widescreen{flex:none;width:40%}html.theme--catppuccin-frappe .column.is-three-fifths-widescreen{flex:none;width:60%}html.theme--catppuccin-frappe .column.is-four-fifths-widescreen{flex:none;width:80%}html.theme--catppuccin-frappe .column.is-offset-three-quarters-widescreen{margin-left:75%}html.theme--catppuccin-frappe .column.is-offset-two-thirds-widescreen{margin-left:66.6666%}html.theme--catppuccin-frappe .column.is-offset-half-widescreen{margin-left:50%}html.theme--catppuccin-frappe .column.is-offset-one-third-widescreen{margin-left:33.3333%}html.theme--catppuccin-frappe .column.is-offset-one-quarter-widescreen{margin-left:25%}html.theme--catppuccin-frappe .column.is-offset-one-fifth-widescreen{margin-left:20%}html.theme--catppuccin-frappe .column.is-offset-two-fifths-widescreen{margin-left:40%}html.theme--catppuccin-frappe .column.is-offset-three-fifths-widescreen{margin-left:60%}html.theme--catppuccin-frappe .column.is-offset-four-fifths-widescreen{margin-left:80%}html.theme--catppuccin-frappe .column.is-0-widescreen{flex:none;width:0%}html.theme--catppuccin-frappe .column.is-offset-0-widescreen{margin-left:0%}html.theme--catppuccin-frappe .column.is-1-widescreen{flex:none;width:8.33333337%}html.theme--catppuccin-frappe .column.is-offset-1-widescreen{margin-left:8.33333337%}html.theme--catppuccin-frappe .column.is-2-widescreen{flex:none;width:16.66666674%}html.theme--catppuccin-frappe .column.is-offset-2-widescreen{margin-left:16.66666674%}html.theme--catppuccin-frappe .column.is-3-widescreen{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-offset-3-widescreen{margin-left:25%}html.theme--catppuccin-frappe .column.is-4-widescreen{flex:none;width:33.33333337%}html.theme--catppuccin-frappe .column.is-offset-4-widescreen{margin-left:33.33333337%}html.theme--catppuccin-frappe .column.is-5-widescreen{flex:none;width:41.66666674%}html.theme--catppuccin-frappe .column.is-offset-5-widescreen{margin-left:41.66666674%}html.theme--catppuccin-frappe .column.is-6-widescreen{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-offset-6-widescreen{margin-left:50%}html.theme--catppuccin-frappe .column.is-7-widescreen{flex:none;width:58.33333337%}html.theme--catppuccin-frappe .column.is-offset-7-widescreen{margin-left:58.33333337%}html.theme--catppuccin-frappe .column.is-8-widescreen{flex:none;width:66.66666674%}html.theme--catppuccin-frappe .column.is-offset-8-widescreen{margin-left:66.66666674%}html.theme--catppuccin-frappe .column.is-9-widescreen{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-offset-9-widescreen{margin-left:75%}html.theme--catppuccin-frappe .column.is-10-widescreen{flex:none;width:83.33333337%}html.theme--catppuccin-frappe .column.is-offset-10-widescreen{margin-left:83.33333337%}html.theme--catppuccin-frappe .column.is-11-widescreen{flex:none;width:91.66666674%}html.theme--catppuccin-frappe .column.is-offset-11-widescreen{margin-left:91.66666674%}html.theme--catppuccin-frappe .column.is-12-widescreen{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .column.is-narrow-fullhd{flex:none;width:unset}html.theme--catppuccin-frappe .column.is-full-fullhd{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-three-quarters-fullhd{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-two-thirds-fullhd{flex:none;width:66.6666%}html.theme--catppuccin-frappe .column.is-half-fullhd{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-one-third-fullhd{flex:none;width:33.3333%}html.theme--catppuccin-frappe .column.is-one-quarter-fullhd{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-one-fifth-fullhd{flex:none;width:20%}html.theme--catppuccin-frappe .column.is-two-fifths-fullhd{flex:none;width:40%}html.theme--catppuccin-frappe .column.is-three-fifths-fullhd{flex:none;width:60%}html.theme--catppuccin-frappe .column.is-four-fifths-fullhd{flex:none;width:80%}html.theme--catppuccin-frappe .column.is-offset-three-quarters-fullhd{margin-left:75%}html.theme--catppuccin-frappe .column.is-offset-two-thirds-fullhd{margin-left:66.6666%}html.theme--catppuccin-frappe .column.is-offset-half-fullhd{margin-left:50%}html.theme--catppuccin-frappe .column.is-offset-one-third-fullhd{margin-left:33.3333%}html.theme--catppuccin-frappe .column.is-offset-one-quarter-fullhd{margin-left:25%}html.theme--catppuccin-frappe .column.is-offset-one-fifth-fullhd{margin-left:20%}html.theme--catppuccin-frappe .column.is-offset-two-fifths-fullhd{margin-left:40%}html.theme--catppuccin-frappe .column.is-offset-three-fifths-fullhd{margin-left:60%}html.theme--catppuccin-frappe .column.is-offset-four-fifths-fullhd{margin-left:80%}html.theme--catppuccin-frappe .column.is-0-fullhd{flex:none;width:0%}html.theme--catppuccin-frappe .column.is-offset-0-fullhd{margin-left:0%}html.theme--catppuccin-frappe .column.is-1-fullhd{flex:none;width:8.33333337%}html.theme--catppuccin-frappe .column.is-offset-1-fullhd{margin-left:8.33333337%}html.theme--catppuccin-frappe .column.is-2-fullhd{flex:none;width:16.66666674%}html.theme--catppuccin-frappe .column.is-offset-2-fullhd{margin-left:16.66666674%}html.theme--catppuccin-frappe .column.is-3-fullhd{flex:none;width:25%}html.theme--catppuccin-frappe .column.is-offset-3-fullhd{margin-left:25%}html.theme--catppuccin-frappe .column.is-4-fullhd{flex:none;width:33.33333337%}html.theme--catppuccin-frappe .column.is-offset-4-fullhd{margin-left:33.33333337%}html.theme--catppuccin-frappe .column.is-5-fullhd{flex:none;width:41.66666674%}html.theme--catppuccin-frappe .column.is-offset-5-fullhd{margin-left:41.66666674%}html.theme--catppuccin-frappe .column.is-6-fullhd{flex:none;width:50%}html.theme--catppuccin-frappe .column.is-offset-6-fullhd{margin-left:50%}html.theme--catppuccin-frappe .column.is-7-fullhd{flex:none;width:58.33333337%}html.theme--catppuccin-frappe .column.is-offset-7-fullhd{margin-left:58.33333337%}html.theme--catppuccin-frappe .column.is-8-fullhd{flex:none;width:66.66666674%}html.theme--catppuccin-frappe .column.is-offset-8-fullhd{margin-left:66.66666674%}html.theme--catppuccin-frappe .column.is-9-fullhd{flex:none;width:75%}html.theme--catppuccin-frappe .column.is-offset-9-fullhd{margin-left:75%}html.theme--catppuccin-frappe .column.is-10-fullhd{flex:none;width:83.33333337%}html.theme--catppuccin-frappe .column.is-offset-10-fullhd{margin-left:83.33333337%}html.theme--catppuccin-frappe .column.is-11-fullhd{flex:none;width:91.66666674%}html.theme--catppuccin-frappe .column.is-offset-11-fullhd{margin-left:91.66666674%}html.theme--catppuccin-frappe .column.is-12-fullhd{flex:none;width:100%}html.theme--catppuccin-frappe .column.is-offset-12-fullhd{margin-left:100%}}html.theme--catppuccin-frappe .columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--catppuccin-frappe .columns:last-child{margin-bottom:-.75rem}html.theme--catppuccin-frappe .columns:not(:last-child){margin-bottom:calc(1.5rem - .75rem)}html.theme--catppuccin-frappe .columns.is-centered{justify-content:center}html.theme--catppuccin-frappe .columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}html.theme--catppuccin-frappe .columns.is-gapless>.column{margin:0;padding:0 !important}html.theme--catppuccin-frappe .columns.is-gapless:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-frappe .columns.is-gapless:last-child{margin-bottom:0}html.theme--catppuccin-frappe .columns.is-mobile{display:flex}html.theme--catppuccin-frappe .columns.is-multiline{flex-wrap:wrap}html.theme--catppuccin-frappe .columns.is-vcentered{align-items:center}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .columns:not(.is-desktop){display:flex}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .columns.is-desktop{display:flex}}html.theme--catppuccin-frappe .columns.is-variable{--columnGap: 0.75rem;margin-left:calc(-1 * var(--columnGap));margin-right:calc(-1 * var(--columnGap))}html.theme--catppuccin-frappe .columns.is-variable>.column{padding-left:var(--columnGap);padding-right:var(--columnGap)}html.theme--catppuccin-frappe .columns.is-variable.is-0{--columnGap: 0rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .columns.is-variable.is-0-mobile{--columnGap: 0rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .columns.is-variable.is-0-tablet{--columnGap: 0rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-0-tablet-only{--columnGap: 0rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-0-touch{--columnGap: 0rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .columns.is-variable.is-0-desktop{--columnGap: 0rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-frappe .columns.is-variable.is-0-desktop-only{--columnGap: 0rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .columns.is-variable.is-0-widescreen{--columnGap: 0rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-frappe .columns.is-variable.is-0-widescreen-only{--columnGap: 0rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .columns.is-variable.is-0-fullhd{--columnGap: 0rem}}html.theme--catppuccin-frappe .columns.is-variable.is-1{--columnGap: .25rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .columns.is-variable.is-1-mobile{--columnGap: .25rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .columns.is-variable.is-1-tablet{--columnGap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-1-tablet-only{--columnGap: .25rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-1-touch{--columnGap: .25rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .columns.is-variable.is-1-desktop{--columnGap: .25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-frappe .columns.is-variable.is-1-desktop-only{--columnGap: .25rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .columns.is-variable.is-1-widescreen{--columnGap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-frappe .columns.is-variable.is-1-widescreen-only{--columnGap: .25rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .columns.is-variable.is-1-fullhd{--columnGap: .25rem}}html.theme--catppuccin-frappe .columns.is-variable.is-2{--columnGap: .5rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .columns.is-variable.is-2-mobile{--columnGap: .5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .columns.is-variable.is-2-tablet{--columnGap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-2-tablet-only{--columnGap: .5rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-2-touch{--columnGap: .5rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .columns.is-variable.is-2-desktop{--columnGap: .5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-frappe .columns.is-variable.is-2-desktop-only{--columnGap: .5rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .columns.is-variable.is-2-widescreen{--columnGap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-frappe .columns.is-variable.is-2-widescreen-only{--columnGap: .5rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .columns.is-variable.is-2-fullhd{--columnGap: .5rem}}html.theme--catppuccin-frappe .columns.is-variable.is-3{--columnGap: .75rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .columns.is-variable.is-3-mobile{--columnGap: .75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .columns.is-variable.is-3-tablet{--columnGap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-3-tablet-only{--columnGap: .75rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-3-touch{--columnGap: .75rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .columns.is-variable.is-3-desktop{--columnGap: .75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-frappe .columns.is-variable.is-3-desktop-only{--columnGap: .75rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .columns.is-variable.is-3-widescreen{--columnGap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-frappe .columns.is-variable.is-3-widescreen-only{--columnGap: .75rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .columns.is-variable.is-3-fullhd{--columnGap: .75rem}}html.theme--catppuccin-frappe .columns.is-variable.is-4{--columnGap: 1rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .columns.is-variable.is-4-mobile{--columnGap: 1rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .columns.is-variable.is-4-tablet{--columnGap: 1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-4-tablet-only{--columnGap: 1rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-4-touch{--columnGap: 1rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .columns.is-variable.is-4-desktop{--columnGap: 1rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-frappe .columns.is-variable.is-4-desktop-only{--columnGap: 1rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .columns.is-variable.is-4-widescreen{--columnGap: 1rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-frappe .columns.is-variable.is-4-widescreen-only{--columnGap: 1rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .columns.is-variable.is-4-fullhd{--columnGap: 1rem}}html.theme--catppuccin-frappe .columns.is-variable.is-5{--columnGap: 1.25rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .columns.is-variable.is-5-mobile{--columnGap: 1.25rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .columns.is-variable.is-5-tablet{--columnGap: 1.25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-5-tablet-only{--columnGap: 1.25rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-5-touch{--columnGap: 1.25rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .columns.is-variable.is-5-desktop{--columnGap: 1.25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-frappe .columns.is-variable.is-5-desktop-only{--columnGap: 1.25rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .columns.is-variable.is-5-widescreen{--columnGap: 1.25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-frappe .columns.is-variable.is-5-widescreen-only{--columnGap: 1.25rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .columns.is-variable.is-5-fullhd{--columnGap: 1.25rem}}html.theme--catppuccin-frappe .columns.is-variable.is-6{--columnGap: 1.5rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .columns.is-variable.is-6-mobile{--columnGap: 1.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .columns.is-variable.is-6-tablet{--columnGap: 1.5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-6-tablet-only{--columnGap: 1.5rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-6-touch{--columnGap: 1.5rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .columns.is-variable.is-6-desktop{--columnGap: 1.5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-frappe .columns.is-variable.is-6-desktop-only{--columnGap: 1.5rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .columns.is-variable.is-6-widescreen{--columnGap: 1.5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-frappe .columns.is-variable.is-6-widescreen-only{--columnGap: 1.5rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .columns.is-variable.is-6-fullhd{--columnGap: 1.5rem}}html.theme--catppuccin-frappe .columns.is-variable.is-7{--columnGap: 1.75rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .columns.is-variable.is-7-mobile{--columnGap: 1.75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .columns.is-variable.is-7-tablet{--columnGap: 1.75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-7-tablet-only{--columnGap: 1.75rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-7-touch{--columnGap: 1.75rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .columns.is-variable.is-7-desktop{--columnGap: 1.75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-frappe .columns.is-variable.is-7-desktop-only{--columnGap: 1.75rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .columns.is-variable.is-7-widescreen{--columnGap: 1.75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-frappe .columns.is-variable.is-7-widescreen-only{--columnGap: 1.75rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .columns.is-variable.is-7-fullhd{--columnGap: 1.75rem}}html.theme--catppuccin-frappe .columns.is-variable.is-8{--columnGap: 2rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .columns.is-variable.is-8-mobile{--columnGap: 2rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .columns.is-variable.is-8-tablet{--columnGap: 2rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-8-tablet-only{--columnGap: 2rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .columns.is-variable.is-8-touch{--columnGap: 2rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .columns.is-variable.is-8-desktop{--columnGap: 2rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-frappe .columns.is-variable.is-8-desktop-only{--columnGap: 2rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-frappe .columns.is-variable.is-8-widescreen{--columnGap: 2rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-frappe .columns.is-variable.is-8-widescreen-only{--columnGap: 2rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-frappe .columns.is-variable.is-8-fullhd{--columnGap: 2rem}}html.theme--catppuccin-frappe .tile{align-items:stretch;display:block;flex-basis:0;flex-grow:1;flex-shrink:1;min-height:min-content}html.theme--catppuccin-frappe .tile.is-ancestor{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--catppuccin-frappe .tile.is-ancestor:last-child{margin-bottom:-.75rem}html.theme--catppuccin-frappe .tile.is-ancestor:not(:last-child){margin-bottom:.75rem}html.theme--catppuccin-frappe .tile.is-child{margin:0 !important}html.theme--catppuccin-frappe .tile.is-parent{padding:.75rem}html.theme--catppuccin-frappe .tile.is-vertical{flex-direction:column}html.theme--catppuccin-frappe .tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem !important}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .tile:not(.is-child){display:flex}html.theme--catppuccin-frappe .tile.is-1{flex:none;width:8.33333337%}html.theme--catppuccin-frappe .tile.is-2{flex:none;width:16.66666674%}html.theme--catppuccin-frappe .tile.is-3{flex:none;width:25%}html.theme--catppuccin-frappe .tile.is-4{flex:none;width:33.33333337%}html.theme--catppuccin-frappe .tile.is-5{flex:none;width:41.66666674%}html.theme--catppuccin-frappe .tile.is-6{flex:none;width:50%}html.theme--catppuccin-frappe .tile.is-7{flex:none;width:58.33333337%}html.theme--catppuccin-frappe .tile.is-8{flex:none;width:66.66666674%}html.theme--catppuccin-frappe .tile.is-9{flex:none;width:75%}html.theme--catppuccin-frappe .tile.is-10{flex:none;width:83.33333337%}html.theme--catppuccin-frappe .tile.is-11{flex:none;width:91.66666674%}html.theme--catppuccin-frappe .tile.is-12{flex:none;width:100%}}html.theme--catppuccin-frappe .hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}html.theme--catppuccin-frappe .hero .navbar{background:none}html.theme--catppuccin-frappe .hero .tabs ul{border-bottom:none}html.theme--catppuccin-frappe .hero.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .hero.is-white strong{color:inherit}html.theme--catppuccin-frappe .hero.is-white .title{color:#0a0a0a}html.theme--catppuccin-frappe .hero.is-white .subtitle{color:rgba(10,10,10,0.9)}html.theme--catppuccin-frappe .hero.is-white .subtitle a:not(.button),html.theme--catppuccin-frappe .hero.is-white .subtitle strong{color:#0a0a0a}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .hero.is-white .navbar-menu{background-color:#fff}}html.theme--catppuccin-frappe .hero.is-white .navbar-item,html.theme--catppuccin-frappe .hero.is-white .navbar-link{color:rgba(10,10,10,0.7)}html.theme--catppuccin-frappe .hero.is-white a.navbar-item:hover,html.theme--catppuccin-frappe .hero.is-white a.navbar-item.is-active,html.theme--catppuccin-frappe .hero.is-white .navbar-link:hover,html.theme--catppuccin-frappe .hero.is-white .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-frappe .hero.is-white .tabs a{color:#0a0a0a;opacity:0.9}html.theme--catppuccin-frappe .hero.is-white .tabs a:hover{opacity:1}html.theme--catppuccin-frappe .hero.is-white .tabs li.is-active a{color:#fff !important;opacity:1}html.theme--catppuccin-frappe .hero.is-white .tabs.is-boxed a,html.theme--catppuccin-frappe .hero.is-white .tabs.is-toggle a{color:#0a0a0a}html.theme--catppuccin-frappe .hero.is-white .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .hero.is-white .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .hero.is-white .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .hero.is-white .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-frappe .hero.is-white .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .hero.is-white .tabs.is-toggle li.is-active a:hover{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .hero.is-white.is-bold{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}}html.theme--catppuccin-frappe .hero.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-frappe .hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .hero.is-black strong{color:inherit}html.theme--catppuccin-frappe .hero.is-black .title{color:#fff}html.theme--catppuccin-frappe .hero.is-black .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-frappe .hero.is-black .subtitle a:not(.button),html.theme--catppuccin-frappe .hero.is-black .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .hero.is-black .navbar-menu{background-color:#0a0a0a}}html.theme--catppuccin-frappe .hero.is-black .navbar-item,html.theme--catppuccin-frappe .hero.is-black .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-frappe .hero.is-black a.navbar-item:hover,html.theme--catppuccin-frappe .hero.is-black a.navbar-item.is-active,html.theme--catppuccin-frappe .hero.is-black .navbar-link:hover,html.theme--catppuccin-frappe .hero.is-black .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-frappe .hero.is-black .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-frappe .hero.is-black .tabs a:hover{opacity:1}html.theme--catppuccin-frappe .hero.is-black .tabs li.is-active a{color:#0a0a0a !important;opacity:1}html.theme--catppuccin-frappe .hero.is-black .tabs.is-boxed a,html.theme--catppuccin-frappe .hero.is-black .tabs.is-toggle a{color:#fff}html.theme--catppuccin-frappe .hero.is-black .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .hero.is-black .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .hero.is-black .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .hero.is-black .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-frappe .hero.is-black .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .hero.is-black .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-frappe .hero.is-black.is-bold{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}}html.theme--catppuccin-frappe .hero.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .hero.is-light strong{color:inherit}html.theme--catppuccin-frappe .hero.is-light .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-light .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-frappe .hero.is-light .subtitle a:not(.button),html.theme--catppuccin-frappe .hero.is-light .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .hero.is-light .navbar-menu{background-color:#f5f5f5}}html.theme--catppuccin-frappe .hero.is-light .navbar-item,html.theme--catppuccin-frappe .hero.is-light .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-light a.navbar-item:hover,html.theme--catppuccin-frappe .hero.is-light a.navbar-item.is-active,html.theme--catppuccin-frappe .hero.is-light .navbar-link:hover,html.theme--catppuccin-frappe .hero.is-light .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-light .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-frappe .hero.is-light .tabs a:hover{opacity:1}html.theme--catppuccin-frappe .hero.is-light .tabs li.is-active a{color:#f5f5f5 !important;opacity:1}html.theme--catppuccin-frappe .hero.is-light .tabs.is-boxed a,html.theme--catppuccin-frappe .hero.is-light .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-light .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .hero.is-light .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .hero.is-light .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-frappe .hero.is-light .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-frappe .hero.is-light.is-bold{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}}html.theme--catppuccin-frappe .hero.is-dark,html.theme--catppuccin-frappe .content kbd.hero{background-color:#414559;color:#fff}html.theme--catppuccin-frappe .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .hero.is-dark strong,html.theme--catppuccin-frappe .content kbd.hero strong{color:inherit}html.theme--catppuccin-frappe .hero.is-dark .title,html.theme--catppuccin-frappe .content kbd.hero .title{color:#fff}html.theme--catppuccin-frappe .hero.is-dark .subtitle,html.theme--catppuccin-frappe .content kbd.hero .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-frappe .hero.is-dark .subtitle a:not(.button),html.theme--catppuccin-frappe .content kbd.hero .subtitle a:not(.button),html.theme--catppuccin-frappe .hero.is-dark .subtitle strong,html.theme--catppuccin-frappe .content kbd.hero .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .hero.is-dark .navbar-menu,html.theme--catppuccin-frappe .content kbd.hero .navbar-menu{background-color:#414559}}html.theme--catppuccin-frappe .hero.is-dark .navbar-item,html.theme--catppuccin-frappe .content kbd.hero .navbar-item,html.theme--catppuccin-frappe .hero.is-dark .navbar-link,html.theme--catppuccin-frappe .content kbd.hero .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-frappe .hero.is-dark a.navbar-item:hover,html.theme--catppuccin-frappe .content kbd.hero a.navbar-item:hover,html.theme--catppuccin-frappe .hero.is-dark a.navbar-item.is-active,html.theme--catppuccin-frappe .content kbd.hero a.navbar-item.is-active,html.theme--catppuccin-frappe .hero.is-dark .navbar-link:hover,html.theme--catppuccin-frappe .content kbd.hero .navbar-link:hover,html.theme--catppuccin-frappe .hero.is-dark .navbar-link.is-active,html.theme--catppuccin-frappe .content kbd.hero .navbar-link.is-active{background-color:#363a4a;color:#fff}html.theme--catppuccin-frappe .hero.is-dark .tabs a,html.theme--catppuccin-frappe .content kbd.hero .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-frappe .hero.is-dark .tabs a:hover,html.theme--catppuccin-frappe .content kbd.hero .tabs a:hover{opacity:1}html.theme--catppuccin-frappe .hero.is-dark .tabs li.is-active a,html.theme--catppuccin-frappe .content kbd.hero .tabs li.is-active a{color:#414559 !important;opacity:1}html.theme--catppuccin-frappe .hero.is-dark .tabs.is-boxed a,html.theme--catppuccin-frappe .content kbd.hero .tabs.is-boxed a,html.theme--catppuccin-frappe .hero.is-dark .tabs.is-toggle a,html.theme--catppuccin-frappe .content kbd.hero .tabs.is-toggle a{color:#fff}html.theme--catppuccin-frappe .hero.is-dark .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .content kbd.hero .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .hero.is-dark .tabs.is-toggle a:hover,html.theme--catppuccin-frappe .content kbd.hero .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .hero.is-dark .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .content kbd.hero .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .hero.is-dark .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-frappe .hero.is-dark .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .content kbd.hero .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .hero.is-dark .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#414559}html.theme--catppuccin-frappe .hero.is-dark.is-bold,html.theme--catppuccin-frappe .content kbd.hero.is-bold{background-image:linear-gradient(141deg, #262f41 0%, #414559 71%, #47476c 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero.is-dark.is-bold .navbar-menu,html.theme--catppuccin-frappe .content kbd.hero.is-bold .navbar-menu{background-image:linear-gradient(141deg, #262f41 0%, #414559 71%, #47476c 100%)}}html.theme--catppuccin-frappe .hero.is-primary,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .hero.is-primary strong,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink strong{color:inherit}html.theme--catppuccin-frappe .hero.is-primary .title,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .title{color:#fff}html.theme--catppuccin-frappe .hero.is-primary .subtitle,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-frappe .hero.is-primary .subtitle a:not(.button),html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .subtitle a:not(.button),html.theme--catppuccin-frappe .hero.is-primary .subtitle strong,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .hero.is-primary .navbar-menu,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .navbar-menu{background-color:#8caaee}}html.theme--catppuccin-frappe .hero.is-primary .navbar-item,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .navbar-item,html.theme--catppuccin-frappe .hero.is-primary .navbar-link,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-frappe .hero.is-primary a.navbar-item:hover,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink a.navbar-item:hover,html.theme--catppuccin-frappe .hero.is-primary a.navbar-item.is-active,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink a.navbar-item.is-active,html.theme--catppuccin-frappe .hero.is-primary .navbar-link:hover,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .navbar-link:hover,html.theme--catppuccin-frappe .hero.is-primary .navbar-link.is-active,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .navbar-link.is-active{background-color:#769aeb;color:#fff}html.theme--catppuccin-frappe .hero.is-primary .tabs a,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-frappe .hero.is-primary .tabs a:hover,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .tabs a:hover{opacity:1}html.theme--catppuccin-frappe .hero.is-primary .tabs li.is-active a,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .tabs li.is-active a{color:#8caaee !important;opacity:1}html.theme--catppuccin-frappe .hero.is-primary .tabs.is-boxed a,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a,html.theme--catppuccin-frappe .hero.is-primary .tabs.is-toggle a,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a{color:#fff}html.theme--catppuccin-frappe .hero.is-primary .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .hero.is-primary .tabs.is-toggle a:hover,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .hero.is-primary .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .hero.is-primary .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-frappe .hero.is-primary .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#8caaee}html.theme--catppuccin-frappe .hero.is-primary.is-bold,html.theme--catppuccin-frappe .docstring>section>a.hero.is-bold.docs-sourcelink{background-image:linear-gradient(141deg, #569ff1 0%, #8caaee 71%, #a0abf4 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero.is-primary.is-bold .navbar-menu,html.theme--catppuccin-frappe .docstring>section>a.hero.is-bold.docs-sourcelink .navbar-menu{background-image:linear-gradient(141deg, #569ff1 0%, #8caaee 71%, #a0abf4 100%)}}html.theme--catppuccin-frappe .hero.is-link{background-color:#8caaee;color:#fff}html.theme--catppuccin-frappe .hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .hero.is-link strong{color:inherit}html.theme--catppuccin-frappe .hero.is-link .title{color:#fff}html.theme--catppuccin-frappe .hero.is-link .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-frappe .hero.is-link .subtitle a:not(.button),html.theme--catppuccin-frappe .hero.is-link .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .hero.is-link .navbar-menu{background-color:#8caaee}}html.theme--catppuccin-frappe .hero.is-link .navbar-item,html.theme--catppuccin-frappe .hero.is-link .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-frappe .hero.is-link a.navbar-item:hover,html.theme--catppuccin-frappe .hero.is-link a.navbar-item.is-active,html.theme--catppuccin-frappe .hero.is-link .navbar-link:hover,html.theme--catppuccin-frappe .hero.is-link .navbar-link.is-active{background-color:#769aeb;color:#fff}html.theme--catppuccin-frappe .hero.is-link .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-frappe .hero.is-link .tabs a:hover{opacity:1}html.theme--catppuccin-frappe .hero.is-link .tabs li.is-active a{color:#8caaee !important;opacity:1}html.theme--catppuccin-frappe .hero.is-link .tabs.is-boxed a,html.theme--catppuccin-frappe .hero.is-link .tabs.is-toggle a{color:#fff}html.theme--catppuccin-frappe .hero.is-link .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .hero.is-link .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .hero.is-link .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-frappe .hero.is-link .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#8caaee}html.theme--catppuccin-frappe .hero.is-link.is-bold{background-image:linear-gradient(141deg, #569ff1 0%, #8caaee 71%, #a0abf4 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg, #569ff1 0%, #8caaee 71%, #a0abf4 100%)}}html.theme--catppuccin-frappe .hero.is-info{background-color:#81c8be;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .hero.is-info strong{color:inherit}html.theme--catppuccin-frappe .hero.is-info .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-info .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-frappe .hero.is-info .subtitle a:not(.button),html.theme--catppuccin-frappe .hero.is-info .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .hero.is-info .navbar-menu{background-color:#81c8be}}html.theme--catppuccin-frappe .hero.is-info .navbar-item,html.theme--catppuccin-frappe .hero.is-info .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-info a.navbar-item:hover,html.theme--catppuccin-frappe .hero.is-info a.navbar-item.is-active,html.theme--catppuccin-frappe .hero.is-info .navbar-link:hover,html.theme--catppuccin-frappe .hero.is-info .navbar-link.is-active{background-color:#6fc0b5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-info .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-frappe .hero.is-info .tabs a:hover{opacity:1}html.theme--catppuccin-frappe .hero.is-info .tabs li.is-active a{color:#81c8be !important;opacity:1}html.theme--catppuccin-frappe .hero.is-info .tabs.is-boxed a,html.theme--catppuccin-frappe .hero.is-info .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-info .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .hero.is-info .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .hero.is-info .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-frappe .hero.is-info .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .hero.is-info .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:#81c8be}html.theme--catppuccin-frappe .hero.is-info.is-bold{background-image:linear-gradient(141deg, #52c4a1 0%, #81c8be 71%, #8fd2d4 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg, #52c4a1 0%, #81c8be 71%, #8fd2d4 100%)}}html.theme--catppuccin-frappe .hero.is-success{background-color:#a6d189;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .hero.is-success strong{color:inherit}html.theme--catppuccin-frappe .hero.is-success .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-success .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-frappe .hero.is-success .subtitle a:not(.button),html.theme--catppuccin-frappe .hero.is-success .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .hero.is-success .navbar-menu{background-color:#a6d189}}html.theme--catppuccin-frappe .hero.is-success .navbar-item,html.theme--catppuccin-frappe .hero.is-success .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-success a.navbar-item:hover,html.theme--catppuccin-frappe .hero.is-success a.navbar-item.is-active,html.theme--catppuccin-frappe .hero.is-success .navbar-link:hover,html.theme--catppuccin-frappe .hero.is-success .navbar-link.is-active{background-color:#98ca77;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-success .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-frappe .hero.is-success .tabs a:hover{opacity:1}html.theme--catppuccin-frappe .hero.is-success .tabs li.is-active a{color:#a6d189 !important;opacity:1}html.theme--catppuccin-frappe .hero.is-success .tabs.is-boxed a,html.theme--catppuccin-frappe .hero.is-success .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-success .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .hero.is-success .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .hero.is-success .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-frappe .hero.is-success .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .hero.is-success .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:#a6d189}html.theme--catppuccin-frappe .hero.is-success.is-bold{background-image:linear-gradient(141deg, #9ccd5a 0%, #a6d189 71%, #a8dc98 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg, #9ccd5a 0%, #a6d189 71%, #a8dc98 100%)}}html.theme--catppuccin-frappe .hero.is-warning{background-color:#e5c890;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .hero.is-warning strong{color:inherit}html.theme--catppuccin-frappe .hero.is-warning .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-warning .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-frappe .hero.is-warning .subtitle a:not(.button),html.theme--catppuccin-frappe .hero.is-warning .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .hero.is-warning .navbar-menu{background-color:#e5c890}}html.theme--catppuccin-frappe .hero.is-warning .navbar-item,html.theme--catppuccin-frappe .hero.is-warning .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-warning a.navbar-item:hover,html.theme--catppuccin-frappe .hero.is-warning a.navbar-item.is-active,html.theme--catppuccin-frappe .hero.is-warning .navbar-link:hover,html.theme--catppuccin-frappe .hero.is-warning .navbar-link.is-active{background-color:#e0be7b;color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-warning .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-frappe .hero.is-warning .tabs a:hover{opacity:1}html.theme--catppuccin-frappe .hero.is-warning .tabs li.is-active a{color:#e5c890 !important;opacity:1}html.theme--catppuccin-frappe .hero.is-warning .tabs.is-boxed a,html.theme--catppuccin-frappe .hero.is-warning .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-frappe .hero.is-warning .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .hero.is-warning .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .hero.is-warning .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .hero.is-warning .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-frappe .hero.is-warning .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .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:#e5c890}html.theme--catppuccin-frappe .hero.is-warning.is-bold{background-image:linear-gradient(141deg, #e5a05d 0%, #e5c890 71%, #ede0a2 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e5a05d 0%, #e5c890 71%, #ede0a2 100%)}}html.theme--catppuccin-frappe .hero.is-danger{background-color:#e78284;color:#fff}html.theme--catppuccin-frappe .hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-frappe .hero.is-danger strong{color:inherit}html.theme--catppuccin-frappe .hero.is-danger .title{color:#fff}html.theme--catppuccin-frappe .hero.is-danger .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-frappe .hero.is-danger .subtitle a:not(.button),html.theme--catppuccin-frappe .hero.is-danger .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .hero.is-danger .navbar-menu{background-color:#e78284}}html.theme--catppuccin-frappe .hero.is-danger .navbar-item,html.theme--catppuccin-frappe .hero.is-danger .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-frappe .hero.is-danger a.navbar-item:hover,html.theme--catppuccin-frappe .hero.is-danger a.navbar-item.is-active,html.theme--catppuccin-frappe .hero.is-danger .navbar-link:hover,html.theme--catppuccin-frappe .hero.is-danger .navbar-link.is-active{background-color:#e36d6f;color:#fff}html.theme--catppuccin-frappe .hero.is-danger .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-frappe .hero.is-danger .tabs a:hover{opacity:1}html.theme--catppuccin-frappe .hero.is-danger .tabs li.is-active a{color:#e78284 !important;opacity:1}html.theme--catppuccin-frappe .hero.is-danger .tabs.is-boxed a,html.theme--catppuccin-frappe .hero.is-danger .tabs.is-toggle a{color:#fff}html.theme--catppuccin-frappe .hero.is-danger .tabs.is-boxed a:hover,html.theme--catppuccin-frappe .hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-frappe .hero.is-danger .tabs.is-boxed li.is-active a,html.theme--catppuccin-frappe .hero.is-danger .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-frappe .hero.is-danger .tabs.is-toggle li.is-active a,html.theme--catppuccin-frappe .hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#e78284}html.theme--catppuccin-frappe .hero.is-danger.is-bold{background-image:linear-gradient(141deg, #e94d6a 0%, #e78284 71%, #eea294 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e94d6a 0%, #e78284 71%, #eea294 100%)}}html.theme--catppuccin-frappe .hero.is-small .hero-body,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.hero .hero-body{padding:1.5rem}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .hero.is-medium .hero-body{padding:9rem 4.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .hero.is-large .hero-body{padding:18rem 6rem}}html.theme--catppuccin-frappe .hero.is-halfheight .hero-body,html.theme--catppuccin-frappe .hero.is-fullheight .hero-body,html.theme--catppuccin-frappe .hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}html.theme--catppuccin-frappe .hero.is-halfheight .hero-body>.container,html.theme--catppuccin-frappe .hero.is-fullheight .hero-body>.container,html.theme--catppuccin-frappe .hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}html.theme--catppuccin-frappe .hero.is-halfheight{min-height:50vh}html.theme--catppuccin-frappe .hero.is-fullheight{min-height:100vh}html.theme--catppuccin-frappe .hero-video{overflow:hidden}html.theme--catppuccin-frappe .hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%, -50%, 0)}html.theme--catppuccin-frappe .hero-video.is-transparent{opacity:0.3}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero-video{display:none}}html.theme--catppuccin-frappe .hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){html.theme--catppuccin-frappe .hero-buttons .button{display:flex}html.theme--catppuccin-frappe .hero-buttons .button:not(:last-child){margin-bottom:0.75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .hero-buttons{display:flex;justify-content:center}html.theme--catppuccin-frappe .hero-buttons .button:not(:last-child){margin-right:1.5rem}}html.theme--catppuccin-frappe .hero-head,html.theme--catppuccin-frappe .hero-foot{flex-grow:0;flex-shrink:0}html.theme--catppuccin-frappe .hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}@media screen and (min-width: 769px),print{html.theme--catppuccin-frappe .hero-body{padding:3rem 3rem}}html.theme--catppuccin-frappe .section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe .section{padding:3rem 3rem}html.theme--catppuccin-frappe .section.is-medium{padding:9rem 4.5rem}html.theme--catppuccin-frappe .section.is-large{padding:18rem 6rem}}html.theme--catppuccin-frappe .footer{background-color:#292c3c;padding:3rem 1.5rem 6rem}html.theme--catppuccin-frappe h1 .docs-heading-anchor,html.theme--catppuccin-frappe h1 .docs-heading-anchor:hover,html.theme--catppuccin-frappe h1 .docs-heading-anchor:visited,html.theme--catppuccin-frappe h2 .docs-heading-anchor,html.theme--catppuccin-frappe h2 .docs-heading-anchor:hover,html.theme--catppuccin-frappe h2 .docs-heading-anchor:visited,html.theme--catppuccin-frappe h3 .docs-heading-anchor,html.theme--catppuccin-frappe h3 .docs-heading-anchor:hover,html.theme--catppuccin-frappe h3 .docs-heading-anchor:visited,html.theme--catppuccin-frappe h4 .docs-heading-anchor,html.theme--catppuccin-frappe h4 .docs-heading-anchor:hover,html.theme--catppuccin-frappe h4 .docs-heading-anchor:visited,html.theme--catppuccin-frappe h5 .docs-heading-anchor,html.theme--catppuccin-frappe h5 .docs-heading-anchor:hover,html.theme--catppuccin-frappe h5 .docs-heading-anchor:visited,html.theme--catppuccin-frappe h6 .docs-heading-anchor,html.theme--catppuccin-frappe h6 .docs-heading-anchor:hover,html.theme--catppuccin-frappe h6 .docs-heading-anchor:visited{color:#c6d0f5}html.theme--catppuccin-frappe h1 .docs-heading-anchor-permalink,html.theme--catppuccin-frappe h2 .docs-heading-anchor-permalink,html.theme--catppuccin-frappe h3 .docs-heading-anchor-permalink,html.theme--catppuccin-frappe h4 .docs-heading-anchor-permalink,html.theme--catppuccin-frappe h5 .docs-heading-anchor-permalink,html.theme--catppuccin-frappe h6 .docs-heading-anchor-permalink{visibility:hidden;vertical-align:middle;margin-left:0.5em;font-size:0.7rem}html.theme--catppuccin-frappe h1 .docs-heading-anchor-permalink::before,html.theme--catppuccin-frappe h2 .docs-heading-anchor-permalink::before,html.theme--catppuccin-frappe h3 .docs-heading-anchor-permalink::before,html.theme--catppuccin-frappe h4 .docs-heading-anchor-permalink::before,html.theme--catppuccin-frappe h5 .docs-heading-anchor-permalink::before,html.theme--catppuccin-frappe h6 .docs-heading-anchor-permalink::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f0c1"}html.theme--catppuccin-frappe h1:hover .docs-heading-anchor-permalink,html.theme--catppuccin-frappe h2:hover .docs-heading-anchor-permalink,html.theme--catppuccin-frappe h3:hover .docs-heading-anchor-permalink,html.theme--catppuccin-frappe h4:hover .docs-heading-anchor-permalink,html.theme--catppuccin-frappe h5:hover .docs-heading-anchor-permalink,html.theme--catppuccin-frappe h6:hover .docs-heading-anchor-permalink{visibility:visible}html.theme--catppuccin-frappe .docs-light-only{display:none !important}html.theme--catppuccin-frappe pre{position:relative;overflow:hidden}html.theme--catppuccin-frappe pre code,html.theme--catppuccin-frappe pre code.hljs{padding:0 .75rem !important;overflow:auto;display:block}html.theme--catppuccin-frappe pre code:first-of-type,html.theme--catppuccin-frappe pre code.hljs:first-of-type{padding-top:0.5rem !important}html.theme--catppuccin-frappe pre code:last-of-type,html.theme--catppuccin-frappe pre code.hljs:last-of-type{padding-bottom:0.5rem !important}html.theme--catppuccin-frappe pre .copy-button{opacity:0.2;transition:opacity 0.2s;position:absolute;right:0em;top:0em;padding:0.5em;width:2.5em;height:2.5em;background:transparent;border:none;font-family:"Font Awesome 6 Free";color:#c6d0f5;cursor:pointer;text-align:center}html.theme--catppuccin-frappe pre .copy-button:focus,html.theme--catppuccin-frappe pre .copy-button:hover{opacity:1;background:rgba(198,208,245,0.1);color:#8caaee}html.theme--catppuccin-frappe pre .copy-button.success{color:#a6d189;opacity:1}html.theme--catppuccin-frappe pre .copy-button.error{color:#e78284;opacity:1}html.theme--catppuccin-frappe pre:hover .copy-button{opacity:1}html.theme--catppuccin-frappe .admonition{background-color:#292c3c;border-style:solid;border-width:2px;border-color:#b5bfe2;border-radius:4px;font-size:1rem}html.theme--catppuccin-frappe .admonition strong{color:currentColor}html.theme--catppuccin-frappe .admonition.is-small,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input.admonition{font-size:.75rem}html.theme--catppuccin-frappe .admonition.is-medium{font-size:1.25rem}html.theme--catppuccin-frappe .admonition.is-large{font-size:1.5rem}html.theme--catppuccin-frappe .admonition.is-default{background-color:#292c3c;border-color:#b5bfe2}html.theme--catppuccin-frappe .admonition.is-default>.admonition-header{background-color:rgba(0,0,0,0);color:#b5bfe2}html.theme--catppuccin-frappe .admonition.is-default>.admonition-body{color:#c6d0f5}html.theme--catppuccin-frappe .admonition.is-info{background-color:#292c3c;border-color:#81c8be}html.theme--catppuccin-frappe .admonition.is-info>.admonition-header{background-color:rgba(0,0,0,0);color:#81c8be}html.theme--catppuccin-frappe .admonition.is-info>.admonition-body{color:#c6d0f5}html.theme--catppuccin-frappe .admonition.is-success{background-color:#292c3c;border-color:#a6d189}html.theme--catppuccin-frappe .admonition.is-success>.admonition-header{background-color:rgba(0,0,0,0);color:#a6d189}html.theme--catppuccin-frappe .admonition.is-success>.admonition-body{color:#c6d0f5}html.theme--catppuccin-frappe .admonition.is-warning{background-color:#292c3c;border-color:#e5c890}html.theme--catppuccin-frappe .admonition.is-warning>.admonition-header{background-color:rgba(0,0,0,0);color:#e5c890}html.theme--catppuccin-frappe .admonition.is-warning>.admonition-body{color:#c6d0f5}html.theme--catppuccin-frappe .admonition.is-danger{background-color:#292c3c;border-color:#e78284}html.theme--catppuccin-frappe .admonition.is-danger>.admonition-header{background-color:rgba(0,0,0,0);color:#e78284}html.theme--catppuccin-frappe .admonition.is-danger>.admonition-body{color:#c6d0f5}html.theme--catppuccin-frappe .admonition.is-compat{background-color:#292c3c;border-color:#99d1db}html.theme--catppuccin-frappe .admonition.is-compat>.admonition-header{background-color:rgba(0,0,0,0);color:#99d1db}html.theme--catppuccin-frappe .admonition.is-compat>.admonition-body{color:#c6d0f5}html.theme--catppuccin-frappe .admonition.is-todo{background-color:#292c3c;border-color:#ca9ee6}html.theme--catppuccin-frappe .admonition.is-todo>.admonition-header{background-color:rgba(0,0,0,0);color:#ca9ee6}html.theme--catppuccin-frappe .admonition.is-todo>.admonition-body{color:#c6d0f5}html.theme--catppuccin-frappe .admonition-header{color:#b5bfe2;background-color:rgba(0,0,0,0);align-items:center;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.5rem .75rem;position:relative}html.theme--catppuccin-frappe .admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}html.theme--catppuccin-frappe details.admonition.is-details>.admonition-header{list-style:none}html.theme--catppuccin-frappe details.admonition.is-details>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f055"}html.theme--catppuccin-frappe details.admonition.is-details[open]>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f056"}html.theme--catppuccin-frappe .admonition-body{color:#c6d0f5;padding:0.5rem .75rem}html.theme--catppuccin-frappe .admonition-body pre{background-color:#292c3c}html.theme--catppuccin-frappe .admonition-body code{background-color:#292c3c}html.theme--catppuccin-frappe .docstring{margin-bottom:1em;background-color:rgba(0,0,0,0);border:2px solid #626880;border-radius:4px;box-shadow:none;max-width:100%}html.theme--catppuccin-frappe .docstring>header{cursor:pointer;display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#292c3c;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #626880;overflow:auto}html.theme--catppuccin-frappe .docstring>header code{background-color:transparent}html.theme--catppuccin-frappe .docstring>header .docstring-article-toggle-button{min-width:1.1rem;padding:0.2rem 0.2rem 0.2rem 0}html.theme--catppuccin-frappe .docstring>header .docstring-binding{margin-right:0.3em}html.theme--catppuccin-frappe .docstring>header .docstring-category{margin-left:0.3em}html.theme--catppuccin-frappe .docstring>section{position:relative;padding:.75rem .75rem;border-bottom:1px solid #626880}html.theme--catppuccin-frappe .docstring>section:last-child{border-bottom:none}html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink{transition:opacity 0.3s;opacity:0;position:absolute;right:.375rem;bottom:.375rem}html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink:focus{opacity:1 !important}html.theme--catppuccin-frappe .docstring:hover>section>a.docs-sourcelink{opacity:0.2}html.theme--catppuccin-frappe .docstring:focus-within>section>a.docs-sourcelink{opacity:0.2}html.theme--catppuccin-frappe .docstring>section:hover a.docs-sourcelink{opacity:1}html.theme--catppuccin-frappe .documenter-example-output{background-color:#303446}html.theme--catppuccin-frappe .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:#292c3c;color:#c6d0f5;border-bottom:3px solid rgba(0,0,0,0);padding:10px 35px;text-align:center;font-size:15px}html.theme--catppuccin-frappe .outdated-warning-overlay .outdated-warning-closer{position:absolute;top:calc(50% - 10px);right:18px;cursor:pointer;width:12px}html.theme--catppuccin-frappe .outdated-warning-overlay a{color:#8caaee}html.theme--catppuccin-frappe .outdated-warning-overlay a:hover{color:#99d1db}html.theme--catppuccin-frappe .content pre{border:2px solid #626880;border-radius:4px}html.theme--catppuccin-frappe .content code{font-weight:inherit}html.theme--catppuccin-frappe .content a code{color:#8caaee}html.theme--catppuccin-frappe .content a:hover code{color:#99d1db}html.theme--catppuccin-frappe .content h1 code,html.theme--catppuccin-frappe .content h2 code,html.theme--catppuccin-frappe .content h3 code,html.theme--catppuccin-frappe .content h4 code,html.theme--catppuccin-frappe .content h5 code,html.theme--catppuccin-frappe .content h6 code{color:#c6d0f5}html.theme--catppuccin-frappe .content table{display:block;width:initial;max-width:100%;overflow-x:auto}html.theme--catppuccin-frappe .content blockquote>ul:first-child,html.theme--catppuccin-frappe .content blockquote>ol:first-child,html.theme--catppuccin-frappe .content .admonition-body>ul:first-child,html.theme--catppuccin-frappe .content .admonition-body>ol:first-child{margin-top:0}html.theme--catppuccin-frappe pre,html.theme--catppuccin-frappe code{font-variant-ligatures:no-contextual}html.theme--catppuccin-frappe .breadcrumb a.is-disabled{cursor:default;pointer-events:none}html.theme--catppuccin-frappe .breadcrumb a.is-disabled,html.theme--catppuccin-frappe .breadcrumb a.is-disabled:hover{color:#b0bef1}html.theme--catppuccin-frappe .hljs{background:initial !important}html.theme--catppuccin-frappe .katex .katex-mathml{top:0;right:0}html.theme--catppuccin-frappe .katex-display,html.theme--catppuccin-frappe mjx-container,html.theme--catppuccin-frappe .MathJax_Display{margin:0.5em 0 !important}html.theme--catppuccin-frappe html{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto}html.theme--catppuccin-frappe li.no-marker{list-style:none}html.theme--catppuccin-frappe #documenter .docs-main>article{overflow-wrap:break-word}html.theme--catppuccin-frappe #documenter .docs-main>article .math-container{overflow-x:auto;overflow-y:hidden}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe #documenter .docs-main{max-width:52rem;margin-left:20rem;padding-right:1rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe #documenter .docs-main{width:100%}html.theme--catppuccin-frappe #documenter .docs-main>article{max-width:52rem;margin-left:auto;margin-right:auto;margin-bottom:1rem;padding:0 1rem}html.theme--catppuccin-frappe #documenter .docs-main>header,html.theme--catppuccin-frappe #documenter .docs-main>nav{max-width:100%;width:100%;margin:0}}html.theme--catppuccin-frappe #documenter .docs-main header.docs-navbar{background-color:#303446;border-bottom:1px solid #626880;z-index:2;min-height:4rem;margin-bottom:1rem;display:flex}html.theme--catppuccin-frappe #documenter .docs-main header.docs-navbar .breadcrumb{flex-grow:1;overflow-x:hidden}html.theme--catppuccin-frappe #documenter .docs-main header.docs-navbar .docs-sidebar-button{display:block;font-size:1.5rem;padding-bottom:0.1rem;margin-right:1rem}html.theme--catppuccin-frappe #documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap;gap:1rem;align-items:center}html.theme--catppuccin-frappe #documenter .docs-main header.docs-navbar .docs-right .docs-icon,html.theme--catppuccin-frappe #documenter .docs-main header.docs-navbar .docs-right .docs-label{display:inline-block}html.theme--catppuccin-frappe #documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe #documenter .docs-main header.docs-navbar .docs-right .docs-navbar-link{margin-left:0.4rem;margin-right:0.4rem}}html.theme--catppuccin-frappe #documenter .docs-main header.docs-navbar>*{margin:auto 0}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe #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--catppuccin-frappe #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--catppuccin-frappe #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--catppuccin-frappe #documenter .docs-main section.footnotes{border-top:1px solid #626880}html.theme--catppuccin-frappe #documenter .docs-main section.footnotes li .tag:first-child,html.theme--catppuccin-frappe #documenter .docs-main section.footnotes li .docstring>section>a.docs-sourcelink:first-child,html.theme--catppuccin-frappe #documenter .docs-main section.footnotes li .content kbd:first-child,html.theme--catppuccin-frappe .content #documenter .docs-main section.footnotes li kbd:first-child{margin-right:1em;margin-bottom:0.4em}html.theme--catppuccin-frappe #documenter .docs-main .docs-footer{display:flex;flex-wrap:wrap;margin-left:0;margin-right:0;border-top:1px solid #626880;padding-top:1rem;padding-bottom:1rem}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe #documenter .docs-main .docs-footer{padding-left:1rem;padding-right:1rem}}html.theme--catppuccin-frappe #documenter .docs-main .docs-footer .docs-footer-nextpage,html.theme--catppuccin-frappe #documenter .docs-main .docs-footer .docs-footer-prevpage{flex-grow:1}html.theme--catppuccin-frappe #documenter .docs-main .docs-footer .docs-footer-nextpage{text-align:right}html.theme--catppuccin-frappe #documenter .docs-main .docs-footer .flexbox-break{flex-basis:100%;height:0}html.theme--catppuccin-frappe #documenter .docs-main .docs-footer .footer-message{font-size:0.8em;margin:0.5em auto 0 auto;text-align:center}html.theme--catppuccin-frappe #documenter .docs-sidebar{display:flex;flex-direction:column;color:#c6d0f5;background-color:#292c3c;border-right:1px solid #626880;padding:0;flex:0 0 18rem;z-index:5;font-size:1rem;position:fixed;left:-18rem;width:18rem;height:100%;transition:left 0.3s}html.theme--catppuccin-frappe #documenter .docs-sidebar.visible{left:0;box-shadow:.4rem 0rem .8rem #171717}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe #documenter .docs-sidebar.visible{box-shadow:none}}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe #documenter .docs-sidebar{left:0;top:0}}html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo{margin-top:1rem;padding:0 1rem}html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-logo>img{max-height:6rem;margin:auto}html.theme--catppuccin-frappe #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--catppuccin-frappe #documenter .docs-sidebar .docs-package-name .docs-autofit{max-width:16.2rem}html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-package-name a,html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-package-name a:hover{color:#c6d0f5}html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-version-selector{border-top:1px solid #626880;display:none;padding:0.5rem}html.theme--catppuccin-frappe #documenter .docs-sidebar .docs-version-selector.visible{display:flex}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu{flex-grow:1;user-select:none;border-top:1px solid #626880;padding-bottom:1.5rem}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu>li>.tocitem{font-weight:bold}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu>li li{font-size:.95rem;margin-left:1em;border-left:1px solid #626880}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu input.collapse-toggle{display:none}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu ul.collapsed{display:none}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu input:checked~ul.collapsed{display:block}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu label.tocitem{display:flex}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label{flex-grow:2}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron{display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;font-size:.75rem;margin-left:1rem;margin-top:auto;margin-bottom:auto}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f054"}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu input:checked~label.tocitem .docs-chevron::before{content:"\f078"}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu .tocitem{display:block;padding:0.5rem 0.5rem}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu .tocitem,html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu .tocitem:hover{color:#c6d0f5;background:#292c3c}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu a.tocitem:hover,html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu label.tocitem:hover{color:#c6d0f5;background-color:#313548}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu li.is-active{border-top:1px solid #626880;border-bottom:1px solid #626880;background-color:#232634}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem,html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover{background-color:#232634;color:#c6d0f5}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover{background-color:#313548;color:#c6d0f5}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu>li.is-active:first-child{border-top:none}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu ul.internal{margin:0 0.5rem 0.5rem;border-top:1px solid #626880}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu ul.internal li{font-size:.85rem;border-left:none;margin-left:0;margin-top:0.5rem}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem{width:100%;padding:0}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before{content:"⚬";margin-right:0.4em}html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search{margin:auto;margin-top:0.5rem;margin-bottom:0.5rem}html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input{width:14.4rem}html.theme--catppuccin-frappe #documenter .docs-sidebar #documenter-search-query{color:#868c98;width:14.4rem;box-shadow:inset 0 1px 2px rgba(10,10,10,0.1)}@media screen and (min-width: 1056px){html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar{width:.3rem;background:none}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#3a3e54}html.theme--catppuccin-frappe #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover{background:#4a506c}}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe #documenter .docs-sidebar{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--catppuccin-frappe #documenter .docs-sidebar::-webkit-scrollbar{width:.3rem;background:none}html.theme--catppuccin-frappe #documenter .docs-sidebar::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#3a3e54}html.theme--catppuccin-frappe #documenter .docs-sidebar::-webkit-scrollbar-thumb:hover{background:#4a506c}}html.theme--catppuccin-frappe kbd.search-modal-key-hints{border-radius:0.25rem;border:1px solid rgba(245,245,245,0.6);box-shadow:0 2px 0 1px rgba(245,245,245,0.6);cursor:default;font-size:0.9rem;line-height:1.5;min-width:0.75rem;text-align:center;padding:0.1rem 0.3rem;position:relative;top:-1px}html.theme--catppuccin-frappe .search-min-width-50{min-width:50%}html.theme--catppuccin-frappe .search-min-height-100{min-height:100%}html.theme--catppuccin-frappe .search-modal-card-body{max-height:calc(100vh - 15rem)}html.theme--catppuccin-frappe .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--catppuccin-frappe .search-result-link:hover,html.theme--catppuccin-frappe .search-result-link:focus{background-color:rgba(0,128,128,0.1)}html.theme--catppuccin-frappe .search-result-link .property-search-result-badge,html.theme--catppuccin-frappe .search-result-link .search-filter{transition:all 300ms}html.theme--catppuccin-frappe .property-search-result-badge,html.theme--catppuccin-frappe .search-filter{padding:0.15em 0.5em;font-size:0.8em;font-style:italic;text-transform:none !important;line-height:1.5;color:#f5f5f5;background-color:rgba(51,65,85,0.501961);border-radius:0.6rem}html.theme--catppuccin-frappe .search-result-link:hover .property-search-result-badge,html.theme--catppuccin-frappe .search-result-link:hover .search-filter,html.theme--catppuccin-frappe .search-result-link:focus .property-search-result-badge,html.theme--catppuccin-frappe .search-result-link:focus .search-filter{color:#333;background-color:#f1f5f9}html.theme--catppuccin-frappe .search-filter{color:#333;background-color:#f5f5f5;transition:all 300ms}html.theme--catppuccin-frappe .search-filter:hover,html.theme--catppuccin-frappe .search-filter:focus{color:#333}html.theme--catppuccin-frappe .search-filter-selected{color:#414559;background-color:#babbf1}html.theme--catppuccin-frappe .search-filter-selected:hover,html.theme--catppuccin-frappe .search-filter-selected:focus{color:#414559}html.theme--catppuccin-frappe .search-result-highlight{background-color:#ffdd57;color:black}html.theme--catppuccin-frappe .search-divider{border-bottom:1px solid #626880}html.theme--catppuccin-frappe .search-result-title{width:85%;color:#f5f5f5}html.theme--catppuccin-frappe .search-result-code-title{font-size:0.875rem;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}html.theme--catppuccin-frappe #search-modal .modal-card-body::-webkit-scrollbar,html.theme--catppuccin-frappe #search-modal .filter-tabs::-webkit-scrollbar{height:10px;width:10px;background-color:transparent}html.theme--catppuccin-frappe #search-modal .modal-card-body::-webkit-scrollbar-thumb,html.theme--catppuccin-frappe #search-modal .filter-tabs::-webkit-scrollbar-thumb{background-color:gray;border-radius:1rem}html.theme--catppuccin-frappe #search-modal .modal-card-body::-webkit-scrollbar-track,html.theme--catppuccin-frappe #search-modal .filter-tabs::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.6);background-color:transparent}html.theme--catppuccin-frappe .w-100{width:100%}html.theme--catppuccin-frappe .gap-2{gap:0.5rem}html.theme--catppuccin-frappe .gap-4{gap:1rem}html.theme--catppuccin-frappe .gap-8{gap:2rem}html.theme--catppuccin-frappe{background-color:#303446;font-size:16px;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}html.theme--catppuccin-frappe a{transition:all 200ms ease}html.theme--catppuccin-frappe .label{color:#c6d0f5}html.theme--catppuccin-frappe .button,html.theme--catppuccin-frappe .control.has-icons-left .icon,html.theme--catppuccin-frappe .control.has-icons-right .icon,html.theme--catppuccin-frappe .input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-frappe .pagination-ellipsis,html.theme--catppuccin-frappe .pagination-link,html.theme--catppuccin-frappe .pagination-next,html.theme--catppuccin-frappe .pagination-previous,html.theme--catppuccin-frappe .select,html.theme--catppuccin-frappe .select select,html.theme--catppuccin-frappe .textarea{height:2.5em;color:#c6d0f5}html.theme--catppuccin-frappe .input,html.theme--catppuccin-frappe #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-frappe .textarea{transition:all 200ms ease;box-shadow:none;border-width:1px;padding-left:1em;padding-right:1em;color:#c6d0f5}html.theme--catppuccin-frappe .select:after,html.theme--catppuccin-frappe .select select{border-width:1px}html.theme--catppuccin-frappe .menu-list a{transition:all 300ms ease}html.theme--catppuccin-frappe .modal-card-foot,html.theme--catppuccin-frappe .modal-card-head{border-color:#626880}html.theme--catppuccin-frappe .navbar{border-radius:.4em}html.theme--catppuccin-frappe .navbar.is-transparent{background:none}html.theme--catppuccin-frappe .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-frappe .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#8caaee}@media screen and (max-width: 1055px){html.theme--catppuccin-frappe .navbar .navbar-menu{background-color:#8caaee;border-radius:0 0 .4em .4em}}html.theme--catppuccin-frappe .docstring>section>a.docs-sourcelink:not(body){color:#414559}html.theme--catppuccin-frappe .tag.is-link:not(body),html.theme--catppuccin-frappe .docstring>section>a.is-link.docs-sourcelink:not(body),html.theme--catppuccin-frappe .content kbd.is-link:not(body){color:#414559}html.theme--catppuccin-frappe .ansi span.sgr1{font-weight:bolder}html.theme--catppuccin-frappe .ansi span.sgr2{font-weight:lighter}html.theme--catppuccin-frappe .ansi span.sgr3{font-style:italic}html.theme--catppuccin-frappe .ansi span.sgr4{text-decoration:underline}html.theme--catppuccin-frappe .ansi span.sgr7{color:#303446;background-color:#c6d0f5}html.theme--catppuccin-frappe .ansi span.sgr8{color:transparent}html.theme--catppuccin-frappe .ansi span.sgr8 span{color:transparent}html.theme--catppuccin-frappe .ansi span.sgr9{text-decoration:line-through}html.theme--catppuccin-frappe .ansi span.sgr30{color:#51576d}html.theme--catppuccin-frappe .ansi span.sgr31{color:#e78284}html.theme--catppuccin-frappe .ansi span.sgr32{color:#a6d189}html.theme--catppuccin-frappe .ansi span.sgr33{color:#e5c890}html.theme--catppuccin-frappe .ansi span.sgr34{color:#8caaee}html.theme--catppuccin-frappe .ansi span.sgr35{color:#f4b8e4}html.theme--catppuccin-frappe .ansi span.sgr36{color:#81c8be}html.theme--catppuccin-frappe .ansi span.sgr37{color:#b5bfe2}html.theme--catppuccin-frappe .ansi span.sgr40{background-color:#51576d}html.theme--catppuccin-frappe .ansi span.sgr41{background-color:#e78284}html.theme--catppuccin-frappe .ansi span.sgr42{background-color:#a6d189}html.theme--catppuccin-frappe .ansi span.sgr43{background-color:#e5c890}html.theme--catppuccin-frappe .ansi span.sgr44{background-color:#8caaee}html.theme--catppuccin-frappe .ansi span.sgr45{background-color:#f4b8e4}html.theme--catppuccin-frappe .ansi span.sgr46{background-color:#81c8be}html.theme--catppuccin-frappe .ansi span.sgr47{background-color:#b5bfe2}html.theme--catppuccin-frappe .ansi span.sgr90{color:#626880}html.theme--catppuccin-frappe .ansi span.sgr91{color:#e78284}html.theme--catppuccin-frappe .ansi span.sgr92{color:#a6d189}html.theme--catppuccin-frappe .ansi span.sgr93{color:#e5c890}html.theme--catppuccin-frappe .ansi span.sgr94{color:#8caaee}html.theme--catppuccin-frappe .ansi span.sgr95{color:#f4b8e4}html.theme--catppuccin-frappe .ansi span.sgr96{color:#81c8be}html.theme--catppuccin-frappe .ansi span.sgr97{color:#a5adce}html.theme--catppuccin-frappe .ansi span.sgr100{background-color:#626880}html.theme--catppuccin-frappe .ansi span.sgr101{background-color:#e78284}html.theme--catppuccin-frappe .ansi span.sgr102{background-color:#a6d189}html.theme--catppuccin-frappe .ansi span.sgr103{background-color:#e5c890}html.theme--catppuccin-frappe .ansi span.sgr104{background-color:#8caaee}html.theme--catppuccin-frappe .ansi span.sgr105{background-color:#f4b8e4}html.theme--catppuccin-frappe .ansi span.sgr106{background-color:#81c8be}html.theme--catppuccin-frappe .ansi span.sgr107{background-color:#a5adce}html.theme--catppuccin-frappe code.language-julia-repl>span.hljs-meta{color:#a6d189;font-weight:bolder}html.theme--catppuccin-frappe code .hljs{color:#c6d0f5;background:#303446}html.theme--catppuccin-frappe code .hljs-keyword{color:#ca9ee6}html.theme--catppuccin-frappe code .hljs-built_in{color:#e78284}html.theme--catppuccin-frappe code .hljs-type{color:#e5c890}html.theme--catppuccin-frappe code .hljs-literal{color:#ef9f76}html.theme--catppuccin-frappe code .hljs-number{color:#ef9f76}html.theme--catppuccin-frappe code .hljs-operator{color:#81c8be}html.theme--catppuccin-frappe code .hljs-punctuation{color:#b5bfe2}html.theme--catppuccin-frappe code .hljs-property{color:#81c8be}html.theme--catppuccin-frappe code .hljs-regexp{color:#f4b8e4}html.theme--catppuccin-frappe code .hljs-string{color:#a6d189}html.theme--catppuccin-frappe code .hljs-char.escape_{color:#a6d189}html.theme--catppuccin-frappe code .hljs-subst{color:#a5adce}html.theme--catppuccin-frappe code .hljs-symbol{color:#eebebe}html.theme--catppuccin-frappe code .hljs-variable{color:#ca9ee6}html.theme--catppuccin-frappe code .hljs-variable.language_{color:#ca9ee6}html.theme--catppuccin-frappe code .hljs-variable.constant_{color:#ef9f76}html.theme--catppuccin-frappe code .hljs-title{color:#8caaee}html.theme--catppuccin-frappe code .hljs-title.class_{color:#e5c890}html.theme--catppuccin-frappe code .hljs-title.function_{color:#8caaee}html.theme--catppuccin-frappe code .hljs-params{color:#c6d0f5}html.theme--catppuccin-frappe code .hljs-comment{color:#626880}html.theme--catppuccin-frappe code .hljs-doctag{color:#e78284}html.theme--catppuccin-frappe code .hljs-meta{color:#ef9f76}html.theme--catppuccin-frappe code .hljs-section{color:#8caaee}html.theme--catppuccin-frappe code .hljs-tag{color:#a5adce}html.theme--catppuccin-frappe code .hljs-name{color:#ca9ee6}html.theme--catppuccin-frappe code .hljs-attr{color:#8caaee}html.theme--catppuccin-frappe code .hljs-attribute{color:#a6d189}html.theme--catppuccin-frappe code .hljs-bullet{color:#81c8be}html.theme--catppuccin-frappe code .hljs-code{color:#a6d189}html.theme--catppuccin-frappe code .hljs-emphasis{color:#e78284;font-style:italic}html.theme--catppuccin-frappe code .hljs-strong{color:#e78284;font-weight:bold}html.theme--catppuccin-frappe code .hljs-formula{color:#81c8be}html.theme--catppuccin-frappe code .hljs-link{color:#85c1dc;font-style:italic}html.theme--catppuccin-frappe code .hljs-quote{color:#a6d189;font-style:italic}html.theme--catppuccin-frappe code .hljs-selector-tag{color:#e5c890}html.theme--catppuccin-frappe code .hljs-selector-id{color:#8caaee}html.theme--catppuccin-frappe code .hljs-selector-class{color:#81c8be}html.theme--catppuccin-frappe code .hljs-selector-attr{color:#ca9ee6}html.theme--catppuccin-frappe code .hljs-selector-pseudo{color:#81c8be}html.theme--catppuccin-frappe code .hljs-template-tag{color:#eebebe}html.theme--catppuccin-frappe code .hljs-template-variable{color:#eebebe}html.theme--catppuccin-frappe code .hljs-addition{color:#a6d189;background:rgba(166,227,161,0.15)}html.theme--catppuccin-frappe code .hljs-deletion{color:#e78284;background:rgba(243,139,168,0.15)}html.theme--catppuccin-frappe .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--catppuccin-frappe .search-result-link:hover,html.theme--catppuccin-frappe .search-result-link:focus{background-color:#414559}html.theme--catppuccin-frappe .search-result-link .property-search-result-badge,html.theme--catppuccin-frappe .search-result-link .search-filter{transition:all 300ms}html.theme--catppuccin-frappe .search-result-link:hover .property-search-result-badge,html.theme--catppuccin-frappe .search-result-link:hover .search-filter,html.theme--catppuccin-frappe .search-result-link:focus .property-search-result-badge,html.theme--catppuccin-frappe .search-result-link:focus .search-filter{color:#414559 !important;background-color:#babbf1 !important}html.theme--catppuccin-frappe .search-result-title{color:#c6d0f5}html.theme--catppuccin-frappe .search-result-highlight{background-color:#e78284;color:#292c3c}html.theme--catppuccin-frappe .search-divider{border-bottom:1px solid #5e6d6f50}html.theme--catppuccin-frappe .w-100{width:100%}html.theme--catppuccin-frappe .gap-2{gap:0.5rem}html.theme--catppuccin-frappe .gap-4{gap:1rem} diff --git a/v0.9.12/assets/themes/catppuccin-latte.css b/v0.9.12/assets/themes/catppuccin-latte.css new file mode 100644 index 000000000..63160d344 --- /dev/null +++ b/v0.9.12/assets/themes/catppuccin-latte.css @@ -0,0 +1 @@ +html.theme--catppuccin-latte .pagination-previous,html.theme--catppuccin-latte .pagination-next,html.theme--catppuccin-latte .pagination-link,html.theme--catppuccin-latte .pagination-ellipsis,html.theme--catppuccin-latte .file-cta,html.theme--catppuccin-latte .file-name,html.theme--catppuccin-latte .select select,html.theme--catppuccin-latte .textarea,html.theme--catppuccin-latte .input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-latte .button{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:.4em;box-shadow:none;display:inline-flex;font-size:1rem;height:2.5em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.5em - 1px);padding-left:calc(0.75em - 1px);padding-right:calc(0.75em - 1px);padding-top:calc(0.5em - 1px);position:relative;vertical-align:top}html.theme--catppuccin-latte .pagination-previous:focus,html.theme--catppuccin-latte .pagination-next:focus,html.theme--catppuccin-latte .pagination-link:focus,html.theme--catppuccin-latte .pagination-ellipsis:focus,html.theme--catppuccin-latte .file-cta:focus,html.theme--catppuccin-latte .file-name:focus,html.theme--catppuccin-latte .select select:focus,html.theme--catppuccin-latte .textarea:focus,html.theme--catppuccin-latte .input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input:focus,html.theme--catppuccin-latte .button:focus,html.theme--catppuccin-latte .is-focused.pagination-previous,html.theme--catppuccin-latte .is-focused.pagination-next,html.theme--catppuccin-latte .is-focused.pagination-link,html.theme--catppuccin-latte .is-focused.pagination-ellipsis,html.theme--catppuccin-latte .is-focused.file-cta,html.theme--catppuccin-latte .is-focused.file-name,html.theme--catppuccin-latte .select select.is-focused,html.theme--catppuccin-latte .is-focused.textarea,html.theme--catppuccin-latte .is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .is-focused.button,html.theme--catppuccin-latte .pagination-previous:active,html.theme--catppuccin-latte .pagination-next:active,html.theme--catppuccin-latte .pagination-link:active,html.theme--catppuccin-latte .pagination-ellipsis:active,html.theme--catppuccin-latte .file-cta:active,html.theme--catppuccin-latte .file-name:active,html.theme--catppuccin-latte .select select:active,html.theme--catppuccin-latte .textarea:active,html.theme--catppuccin-latte .input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input:active,html.theme--catppuccin-latte .button:active,html.theme--catppuccin-latte .is-active.pagination-previous,html.theme--catppuccin-latte .is-active.pagination-next,html.theme--catppuccin-latte .is-active.pagination-link,html.theme--catppuccin-latte .is-active.pagination-ellipsis,html.theme--catppuccin-latte .is-active.file-cta,html.theme--catppuccin-latte .is-active.file-name,html.theme--catppuccin-latte .select select.is-active,html.theme--catppuccin-latte .is-active.textarea,html.theme--catppuccin-latte .is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-latte .is-active.button{outline:none}html.theme--catppuccin-latte .pagination-previous[disabled],html.theme--catppuccin-latte .pagination-next[disabled],html.theme--catppuccin-latte .pagination-link[disabled],html.theme--catppuccin-latte .pagination-ellipsis[disabled],html.theme--catppuccin-latte .file-cta[disabled],html.theme--catppuccin-latte .file-name[disabled],html.theme--catppuccin-latte .select select[disabled],html.theme--catppuccin-latte .textarea[disabled],html.theme--catppuccin-latte .input[disabled],html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input[disabled],html.theme--catppuccin-latte .button[disabled],fieldset[disabled] html.theme--catppuccin-latte .pagination-previous,html.theme--catppuccin-latte fieldset[disabled] .pagination-previous,fieldset[disabled] html.theme--catppuccin-latte .pagination-next,html.theme--catppuccin-latte fieldset[disabled] .pagination-next,fieldset[disabled] html.theme--catppuccin-latte .pagination-link,html.theme--catppuccin-latte fieldset[disabled] .pagination-link,fieldset[disabled] html.theme--catppuccin-latte .pagination-ellipsis,html.theme--catppuccin-latte fieldset[disabled] .pagination-ellipsis,fieldset[disabled] html.theme--catppuccin-latte .file-cta,html.theme--catppuccin-latte fieldset[disabled] .file-cta,fieldset[disabled] html.theme--catppuccin-latte .file-name,html.theme--catppuccin-latte fieldset[disabled] .file-name,fieldset[disabled] html.theme--catppuccin-latte .select select,fieldset[disabled] html.theme--catppuccin-latte .textarea,fieldset[disabled] html.theme--catppuccin-latte .input,fieldset[disabled] html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-latte fieldset[disabled] .select select,html.theme--catppuccin-latte .select fieldset[disabled] select,html.theme--catppuccin-latte fieldset[disabled] .textarea,html.theme--catppuccin-latte fieldset[disabled] .input,html.theme--catppuccin-latte fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-latte #documenter .docs-sidebar fieldset[disabled] form.docs-search>input,fieldset[disabled] html.theme--catppuccin-latte .button,html.theme--catppuccin-latte fieldset[disabled] .button{cursor:not-allowed}html.theme--catppuccin-latte .tabs,html.theme--catppuccin-latte .pagination-previous,html.theme--catppuccin-latte .pagination-next,html.theme--catppuccin-latte .pagination-link,html.theme--catppuccin-latte .pagination-ellipsis,html.theme--catppuccin-latte .breadcrumb,html.theme--catppuccin-latte .file,html.theme--catppuccin-latte .button,.is-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.theme--catppuccin-latte .navbar-link:not(.is-arrowless)::after,html.theme--catppuccin-latte .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--catppuccin-latte .admonition:not(:last-child),html.theme--catppuccin-latte .tabs:not(:last-child),html.theme--catppuccin-latte .pagination:not(:last-child),html.theme--catppuccin-latte .message:not(:last-child),html.theme--catppuccin-latte .level:not(:last-child),html.theme--catppuccin-latte .breadcrumb:not(:last-child),html.theme--catppuccin-latte .block:not(:last-child),html.theme--catppuccin-latte .title:not(:last-child),html.theme--catppuccin-latte .subtitle:not(:last-child),html.theme--catppuccin-latte .table-container:not(:last-child),html.theme--catppuccin-latte .table:not(:last-child),html.theme--catppuccin-latte .progress:not(:last-child),html.theme--catppuccin-latte .notification:not(:last-child),html.theme--catppuccin-latte .content:not(:last-child),html.theme--catppuccin-latte .box:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-latte .modal-close,html.theme--catppuccin-latte .delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:9999px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:none;position:relative;vertical-align:top;width:20px}html.theme--catppuccin-latte .modal-close::before,html.theme--catppuccin-latte .delete::before,html.theme--catppuccin-latte .modal-close::after,html.theme--catppuccin-latte .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--catppuccin-latte .modal-close::before,html.theme--catppuccin-latte .delete::before{height:2px;width:50%}html.theme--catppuccin-latte .modal-close::after,html.theme--catppuccin-latte .delete::after{height:50%;width:2px}html.theme--catppuccin-latte .modal-close:hover,html.theme--catppuccin-latte .delete:hover,html.theme--catppuccin-latte .modal-close:focus,html.theme--catppuccin-latte .delete:focus{background-color:rgba(10,10,10,0.3)}html.theme--catppuccin-latte .modal-close:active,html.theme--catppuccin-latte .delete:active{background-color:rgba(10,10,10,0.4)}html.theme--catppuccin-latte .is-small.modal-close,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.modal-close,html.theme--catppuccin-latte .is-small.delete,html.theme--catppuccin-latte #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--catppuccin-latte .is-medium.modal-close,html.theme--catppuccin-latte .is-medium.delete{height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;width:24px}html.theme--catppuccin-latte .is-large.modal-close,html.theme--catppuccin-latte .is-large.delete{height:32px;max-height:32px;max-width:32px;min-height:32px;min-width:32px;width:32px}html.theme--catppuccin-latte .control.is-loading::after,html.theme--catppuccin-latte .select.is-loading::after,html.theme--catppuccin-latte .loader,html.theme--catppuccin-latte .button.is-loading::after{animation:spinAround 500ms infinite linear;border:2px solid #8c8fa1;border-radius:9999px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}html.theme--catppuccin-latte .hero-video,html.theme--catppuccin-latte .modal-background,html.theme--catppuccin-latte .modal,html.theme--catppuccin-latte .image.is-square img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--catppuccin-latte .image.is-square .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--catppuccin-latte .image.is-1by1 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--catppuccin-latte .image.is-1by1 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--catppuccin-latte .image.is-5by4 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--catppuccin-latte .image.is-5by4 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--catppuccin-latte .image.is-4by3 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--catppuccin-latte .image.is-4by3 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--catppuccin-latte .image.is-3by2 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--catppuccin-latte .image.is-3by2 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--catppuccin-latte .image.is-5by3 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--catppuccin-latte .image.is-5by3 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--catppuccin-latte .image.is-16by9 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--catppuccin-latte .image.is-16by9 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--catppuccin-latte .image.is-2by1 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--catppuccin-latte .image.is-2by1 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--catppuccin-latte .image.is-3by1 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--catppuccin-latte .image.is-3by1 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--catppuccin-latte .image.is-4by5 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--catppuccin-latte .image.is-4by5 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--catppuccin-latte .image.is-3by4 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--catppuccin-latte .image.is-3by4 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--catppuccin-latte .image.is-2by3 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--catppuccin-latte .image.is-2by3 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--catppuccin-latte .image.is-3by5 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--catppuccin-latte .image.is-3by5 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--catppuccin-latte .image.is-9by16 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--catppuccin-latte .image.is-9by16 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--catppuccin-latte .image.is-1by2 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--catppuccin-latte .image.is-1by2 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--catppuccin-latte .image.is-1by3 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--catppuccin-latte .image.is-1by3 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio,.is-overlay{bottom:0;left:0;position:absolute;right:0;top:0}html.theme--catppuccin-latte .navbar-burger{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0}/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:inherit}.has-text-white{color:#fff !important}a.has-text-white:hover,a.has-text-white:focus{color:#e6e6e6 !important}.has-background-white{background-color:#fff !important}.has-text-black{color:#0a0a0a !important}a.has-text-black:hover,a.has-text-black:focus{color:#000 !important}.has-background-black{background-color:#0a0a0a !important}.has-text-light{color:#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:#ccd0da !important}a.has-text-dark:hover,a.has-text-dark:focus{color:#aeb5c5 !important}.has-background-dark{background-color:#ccd0da !important}.has-text-primary{color:#1e66f5 !important}a.has-text-primary:hover,a.has-text-primary:focus{color:#0a4ed6 !important}.has-background-primary{background-color:#1e66f5 !important}.has-text-primary-light{color:#ebf2fe !important}a.has-text-primary-light:hover,a.has-text-primary-light:focus{color:#bbd1fc !important}.has-background-primary-light{background-color:#ebf2fe !important}.has-text-primary-dark{color:#0a52e1 !important}a.has-text-primary-dark:hover,a.has-text-primary-dark:focus{color:#286df5 !important}.has-background-primary-dark{background-color:#0a52e1 !important}.has-text-link{color:#1e66f5 !important}a.has-text-link:hover,a.has-text-link:focus{color:#0a4ed6 !important}.has-background-link{background-color:#1e66f5 !important}.has-text-link-light{color:#ebf2fe !important}a.has-text-link-light:hover,a.has-text-link-light:focus{color:#bbd1fc !important}.has-background-link-light{background-color:#ebf2fe !important}.has-text-link-dark{color:#0a52e1 !important}a.has-text-link-dark:hover,a.has-text-link-dark:focus{color:#286df5 !important}.has-background-link-dark{background-color:#0a52e1 !important}.has-text-info{color:#179299 !important}a.has-text-info:hover,a.has-text-info:focus{color:#10686d !important}.has-background-info{background-color:#179299 !important}.has-text-info-light{color:#edfcfc !important}a.has-text-info-light:hover,a.has-text-info-light:focus{color:#c1f3f6 !important}.has-background-info-light{background-color:#edfcfc !important}.has-text-info-dark{color:#1cb2ba !important}a.has-text-info-dark:hover,a.has-text-info-dark:focus{color:#2ad5df !important}.has-background-info-dark{background-color:#1cb2ba !important}.has-text-success{color:#40a02b !important}a.has-text-success:hover,a.has-text-success:focus{color:#307820 !important}.has-background-success{background-color:#40a02b !important}.has-text-success-light{color:#f1fbef !important}a.has-text-success-light:hover,a.has-text-success-light:focus{color:#cef0c7 !important}.has-background-success-light{background-color:#f1fbef !important}.has-text-success-dark{color:#40a12b !important}a.has-text-success-dark:hover,a.has-text-success-dark:focus{color:#50c936 !important}.has-background-success-dark{background-color:#40a12b !important}.has-text-warning{color:#df8e1d !important}a.has-text-warning:hover,a.has-text-warning:focus{color:#b27117 !important}.has-background-warning{background-color:#df8e1d !important}.has-text-warning-light{color:#fdf6ed !important}a.has-text-warning-light:hover,a.has-text-warning-light:focus{color:#f7e0c0 !important}.has-background-warning-light{background-color:#fdf6ed !important}.has-text-warning-dark{color:#9e6515 !important}a.has-text-warning-dark:hover,a.has-text-warning-dark:focus{color:#cb811a !important}.has-background-warning-dark{background-color:#9e6515 !important}.has-text-danger{color:#d20f39 !important}a.has-text-danger:hover,a.has-text-danger:focus{color:#a20c2c !important}.has-background-danger{background-color:#d20f39 !important}.has-text-danger-light{color:#feecf0 !important}a.has-text-danger-light:hover,a.has-text-danger-light:focus{color:#fabcca !important}.has-background-danger-light{background-color:#feecf0 !important}.has-text-danger-dark{color:#e9113f !important}a.has-text-danger-dark:hover,a.has-text-danger-dark:focus{color:#f13c63 !important}.has-background-danger-dark{background-color:#e9113f !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:#ccd0da !important}.has-background-grey-darker{background-color:#ccd0da !important}.has-text-grey-dark{color:#bcc0cc !important}.has-background-grey-dark{background-color:#bcc0cc !important}.has-text-grey{color:#acb0be !important}.has-background-grey{background-color:#acb0be !important}.has-text-grey-light{color:#9ca0b0 !important}.has-background-grey-light{background-color:#9ca0b0 !important}.has-text-grey-lighter{color:#8c8fa1 !important}.has-background-grey-lighter{background-color:#8c8fa1 !important}.has-text-white-ter{color:#f5f5f5 !important}.has-background-white-ter{background-color:#f5f5f5 !important}.has-text-white-bis{color:#fafafa !important}.has-background-white-bis{background-color:#fafafa !important}.is-flex-direction-row{flex-direction:row !important}.is-flex-direction-row-reverse{flex-direction:row-reverse !important}.is-flex-direction-column{flex-direction:column !important}.is-flex-direction-column-reverse{flex-direction:column-reverse !important}.is-flex-wrap-nowrap{flex-wrap:nowrap !important}.is-flex-wrap-wrap{flex-wrap:wrap !important}.is-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse !important}.is-justify-content-flex-start{justify-content:flex-start !important}.is-justify-content-flex-end{justify-content:flex-end !important}.is-justify-content-center{justify-content:center !important}.is-justify-content-space-between{justify-content:space-between !important}.is-justify-content-space-around{justify-content:space-around !important}.is-justify-content-space-evenly{justify-content:space-evenly !important}.is-justify-content-start{justify-content:start !important}.is-justify-content-end{justify-content:end !important}.is-justify-content-left{justify-content:left !important}.is-justify-content-right{justify-content:right !important}.is-align-content-flex-start{align-content:flex-start !important}.is-align-content-flex-end{align-content:flex-end !important}.is-align-content-center{align-content:center !important}.is-align-content-space-between{align-content:space-between !important}.is-align-content-space-around{align-content:space-around !important}.is-align-content-space-evenly{align-content:space-evenly !important}.is-align-content-stretch{align-content:stretch !important}.is-align-content-start{align-content:start !important}.is-align-content-end{align-content:end !important}.is-align-content-baseline{align-content:baseline !important}.is-align-items-stretch{align-items:stretch !important}.is-align-items-flex-start{align-items:flex-start !important}.is-align-items-flex-end{align-items:flex-end !important}.is-align-items-center{align-items:center !important}.is-align-items-baseline{align-items:baseline !important}.is-align-items-start{align-items:start !important}.is-align-items-end{align-items:end !important}.is-align-items-self-start{align-items:self-start !important}.is-align-items-self-end{align-items:self-end !important}.is-align-self-auto{align-self:auto !important}.is-align-self-flex-start{align-self:flex-start !important}.is-align-self-flex-end{align-self:flex-end !important}.is-align-self-center{align-self:center !important}.is-align-self-baseline{align-self:baseline !important}.is-align-self-stretch{align-self:stretch !important}.is-flex-grow-0{flex-grow:0 !important}.is-flex-grow-1{flex-grow:1 !important}.is-flex-grow-2{flex-grow:2 !important}.is-flex-grow-3{flex-grow:3 !important}.is-flex-grow-4{flex-grow:4 !important}.is-flex-grow-5{flex-grow:5 !important}.is-flex-shrink-0{flex-shrink:0 !important}.is-flex-shrink-1{flex-shrink:1 !important}.is-flex-shrink-2{flex-shrink:2 !important}.is-flex-shrink-3{flex-shrink:3 !important}.is-flex-shrink-4{flex-shrink:4 !important}.is-flex-shrink-5{flex-shrink:5 !important}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-clickable{cursor:pointer !important;pointer-events:all !important}.is-clipped{overflow:hidden !important}.is-relative{position:relative !important}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.m-0{margin:0 !important}.mt-0{margin-top:0 !important}.mr-0{margin-right:0 !important}.mb-0{margin-bottom:0 !important}.ml-0{margin-left:0 !important}.mx-0{margin-left:0 !important;margin-right:0 !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.m-1{margin:.25rem !important}.mt-1{margin-top:.25rem !important}.mr-1{margin-right:.25rem !important}.mb-1{margin-bottom:.25rem !important}.ml-1{margin-left:.25rem !important}.mx-1{margin-left:.25rem !important;margin-right:.25rem !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-2{margin:.5rem !important}.mt-2{margin-top:.5rem !important}.mr-2{margin-right:.5rem !important}.mb-2{margin-bottom:.5rem !important}.ml-2{margin-left:.5rem !important}.mx-2{margin-left:.5rem !important;margin-right:.5rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-3{margin:.75rem !important}.mt-3{margin-top:.75rem !important}.mr-3{margin-right:.75rem !important}.mb-3{margin-bottom:.75rem !important}.ml-3{margin-left:.75rem !important}.mx-3{margin-left:.75rem !important;margin-right:.75rem !important}.my-3{margin-top:.75rem !important;margin-bottom:.75rem !important}.m-4{margin:1rem !important}.mt-4{margin-top:1rem !important}.mr-4{margin-right:1rem !important}.mb-4{margin-bottom:1rem !important}.ml-4{margin-left:1rem !important}.mx-4{margin-left:1rem !important;margin-right:1rem !important}.my-4{margin-top:1rem !important;margin-bottom:1rem !important}.m-5{margin:1.5rem !important}.mt-5{margin-top:1.5rem !important}.mr-5{margin-right:1.5rem !important}.mb-5{margin-bottom:1.5rem !important}.ml-5{margin-left:1.5rem !important}.mx-5{margin-left:1.5rem !important;margin-right:1.5rem !important}.my-5{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-6{margin:3rem !important}.mt-6{margin-top:3rem !important}.mr-6{margin-right:3rem !important}.mb-6{margin-bottom:3rem !important}.ml-6{margin-left:3rem !important}.mx-6{margin-left:3rem !important;margin-right:3rem !important}.my-6{margin-top:3rem !important;margin-bottom:3rem !important}.m-auto{margin:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-right:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-left:auto !important}.mx-auto{margin-left:auto !important;margin-right:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.p-0{padding:0 !important}.pt-0{padding-top:0 !important}.pr-0{padding-right:0 !important}.pb-0{padding-bottom:0 !important}.pl-0{padding-left:0 !important}.px-0{padding-left:0 !important;padding-right:0 !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.p-1{padding:.25rem !important}.pt-1{padding-top:.25rem !important}.pr-1{padding-right:.25rem !important}.pb-1{padding-bottom:.25rem !important}.pl-1{padding-left:.25rem !important}.px-1{padding-left:.25rem !important;padding-right:.25rem !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-2{padding:.5rem !important}.pt-2{padding-top:.5rem !important}.pr-2{padding-right:.5rem !important}.pb-2{padding-bottom:.5rem !important}.pl-2{padding-left:.5rem !important}.px-2{padding-left:.5rem !important;padding-right:.5rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-3{padding:.75rem !important}.pt-3{padding-top:.75rem !important}.pr-3{padding-right:.75rem !important}.pb-3{padding-bottom:.75rem !important}.pl-3{padding-left:.75rem !important}.px-3{padding-left:.75rem !important;padding-right:.75rem !important}.py-3{padding-top:.75rem !important;padding-bottom:.75rem !important}.p-4{padding:1rem !important}.pt-4{padding-top:1rem !important}.pr-4{padding-right:1rem !important}.pb-4{padding-bottom:1rem !important}.pl-4{padding-left:1rem !important}.px-4{padding-left:1rem !important;padding-right:1rem !important}.py-4{padding-top:1rem !important;padding-bottom:1rem !important}.p-5{padding:1.5rem !important}.pt-5{padding-top:1.5rem !important}.pr-5{padding-right:1.5rem !important}.pb-5{padding-bottom:1.5rem !important}.pl-5{padding-left:1.5rem !important}.px-5{padding-left:1.5rem !important;padding-right:1.5rem !important}.py-5{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-6{padding:3rem !important}.pt-6{padding-top:3rem !important}.pr-6{padding-right:3rem !important}.pb-6{padding-bottom:3rem !important}.pl-6{padding-left:3rem !important}.px-6{padding-left:3rem !important;padding-right:3rem !important}.py-6{padding-top:3rem !important;padding-bottom:3rem !important}.p-auto{padding:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-right:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-left:auto !important}.px-auto{padding-left:auto !important;padding-right:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !important}.is-size-1{font-size:3rem !important}.is-size-2{font-size:2.5rem !important}.is-size-3{font-size:2rem !important}.is-size-4{font-size:1.5rem !important}.is-size-5{font-size:1.25rem !important}.is-size-6{font-size:1rem !important}.is-size-7,html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink{font-size:.75rem !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:1rem !important}.is-size-7-mobile{font-size:.75rem !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:1rem !important}.is-size-7-tablet{font-size:.75rem !important}}@media screen and (max-width: 1055px){.is-size-1-touch{font-size:3rem !important}.is-size-2-touch{font-size:2.5rem !important}.is-size-3-touch{font-size:2rem !important}.is-size-4-touch{font-size:1.5rem !important}.is-size-5-touch{font-size:1.25rem !important}.is-size-6-touch{font-size:1rem !important}.is-size-7-touch{font-size:.75rem !important}}@media screen and (min-width: 1056px){.is-size-1-desktop{font-size:3rem !important}.is-size-2-desktop{font-size:2.5rem !important}.is-size-3-desktop{font-size:2rem !important}.is-size-4-desktop{font-size:1.5rem !important}.is-size-5-desktop{font-size:1.25rem !important}.is-size-6-desktop{font-size:1rem !important}.is-size-7-desktop{font-size:.75rem !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:1rem !important}.is-size-7-widescreen{font-size:.75rem !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:1rem !important}.is-size-7-fullhd{font-size:.75rem !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-centered-tablet-only{text-align:center !important}}@media screen and (max-width: 1055px){.has-text-centered-touch{text-align:center !important}}@media screen and (min-width: 1056px){.has-text-centered-desktop{text-align:center !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-centered-desktop-only{text-align:center !important}}@media screen and (min-width: 1216px){.has-text-centered-widescreen{text-align:center !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-centered-widescreen-only{text-align:center !important}}@media screen and (min-width: 1408px){.has-text-centered-fullhd{text-align:center !important}}@media screen and (max-width: 768px){.has-text-justified-mobile{text-align:justify !important}}@media screen and (min-width: 769px),print{.has-text-justified-tablet{text-align:justify !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-justified-tablet-only{text-align:justify !important}}@media screen and (max-width: 1055px){.has-text-justified-touch{text-align:justify !important}}@media screen and (min-width: 1056px){.has-text-justified-desktop{text-align:justify !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-justified-desktop-only{text-align:justify !important}}@media screen and (min-width: 1216px){.has-text-justified-widescreen{text-align:justify !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-justified-widescreen-only{text-align:justify !important}}@media screen and (min-width: 1408px){.has-text-justified-fullhd{text-align:justify !important}}@media screen and (max-width: 768px){.has-text-left-mobile{text-align:left !important}}@media screen and (min-width: 769px),print{.has-text-left-tablet{text-align:left !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-left-tablet-only{text-align:left !important}}@media screen and (max-width: 1055px){.has-text-left-touch{text-align:left !important}}@media screen and (min-width: 1056px){.has-text-left-desktop{text-align:left !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-left-desktop-only{text-align:left !important}}@media screen and (min-width: 1216px){.has-text-left-widescreen{text-align:left !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-left-widescreen-only{text-align:left !important}}@media screen and (min-width: 1408px){.has-text-left-fullhd{text-align:left !important}}@media screen and (max-width: 768px){.has-text-right-mobile{text-align:right !important}}@media screen and (min-width: 769px),print{.has-text-right-tablet{text-align:right !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-right-tablet-only{text-align:right !important}}@media screen and (max-width: 1055px){.has-text-right-touch{text-align:right !important}}@media screen and (min-width: 1056px){.has-text-right-desktop{text-align:right !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-right-desktop-only{text-align:right !important}}@media screen and (min-width: 1216px){.has-text-right-widescreen{text-align:right !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-right-widescreen-only{text-align:right !important}}@media screen and (min-width: 1408px){.has-text-right-fullhd{text-align:right !important}}.is-capitalized{text-transform:capitalize !important}.is-lowercase{text-transform:lowercase !important}.is-uppercase{text-transform:uppercase !important}.is-italic{font-style:italic !important}.is-underlined{text-decoration:underline !important}.has-text-weight-light{font-weight:300 !important}.has-text-weight-normal{font-weight:400 !important}.has-text-weight-medium{font-weight:500 !important}.has-text-weight-semibold{font-weight:600 !important}.has-text-weight-bold{font-weight:700 !important}.is-family-primary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-secondary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-sans-serif{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-monospace{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-family-code{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-block{display:block !important}@media screen and (max-width: 768px){.is-block-mobile{display:block !important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-block-tablet-only{display:block !important}}@media screen and (max-width: 1055px){.is-block-touch{display:block !important}}@media screen and (min-width: 1056px){.is-block-desktop{display:block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-block-desktop-only{display:block !important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block !important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block !important}}.is-flex{display:flex !important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex !important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-flex-tablet-only{display:flex !important}}@media screen and (max-width: 1055px){.is-flex-touch{display:flex !important}}@media screen and (min-width: 1056px){.is-flex-desktop{display:flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-flex-desktop-only{display:flex !important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex !important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex !important}}.is-inline{display:inline !important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline !important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-tablet-only{display:inline !important}}@media screen and (max-width: 1055px){.is-inline-touch{display:inline !important}}@media screen and (min-width: 1056px){.is-inline-desktop{display:inline !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-desktop-only{display:inline !important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline !important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline !important}}.is-inline-block{display:inline-block !important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block !important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-block-tablet-only{display:inline-block !important}}@media screen and (max-width: 1055px){.is-inline-block-touch{display:inline-block !important}}@media screen and (min-width: 1056px){.is-inline-block-desktop{display:inline-block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block !important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block !important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block !important}}.is-inline-flex{display:inline-flex !important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex !important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-flex-tablet-only{display:inline-flex !important}}@media screen and (max-width: 1055px){.is-inline-flex-touch{display:inline-flex !important}}@media screen and (min-width: 1056px){.is-inline-flex-desktop{display:inline-flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex !important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex !important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex !important}}.is-hidden{display:none !important}.is-sr-only{border:none !important;clip:rect(0, 0, 0, 0) !important;height:0.01em !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:0.01em !important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none !important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-hidden-tablet-only{display:none !important}}@media screen and (max-width: 1055px){.is-hidden-touch{display:none !important}}@media screen and (min-width: 1056px){.is-hidden-desktop{display:none !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-hidden-desktop-only{display:none !important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none !important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none !important}}.is-invisible{visibility:hidden !important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden !important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-invisible-tablet-only{visibility:hidden !important}}@media screen and (max-width: 1055px){.is-invisible-touch{visibility:hidden !important}}@media screen and (min-width: 1056px){.is-invisible-desktop{visibility:hidden !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden !important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden !important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden !important}}html.theme--catppuccin-latte html{background-color:#eff1f5;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--catppuccin-latte article,html.theme--catppuccin-latte aside,html.theme--catppuccin-latte figure,html.theme--catppuccin-latte footer,html.theme--catppuccin-latte header,html.theme--catppuccin-latte hgroup,html.theme--catppuccin-latte section{display:block}html.theme--catppuccin-latte body,html.theme--catppuccin-latte button,html.theme--catppuccin-latte input,html.theme--catppuccin-latte optgroup,html.theme--catppuccin-latte select,html.theme--catppuccin-latte textarea{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif}html.theme--catppuccin-latte code,html.theme--catppuccin-latte 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--catppuccin-latte body{color:#4c4f69;font-size:1em;font-weight:400;line-height:1.5}html.theme--catppuccin-latte a{color:#1e66f5;cursor:pointer;text-decoration:none}html.theme--catppuccin-latte a strong{color:currentColor}html.theme--catppuccin-latte a:hover{color:#04a5e5}html.theme--catppuccin-latte code{background-color:#e6e9ef;color:#4c4f69;font-size:.875em;font-weight:normal;padding:.1em}html.theme--catppuccin-latte hr{background-color:#e6e9ef;border:none;display:block;height:2px;margin:1.5rem 0}html.theme--catppuccin-latte img{height:auto;max-width:100%}html.theme--catppuccin-latte input[type="checkbox"],html.theme--catppuccin-latte input[type="radio"]{vertical-align:baseline}html.theme--catppuccin-latte small{font-size:.875em}html.theme--catppuccin-latte span{font-style:inherit;font-weight:inherit}html.theme--catppuccin-latte strong{color:#41445a;font-weight:700}html.theme--catppuccin-latte fieldset{border:none}html.theme--catppuccin-latte pre{-webkit-overflow-scrolling:touch;background-color:#e6e9ef;color:#4c4f69;font-size:.875em;overflow-x:auto;padding:1.25rem 1.5rem;white-space:pre;word-wrap:normal}html.theme--catppuccin-latte pre code{background-color:transparent;color:currentColor;font-size:1em;padding:0}html.theme--catppuccin-latte table td,html.theme--catppuccin-latte table th{vertical-align:top}html.theme--catppuccin-latte table td:not([align]),html.theme--catppuccin-latte table th:not([align]){text-align:inherit}html.theme--catppuccin-latte table th{color:#41445a}html.theme--catppuccin-latte .box{background-color:#bcc0cc;border-radius:8px;box-shadow:none;color:#4c4f69;display:block;padding:1.25rem}html.theme--catppuccin-latte a.box:hover,html.theme--catppuccin-latte a.box:focus{box-shadow:0 0.5em 1em -0.125em rgba(10,10,10,0.1),0 0 0 1px #1e66f5}html.theme--catppuccin-latte a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2),0 0 0 1px #1e66f5}html.theme--catppuccin-latte .button{background-color:#e6e9ef;border-color:#fff;border-width:1px;color:#1e66f5;cursor:pointer;justify-content:center;padding-bottom:calc(0.5em - 1px);padding-left:1em;padding-right:1em;padding-top:calc(0.5em - 1px);text-align:center;white-space:nowrap}html.theme--catppuccin-latte .button strong{color:inherit}html.theme--catppuccin-latte .button .icon,html.theme--catppuccin-latte .button .icon.is-small,html.theme--catppuccin-latte .button #documenter .docs-sidebar form.docs-search>input.icon,html.theme--catppuccin-latte #documenter .docs-sidebar .button form.docs-search>input.icon,html.theme--catppuccin-latte .button .icon.is-medium,html.theme--catppuccin-latte .button .icon.is-large{height:1.5em;width:1.5em}html.theme--catppuccin-latte .button .icon:first-child:not(:last-child){margin-left:calc(-0.5em - 1px);margin-right:.25em}html.theme--catppuccin-latte .button .icon:last-child:not(:first-child){margin-left:.25em;margin-right:calc(-0.5em - 1px)}html.theme--catppuccin-latte .button .icon:first-child:last-child{margin-left:calc(-0.5em - 1px);margin-right:calc(-0.5em - 1px)}html.theme--catppuccin-latte .button:hover,html.theme--catppuccin-latte .button.is-hovered{border-color:#9ca0b0;color:#41445a}html.theme--catppuccin-latte .button:focus,html.theme--catppuccin-latte .button.is-focused{border-color:#9ca0b0;color:#0b57ef}html.theme--catppuccin-latte .button:focus:not(:active),html.theme--catppuccin-latte .button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(30,102,245,0.25)}html.theme--catppuccin-latte .button:active,html.theme--catppuccin-latte .button.is-active{border-color:#bcc0cc;color:#41445a}html.theme--catppuccin-latte .button.is-text{background-color:transparent;border-color:transparent;color:#4c4f69;text-decoration:underline}html.theme--catppuccin-latte .button.is-text:hover,html.theme--catppuccin-latte .button.is-text.is-hovered,html.theme--catppuccin-latte .button.is-text:focus,html.theme--catppuccin-latte .button.is-text.is-focused{background-color:#e6e9ef;color:#41445a}html.theme--catppuccin-latte .button.is-text:active,html.theme--catppuccin-latte .button.is-text.is-active{background-color:#d6dbe5;color:#41445a}html.theme--catppuccin-latte .button.is-text[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}html.theme--catppuccin-latte .button.is-ghost{background:none;border-color:rgba(0,0,0,0);color:#1e66f5;text-decoration:none}html.theme--catppuccin-latte .button.is-ghost:hover,html.theme--catppuccin-latte .button.is-ghost.is-hovered{color:#1e66f5;text-decoration:underline}html.theme--catppuccin-latte .button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-latte .button.is-white:hover,html.theme--catppuccin-latte .button.is-white.is-hovered{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-latte .button.is-white:focus,html.theme--catppuccin-latte .button.is-white.is-focused{border-color:transparent;color:#0a0a0a}html.theme--catppuccin-latte .button.is-white:focus:not(:active),html.theme--catppuccin-latte .button.is-white.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-latte .button.is-white:active,html.theme--catppuccin-latte .button.is-white.is-active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-latte .button.is-white[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-white{background-color:#fff;border-color:#fff;box-shadow:none}html.theme--catppuccin-latte .button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .button.is-white.is-inverted:hover,html.theme--catppuccin-latte .button.is-white.is-inverted.is-hovered{background-color:#000}html.theme--catppuccin-latte .button.is-white.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-white.is-inverted{background-color:#0a0a0a;border-color:transparent;box-shadow:none;color:#fff}html.theme--catppuccin-latte .button.is-white.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-latte .button.is-white.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-latte .button.is-white.is-outlined:hover,html.theme--catppuccin-latte .button.is-white.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-white.is-outlined:focus,html.theme--catppuccin-latte .button.is-white.is-outlined.is-focused{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-white.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-white.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-white.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-white.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-latte .button.is-white.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-white.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined.is-focused{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-latte .button.is-black{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-black:hover,html.theme--catppuccin-latte .button.is-black.is-hovered{background-color:#040404;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-black:focus,html.theme--catppuccin-latte .button.is-black.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-black:focus:not(:active),html.theme--catppuccin-latte .button.is-black.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-latte .button.is-black:active,html.theme--catppuccin-latte .button.is-black.is-active{background-color:#000;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-black[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-black{background-color:#0a0a0a;border-color:#0a0a0a;box-shadow:none}html.theme--catppuccin-latte .button.is-black.is-inverted{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .button.is-black.is-inverted:hover,html.theme--catppuccin-latte .button.is-black.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-latte .button.is-black.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-black.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-latte .button.is-black.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--catppuccin-latte .button.is-black.is-outlined:hover,html.theme--catppuccin-latte .button.is-black.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-black.is-outlined:focus,html.theme--catppuccin-latte .button.is-black.is-outlined.is-focused{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .button.is-black.is-outlined.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-latte .button.is-black.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-black.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-black.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-black.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-black.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined.is-focused{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-latte .button.is-light{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-light:hover,html.theme--catppuccin-latte .button.is-light.is-hovered{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-light:focus,html.theme--catppuccin-latte .button.is-light.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-light:focus:not(:active),html.theme--catppuccin-latte .button.is-light.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-latte .button.is-light:active,html.theme--catppuccin-latte .button.is-light.is-active{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-light[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-light{background-color:#f5f5f5;border-color:#f5f5f5;box-shadow:none}html.theme--catppuccin-latte .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-latte .button.is-light.is-inverted:hover,html.theme--catppuccin-latte .button.is-light.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-light.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#f5f5f5}html.theme--catppuccin-latte .button.is-light.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-latte .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;color:#f5f5f5}html.theme--catppuccin-latte .button.is-light.is-outlined:hover,html.theme--catppuccin-latte .button.is-light.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-light.is-outlined:focus,html.theme--catppuccin-latte .button.is-light.is-outlined.is-focused{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}html.theme--catppuccin-latte .button.is-light.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-light.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-light.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-light.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-latte .button.is-light.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;box-shadow:none;color:#f5f5f5}html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-dark,html.theme--catppuccin-latte .content kbd.button{background-color:#ccd0da;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-dark:hover,html.theme--catppuccin-latte .content kbd.button:hover,html.theme--catppuccin-latte .button.is-dark.is-hovered,html.theme--catppuccin-latte .content kbd.button.is-hovered{background-color:#c5c9d5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-dark:focus,html.theme--catppuccin-latte .content kbd.button:focus,html.theme--catppuccin-latte .button.is-dark.is-focused,html.theme--catppuccin-latte .content kbd.button.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-dark:focus:not(:active),html.theme--catppuccin-latte .content kbd.button:focus:not(:active),html.theme--catppuccin-latte .button.is-dark.is-focused:not(:active),html.theme--catppuccin-latte .content kbd.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(204,208,218,0.25)}html.theme--catppuccin-latte .button.is-dark:active,html.theme--catppuccin-latte .content kbd.button:active,html.theme--catppuccin-latte .button.is-dark.is-active,html.theme--catppuccin-latte .content kbd.button.is-active{background-color:#bdc2cf;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-dark[disabled],html.theme--catppuccin-latte .content kbd.button[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-dark,fieldset[disabled] html.theme--catppuccin-latte .content kbd.button{background-color:#ccd0da;border-color:#ccd0da;box-shadow:none}html.theme--catppuccin-latte .button.is-dark.is-inverted,html.theme--catppuccin-latte .content kbd.button.is-inverted{background-color:rgba(0,0,0,0.7);color:#ccd0da}html.theme--catppuccin-latte .button.is-dark.is-inverted:hover,html.theme--catppuccin-latte .content kbd.button.is-inverted:hover,html.theme--catppuccin-latte .button.is-dark.is-inverted.is-hovered,html.theme--catppuccin-latte .content kbd.button.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-dark.is-inverted[disabled],html.theme--catppuccin-latte .content kbd.button.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-dark.is-inverted,fieldset[disabled] html.theme--catppuccin-latte .content kbd.button.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#ccd0da}html.theme--catppuccin-latte .button.is-dark.is-loading::after,html.theme--catppuccin-latte .content kbd.button.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-latte .button.is-dark.is-outlined,html.theme--catppuccin-latte .content kbd.button.is-outlined{background-color:transparent;border-color:#ccd0da;color:#ccd0da}html.theme--catppuccin-latte .button.is-dark.is-outlined:hover,html.theme--catppuccin-latte .content kbd.button.is-outlined:hover,html.theme--catppuccin-latte .button.is-dark.is-outlined.is-hovered,html.theme--catppuccin-latte .content kbd.button.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-dark.is-outlined:focus,html.theme--catppuccin-latte .content kbd.button.is-outlined:focus,html.theme--catppuccin-latte .button.is-dark.is-outlined.is-focused,html.theme--catppuccin-latte .content kbd.button.is-outlined.is-focused{background-color:#ccd0da;border-color:#ccd0da;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-dark.is-outlined.is-loading::after,html.theme--catppuccin-latte .content kbd.button.is-outlined.is-loading::after{border-color:transparent transparent #ccd0da #ccd0da !important}html.theme--catppuccin-latte .button.is-dark.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .content kbd.button.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-dark.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .content kbd.button.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-dark.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .content kbd.button.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-dark.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-latte .content kbd.button.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-latte .button.is-dark.is-outlined[disabled],html.theme--catppuccin-latte .content kbd.button.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-dark.is-outlined,fieldset[disabled] html.theme--catppuccin-latte .content kbd.button.is-outlined{background-color:transparent;border-color:#ccd0da;box-shadow:none;color:#ccd0da}html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined,html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined.is-focused,html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#ccd0da}html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ccd0da #ccd0da !important}html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined[disabled],html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-dark.is-inverted.is-outlined,fieldset[disabled] html.theme--catppuccin-latte .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .button.is-primary,html.theme--catppuccin-latte .docstring>section>a.button.docs-sourcelink{background-color:#1e66f5;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-primary:hover,html.theme--catppuccin-latte .docstring>section>a.button.docs-sourcelink:hover,html.theme--catppuccin-latte .button.is-primary.is-hovered,html.theme--catppuccin-latte .docstring>section>a.button.is-hovered.docs-sourcelink{background-color:#125ef4;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-primary:focus,html.theme--catppuccin-latte .docstring>section>a.button.docs-sourcelink:focus,html.theme--catppuccin-latte .button.is-primary.is-focused,html.theme--catppuccin-latte .docstring>section>a.button.is-focused.docs-sourcelink{border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-primary:focus:not(:active),html.theme--catppuccin-latte .docstring>section>a.button.docs-sourcelink:focus:not(:active),html.theme--catppuccin-latte .button.is-primary.is-focused:not(:active),html.theme--catppuccin-latte .docstring>section>a.button.is-focused.docs-sourcelink:not(:active){box-shadow:0 0 0 0.125em rgba(30,102,245,0.25)}html.theme--catppuccin-latte .button.is-primary:active,html.theme--catppuccin-latte .docstring>section>a.button.docs-sourcelink:active,html.theme--catppuccin-latte .button.is-primary.is-active,html.theme--catppuccin-latte .docstring>section>a.button.is-active.docs-sourcelink{background-color:#0b57ef;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-primary[disabled],html.theme--catppuccin-latte .docstring>section>a.button.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-primary,fieldset[disabled] html.theme--catppuccin-latte .docstring>section>a.button.docs-sourcelink{background-color:#1e66f5;border-color:#1e66f5;box-shadow:none}html.theme--catppuccin-latte .button.is-primary.is-inverted,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;color:#1e66f5}html.theme--catppuccin-latte .button.is-primary.is-inverted:hover,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.docs-sourcelink:hover,html.theme--catppuccin-latte .button.is-primary.is-inverted.is-hovered,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-hovered.docs-sourcelink{background-color:#f2f2f2}html.theme--catppuccin-latte .button.is-primary.is-inverted[disabled],html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-primary.is-inverted,fieldset[disabled] html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;border-color:transparent;box-shadow:none;color:#1e66f5}html.theme--catppuccin-latte .button.is-primary.is-loading::after,html.theme--catppuccin-latte .docstring>section>a.button.is-loading.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-primary.is-outlined,html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#1e66f5;color:#1e66f5}html.theme--catppuccin-latte .button.is-primary.is-outlined:hover,html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.docs-sourcelink:hover,html.theme--catppuccin-latte .button.is-primary.is-outlined.is-hovered,html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.is-hovered.docs-sourcelink,html.theme--catppuccin-latte .button.is-primary.is-outlined:focus,html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.docs-sourcelink:focus,html.theme--catppuccin-latte .button.is-primary.is-outlined.is-focused,html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.is-focused.docs-sourcelink{background-color:#1e66f5;border-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .button.is-primary.is-outlined.is-loading::after,html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink::after{border-color:transparent transparent #1e66f5 #1e66f5 !important}html.theme--catppuccin-latte .button.is-primary.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--catppuccin-latte .button.is-primary.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--catppuccin-latte .button.is-primary.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--catppuccin-latte .button.is-primary.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-primary.is-outlined[disabled],html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-primary.is-outlined,fieldset[disabled] html.theme--catppuccin-latte .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#1e66f5;box-shadow:none;color:#1e66f5}html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:hover,html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink,html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:focus,html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined.is-focused,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.is-focused.docs-sourcelink{background-color:#fff;color:#1e66f5}html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #1e66f5 #1e66f5 !important}html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined[disabled],html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-primary.is-inverted.is-outlined,fieldset[disabled] html.theme--catppuccin-latte .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-latte .button.is-primary.is-light,html.theme--catppuccin-latte .docstring>section>a.button.is-light.docs-sourcelink{background-color:#ebf2fe;color:#0a52e1}html.theme--catppuccin-latte .button.is-primary.is-light:hover,html.theme--catppuccin-latte .docstring>section>a.button.is-light.docs-sourcelink:hover,html.theme--catppuccin-latte .button.is-primary.is-light.is-hovered,html.theme--catppuccin-latte .docstring>section>a.button.is-light.is-hovered.docs-sourcelink{background-color:#dfe9fe;border-color:transparent;color:#0a52e1}html.theme--catppuccin-latte .button.is-primary.is-light:active,html.theme--catppuccin-latte .docstring>section>a.button.is-light.docs-sourcelink:active,html.theme--catppuccin-latte .button.is-primary.is-light.is-active,html.theme--catppuccin-latte .docstring>section>a.button.is-light.is-active.docs-sourcelink{background-color:#d3e1fd;border-color:transparent;color:#0a52e1}html.theme--catppuccin-latte .button.is-link{background-color:#1e66f5;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-link:hover,html.theme--catppuccin-latte .button.is-link.is-hovered{background-color:#125ef4;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-link:focus,html.theme--catppuccin-latte .button.is-link.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-link:focus:not(:active),html.theme--catppuccin-latte .button.is-link.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(30,102,245,0.25)}html.theme--catppuccin-latte .button.is-link:active,html.theme--catppuccin-latte .button.is-link.is-active{background-color:#0b57ef;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-link[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-link{background-color:#1e66f5;border-color:#1e66f5;box-shadow:none}html.theme--catppuccin-latte .button.is-link.is-inverted{background-color:#fff;color:#1e66f5}html.theme--catppuccin-latte .button.is-link.is-inverted:hover,html.theme--catppuccin-latte .button.is-link.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-latte .button.is-link.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#1e66f5}html.theme--catppuccin-latte .button.is-link.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-link.is-outlined{background-color:transparent;border-color:#1e66f5;color:#1e66f5}html.theme--catppuccin-latte .button.is-link.is-outlined:hover,html.theme--catppuccin-latte .button.is-link.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-link.is-outlined:focus,html.theme--catppuccin-latte .button.is-link.is-outlined.is-focused{background-color:#1e66f5;border-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #1e66f5 #1e66f5 !important}html.theme--catppuccin-latte .button.is-link.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-link.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-link.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-link.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-link.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-link.is-outlined{background-color:transparent;border-color:#1e66f5;box-shadow:none;color:#1e66f5}html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined.is-focused{background-color:#fff;color:#1e66f5}html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #1e66f5 #1e66f5 !important}html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-latte .button.is-link.is-light{background-color:#ebf2fe;color:#0a52e1}html.theme--catppuccin-latte .button.is-link.is-light:hover,html.theme--catppuccin-latte .button.is-link.is-light.is-hovered{background-color:#dfe9fe;border-color:transparent;color:#0a52e1}html.theme--catppuccin-latte .button.is-link.is-light:active,html.theme--catppuccin-latte .button.is-link.is-light.is-active{background-color:#d3e1fd;border-color:transparent;color:#0a52e1}html.theme--catppuccin-latte .button.is-info{background-color:#179299;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-info:hover,html.theme--catppuccin-latte .button.is-info.is-hovered{background-color:#15878e;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-info:focus,html.theme--catppuccin-latte .button.is-info.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-info:focus:not(:active),html.theme--catppuccin-latte .button.is-info.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(23,146,153,0.25)}html.theme--catppuccin-latte .button.is-info:active,html.theme--catppuccin-latte .button.is-info.is-active{background-color:#147d83;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-info[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-info{background-color:#179299;border-color:#179299;box-shadow:none}html.theme--catppuccin-latte .button.is-info.is-inverted{background-color:#fff;color:#179299}html.theme--catppuccin-latte .button.is-info.is-inverted:hover,html.theme--catppuccin-latte .button.is-info.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-latte .button.is-info.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-info.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#179299}html.theme--catppuccin-latte .button.is-info.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-info.is-outlined{background-color:transparent;border-color:#179299;color:#179299}html.theme--catppuccin-latte .button.is-info.is-outlined:hover,html.theme--catppuccin-latte .button.is-info.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-info.is-outlined:focus,html.theme--catppuccin-latte .button.is-info.is-outlined.is-focused{background-color:#179299;border-color:#179299;color:#fff}html.theme--catppuccin-latte .button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #179299 #179299 !important}html.theme--catppuccin-latte .button.is-info.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-info.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-info.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-info.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-info.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-info.is-outlined{background-color:transparent;border-color:#179299;box-shadow:none;color:#179299}html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined.is-focused{background-color:#fff;color:#179299}html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #179299 #179299 !important}html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-latte .button.is-info.is-light{background-color:#edfcfc;color:#1cb2ba}html.theme--catppuccin-latte .button.is-info.is-light:hover,html.theme--catppuccin-latte .button.is-info.is-light.is-hovered{background-color:#e2f9fb;border-color:transparent;color:#1cb2ba}html.theme--catppuccin-latte .button.is-info.is-light:active,html.theme--catppuccin-latte .button.is-info.is-light.is-active{background-color:#d7f7f9;border-color:transparent;color:#1cb2ba}html.theme--catppuccin-latte .button.is-success{background-color:#40a02b;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-success:hover,html.theme--catppuccin-latte .button.is-success.is-hovered{background-color:#3c9628;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-success:focus,html.theme--catppuccin-latte .button.is-success.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-success:focus:not(:active),html.theme--catppuccin-latte .button.is-success.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(64,160,43,0.25)}html.theme--catppuccin-latte .button.is-success:active,html.theme--catppuccin-latte .button.is-success.is-active{background-color:#388c26;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-success[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-success{background-color:#40a02b;border-color:#40a02b;box-shadow:none}html.theme--catppuccin-latte .button.is-success.is-inverted{background-color:#fff;color:#40a02b}html.theme--catppuccin-latte .button.is-success.is-inverted:hover,html.theme--catppuccin-latte .button.is-success.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-latte .button.is-success.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-success.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#40a02b}html.theme--catppuccin-latte .button.is-success.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-success.is-outlined{background-color:transparent;border-color:#40a02b;color:#40a02b}html.theme--catppuccin-latte .button.is-success.is-outlined:hover,html.theme--catppuccin-latte .button.is-success.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-success.is-outlined:focus,html.theme--catppuccin-latte .button.is-success.is-outlined.is-focused{background-color:#40a02b;border-color:#40a02b;color:#fff}html.theme--catppuccin-latte .button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #40a02b #40a02b !important}html.theme--catppuccin-latte .button.is-success.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-success.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-success.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-success.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-success.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-success.is-outlined{background-color:transparent;border-color:#40a02b;box-shadow:none;color:#40a02b}html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined.is-focused{background-color:#fff;color:#40a02b}html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #40a02b #40a02b !important}html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-latte .button.is-success.is-light{background-color:#f1fbef;color:#40a12b}html.theme--catppuccin-latte .button.is-success.is-light:hover,html.theme--catppuccin-latte .button.is-success.is-light.is-hovered{background-color:#e8f8e5;border-color:transparent;color:#40a12b}html.theme--catppuccin-latte .button.is-success.is-light:active,html.theme--catppuccin-latte .button.is-success.is-light.is-active{background-color:#e0f5db;border-color:transparent;color:#40a12b}html.theme--catppuccin-latte .button.is-warning{background-color:#df8e1d;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-warning:hover,html.theme--catppuccin-latte .button.is-warning.is-hovered{background-color:#d4871c;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-warning:focus,html.theme--catppuccin-latte .button.is-warning.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-warning:focus:not(:active),html.theme--catppuccin-latte .button.is-warning.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(223,142,29,0.25)}html.theme--catppuccin-latte .button.is-warning:active,html.theme--catppuccin-latte .button.is-warning.is-active{background-color:#c8801a;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-warning[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-warning{background-color:#df8e1d;border-color:#df8e1d;box-shadow:none}html.theme--catppuccin-latte .button.is-warning.is-inverted{background-color:#fff;color:#df8e1d}html.theme--catppuccin-latte .button.is-warning.is-inverted:hover,html.theme--catppuccin-latte .button.is-warning.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-latte .button.is-warning.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-warning.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#df8e1d}html.theme--catppuccin-latte .button.is-warning.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-warning.is-outlined{background-color:transparent;border-color:#df8e1d;color:#df8e1d}html.theme--catppuccin-latte .button.is-warning.is-outlined:hover,html.theme--catppuccin-latte .button.is-warning.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-warning.is-outlined:focus,html.theme--catppuccin-latte .button.is-warning.is-outlined.is-focused{background-color:#df8e1d;border-color:#df8e1d;color:#fff}html.theme--catppuccin-latte .button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #df8e1d #df8e1d !important}html.theme--catppuccin-latte .button.is-warning.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-warning.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-warning.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-warning.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-warning.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-warning.is-outlined{background-color:transparent;border-color:#df8e1d;box-shadow:none;color:#df8e1d}html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined.is-focused{background-color:#fff;color:#df8e1d}html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #df8e1d #df8e1d !important}html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-latte .button.is-warning.is-light{background-color:#fdf6ed;color:#9e6515}html.theme--catppuccin-latte .button.is-warning.is-light:hover,html.theme--catppuccin-latte .button.is-warning.is-light.is-hovered{background-color:#fbf1e2;border-color:transparent;color:#9e6515}html.theme--catppuccin-latte .button.is-warning.is-light:active,html.theme--catppuccin-latte .button.is-warning.is-light.is-active{background-color:#faebd6;border-color:transparent;color:#9e6515}html.theme--catppuccin-latte .button.is-danger{background-color:#d20f39;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-danger:hover,html.theme--catppuccin-latte .button.is-danger.is-hovered{background-color:#c60e36;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-danger:focus,html.theme--catppuccin-latte .button.is-danger.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-danger:focus:not(:active),html.theme--catppuccin-latte .button.is-danger.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(210,15,57,0.25)}html.theme--catppuccin-latte .button.is-danger:active,html.theme--catppuccin-latte .button.is-danger.is-active{background-color:#ba0d33;border-color:transparent;color:#fff}html.theme--catppuccin-latte .button.is-danger[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-danger{background-color:#d20f39;border-color:#d20f39;box-shadow:none}html.theme--catppuccin-latte .button.is-danger.is-inverted{background-color:#fff;color:#d20f39}html.theme--catppuccin-latte .button.is-danger.is-inverted:hover,html.theme--catppuccin-latte .button.is-danger.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-latte .button.is-danger.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-danger.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#d20f39}html.theme--catppuccin-latte .button.is-danger.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-danger.is-outlined{background-color:transparent;border-color:#d20f39;color:#d20f39}html.theme--catppuccin-latte .button.is-danger.is-outlined:hover,html.theme--catppuccin-latte .button.is-danger.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-danger.is-outlined:focus,html.theme--catppuccin-latte .button.is-danger.is-outlined.is-focused{background-color:#d20f39;border-color:#d20f39;color:#fff}html.theme--catppuccin-latte .button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #d20f39 #d20f39 !important}html.theme--catppuccin-latte .button.is-danger.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-danger.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-danger.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-danger.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-latte .button.is-danger.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-danger.is-outlined{background-color:transparent;border-color:#d20f39;box-shadow:none;color:#d20f39}html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined:hover,html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined:focus,html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined.is-focused{background-color:#fff;color:#d20f39}html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #d20f39 #d20f39 !important}html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-latte .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-latte .button.is-danger.is-light{background-color:#feecf0;color:#e9113f}html.theme--catppuccin-latte .button.is-danger.is-light:hover,html.theme--catppuccin-latte .button.is-danger.is-light.is-hovered{background-color:#fde0e6;border-color:transparent;color:#e9113f}html.theme--catppuccin-latte .button.is-danger.is-light:active,html.theme--catppuccin-latte .button.is-danger.is-light.is-active{background-color:#fcd4dd;border-color:transparent;color:#e9113f}html.theme--catppuccin-latte .button.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.button{font-size:.75rem}html.theme--catppuccin-latte .button.is-small:not(.is-rounded),html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.button:not(.is-rounded){border-radius:3px}html.theme--catppuccin-latte .button.is-normal{font-size:1rem}html.theme--catppuccin-latte .button.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .button.is-large{font-size:1.5rem}html.theme--catppuccin-latte .button[disabled],fieldset[disabled] html.theme--catppuccin-latte .button{background-color:#9ca0b0;border-color:#acb0be;box-shadow:none;opacity:.5}html.theme--catppuccin-latte .button.is-fullwidth{display:flex;width:100%}html.theme--catppuccin-latte .button.is-loading{color:transparent !important;pointer-events:none}html.theme--catppuccin-latte .button.is-loading::after{position:absolute;left:calc(50% - (1em * 0.5));top:calc(50% - (1em * 0.5));position:absolute !important}html.theme--catppuccin-latte .button.is-static{background-color:#e6e9ef;border-color:#acb0be;color:#8c8fa1;box-shadow:none;pointer-events:none}html.theme--catppuccin-latte .button.is-rounded,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.button{border-radius:9999px;padding-left:calc(1em + 0.25em);padding-right:calc(1em + 0.25em)}html.theme--catppuccin-latte .buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-latte .buttons .button{margin-bottom:0.5rem}html.theme--catppuccin-latte .buttons .button:not(:last-child):not(.is-fullwidth){margin-right:.5rem}html.theme--catppuccin-latte .buttons:last-child{margin-bottom:-0.5rem}html.theme--catppuccin-latte .buttons:not(:last-child){margin-bottom:1rem}html.theme--catppuccin-latte .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){font-size:.75rem}html.theme--catppuccin-latte .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large):not(.is-rounded){border-radius:3px}html.theme--catppuccin-latte .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}html.theme--catppuccin-latte .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}html.theme--catppuccin-latte .buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-latte .buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}html.theme--catppuccin-latte .buttons.has-addons .button:last-child{margin-right:0}html.theme--catppuccin-latte .buttons.has-addons .button:hover,html.theme--catppuccin-latte .buttons.has-addons .button.is-hovered{z-index:2}html.theme--catppuccin-latte .buttons.has-addons .button:focus,html.theme--catppuccin-latte .buttons.has-addons .button.is-focused,html.theme--catppuccin-latte .buttons.has-addons .button:active,html.theme--catppuccin-latte .buttons.has-addons .button.is-active,html.theme--catppuccin-latte .buttons.has-addons .button.is-selected{z-index:3}html.theme--catppuccin-latte .buttons.has-addons .button:focus:hover,html.theme--catppuccin-latte .buttons.has-addons .button.is-focused:hover,html.theme--catppuccin-latte .buttons.has-addons .button:active:hover,html.theme--catppuccin-latte .buttons.has-addons .button.is-active:hover,html.theme--catppuccin-latte .buttons.has-addons .button.is-selected:hover{z-index:4}html.theme--catppuccin-latte .buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-latte .buttons.is-centered{justify-content:center}html.theme--catppuccin-latte .buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}html.theme--catppuccin-latte .buttons.is-right{justify-content:flex-end}html.theme--catppuccin-latte .buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .button.is-responsive.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.5625rem}html.theme--catppuccin-latte .button.is-responsive,html.theme--catppuccin-latte .button.is-responsive.is-normal{font-size:.65625rem}html.theme--catppuccin-latte .button.is-responsive.is-medium{font-size:.75rem}html.theme--catppuccin-latte .button.is-responsive.is-large{font-size:1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-latte .button.is-responsive.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.65625rem}html.theme--catppuccin-latte .button.is-responsive,html.theme--catppuccin-latte .button.is-responsive.is-normal{font-size:.75rem}html.theme--catppuccin-latte .button.is-responsive.is-medium{font-size:1rem}html.theme--catppuccin-latte .button.is-responsive.is-large{font-size:1.25rem}}html.theme--catppuccin-latte .container{flex-grow:1;margin:0 auto;position:relative;width:auto}html.theme--catppuccin-latte .container.is-fluid{max-width:none !important;padding-left:32px;padding-right:32px;width:100%}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .container{max-width:992px}}@media screen and (max-width: 1215px){html.theme--catppuccin-latte .container.is-widescreen:not(.is-max-desktop){max-width:1152px}}@media screen and (max-width: 1407px){html.theme--catppuccin-latte .container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .container:not(.is-max-desktop){max-width:1152px}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .container:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}html.theme--catppuccin-latte .content li+li{margin-top:0.25em}html.theme--catppuccin-latte .content p:not(:last-child),html.theme--catppuccin-latte .content dl:not(:last-child),html.theme--catppuccin-latte .content ol:not(:last-child),html.theme--catppuccin-latte .content ul:not(:last-child),html.theme--catppuccin-latte .content blockquote:not(:last-child),html.theme--catppuccin-latte .content pre:not(:last-child),html.theme--catppuccin-latte .content table:not(:last-child){margin-bottom:1em}html.theme--catppuccin-latte .content h1,html.theme--catppuccin-latte .content h2,html.theme--catppuccin-latte .content h3,html.theme--catppuccin-latte .content h4,html.theme--catppuccin-latte .content h5,html.theme--catppuccin-latte .content h6{color:#4c4f69;font-weight:600;line-height:1.125}html.theme--catppuccin-latte .content h1{font-size:2em;margin-bottom:0.5em}html.theme--catppuccin-latte .content h1:not(:first-child){margin-top:1em}html.theme--catppuccin-latte .content h2{font-size:1.75em;margin-bottom:0.5714em}html.theme--catppuccin-latte .content h2:not(:first-child){margin-top:1.1428em}html.theme--catppuccin-latte .content h3{font-size:1.5em;margin-bottom:0.6666em}html.theme--catppuccin-latte .content h3:not(:first-child){margin-top:1.3333em}html.theme--catppuccin-latte .content h4{font-size:1.25em;margin-bottom:0.8em}html.theme--catppuccin-latte .content h5{font-size:1.125em;margin-bottom:0.8888em}html.theme--catppuccin-latte .content h6{font-size:1em;margin-bottom:1em}html.theme--catppuccin-latte .content blockquote{background-color:#e6e9ef;border-left:5px solid #acb0be;padding:1.25em 1.5em}html.theme--catppuccin-latte .content ol{list-style-position:outside;margin-left:2em;margin-top:1em}html.theme--catppuccin-latte .content ol:not([type]){list-style-type:decimal}html.theme--catppuccin-latte .content ol.is-lower-alpha:not([type]){list-style-type:lower-alpha}html.theme--catppuccin-latte .content ol.is-lower-roman:not([type]){list-style-type:lower-roman}html.theme--catppuccin-latte .content ol.is-upper-alpha:not([type]){list-style-type:upper-alpha}html.theme--catppuccin-latte .content ol.is-upper-roman:not([type]){list-style-type:upper-roman}html.theme--catppuccin-latte .content ul{list-style:disc outside;margin-left:2em;margin-top:1em}html.theme--catppuccin-latte .content ul ul{list-style-type:circle;margin-top:0.5em}html.theme--catppuccin-latte .content ul ul ul{list-style-type:square}html.theme--catppuccin-latte .content dd{margin-left:2em}html.theme--catppuccin-latte .content figure{margin-left:2em;margin-right:2em;text-align:center}html.theme--catppuccin-latte .content figure:not(:first-child){margin-top:2em}html.theme--catppuccin-latte .content figure:not(:last-child){margin-bottom:2em}html.theme--catppuccin-latte .content figure img{display:inline-block}html.theme--catppuccin-latte .content figure figcaption{font-style:italic}html.theme--catppuccin-latte .content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:0;white-space:pre;word-wrap:normal}html.theme--catppuccin-latte .content sup,html.theme--catppuccin-latte .content sub{font-size:75%}html.theme--catppuccin-latte .content table{width:100%}html.theme--catppuccin-latte .content table td,html.theme--catppuccin-latte .content table th{border:1px solid #acb0be;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--catppuccin-latte .content table th{color:#41445a}html.theme--catppuccin-latte .content table th:not([align]){text-align:inherit}html.theme--catppuccin-latte .content table thead td,html.theme--catppuccin-latte .content table thead th{border-width:0 0 2px;color:#41445a}html.theme--catppuccin-latte .content table tfoot td,html.theme--catppuccin-latte .content table tfoot th{border-width:2px 0 0;color:#41445a}html.theme--catppuccin-latte .content table tbody tr:last-child td,html.theme--catppuccin-latte .content table tbody tr:last-child th{border-bottom-width:0}html.theme--catppuccin-latte .content .tabs li+li{margin-top:0}html.theme--catppuccin-latte .content.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.content{font-size:.75rem}html.theme--catppuccin-latte .content.is-normal{font-size:1rem}html.theme--catppuccin-latte .content.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .content.is-large{font-size:1.5rem}html.theme--catppuccin-latte .icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}html.theme--catppuccin-latte .icon.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.icon{height:1rem;width:1rem}html.theme--catppuccin-latte .icon.is-medium{height:2rem;width:2rem}html.theme--catppuccin-latte .icon.is-large{height:3rem;width:3rem}html.theme--catppuccin-latte .icon-text{align-items:flex-start;color:inherit;display:inline-flex;flex-wrap:wrap;line-height:1.5rem;vertical-align:top}html.theme--catppuccin-latte .icon-text .icon{flex-grow:0;flex-shrink:0}html.theme--catppuccin-latte .icon-text .icon:not(:last-child){margin-right:.25em}html.theme--catppuccin-latte .icon-text .icon:not(:first-child){margin-left:.25em}html.theme--catppuccin-latte div.icon-text{display:flex}html.theme--catppuccin-latte .image,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img{display:block;position:relative}html.theme--catppuccin-latte .image img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img img{display:block;height:auto;width:100%}html.theme--catppuccin-latte .image img.is-rounded,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img img.is-rounded{border-radius:9999px}html.theme--catppuccin-latte .image.is-fullwidth,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-fullwidth{width:100%}html.theme--catppuccin-latte .image.is-square img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--catppuccin-latte .image.is-square .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--catppuccin-latte .image.is-1by1 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--catppuccin-latte .image.is-1by1 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--catppuccin-latte .image.is-5by4 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--catppuccin-latte .image.is-5by4 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--catppuccin-latte .image.is-4by3 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--catppuccin-latte .image.is-4by3 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--catppuccin-latte .image.is-3by2 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--catppuccin-latte .image.is-3by2 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--catppuccin-latte .image.is-5by3 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--catppuccin-latte .image.is-5by3 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--catppuccin-latte .image.is-16by9 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--catppuccin-latte .image.is-16by9 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--catppuccin-latte .image.is-2by1 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--catppuccin-latte .image.is-2by1 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--catppuccin-latte .image.is-3by1 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--catppuccin-latte .image.is-3by1 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--catppuccin-latte .image.is-4by5 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--catppuccin-latte .image.is-4by5 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--catppuccin-latte .image.is-3by4 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--catppuccin-latte .image.is-3by4 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--catppuccin-latte .image.is-2by3 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--catppuccin-latte .image.is-2by3 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--catppuccin-latte .image.is-3by5 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--catppuccin-latte .image.is-3by5 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--catppuccin-latte .image.is-9by16 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--catppuccin-latte .image.is-9by16 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--catppuccin-latte .image.is-1by2 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--catppuccin-latte .image.is-1by2 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--catppuccin-latte .image.is-1by3 img,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--catppuccin-latte .image.is-1by3 .has-ratio,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio{height:100%;width:100%}html.theme--catppuccin-latte .image.is-square,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-square,html.theme--catppuccin-latte .image.is-1by1,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by1{padding-top:100%}html.theme--catppuccin-latte .image.is-5by4,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-5by4{padding-top:80%}html.theme--catppuccin-latte .image.is-4by3,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-4by3{padding-top:75%}html.theme--catppuccin-latte .image.is-3by2,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by2{padding-top:66.6666%}html.theme--catppuccin-latte .image.is-5by3,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-5by3{padding-top:60%}html.theme--catppuccin-latte .image.is-16by9,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-16by9{padding-top:56.25%}html.theme--catppuccin-latte .image.is-2by1,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-2by1{padding-top:50%}html.theme--catppuccin-latte .image.is-3by1,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by1{padding-top:33.3333%}html.theme--catppuccin-latte .image.is-4by5,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-4by5{padding-top:125%}html.theme--catppuccin-latte .image.is-3by4,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by4{padding-top:133.3333%}html.theme--catppuccin-latte .image.is-2by3,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-2by3{padding-top:150%}html.theme--catppuccin-latte .image.is-3by5,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-3by5{padding-top:166.6666%}html.theme--catppuccin-latte .image.is-9by16,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-9by16{padding-top:177.7777%}html.theme--catppuccin-latte .image.is-1by2,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by2{padding-top:200%}html.theme--catppuccin-latte .image.is-1by3,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-1by3{padding-top:300%}html.theme--catppuccin-latte .image.is-16x16,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-16x16{height:16px;width:16px}html.theme--catppuccin-latte .image.is-24x24,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-24x24{height:24px;width:24px}html.theme--catppuccin-latte .image.is-32x32,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-32x32{height:32px;width:32px}html.theme--catppuccin-latte .image.is-48x48,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-48x48{height:48px;width:48px}html.theme--catppuccin-latte .image.is-64x64,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-64x64{height:64px;width:64px}html.theme--catppuccin-latte .image.is-96x96,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-96x96{height:96px;width:96px}html.theme--catppuccin-latte .image.is-128x128,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img.is-128x128{height:128px;width:128px}html.theme--catppuccin-latte .notification{background-color:#e6e9ef;border-radius:.4em;position:relative;padding:1.25rem 2.5rem 1.25rem 1.5rem}html.theme--catppuccin-latte .notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--catppuccin-latte .notification strong{color:currentColor}html.theme--catppuccin-latte .notification code,html.theme--catppuccin-latte .notification pre{background:#fff}html.theme--catppuccin-latte .notification pre code{background:transparent}html.theme--catppuccin-latte .notification>.delete{right:.5rem;position:absolute;top:0.5rem}html.theme--catppuccin-latte .notification .title,html.theme--catppuccin-latte .notification .subtitle,html.theme--catppuccin-latte .notification .content{color:currentColor}html.theme--catppuccin-latte .notification.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .notification.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .notification.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .notification.is-dark,html.theme--catppuccin-latte .content kbd.notification{background-color:#ccd0da;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .notification.is-primary,html.theme--catppuccin-latte .docstring>section>a.notification.docs-sourcelink{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .notification.is-primary.is-light,html.theme--catppuccin-latte .docstring>section>a.notification.is-light.docs-sourcelink{background-color:#ebf2fe;color:#0a52e1}html.theme--catppuccin-latte .notification.is-link{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .notification.is-link.is-light{background-color:#ebf2fe;color:#0a52e1}html.theme--catppuccin-latte .notification.is-info{background-color:#179299;color:#fff}html.theme--catppuccin-latte .notification.is-info.is-light{background-color:#edfcfc;color:#1cb2ba}html.theme--catppuccin-latte .notification.is-success{background-color:#40a02b;color:#fff}html.theme--catppuccin-latte .notification.is-success.is-light{background-color:#f1fbef;color:#40a12b}html.theme--catppuccin-latte .notification.is-warning{background-color:#df8e1d;color:#fff}html.theme--catppuccin-latte .notification.is-warning.is-light{background-color:#fdf6ed;color:#9e6515}html.theme--catppuccin-latte .notification.is-danger{background-color:#d20f39;color:#fff}html.theme--catppuccin-latte .notification.is-danger.is-light{background-color:#feecf0;color:#e9113f}html.theme--catppuccin-latte .progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:9999px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}html.theme--catppuccin-latte .progress::-webkit-progress-bar{background-color:#bcc0cc}html.theme--catppuccin-latte .progress::-webkit-progress-value{background-color:#8c8fa1}html.theme--catppuccin-latte .progress::-moz-progress-bar{background-color:#8c8fa1}html.theme--catppuccin-latte .progress::-ms-fill{background-color:#8c8fa1;border:none}html.theme--catppuccin-latte .progress.is-white::-webkit-progress-value{background-color:#fff}html.theme--catppuccin-latte .progress.is-white::-moz-progress-bar{background-color:#fff}html.theme--catppuccin-latte .progress.is-white::-ms-fill{background-color:#fff}html.theme--catppuccin-latte .progress.is-white:indeterminate{background-image:linear-gradient(to right, #fff 30%, #bcc0cc 30%)}html.theme--catppuccin-latte .progress.is-black::-webkit-progress-value{background-color:#0a0a0a}html.theme--catppuccin-latte .progress.is-black::-moz-progress-bar{background-color:#0a0a0a}html.theme--catppuccin-latte .progress.is-black::-ms-fill{background-color:#0a0a0a}html.theme--catppuccin-latte .progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #bcc0cc 30%)}html.theme--catppuccin-latte .progress.is-light::-webkit-progress-value{background-color:#f5f5f5}html.theme--catppuccin-latte .progress.is-light::-moz-progress-bar{background-color:#f5f5f5}html.theme--catppuccin-latte .progress.is-light::-ms-fill{background-color:#f5f5f5}html.theme--catppuccin-latte .progress.is-light:indeterminate{background-image:linear-gradient(to right, #f5f5f5 30%, #bcc0cc 30%)}html.theme--catppuccin-latte .progress.is-dark::-webkit-progress-value,html.theme--catppuccin-latte .content kbd.progress::-webkit-progress-value{background-color:#ccd0da}html.theme--catppuccin-latte .progress.is-dark::-moz-progress-bar,html.theme--catppuccin-latte .content kbd.progress::-moz-progress-bar{background-color:#ccd0da}html.theme--catppuccin-latte .progress.is-dark::-ms-fill,html.theme--catppuccin-latte .content kbd.progress::-ms-fill{background-color:#ccd0da}html.theme--catppuccin-latte .progress.is-dark:indeterminate,html.theme--catppuccin-latte .content kbd.progress:indeterminate{background-image:linear-gradient(to right, #ccd0da 30%, #bcc0cc 30%)}html.theme--catppuccin-latte .progress.is-primary::-webkit-progress-value,html.theme--catppuccin-latte .docstring>section>a.progress.docs-sourcelink::-webkit-progress-value{background-color:#1e66f5}html.theme--catppuccin-latte .progress.is-primary::-moz-progress-bar,html.theme--catppuccin-latte .docstring>section>a.progress.docs-sourcelink::-moz-progress-bar{background-color:#1e66f5}html.theme--catppuccin-latte .progress.is-primary::-ms-fill,html.theme--catppuccin-latte .docstring>section>a.progress.docs-sourcelink::-ms-fill{background-color:#1e66f5}html.theme--catppuccin-latte .progress.is-primary:indeterminate,html.theme--catppuccin-latte .docstring>section>a.progress.docs-sourcelink:indeterminate{background-image:linear-gradient(to right, #1e66f5 30%, #bcc0cc 30%)}html.theme--catppuccin-latte .progress.is-link::-webkit-progress-value{background-color:#1e66f5}html.theme--catppuccin-latte .progress.is-link::-moz-progress-bar{background-color:#1e66f5}html.theme--catppuccin-latte .progress.is-link::-ms-fill{background-color:#1e66f5}html.theme--catppuccin-latte .progress.is-link:indeterminate{background-image:linear-gradient(to right, #1e66f5 30%, #bcc0cc 30%)}html.theme--catppuccin-latte .progress.is-info::-webkit-progress-value{background-color:#179299}html.theme--catppuccin-latte .progress.is-info::-moz-progress-bar{background-color:#179299}html.theme--catppuccin-latte .progress.is-info::-ms-fill{background-color:#179299}html.theme--catppuccin-latte .progress.is-info:indeterminate{background-image:linear-gradient(to right, #179299 30%, #bcc0cc 30%)}html.theme--catppuccin-latte .progress.is-success::-webkit-progress-value{background-color:#40a02b}html.theme--catppuccin-latte .progress.is-success::-moz-progress-bar{background-color:#40a02b}html.theme--catppuccin-latte .progress.is-success::-ms-fill{background-color:#40a02b}html.theme--catppuccin-latte .progress.is-success:indeterminate{background-image:linear-gradient(to right, #40a02b 30%, #bcc0cc 30%)}html.theme--catppuccin-latte .progress.is-warning::-webkit-progress-value{background-color:#df8e1d}html.theme--catppuccin-latte .progress.is-warning::-moz-progress-bar{background-color:#df8e1d}html.theme--catppuccin-latte .progress.is-warning::-ms-fill{background-color:#df8e1d}html.theme--catppuccin-latte .progress.is-warning:indeterminate{background-image:linear-gradient(to right, #df8e1d 30%, #bcc0cc 30%)}html.theme--catppuccin-latte .progress.is-danger::-webkit-progress-value{background-color:#d20f39}html.theme--catppuccin-latte .progress.is-danger::-moz-progress-bar{background-color:#d20f39}html.theme--catppuccin-latte .progress.is-danger::-ms-fill{background-color:#d20f39}html.theme--catppuccin-latte .progress.is-danger:indeterminate{background-image:linear-gradient(to right, #d20f39 30%, #bcc0cc 30%)}html.theme--catppuccin-latte .progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#bcc0cc;background-image:linear-gradient(to right, #4c4f69 30%, #bcc0cc 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}html.theme--catppuccin-latte .progress:indeterminate::-webkit-progress-bar{background-color:transparent}html.theme--catppuccin-latte .progress:indeterminate::-moz-progress-bar{background-color:transparent}html.theme--catppuccin-latte .progress:indeterminate::-ms-fill{animation-name:none}html.theme--catppuccin-latte .progress.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.progress{height:.75rem}html.theme--catppuccin-latte .progress.is-medium{height:1.25rem}html.theme--catppuccin-latte .progress.is-large{height:1.5rem}@keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}html.theme--catppuccin-latte .table{background-color:#bcc0cc;color:#4c4f69}html.theme--catppuccin-latte .table td,html.theme--catppuccin-latte .table th{border:1px solid #acb0be;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--catppuccin-latte .table td.is-white,html.theme--catppuccin-latte .table th.is-white{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .table td.is-black,html.theme--catppuccin-latte .table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .table td.is-light,html.theme--catppuccin-latte .table th.is-light{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .table td.is-dark,html.theme--catppuccin-latte .table th.is-dark{background-color:#ccd0da;border-color:#ccd0da;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .table td.is-primary,html.theme--catppuccin-latte .table th.is-primary{background-color:#1e66f5;border-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .table td.is-link,html.theme--catppuccin-latte .table th.is-link{background-color:#1e66f5;border-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .table td.is-info,html.theme--catppuccin-latte .table th.is-info{background-color:#179299;border-color:#179299;color:#fff}html.theme--catppuccin-latte .table td.is-success,html.theme--catppuccin-latte .table th.is-success{background-color:#40a02b;border-color:#40a02b;color:#fff}html.theme--catppuccin-latte .table td.is-warning,html.theme--catppuccin-latte .table th.is-warning{background-color:#df8e1d;border-color:#df8e1d;color:#fff}html.theme--catppuccin-latte .table td.is-danger,html.theme--catppuccin-latte .table th.is-danger{background-color:#d20f39;border-color:#d20f39;color:#fff}html.theme--catppuccin-latte .table td.is-narrow,html.theme--catppuccin-latte .table th.is-narrow{white-space:nowrap;width:1%}html.theme--catppuccin-latte .table td.is-selected,html.theme--catppuccin-latte .table th.is-selected{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .table td.is-selected a,html.theme--catppuccin-latte .table td.is-selected strong,html.theme--catppuccin-latte .table th.is-selected a,html.theme--catppuccin-latte .table th.is-selected strong{color:currentColor}html.theme--catppuccin-latte .table td.is-vcentered,html.theme--catppuccin-latte .table th.is-vcentered{vertical-align:middle}html.theme--catppuccin-latte .table th{color:#41445a}html.theme--catppuccin-latte .table th:not([align]){text-align:left}html.theme--catppuccin-latte .table tr.is-selected{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .table tr.is-selected a,html.theme--catppuccin-latte .table tr.is-selected strong{color:currentColor}html.theme--catppuccin-latte .table tr.is-selected td,html.theme--catppuccin-latte .table tr.is-selected th{border-color:#fff;color:currentColor}html.theme--catppuccin-latte .table thead{background-color:rgba(0,0,0,0)}html.theme--catppuccin-latte .table thead td,html.theme--catppuccin-latte .table thead th{border-width:0 0 2px;color:#41445a}html.theme--catppuccin-latte .table tfoot{background-color:rgba(0,0,0,0)}html.theme--catppuccin-latte .table tfoot td,html.theme--catppuccin-latte .table tfoot th{border-width:2px 0 0;color:#41445a}html.theme--catppuccin-latte .table tbody{background-color:rgba(0,0,0,0)}html.theme--catppuccin-latte .table tbody tr:last-child td,html.theme--catppuccin-latte .table tbody tr:last-child th{border-bottom-width:0}html.theme--catppuccin-latte .table.is-bordered td,html.theme--catppuccin-latte .table.is-bordered th{border-width:1px}html.theme--catppuccin-latte .table.is-bordered tr:last-child td,html.theme--catppuccin-latte .table.is-bordered tr:last-child th{border-bottom-width:1px}html.theme--catppuccin-latte .table.is-fullwidth{width:100%}html.theme--catppuccin-latte .table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#ccd0da}html.theme--catppuccin-latte .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#ccd0da}html.theme--catppuccin-latte .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:#d2d5de}html.theme--catppuccin-latte .table.is-narrow td,html.theme--catppuccin-latte .table.is-narrow th{padding:0.25em 0.5em}html.theme--catppuccin-latte .table.is-striped tbody tr:not(.is-selected):nth-child(even){background-color:#ccd0da}html.theme--catppuccin-latte .table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}html.theme--catppuccin-latte .tags{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-latte .tags .tag,html.theme--catppuccin-latte .tags .content kbd,html.theme--catppuccin-latte .content .tags kbd,html.theme--catppuccin-latte .tags .docstring>section>a.docs-sourcelink{margin-bottom:0.5rem}html.theme--catppuccin-latte .tags .tag:not(:last-child),html.theme--catppuccin-latte .tags .content kbd:not(:last-child),html.theme--catppuccin-latte .content .tags kbd:not(:last-child),html.theme--catppuccin-latte .tags .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:.5rem}html.theme--catppuccin-latte .tags:last-child{margin-bottom:-0.5rem}html.theme--catppuccin-latte .tags:not(:last-child){margin-bottom:1rem}html.theme--catppuccin-latte .tags.are-medium .tag:not(.is-normal):not(.is-large),html.theme--catppuccin-latte .tags.are-medium .content kbd:not(.is-normal):not(.is-large),html.theme--catppuccin-latte .content .tags.are-medium kbd:not(.is-normal):not(.is-large),html.theme--catppuccin-latte .tags.are-medium .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-large){font-size:1rem}html.theme--catppuccin-latte .tags.are-large .tag:not(.is-normal):not(.is-medium),html.theme--catppuccin-latte .tags.are-large .content kbd:not(.is-normal):not(.is-medium),html.theme--catppuccin-latte .content .tags.are-large kbd:not(.is-normal):not(.is-medium),html.theme--catppuccin-latte .tags.are-large .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-medium){font-size:1.25rem}html.theme--catppuccin-latte .tags.is-centered{justify-content:center}html.theme--catppuccin-latte .tags.is-centered .tag,html.theme--catppuccin-latte .tags.is-centered .content kbd,html.theme--catppuccin-latte .content .tags.is-centered kbd,html.theme--catppuccin-latte .tags.is-centered .docstring>section>a.docs-sourcelink{margin-right:0.25rem;margin-left:0.25rem}html.theme--catppuccin-latte .tags.is-right{justify-content:flex-end}html.theme--catppuccin-latte .tags.is-right .tag:not(:first-child),html.theme--catppuccin-latte .tags.is-right .content kbd:not(:first-child),html.theme--catppuccin-latte .content .tags.is-right kbd:not(:first-child),html.theme--catppuccin-latte .tags.is-right .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0.5rem}html.theme--catppuccin-latte .tags.is-right .tag:not(:last-child),html.theme--catppuccin-latte .tags.is-right .content kbd:not(:last-child),html.theme--catppuccin-latte .content .tags.is-right kbd:not(:last-child),html.theme--catppuccin-latte .tags.is-right .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0}html.theme--catppuccin-latte .tags.has-addons .tag,html.theme--catppuccin-latte .tags.has-addons .content kbd,html.theme--catppuccin-latte .content .tags.has-addons kbd,html.theme--catppuccin-latte .tags.has-addons .docstring>section>a.docs-sourcelink{margin-right:0}html.theme--catppuccin-latte .tags.has-addons .tag:not(:first-child),html.theme--catppuccin-latte .tags.has-addons .content kbd:not(:first-child),html.theme--catppuccin-latte .content .tags.has-addons kbd:not(:first-child),html.theme--catppuccin-latte .tags.has-addons .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}html.theme--catppuccin-latte .tags.has-addons .tag:not(:last-child),html.theme--catppuccin-latte .tags.has-addons .content kbd:not(:last-child),html.theme--catppuccin-latte .content .tags.has-addons kbd:not(:last-child),html.theme--catppuccin-latte .tags.has-addons .docstring>section>a.docs-sourcelink:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}html.theme--catppuccin-latte .tag:not(body),html.theme--catppuccin-latte .content kbd:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#e6e9ef;border-radius:.4em;color:#4c4f69;display:inline-flex;font-size:.75rem;height:2em;justify-content:center;line-height:1.5;padding-left:0.75em;padding-right:0.75em;white-space:nowrap}html.theme--catppuccin-latte .tag:not(body) .delete,html.theme--catppuccin-latte .content kbd:not(body) .delete,html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink:not(body) .delete{margin-left:.25rem;margin-right:-.375rem}html.theme--catppuccin-latte .tag.is-white:not(body),html.theme--catppuccin-latte .content kbd.is-white:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .tag.is-black:not(body),html.theme--catppuccin-latte .content kbd.is-black:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-black:not(body){background-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .tag.is-light:not(body),html.theme--catppuccin-latte .content kbd.is-light:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .tag.is-dark:not(body),html.theme--catppuccin-latte .content kbd:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-dark:not(body),html.theme--catppuccin-latte .content .docstring>section>kbd:not(body){background-color:#ccd0da;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .tag.is-primary:not(body),html.theme--catppuccin-latte .content kbd.is-primary:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink:not(body){background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .tag.is-primary.is-light:not(body),html.theme--catppuccin-latte .content kbd.is-primary.is-light:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#ebf2fe;color:#0a52e1}html.theme--catppuccin-latte .tag.is-link:not(body),html.theme--catppuccin-latte .content kbd.is-link:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-link:not(body){background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .tag.is-link.is-light:not(body),html.theme--catppuccin-latte .content kbd.is-link.is-light:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-link.is-light:not(body){background-color:#ebf2fe;color:#0a52e1}html.theme--catppuccin-latte .tag.is-info:not(body),html.theme--catppuccin-latte .content kbd.is-info:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-info:not(body){background-color:#179299;color:#fff}html.theme--catppuccin-latte .tag.is-info.is-light:not(body),html.theme--catppuccin-latte .content kbd.is-info.is-light:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-info.is-light:not(body){background-color:#edfcfc;color:#1cb2ba}html.theme--catppuccin-latte .tag.is-success:not(body),html.theme--catppuccin-latte .content kbd.is-success:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-success:not(body){background-color:#40a02b;color:#fff}html.theme--catppuccin-latte .tag.is-success.is-light:not(body),html.theme--catppuccin-latte .content kbd.is-success.is-light:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-success.is-light:not(body){background-color:#f1fbef;color:#40a12b}html.theme--catppuccin-latte .tag.is-warning:not(body),html.theme--catppuccin-latte .content kbd.is-warning:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-warning:not(body){background-color:#df8e1d;color:#fff}html.theme--catppuccin-latte .tag.is-warning.is-light:not(body),html.theme--catppuccin-latte .content kbd.is-warning.is-light:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-warning.is-light:not(body){background-color:#fdf6ed;color:#9e6515}html.theme--catppuccin-latte .tag.is-danger:not(body),html.theme--catppuccin-latte .content kbd.is-danger:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-danger:not(body){background-color:#d20f39;color:#fff}html.theme--catppuccin-latte .tag.is-danger.is-light:not(body),html.theme--catppuccin-latte .content kbd.is-danger.is-light:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-danger.is-light:not(body){background-color:#feecf0;color:#e9113f}html.theme--catppuccin-latte .tag.is-normal:not(body),html.theme--catppuccin-latte .content kbd.is-normal:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.75rem}html.theme--catppuccin-latte .tag.is-medium:not(body),html.theme--catppuccin-latte .content kbd.is-medium:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-medium:not(body){font-size:1rem}html.theme--catppuccin-latte .tag.is-large:not(body),html.theme--catppuccin-latte .content kbd.is-large:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-large:not(body){font-size:1.25rem}html.theme--catppuccin-latte .tag:not(body) .icon:first-child:not(:last-child),html.theme--catppuccin-latte .content kbd:not(body) .icon:first-child:not(:last-child),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:not(:last-child){margin-left:-.375em;margin-right:.1875em}html.theme--catppuccin-latte .tag:not(body) .icon:last-child:not(:first-child),html.theme--catppuccin-latte .content kbd:not(body) .icon:last-child:not(:first-child),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink:not(body) .icon:last-child:not(:first-child){margin-left:.1875em;margin-right:-.375em}html.theme--catppuccin-latte .tag:not(body) .icon:first-child:last-child,html.theme--catppuccin-latte .content kbd:not(body) .icon:first-child:last-child,html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:last-child{margin-left:-.375em;margin-right:-.375em}html.theme--catppuccin-latte .tag.is-delete:not(body),html.theme--catppuccin-latte .content kbd.is-delete:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-delete:not(body){margin-left:1px;padding:0;position:relative;width:2em}html.theme--catppuccin-latte .tag.is-delete:not(body)::before,html.theme--catppuccin-latte .content kbd.is-delete:not(body)::before,html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-delete:not(body)::before,html.theme--catppuccin-latte .tag.is-delete:not(body)::after,html.theme--catppuccin-latte .content kbd.is-delete:not(body)::after,html.theme--catppuccin-latte .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--catppuccin-latte .tag.is-delete:not(body)::before,html.theme--catppuccin-latte .content kbd.is-delete:not(body)::before,html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-delete:not(body)::before{height:1px;width:50%}html.theme--catppuccin-latte .tag.is-delete:not(body)::after,html.theme--catppuccin-latte .content kbd.is-delete:not(body)::after,html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-delete:not(body)::after{height:50%;width:1px}html.theme--catppuccin-latte .tag.is-delete:not(body):hover,html.theme--catppuccin-latte .content kbd.is-delete:not(body):hover,html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-delete:not(body):hover,html.theme--catppuccin-latte .tag.is-delete:not(body):focus,html.theme--catppuccin-latte .content kbd.is-delete:not(body):focus,html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-delete:not(body):focus{background-color:#d6dbe5}html.theme--catppuccin-latte .tag.is-delete:not(body):active,html.theme--catppuccin-latte .content kbd.is-delete:not(body):active,html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-delete:not(body):active{background-color:#c7cedb}html.theme--catppuccin-latte .tag.is-rounded:not(body),html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input:not(body),html.theme--catppuccin-latte .content kbd.is-rounded:not(body),html.theme--catppuccin-latte #documenter .docs-sidebar .content form.docs-search>input:not(body),html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink.is-rounded:not(body){border-radius:9999px}html.theme--catppuccin-latte a.tag:hover,html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink:hover{text-decoration:underline}html.theme--catppuccin-latte .title,html.theme--catppuccin-latte .subtitle{word-break:break-word}html.theme--catppuccin-latte .title em,html.theme--catppuccin-latte .title span,html.theme--catppuccin-latte .subtitle em,html.theme--catppuccin-latte .subtitle span{font-weight:inherit}html.theme--catppuccin-latte .title sub,html.theme--catppuccin-latte .subtitle sub{font-size:.75em}html.theme--catppuccin-latte .title sup,html.theme--catppuccin-latte .subtitle sup{font-size:.75em}html.theme--catppuccin-latte .title .tag,html.theme--catppuccin-latte .title .content kbd,html.theme--catppuccin-latte .content .title kbd,html.theme--catppuccin-latte .title .docstring>section>a.docs-sourcelink,html.theme--catppuccin-latte .subtitle .tag,html.theme--catppuccin-latte .subtitle .content kbd,html.theme--catppuccin-latte .content .subtitle kbd,html.theme--catppuccin-latte .subtitle .docstring>section>a.docs-sourcelink{vertical-align:middle}html.theme--catppuccin-latte .title{color:#fff;font-size:2rem;font-weight:500;line-height:1.125}html.theme--catppuccin-latte .title strong{color:inherit;font-weight:inherit}html.theme--catppuccin-latte .title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}html.theme--catppuccin-latte .title.is-1{font-size:3rem}html.theme--catppuccin-latte .title.is-2{font-size:2.5rem}html.theme--catppuccin-latte .title.is-3{font-size:2rem}html.theme--catppuccin-latte .title.is-4{font-size:1.5rem}html.theme--catppuccin-latte .title.is-5{font-size:1.25rem}html.theme--catppuccin-latte .title.is-6{font-size:1rem}html.theme--catppuccin-latte .title.is-7{font-size:.75rem}html.theme--catppuccin-latte .subtitle{color:#9ca0b0;font-size:1.25rem;font-weight:400;line-height:1.25}html.theme--catppuccin-latte .subtitle strong{color:#9ca0b0;font-weight:600}html.theme--catppuccin-latte .subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}html.theme--catppuccin-latte .subtitle.is-1{font-size:3rem}html.theme--catppuccin-latte .subtitle.is-2{font-size:2.5rem}html.theme--catppuccin-latte .subtitle.is-3{font-size:2rem}html.theme--catppuccin-latte .subtitle.is-4{font-size:1.5rem}html.theme--catppuccin-latte .subtitle.is-5{font-size:1.25rem}html.theme--catppuccin-latte .subtitle.is-6{font-size:1rem}html.theme--catppuccin-latte .subtitle.is-7{font-size:.75rem}html.theme--catppuccin-latte .heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}html.theme--catppuccin-latte .number{align-items:center;background-color:#e6e9ef;border-radius:9999px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:0.25rem 0.5rem;text-align:center;vertical-align:top}html.theme--catppuccin-latte .select select,html.theme--catppuccin-latte .textarea,html.theme--catppuccin-latte .input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input{background-color:#eff1f5;border-color:#acb0be;border-radius:.4em;color:#8c8fa1}html.theme--catppuccin-latte .select select::-moz-placeholder,html.theme--catppuccin-latte .textarea::-moz-placeholder,html.theme--catppuccin-latte .input::-moz-placeholder,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:#868c98}html.theme--catppuccin-latte .select select::-webkit-input-placeholder,html.theme--catppuccin-latte .textarea::-webkit-input-placeholder,html.theme--catppuccin-latte .input::-webkit-input-placeholder,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:#868c98}html.theme--catppuccin-latte .select select:-moz-placeholder,html.theme--catppuccin-latte .textarea:-moz-placeholder,html.theme--catppuccin-latte .input:-moz-placeholder,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:#868c98}html.theme--catppuccin-latte .select select:-ms-input-placeholder,html.theme--catppuccin-latte .textarea:-ms-input-placeholder,html.theme--catppuccin-latte .input:-ms-input-placeholder,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:#868c98}html.theme--catppuccin-latte .select select:hover,html.theme--catppuccin-latte .textarea:hover,html.theme--catppuccin-latte .input:hover,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input:hover,html.theme--catppuccin-latte .select select.is-hovered,html.theme--catppuccin-latte .is-hovered.textarea,html.theme--catppuccin-latte .is-hovered.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-hovered{border-color:#9ca0b0}html.theme--catppuccin-latte .select select:focus,html.theme--catppuccin-latte .textarea:focus,html.theme--catppuccin-latte .input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input:focus,html.theme--catppuccin-latte .select select.is-focused,html.theme--catppuccin-latte .is-focused.textarea,html.theme--catppuccin-latte .is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .select select:active,html.theme--catppuccin-latte .textarea:active,html.theme--catppuccin-latte .input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input:active,html.theme--catppuccin-latte .select select.is-active,html.theme--catppuccin-latte .is-active.textarea,html.theme--catppuccin-latte .is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active{border-color:#1e66f5;box-shadow:0 0 0 0.125em rgba(30,102,245,0.25)}html.theme--catppuccin-latte .select select[disabled],html.theme--catppuccin-latte .textarea[disabled],html.theme--catppuccin-latte .input[disabled],html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input[disabled],fieldset[disabled] html.theme--catppuccin-latte .select select,fieldset[disabled] html.theme--catppuccin-latte .textarea,fieldset[disabled] html.theme--catppuccin-latte .input,fieldset[disabled] html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input{background-color:#9ca0b0;border-color:#e6e9ef;box-shadow:none;color:#616587}html.theme--catppuccin-latte .select select[disabled]::-moz-placeholder,html.theme--catppuccin-latte .textarea[disabled]::-moz-placeholder,html.theme--catppuccin-latte .input[disabled]::-moz-placeholder,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input[disabled]::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-latte .select select::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-latte .textarea::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-latte .input::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:rgba(97,101,135,0.3)}html.theme--catppuccin-latte .select select[disabled]::-webkit-input-placeholder,html.theme--catppuccin-latte .textarea[disabled]::-webkit-input-placeholder,html.theme--catppuccin-latte .input[disabled]::-webkit-input-placeholder,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input[disabled]::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-latte .select select::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-latte .textarea::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-latte .input::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:rgba(97,101,135,0.3)}html.theme--catppuccin-latte .select select[disabled]:-moz-placeholder,html.theme--catppuccin-latte .textarea[disabled]:-moz-placeholder,html.theme--catppuccin-latte .input[disabled]:-moz-placeholder,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input[disabled]:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-latte .select select:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-latte .textarea:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-latte .input:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:rgba(97,101,135,0.3)}html.theme--catppuccin-latte .select select[disabled]:-ms-input-placeholder,html.theme--catppuccin-latte .textarea[disabled]:-ms-input-placeholder,html.theme--catppuccin-latte .input[disabled]:-ms-input-placeholder,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input[disabled]:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-latte .select select:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-latte .textarea:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-latte .input:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:rgba(97,101,135,0.3)}html.theme--catppuccin-latte .textarea,html.theme--catppuccin-latte .input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input{box-shadow:inset 0 0.0625em 0.125em rgba(10,10,10,0.05);max-width:100%;width:100%}html.theme--catppuccin-latte .textarea[readonly],html.theme--catppuccin-latte .input[readonly],html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input[readonly]{box-shadow:none}html.theme--catppuccin-latte .is-white.textarea,html.theme--catppuccin-latte .is-white.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-white{border-color:#fff}html.theme--catppuccin-latte .is-white.textarea:focus,html.theme--catppuccin-latte .is-white.input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-white:focus,html.theme--catppuccin-latte .is-white.is-focused.textarea,html.theme--catppuccin-latte .is-white.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .is-white.textarea:active,html.theme--catppuccin-latte .is-white.input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-white:active,html.theme--catppuccin-latte .is-white.is-active.textarea,html.theme--catppuccin-latte .is-white.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-latte .is-black.textarea,html.theme--catppuccin-latte .is-black.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-black{border-color:#0a0a0a}html.theme--catppuccin-latte .is-black.textarea:focus,html.theme--catppuccin-latte .is-black.input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-black:focus,html.theme--catppuccin-latte .is-black.is-focused.textarea,html.theme--catppuccin-latte .is-black.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .is-black.textarea:active,html.theme--catppuccin-latte .is-black.input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-black:active,html.theme--catppuccin-latte .is-black.is-active.textarea,html.theme--catppuccin-latte .is-black.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-latte .is-light.textarea,html.theme--catppuccin-latte .is-light.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-light{border-color:#f5f5f5}html.theme--catppuccin-latte .is-light.textarea:focus,html.theme--catppuccin-latte .is-light.input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-light:focus,html.theme--catppuccin-latte .is-light.is-focused.textarea,html.theme--catppuccin-latte .is-light.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .is-light.textarea:active,html.theme--catppuccin-latte .is-light.input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-light:active,html.theme--catppuccin-latte .is-light.is-active.textarea,html.theme--catppuccin-latte .is-light.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-latte .is-dark.textarea,html.theme--catppuccin-latte .content kbd.textarea,html.theme--catppuccin-latte .is-dark.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-dark,html.theme--catppuccin-latte .content kbd.input{border-color:#ccd0da}html.theme--catppuccin-latte .is-dark.textarea:focus,html.theme--catppuccin-latte .content kbd.textarea:focus,html.theme--catppuccin-latte .is-dark.input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-dark:focus,html.theme--catppuccin-latte .content kbd.input:focus,html.theme--catppuccin-latte .is-dark.is-focused.textarea,html.theme--catppuccin-latte .content kbd.is-focused.textarea,html.theme--catppuccin-latte .is-dark.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .content kbd.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar .content form.docs-search>input.is-focused,html.theme--catppuccin-latte .is-dark.textarea:active,html.theme--catppuccin-latte .content kbd.textarea:active,html.theme--catppuccin-latte .is-dark.input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-dark:active,html.theme--catppuccin-latte .content kbd.input:active,html.theme--catppuccin-latte .is-dark.is-active.textarea,html.theme--catppuccin-latte .content kbd.is-active.textarea,html.theme--catppuccin-latte .is-dark.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-latte .content kbd.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar .content form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(204,208,218,0.25)}html.theme--catppuccin-latte .is-primary.textarea,html.theme--catppuccin-latte .docstring>section>a.textarea.docs-sourcelink,html.theme--catppuccin-latte .is-primary.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-primary,html.theme--catppuccin-latte .docstring>section>a.input.docs-sourcelink{border-color:#1e66f5}html.theme--catppuccin-latte .is-primary.textarea:focus,html.theme--catppuccin-latte .docstring>section>a.textarea.docs-sourcelink:focus,html.theme--catppuccin-latte .is-primary.input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-primary:focus,html.theme--catppuccin-latte .docstring>section>a.input.docs-sourcelink:focus,html.theme--catppuccin-latte .is-primary.is-focused.textarea,html.theme--catppuccin-latte .docstring>section>a.is-focused.textarea.docs-sourcelink,html.theme--catppuccin-latte .is-primary.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .docstring>section>a.is-focused.input.docs-sourcelink,html.theme--catppuccin-latte .is-primary.textarea:active,html.theme--catppuccin-latte .docstring>section>a.textarea.docs-sourcelink:active,html.theme--catppuccin-latte .is-primary.input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-primary:active,html.theme--catppuccin-latte .docstring>section>a.input.docs-sourcelink:active,html.theme--catppuccin-latte .is-primary.is-active.textarea,html.theme--catppuccin-latte .docstring>section>a.is-active.textarea.docs-sourcelink,html.theme--catppuccin-latte .is-primary.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-latte .docstring>section>a.is-active.input.docs-sourcelink{box-shadow:0 0 0 0.125em rgba(30,102,245,0.25)}html.theme--catppuccin-latte .is-link.textarea,html.theme--catppuccin-latte .is-link.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-link{border-color:#1e66f5}html.theme--catppuccin-latte .is-link.textarea:focus,html.theme--catppuccin-latte .is-link.input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-link:focus,html.theme--catppuccin-latte .is-link.is-focused.textarea,html.theme--catppuccin-latte .is-link.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .is-link.textarea:active,html.theme--catppuccin-latte .is-link.input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-link:active,html.theme--catppuccin-latte .is-link.is-active.textarea,html.theme--catppuccin-latte .is-link.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(30,102,245,0.25)}html.theme--catppuccin-latte .is-info.textarea,html.theme--catppuccin-latte .is-info.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-info{border-color:#179299}html.theme--catppuccin-latte .is-info.textarea:focus,html.theme--catppuccin-latte .is-info.input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-info:focus,html.theme--catppuccin-latte .is-info.is-focused.textarea,html.theme--catppuccin-latte .is-info.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .is-info.textarea:active,html.theme--catppuccin-latte .is-info.input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-info:active,html.theme--catppuccin-latte .is-info.is-active.textarea,html.theme--catppuccin-latte .is-info.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(23,146,153,0.25)}html.theme--catppuccin-latte .is-success.textarea,html.theme--catppuccin-latte .is-success.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-success{border-color:#40a02b}html.theme--catppuccin-latte .is-success.textarea:focus,html.theme--catppuccin-latte .is-success.input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-success:focus,html.theme--catppuccin-latte .is-success.is-focused.textarea,html.theme--catppuccin-latte .is-success.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .is-success.textarea:active,html.theme--catppuccin-latte .is-success.input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-success:active,html.theme--catppuccin-latte .is-success.is-active.textarea,html.theme--catppuccin-latte .is-success.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(64,160,43,0.25)}html.theme--catppuccin-latte .is-warning.textarea,html.theme--catppuccin-latte .is-warning.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-warning{border-color:#df8e1d}html.theme--catppuccin-latte .is-warning.textarea:focus,html.theme--catppuccin-latte .is-warning.input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-warning:focus,html.theme--catppuccin-latte .is-warning.is-focused.textarea,html.theme--catppuccin-latte .is-warning.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .is-warning.textarea:active,html.theme--catppuccin-latte .is-warning.input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-warning:active,html.theme--catppuccin-latte .is-warning.is-active.textarea,html.theme--catppuccin-latte .is-warning.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(223,142,29,0.25)}html.theme--catppuccin-latte .is-danger.textarea,html.theme--catppuccin-latte .is-danger.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-danger{border-color:#d20f39}html.theme--catppuccin-latte .is-danger.textarea:focus,html.theme--catppuccin-latte .is-danger.input:focus,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-danger:focus,html.theme--catppuccin-latte .is-danger.is-focused.textarea,html.theme--catppuccin-latte .is-danger.is-focused.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-latte .is-danger.textarea:active,html.theme--catppuccin-latte .is-danger.input:active,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-danger:active,html.theme--catppuccin-latte .is-danger.is-active.textarea,html.theme--catppuccin-latte .is-danger.is-active.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(210,15,57,0.25)}html.theme--catppuccin-latte .is-small.textarea,html.theme--catppuccin-latte .is-small.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input{border-radius:3px;font-size:.75rem}html.theme--catppuccin-latte .is-medium.textarea,html.theme--catppuccin-latte .is-medium.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .is-large.textarea,html.theme--catppuccin-latte .is-large.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-large{font-size:1.5rem}html.theme--catppuccin-latte .is-fullwidth.textarea,html.theme--catppuccin-latte .is-fullwidth.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-fullwidth{display:block;width:100%}html.theme--catppuccin-latte .is-inline.textarea,html.theme--catppuccin-latte .is-inline.input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-inline{display:inline;width:auto}html.theme--catppuccin-latte .input.is-rounded,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input{border-radius:9999px;padding-left:calc(calc(0.75em - 1px) + 0.375em);padding-right:calc(calc(0.75em - 1px) + 0.375em)}html.theme--catppuccin-latte .input.is-static,html.theme--catppuccin-latte #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--catppuccin-latte .textarea{display:block;max-width:100%;min-width:100%;padding:calc(0.75em - 1px);resize:vertical}html.theme--catppuccin-latte .textarea:not([rows]){max-height:40em;min-height:8em}html.theme--catppuccin-latte .textarea[rows]{height:initial}html.theme--catppuccin-latte .textarea.has-fixed-size{resize:none}html.theme--catppuccin-latte .radio,html.theme--catppuccin-latte .checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}html.theme--catppuccin-latte .radio input,html.theme--catppuccin-latte .checkbox input{cursor:pointer}html.theme--catppuccin-latte .radio:hover,html.theme--catppuccin-latte .checkbox:hover{color:#04a5e5}html.theme--catppuccin-latte .radio[disabled],html.theme--catppuccin-latte .checkbox[disabled],fieldset[disabled] html.theme--catppuccin-latte .radio,fieldset[disabled] html.theme--catppuccin-latte .checkbox,html.theme--catppuccin-latte .radio input[disabled],html.theme--catppuccin-latte .checkbox input[disabled]{color:#616587;cursor:not-allowed}html.theme--catppuccin-latte .radio+.radio{margin-left:.5em}html.theme--catppuccin-latte .select{display:inline-block;max-width:100%;position:relative;vertical-align:top}html.theme--catppuccin-latte .select:not(.is-multiple){height:2.5em}html.theme--catppuccin-latte .select:not(.is-multiple):not(.is-loading)::after{border-color:#1e66f5;right:1.125em;z-index:4}html.theme--catppuccin-latte .select.is-rounded select,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.select select{border-radius:9999px;padding-left:1em}html.theme--catppuccin-latte .select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}html.theme--catppuccin-latte .select select::-ms-expand{display:none}html.theme--catppuccin-latte .select select[disabled]:hover,fieldset[disabled] html.theme--catppuccin-latte .select select:hover{border-color:#e6e9ef}html.theme--catppuccin-latte .select select:not([multiple]){padding-right:2.5em}html.theme--catppuccin-latte .select select[multiple]{height:auto;padding:0}html.theme--catppuccin-latte .select select[multiple] option{padding:0.5em 1em}html.theme--catppuccin-latte .select:not(.is-multiple):not(.is-loading):hover::after{border-color:#04a5e5}html.theme--catppuccin-latte .select.is-white:not(:hover)::after{border-color:#fff}html.theme--catppuccin-latte .select.is-white select{border-color:#fff}html.theme--catppuccin-latte .select.is-white select:hover,html.theme--catppuccin-latte .select.is-white select.is-hovered{border-color:#f2f2f2}html.theme--catppuccin-latte .select.is-white select:focus,html.theme--catppuccin-latte .select.is-white select.is-focused,html.theme--catppuccin-latte .select.is-white select:active,html.theme--catppuccin-latte .select.is-white select.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-latte .select.is-black:not(:hover)::after{border-color:#0a0a0a}html.theme--catppuccin-latte .select.is-black select{border-color:#0a0a0a}html.theme--catppuccin-latte .select.is-black select:hover,html.theme--catppuccin-latte .select.is-black select.is-hovered{border-color:#000}html.theme--catppuccin-latte .select.is-black select:focus,html.theme--catppuccin-latte .select.is-black select.is-focused,html.theme--catppuccin-latte .select.is-black select:active,html.theme--catppuccin-latte .select.is-black select.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-latte .select.is-light:not(:hover)::after{border-color:#f5f5f5}html.theme--catppuccin-latte .select.is-light select{border-color:#f5f5f5}html.theme--catppuccin-latte .select.is-light select:hover,html.theme--catppuccin-latte .select.is-light select.is-hovered{border-color:#e8e8e8}html.theme--catppuccin-latte .select.is-light select:focus,html.theme--catppuccin-latte .select.is-light select.is-focused,html.theme--catppuccin-latte .select.is-light select:active,html.theme--catppuccin-latte .select.is-light select.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-latte .select.is-dark:not(:hover)::after,html.theme--catppuccin-latte .content kbd.select:not(:hover)::after{border-color:#ccd0da}html.theme--catppuccin-latte .select.is-dark select,html.theme--catppuccin-latte .content kbd.select select{border-color:#ccd0da}html.theme--catppuccin-latte .select.is-dark select:hover,html.theme--catppuccin-latte .content kbd.select select:hover,html.theme--catppuccin-latte .select.is-dark select.is-hovered,html.theme--catppuccin-latte .content kbd.select select.is-hovered{border-color:#bdc2cf}html.theme--catppuccin-latte .select.is-dark select:focus,html.theme--catppuccin-latte .content kbd.select select:focus,html.theme--catppuccin-latte .select.is-dark select.is-focused,html.theme--catppuccin-latte .content kbd.select select.is-focused,html.theme--catppuccin-latte .select.is-dark select:active,html.theme--catppuccin-latte .content kbd.select select:active,html.theme--catppuccin-latte .select.is-dark select.is-active,html.theme--catppuccin-latte .content kbd.select select.is-active{box-shadow:0 0 0 0.125em rgba(204,208,218,0.25)}html.theme--catppuccin-latte .select.is-primary:not(:hover)::after,html.theme--catppuccin-latte .docstring>section>a.select.docs-sourcelink:not(:hover)::after{border-color:#1e66f5}html.theme--catppuccin-latte .select.is-primary select,html.theme--catppuccin-latte .docstring>section>a.select.docs-sourcelink select{border-color:#1e66f5}html.theme--catppuccin-latte .select.is-primary select:hover,html.theme--catppuccin-latte .docstring>section>a.select.docs-sourcelink select:hover,html.theme--catppuccin-latte .select.is-primary select.is-hovered,html.theme--catppuccin-latte .docstring>section>a.select.docs-sourcelink select.is-hovered{border-color:#0b57ef}html.theme--catppuccin-latte .select.is-primary select:focus,html.theme--catppuccin-latte .docstring>section>a.select.docs-sourcelink select:focus,html.theme--catppuccin-latte .select.is-primary select.is-focused,html.theme--catppuccin-latte .docstring>section>a.select.docs-sourcelink select.is-focused,html.theme--catppuccin-latte .select.is-primary select:active,html.theme--catppuccin-latte .docstring>section>a.select.docs-sourcelink select:active,html.theme--catppuccin-latte .select.is-primary select.is-active,html.theme--catppuccin-latte .docstring>section>a.select.docs-sourcelink select.is-active{box-shadow:0 0 0 0.125em rgba(30,102,245,0.25)}html.theme--catppuccin-latte .select.is-link:not(:hover)::after{border-color:#1e66f5}html.theme--catppuccin-latte .select.is-link select{border-color:#1e66f5}html.theme--catppuccin-latte .select.is-link select:hover,html.theme--catppuccin-latte .select.is-link select.is-hovered{border-color:#0b57ef}html.theme--catppuccin-latte .select.is-link select:focus,html.theme--catppuccin-latte .select.is-link select.is-focused,html.theme--catppuccin-latte .select.is-link select:active,html.theme--catppuccin-latte .select.is-link select.is-active{box-shadow:0 0 0 0.125em rgba(30,102,245,0.25)}html.theme--catppuccin-latte .select.is-info:not(:hover)::after{border-color:#179299}html.theme--catppuccin-latte .select.is-info select{border-color:#179299}html.theme--catppuccin-latte .select.is-info select:hover,html.theme--catppuccin-latte .select.is-info select.is-hovered{border-color:#147d83}html.theme--catppuccin-latte .select.is-info select:focus,html.theme--catppuccin-latte .select.is-info select.is-focused,html.theme--catppuccin-latte .select.is-info select:active,html.theme--catppuccin-latte .select.is-info select.is-active{box-shadow:0 0 0 0.125em rgba(23,146,153,0.25)}html.theme--catppuccin-latte .select.is-success:not(:hover)::after{border-color:#40a02b}html.theme--catppuccin-latte .select.is-success select{border-color:#40a02b}html.theme--catppuccin-latte .select.is-success select:hover,html.theme--catppuccin-latte .select.is-success select.is-hovered{border-color:#388c26}html.theme--catppuccin-latte .select.is-success select:focus,html.theme--catppuccin-latte .select.is-success select.is-focused,html.theme--catppuccin-latte .select.is-success select:active,html.theme--catppuccin-latte .select.is-success select.is-active{box-shadow:0 0 0 0.125em rgba(64,160,43,0.25)}html.theme--catppuccin-latte .select.is-warning:not(:hover)::after{border-color:#df8e1d}html.theme--catppuccin-latte .select.is-warning select{border-color:#df8e1d}html.theme--catppuccin-latte .select.is-warning select:hover,html.theme--catppuccin-latte .select.is-warning select.is-hovered{border-color:#c8801a}html.theme--catppuccin-latte .select.is-warning select:focus,html.theme--catppuccin-latte .select.is-warning select.is-focused,html.theme--catppuccin-latte .select.is-warning select:active,html.theme--catppuccin-latte .select.is-warning select.is-active{box-shadow:0 0 0 0.125em rgba(223,142,29,0.25)}html.theme--catppuccin-latte .select.is-danger:not(:hover)::after{border-color:#d20f39}html.theme--catppuccin-latte .select.is-danger select{border-color:#d20f39}html.theme--catppuccin-latte .select.is-danger select:hover,html.theme--catppuccin-latte .select.is-danger select.is-hovered{border-color:#ba0d33}html.theme--catppuccin-latte .select.is-danger select:focus,html.theme--catppuccin-latte .select.is-danger select.is-focused,html.theme--catppuccin-latte .select.is-danger select:active,html.theme--catppuccin-latte .select.is-danger select.is-active{box-shadow:0 0 0 0.125em rgba(210,15,57,0.25)}html.theme--catppuccin-latte .select.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.select{border-radius:3px;font-size:.75rem}html.theme--catppuccin-latte .select.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .select.is-large{font-size:1.5rem}html.theme--catppuccin-latte .select.is-disabled::after{border-color:#616587 !important;opacity:0.5}html.theme--catppuccin-latte .select.is-fullwidth{width:100%}html.theme--catppuccin-latte .select.is-fullwidth select{width:100%}html.theme--catppuccin-latte .select.is-loading::after{margin-top:0;position:absolute;right:.625em;top:0.625em;transform:none}html.theme--catppuccin-latte .select.is-loading.is-small:after,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}html.theme--catppuccin-latte .select.is-loading.is-medium:after{font-size:1.25rem}html.theme--catppuccin-latte .select.is-loading.is-large:after{font-size:1.5rem}html.theme--catppuccin-latte .file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}html.theme--catppuccin-latte .file.is-white .file-cta{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-latte .file.is-white:hover .file-cta,html.theme--catppuccin-latte .file.is-white.is-hovered .file-cta{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-latte .file.is-white:focus .file-cta,html.theme--catppuccin-latte .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--catppuccin-latte .file.is-white:active .file-cta,html.theme--catppuccin-latte .file.is-white.is-active .file-cta{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-latte .file.is-black .file-cta{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-black:hover .file-cta,html.theme--catppuccin-latte .file.is-black.is-hovered .file-cta{background-color:#040404;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-black:focus .file-cta,html.theme--catppuccin-latte .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--catppuccin-latte .file.is-black:active .file-cta,html.theme--catppuccin-latte .file.is-black.is-active .file-cta{background-color:#000;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-light .file-cta{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .file.is-light:hover .file-cta,html.theme--catppuccin-latte .file.is-light.is-hovered .file-cta{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .file.is-light:focus .file-cta,html.theme--catppuccin-latte .file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(245,245,245,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .file.is-light:active .file-cta,html.theme--catppuccin-latte .file.is-light.is-active .file-cta{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .file.is-dark .file-cta,html.theme--catppuccin-latte .content kbd.file .file-cta{background-color:#ccd0da;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .file.is-dark:hover .file-cta,html.theme--catppuccin-latte .content kbd.file:hover .file-cta,html.theme--catppuccin-latte .file.is-dark.is-hovered .file-cta,html.theme--catppuccin-latte .content kbd.file.is-hovered .file-cta{background-color:#c5c9d5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .file.is-dark:focus .file-cta,html.theme--catppuccin-latte .content kbd.file:focus .file-cta,html.theme--catppuccin-latte .file.is-dark.is-focused .file-cta,html.theme--catppuccin-latte .content kbd.file.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(204,208,218,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .file.is-dark:active .file-cta,html.theme--catppuccin-latte .content kbd.file:active .file-cta,html.theme--catppuccin-latte .file.is-dark.is-active .file-cta,html.theme--catppuccin-latte .content kbd.file.is-active .file-cta{background-color:#bdc2cf;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .file.is-primary .file-cta,html.theme--catppuccin-latte .docstring>section>a.file.docs-sourcelink .file-cta{background-color:#1e66f5;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-primary:hover .file-cta,html.theme--catppuccin-latte .docstring>section>a.file.docs-sourcelink:hover .file-cta,html.theme--catppuccin-latte .file.is-primary.is-hovered .file-cta,html.theme--catppuccin-latte .docstring>section>a.file.is-hovered.docs-sourcelink .file-cta{background-color:#125ef4;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-primary:focus .file-cta,html.theme--catppuccin-latte .docstring>section>a.file.docs-sourcelink:focus .file-cta,html.theme--catppuccin-latte .file.is-primary.is-focused .file-cta,html.theme--catppuccin-latte .docstring>section>a.file.is-focused.docs-sourcelink .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(30,102,245,0.25);color:#fff}html.theme--catppuccin-latte .file.is-primary:active .file-cta,html.theme--catppuccin-latte .docstring>section>a.file.docs-sourcelink:active .file-cta,html.theme--catppuccin-latte .file.is-primary.is-active .file-cta,html.theme--catppuccin-latte .docstring>section>a.file.is-active.docs-sourcelink .file-cta{background-color:#0b57ef;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-link .file-cta{background-color:#1e66f5;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-link:hover .file-cta,html.theme--catppuccin-latte .file.is-link.is-hovered .file-cta{background-color:#125ef4;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-link:focus .file-cta,html.theme--catppuccin-latte .file.is-link.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(30,102,245,0.25);color:#fff}html.theme--catppuccin-latte .file.is-link:active .file-cta,html.theme--catppuccin-latte .file.is-link.is-active .file-cta{background-color:#0b57ef;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-info .file-cta{background-color:#179299;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-info:hover .file-cta,html.theme--catppuccin-latte .file.is-info.is-hovered .file-cta{background-color:#15878e;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-info:focus .file-cta,html.theme--catppuccin-latte .file.is-info.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(23,146,153,0.25);color:#fff}html.theme--catppuccin-latte .file.is-info:active .file-cta,html.theme--catppuccin-latte .file.is-info.is-active .file-cta{background-color:#147d83;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-success .file-cta{background-color:#40a02b;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-success:hover .file-cta,html.theme--catppuccin-latte .file.is-success.is-hovered .file-cta{background-color:#3c9628;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-success:focus .file-cta,html.theme--catppuccin-latte .file.is-success.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(64,160,43,0.25);color:#fff}html.theme--catppuccin-latte .file.is-success:active .file-cta,html.theme--catppuccin-latte .file.is-success.is-active .file-cta{background-color:#388c26;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-warning .file-cta{background-color:#df8e1d;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-warning:hover .file-cta,html.theme--catppuccin-latte .file.is-warning.is-hovered .file-cta{background-color:#d4871c;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-warning:focus .file-cta,html.theme--catppuccin-latte .file.is-warning.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(223,142,29,0.25);color:#fff}html.theme--catppuccin-latte .file.is-warning:active .file-cta,html.theme--catppuccin-latte .file.is-warning.is-active .file-cta{background-color:#c8801a;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-danger .file-cta{background-color:#d20f39;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-danger:hover .file-cta,html.theme--catppuccin-latte .file.is-danger.is-hovered .file-cta{background-color:#c60e36;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-danger:focus .file-cta,html.theme--catppuccin-latte .file.is-danger.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(210,15,57,0.25);color:#fff}html.theme--catppuccin-latte .file.is-danger:active .file-cta,html.theme--catppuccin-latte .file.is-danger.is-active .file-cta{background-color:#ba0d33;border-color:transparent;color:#fff}html.theme--catppuccin-latte .file.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.file{font-size:.75rem}html.theme--catppuccin-latte .file.is-normal{font-size:1rem}html.theme--catppuccin-latte .file.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .file.is-medium .file-icon .fa{font-size:21px}html.theme--catppuccin-latte .file.is-large{font-size:1.5rem}html.theme--catppuccin-latte .file.is-large .file-icon .fa{font-size:28px}html.theme--catppuccin-latte .file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--catppuccin-latte .file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-latte .file.has-name.is-empty .file-cta{border-radius:.4em}html.theme--catppuccin-latte .file.has-name.is-empty .file-name{display:none}html.theme--catppuccin-latte .file.is-boxed .file-label{flex-direction:column}html.theme--catppuccin-latte .file.is-boxed .file-cta{flex-direction:column;height:auto;padding:1em 3em}html.theme--catppuccin-latte .file.is-boxed .file-name{border-width:0 1px 1px}html.theme--catppuccin-latte .file.is-boxed .file-icon{height:1.5em;width:1.5em}html.theme--catppuccin-latte .file.is-boxed .file-icon .fa{font-size:21px}html.theme--catppuccin-latte .file.is-boxed.is-small .file-icon .fa,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-boxed .file-icon .fa{font-size:14px}html.theme--catppuccin-latte .file.is-boxed.is-medium .file-icon .fa{font-size:28px}html.theme--catppuccin-latte .file.is-boxed.is-large .file-icon .fa{font-size:35px}html.theme--catppuccin-latte .file.is-boxed.has-name .file-cta{border-radius:.4em .4em 0 0}html.theme--catppuccin-latte .file.is-boxed.has-name .file-name{border-radius:0 0 .4em .4em;border-width:0 1px 1px}html.theme--catppuccin-latte .file.is-centered{justify-content:center}html.theme--catppuccin-latte .file.is-fullwidth .file-label{width:100%}html.theme--catppuccin-latte .file.is-fullwidth .file-name{flex-grow:1;max-width:none}html.theme--catppuccin-latte .file.is-right{justify-content:flex-end}html.theme--catppuccin-latte .file.is-right .file-cta{border-radius:0 .4em .4em 0}html.theme--catppuccin-latte .file.is-right .file-name{border-radius:.4em 0 0 .4em;border-width:1px 0 1px 1px;order:-1}html.theme--catppuccin-latte .file-label{align-items:stretch;display:flex;cursor:pointer;justify-content:flex-start;overflow:hidden;position:relative}html.theme--catppuccin-latte .file-label:hover .file-cta{background-color:#c5c9d5;color:#41445a}html.theme--catppuccin-latte .file-label:hover .file-name{border-color:#a5a9b8}html.theme--catppuccin-latte .file-label:active .file-cta{background-color:#bdc2cf;color:#41445a}html.theme--catppuccin-latte .file-label:active .file-name{border-color:#9ea2b3}html.theme--catppuccin-latte .file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}html.theme--catppuccin-latte .file-cta,html.theme--catppuccin-latte .file-name{border-color:#acb0be;border-radius:.4em;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}html.theme--catppuccin-latte .file-cta{background-color:#ccd0da;color:#4c4f69}html.theme--catppuccin-latte .file-name{border-color:#acb0be;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:inherit;text-overflow:ellipsis}html.theme--catppuccin-latte .file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:.5em;width:1em}html.theme--catppuccin-latte .file-icon .fa{font-size:14px}html.theme--catppuccin-latte .label{color:#41445a;display:block;font-size:1rem;font-weight:700}html.theme--catppuccin-latte .label:not(:last-child){margin-bottom:0.5em}html.theme--catppuccin-latte .label.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.label{font-size:.75rem}html.theme--catppuccin-latte .label.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .label.is-large{font-size:1.5rem}html.theme--catppuccin-latte .help{display:block;font-size:.75rem;margin-top:0.25rem}html.theme--catppuccin-latte .help.is-white{color:#fff}html.theme--catppuccin-latte .help.is-black{color:#0a0a0a}html.theme--catppuccin-latte .help.is-light{color:#f5f5f5}html.theme--catppuccin-latte .help.is-dark,html.theme--catppuccin-latte .content kbd.help{color:#ccd0da}html.theme--catppuccin-latte .help.is-primary,html.theme--catppuccin-latte .docstring>section>a.help.docs-sourcelink{color:#1e66f5}html.theme--catppuccin-latte .help.is-link{color:#1e66f5}html.theme--catppuccin-latte .help.is-info{color:#179299}html.theme--catppuccin-latte .help.is-success{color:#40a02b}html.theme--catppuccin-latte .help.is-warning{color:#df8e1d}html.theme--catppuccin-latte .help.is-danger{color:#d20f39}html.theme--catppuccin-latte .field:not(:last-child){margin-bottom:0.75rem}html.theme--catppuccin-latte .field.has-addons{display:flex;justify-content:flex-start}html.theme--catppuccin-latte .field.has-addons .control:not(:last-child){margin-right:-1px}html.theme--catppuccin-latte .field.has-addons .control:not(:first-child):not(:last-child) .button,html.theme--catppuccin-latte .field.has-addons .control:not(:first-child):not(:last-child) .input,html.theme--catppuccin-latte .field.has-addons .control:not(:first-child):not(:last-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control:not(:first-child):not(:last-child) form.docs-search>input,html.theme--catppuccin-latte .field.has-addons .control:not(:first-child):not(:last-child) .select select{border-radius:0}html.theme--catppuccin-latte .field.has-addons .control:first-child:not(:only-child) .button,html.theme--catppuccin-latte .field.has-addons .control:first-child:not(:only-child) .input,html.theme--catppuccin-latte .field.has-addons .control:first-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control:first-child:not(:only-child) form.docs-search>input,html.theme--catppuccin-latte .field.has-addons .control:first-child:not(:only-child) .select select{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--catppuccin-latte .field.has-addons .control:last-child:not(:only-child) .button,html.theme--catppuccin-latte .field.has-addons .control:last-child:not(:only-child) .input,html.theme--catppuccin-latte .field.has-addons .control:last-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control:last-child:not(:only-child) form.docs-search>input,html.theme--catppuccin-latte .field.has-addons .control:last-child:not(:only-child) .select select{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-latte .field.has-addons .control .button:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control .button.is-hovered:not([disabled]),html.theme--catppuccin-latte .field.has-addons .control .input:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):hover,html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control .input.is-hovered:not([disabled]),html.theme--catppuccin-latte .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-hovered:not([disabled]),html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-hovered:not([disabled]),html.theme--catppuccin-latte .field.has-addons .control .select select:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control .select select.is-hovered:not([disabled]){z-index:2}html.theme--catppuccin-latte .field.has-addons .control .button:not([disabled]):focus,html.theme--catppuccin-latte .field.has-addons .control .button.is-focused:not([disabled]),html.theme--catppuccin-latte .field.has-addons .control .button:not([disabled]):active,html.theme--catppuccin-latte .field.has-addons .control .button.is-active:not([disabled]),html.theme--catppuccin-latte .field.has-addons .control .input:not([disabled]):focus,html.theme--catppuccin-latte .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus,html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus,html.theme--catppuccin-latte .field.has-addons .control .input.is-focused:not([disabled]),html.theme--catppuccin-latte .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]),html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]),html.theme--catppuccin-latte .field.has-addons .control .input:not([disabled]):active,html.theme--catppuccin-latte .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active,html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active,html.theme--catppuccin-latte .field.has-addons .control .input.is-active:not([disabled]),html.theme--catppuccin-latte .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]),html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]),html.theme--catppuccin-latte .field.has-addons .control .select select:not([disabled]):focus,html.theme--catppuccin-latte .field.has-addons .control .select select.is-focused:not([disabled]),html.theme--catppuccin-latte .field.has-addons .control .select select:not([disabled]):active,html.theme--catppuccin-latte .field.has-addons .control .select select.is-active:not([disabled]){z-index:3}html.theme--catppuccin-latte .field.has-addons .control .button:not([disabled]):focus:hover,html.theme--catppuccin-latte .field.has-addons .control .button.is-focused:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control .button:not([disabled]):active:hover,html.theme--catppuccin-latte .field.has-addons .control .button.is-active:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control .input:not([disabled]):focus:hover,html.theme--catppuccin-latte .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus:hover,html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus:hover,html.theme--catppuccin-latte .field.has-addons .control .input.is-focused:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]):hover,html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control .input:not([disabled]):active:hover,html.theme--catppuccin-latte .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active:hover,html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active:hover,html.theme--catppuccin-latte .field.has-addons .control .input.is-active:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]):hover,html.theme--catppuccin-latte #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control .select select:not([disabled]):focus:hover,html.theme--catppuccin-latte .field.has-addons .control .select select.is-focused:not([disabled]):hover,html.theme--catppuccin-latte .field.has-addons .control .select select:not([disabled]):active:hover,html.theme--catppuccin-latte .field.has-addons .control .select select.is-active:not([disabled]):hover{z-index:4}html.theme--catppuccin-latte .field.has-addons .control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-latte .field.has-addons.has-addons-centered{justify-content:center}html.theme--catppuccin-latte .field.has-addons.has-addons-right{justify-content:flex-end}html.theme--catppuccin-latte .field.has-addons.has-addons-fullwidth .control{flex-grow:1;flex-shrink:0}html.theme--catppuccin-latte .field.is-grouped{display:flex;justify-content:flex-start}html.theme--catppuccin-latte .field.is-grouped>.control{flex-shrink:0}html.theme--catppuccin-latte .field.is-grouped>.control:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--catppuccin-latte .field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-latte .field.is-grouped.is-grouped-centered{justify-content:center}html.theme--catppuccin-latte .field.is-grouped.is-grouped-right{justify-content:flex-end}html.theme--catppuccin-latte .field.is-grouped.is-grouped-multiline{flex-wrap:wrap}html.theme--catppuccin-latte .field.is-grouped.is-grouped-multiline>.control:last-child,html.theme--catppuccin-latte .field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:0.75rem}html.theme--catppuccin-latte .field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-0.75rem}html.theme--catppuccin-latte .field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .field.is-horizontal{display:flex}}html.theme--catppuccin-latte .field-label .label{font-size:inherit}@media screen and (max-width: 768px){html.theme--catppuccin-latte .field-label{margin-bottom:0.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}html.theme--catppuccin-latte .field-label.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.field-label{font-size:.75rem;padding-top:0.375em}html.theme--catppuccin-latte .field-label.is-normal{padding-top:0.375em}html.theme--catppuccin-latte .field-label.is-medium{font-size:1.25rem;padding-top:0.375em}html.theme--catppuccin-latte .field-label.is-large{font-size:1.5rem;padding-top:0.375em}}html.theme--catppuccin-latte .field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}html.theme--catppuccin-latte .field-body .field{margin-bottom:0}html.theme--catppuccin-latte .field-body>.field{flex-shrink:1}html.theme--catppuccin-latte .field-body>.field:not(.is-narrow){flex-grow:1}html.theme--catppuccin-latte .field-body>.field:not(:last-child){margin-right:.75rem}}html.theme--catppuccin-latte .control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:inherit}html.theme--catppuccin-latte .control.has-icons-left .input:focus~.icon,html.theme--catppuccin-latte .control.has-icons-left #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--catppuccin-latte #documenter .docs-sidebar .control.has-icons-left form.docs-search>input:focus~.icon,html.theme--catppuccin-latte .control.has-icons-left .select:focus~.icon,html.theme--catppuccin-latte .control.has-icons-right .input:focus~.icon,html.theme--catppuccin-latte .control.has-icons-right #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--catppuccin-latte #documenter .docs-sidebar .control.has-icons-right form.docs-search>input:focus~.icon,html.theme--catppuccin-latte .control.has-icons-right .select:focus~.icon{color:#ccd0da}html.theme--catppuccin-latte .control.has-icons-left .input.is-small~.icon,html.theme--catppuccin-latte .control.has-icons-left #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--catppuccin-latte #documenter .docs-sidebar .control.has-icons-left form.docs-search>input~.icon,html.theme--catppuccin-latte .control.has-icons-left .select.is-small~.icon,html.theme--catppuccin-latte .control.has-icons-right .input.is-small~.icon,html.theme--catppuccin-latte .control.has-icons-right #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--catppuccin-latte #documenter .docs-sidebar .control.has-icons-right form.docs-search>input~.icon,html.theme--catppuccin-latte .control.has-icons-right .select.is-small~.icon{font-size:.75rem}html.theme--catppuccin-latte .control.has-icons-left .input.is-medium~.icon,html.theme--catppuccin-latte .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--catppuccin-latte #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-medium~.icon,html.theme--catppuccin-latte .control.has-icons-left .select.is-medium~.icon,html.theme--catppuccin-latte .control.has-icons-right .input.is-medium~.icon,html.theme--catppuccin-latte .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--catppuccin-latte #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-medium~.icon,html.theme--catppuccin-latte .control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}html.theme--catppuccin-latte .control.has-icons-left .input.is-large~.icon,html.theme--catppuccin-latte .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--catppuccin-latte #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-large~.icon,html.theme--catppuccin-latte .control.has-icons-left .select.is-large~.icon,html.theme--catppuccin-latte .control.has-icons-right .input.is-large~.icon,html.theme--catppuccin-latte .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--catppuccin-latte #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-large~.icon,html.theme--catppuccin-latte .control.has-icons-right .select.is-large~.icon{font-size:1.5rem}html.theme--catppuccin-latte .control.has-icons-left .icon,html.theme--catppuccin-latte .control.has-icons-right .icon{color:#acb0be;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}html.theme--catppuccin-latte .control.has-icons-left .input,html.theme--catppuccin-latte .control.has-icons-left #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-latte #documenter .docs-sidebar .control.has-icons-left form.docs-search>input,html.theme--catppuccin-latte .control.has-icons-left .select select{padding-left:2.5em}html.theme--catppuccin-latte .control.has-icons-left .icon.is-left{left:0}html.theme--catppuccin-latte .control.has-icons-right .input,html.theme--catppuccin-latte .control.has-icons-right #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-latte #documenter .docs-sidebar .control.has-icons-right form.docs-search>input,html.theme--catppuccin-latte .control.has-icons-right .select select{padding-right:2.5em}html.theme--catppuccin-latte .control.has-icons-right .icon.is-right{right:0}html.theme--catppuccin-latte .control.is-loading::after{position:absolute !important;right:.625em;top:0.625em;z-index:4}html.theme--catppuccin-latte .control.is-loading.is-small:after,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}html.theme--catppuccin-latte .control.is-loading.is-medium:after{font-size:1.25rem}html.theme--catppuccin-latte .control.is-loading.is-large:after{font-size:1.5rem}html.theme--catppuccin-latte .breadcrumb{font-size:1rem;white-space:nowrap}html.theme--catppuccin-latte .breadcrumb a{align-items:center;color:#1e66f5;display:flex;justify-content:center;padding:0 .75em}html.theme--catppuccin-latte .breadcrumb a:hover{color:#04a5e5}html.theme--catppuccin-latte .breadcrumb li{align-items:center;display:flex}html.theme--catppuccin-latte .breadcrumb li:first-child a{padding-left:0}html.theme--catppuccin-latte .breadcrumb li.is-active a{color:#41445a;cursor:default;pointer-events:none}html.theme--catppuccin-latte .breadcrumb li+li::before{color:#9ca0b0;content:"\0002f"}html.theme--catppuccin-latte .breadcrumb ul,html.theme--catppuccin-latte .breadcrumb ol{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-latte .breadcrumb .icon:first-child{margin-right:.5em}html.theme--catppuccin-latte .breadcrumb .icon:last-child{margin-left:.5em}html.theme--catppuccin-latte .breadcrumb.is-centered ol,html.theme--catppuccin-latte .breadcrumb.is-centered ul{justify-content:center}html.theme--catppuccin-latte .breadcrumb.is-right ol,html.theme--catppuccin-latte .breadcrumb.is-right ul{justify-content:flex-end}html.theme--catppuccin-latte .breadcrumb.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.75rem}html.theme--catppuccin-latte .breadcrumb.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .breadcrumb.is-large{font-size:1.5rem}html.theme--catppuccin-latte .breadcrumb.has-arrow-separator li+li::before{content:"\02192"}html.theme--catppuccin-latte .breadcrumb.has-bullet-separator li+li::before{content:"\02022"}html.theme--catppuccin-latte .breadcrumb.has-dot-separator li+li::before{content:"\000b7"}html.theme--catppuccin-latte .breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}html.theme--catppuccin-latte .card{background-color:#fff;border-radius:.25rem;box-shadow:#171717;color:#4c4f69;max-width:100%;position:relative}html.theme--catppuccin-latte .card-footer:first-child,html.theme--catppuccin-latte .card-content:first-child,html.theme--catppuccin-latte .card-header:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--catppuccin-latte .card-footer:last-child,html.theme--catppuccin-latte .card-content:last-child,html.theme--catppuccin-latte .card-header:last-child{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--catppuccin-latte .card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);display:flex}html.theme--catppuccin-latte .card-header-title{align-items:center;color:#41445a;display:flex;flex-grow:1;font-weight:700;padding:0.75rem 1rem}html.theme--catppuccin-latte .card-header-title.is-centered{justify-content:center}html.theme--catppuccin-latte .card-header-icon{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0;align-items:center;cursor:pointer;display:flex;justify-content:center;padding:0.75rem 1rem}html.theme--catppuccin-latte .card-image{display:block;position:relative}html.theme--catppuccin-latte .card-image:first-child img{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--catppuccin-latte .card-image:last-child img{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--catppuccin-latte .card-content{background-color:rgba(0,0,0,0);padding:1.5rem}html.theme--catppuccin-latte .card-footer{background-color:rgba(0,0,0,0);border-top:1px solid #ededed;align-items:stretch;display:flex}html.theme--catppuccin-latte .card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}html.theme--catppuccin-latte .card-footer-item:not(:last-child){border-right:1px solid #ededed}html.theme--catppuccin-latte .card .media:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-latte .dropdown{display:inline-flex;position:relative;vertical-align:top}html.theme--catppuccin-latte .dropdown.is-active .dropdown-menu,html.theme--catppuccin-latte .dropdown.is-hoverable:hover .dropdown-menu{display:block}html.theme--catppuccin-latte .dropdown.is-right .dropdown-menu{left:auto;right:0}html.theme--catppuccin-latte .dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}html.theme--catppuccin-latte .dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}html.theme--catppuccin-latte .dropdown-content{background-color:#e6e9ef;border-radius:.4em;box-shadow:#171717;padding-bottom:.5rem;padding-top:.5rem}html.theme--catppuccin-latte .dropdown-item{color:#4c4f69;display:block;font-size:0.875rem;line-height:1.5;padding:0.375rem 1rem;position:relative}html.theme--catppuccin-latte a.dropdown-item,html.theme--catppuccin-latte button.dropdown-item{padding-right:3rem;text-align:inherit;white-space:nowrap;width:100%}html.theme--catppuccin-latte a.dropdown-item:hover,html.theme--catppuccin-latte button.dropdown-item:hover{background-color:#e6e9ef;color:#0a0a0a}html.theme--catppuccin-latte a.dropdown-item.is-active,html.theme--catppuccin-latte button.dropdown-item.is-active{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .dropdown-divider{background-color:#ededed;border:none;display:block;height:1px;margin:0.5rem 0}html.theme--catppuccin-latte .level{align-items:center;justify-content:space-between}html.theme--catppuccin-latte .level code{border-radius:.4em}html.theme--catppuccin-latte .level img{display:inline-block;vertical-align:top}html.theme--catppuccin-latte .level.is-mobile{display:flex}html.theme--catppuccin-latte .level.is-mobile .level-left,html.theme--catppuccin-latte .level.is-mobile .level-right{display:flex}html.theme--catppuccin-latte .level.is-mobile .level-left+.level-right{margin-top:0}html.theme--catppuccin-latte .level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--catppuccin-latte .level.is-mobile .level-item:not(.is-narrow){flex-grow:1}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .level{display:flex}html.theme--catppuccin-latte .level>.level-item:not(.is-narrow){flex-grow:1}}html.theme--catppuccin-latte .level-item{align-items:center;display:flex;flex-basis:auto;flex-grow:0;flex-shrink:0;justify-content:center}html.theme--catppuccin-latte .level-item .title,html.theme--catppuccin-latte .level-item .subtitle{margin-bottom:0}@media screen and (max-width: 768px){html.theme--catppuccin-latte .level-item:not(:last-child){margin-bottom:.75rem}}html.theme--catppuccin-latte .level-left,html.theme--catppuccin-latte .level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--catppuccin-latte .level-left .level-item.is-flexible,html.theme--catppuccin-latte .level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .level-left .level-item:not(:last-child),html.theme--catppuccin-latte .level-right .level-item:not(:last-child){margin-right:.75rem}}html.theme--catppuccin-latte .level-left{align-items:center;justify-content:flex-start}@media screen and (max-width: 768px){html.theme--catppuccin-latte .level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .level-left{display:flex}}html.theme--catppuccin-latte .level-right{align-items:center;justify-content:flex-end}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .level-right{display:flex}}html.theme--catppuccin-latte .media{align-items:flex-start;display:flex;text-align:inherit}html.theme--catppuccin-latte .media .content:not(:last-child){margin-bottom:.75rem}html.theme--catppuccin-latte .media .media{border-top:1px solid rgba(172,176,190,0.5);display:flex;padding-top:.75rem}html.theme--catppuccin-latte .media .media .content:not(:last-child),html.theme--catppuccin-latte .media .media .control:not(:last-child){margin-bottom:.5rem}html.theme--catppuccin-latte .media .media .media{padding-top:.5rem}html.theme--catppuccin-latte .media .media .media+.media{margin-top:.5rem}html.theme--catppuccin-latte .media+.media{border-top:1px solid rgba(172,176,190,0.5);margin-top:1rem;padding-top:1rem}html.theme--catppuccin-latte .media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}html.theme--catppuccin-latte .media-left,html.theme--catppuccin-latte .media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--catppuccin-latte .media-left{margin-right:1rem}html.theme--catppuccin-latte .media-right{margin-left:1rem}html.theme--catppuccin-latte .media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:inherit}@media screen and (max-width: 768px){html.theme--catppuccin-latte .media-content{overflow-x:auto}}html.theme--catppuccin-latte .menu{font-size:1rem}html.theme--catppuccin-latte .menu.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.menu{font-size:.75rem}html.theme--catppuccin-latte .menu.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .menu.is-large{font-size:1.5rem}html.theme--catppuccin-latte .menu-list{line-height:1.25}html.theme--catppuccin-latte .menu-list a{border-radius:3px;color:#4c4f69;display:block;padding:0.5em 0.75em}html.theme--catppuccin-latte .menu-list a:hover{background-color:#e6e9ef;color:#41445a}html.theme--catppuccin-latte .menu-list a.is-active{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .menu-list li ul{border-left:1px solid #acb0be;margin:.75em;padding-left:.75em}html.theme--catppuccin-latte .menu-label{color:#616587;font-size:.75em;letter-spacing:.1em;text-transform:uppercase}html.theme--catppuccin-latte .menu-label:not(:first-child){margin-top:1em}html.theme--catppuccin-latte .menu-label:not(:last-child){margin-bottom:1em}html.theme--catppuccin-latte .message{background-color:#e6e9ef;border-radius:.4em;font-size:1rem}html.theme--catppuccin-latte .message strong{color:currentColor}html.theme--catppuccin-latte .message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--catppuccin-latte .message.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.message{font-size:.75rem}html.theme--catppuccin-latte .message.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .message.is-large{font-size:1.5rem}html.theme--catppuccin-latte .message.is-white{background-color:#fff}html.theme--catppuccin-latte .message.is-white .message-header{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .message.is-white .message-body{border-color:#fff}html.theme--catppuccin-latte .message.is-black{background-color:#fafafa}html.theme--catppuccin-latte .message.is-black .message-header{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .message.is-black .message-body{border-color:#0a0a0a}html.theme--catppuccin-latte .message.is-light{background-color:#fafafa}html.theme--catppuccin-latte .message.is-light .message-header{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .message.is-light .message-body{border-color:#f5f5f5}html.theme--catppuccin-latte .message.is-dark,html.theme--catppuccin-latte .content kbd.message{background-color:#f9fafb}html.theme--catppuccin-latte .message.is-dark .message-header,html.theme--catppuccin-latte .content kbd.message .message-header{background-color:#ccd0da;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .message.is-dark .message-body,html.theme--catppuccin-latte .content kbd.message .message-body{border-color:#ccd0da}html.theme--catppuccin-latte .message.is-primary,html.theme--catppuccin-latte .docstring>section>a.message.docs-sourcelink{background-color:#ebf2fe}html.theme--catppuccin-latte .message.is-primary .message-header,html.theme--catppuccin-latte .docstring>section>a.message.docs-sourcelink .message-header{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .message.is-primary .message-body,html.theme--catppuccin-latte .docstring>section>a.message.docs-sourcelink .message-body{border-color:#1e66f5;color:#0a52e1}html.theme--catppuccin-latte .message.is-link{background-color:#ebf2fe}html.theme--catppuccin-latte .message.is-link .message-header{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .message.is-link .message-body{border-color:#1e66f5;color:#0a52e1}html.theme--catppuccin-latte .message.is-info{background-color:#edfcfc}html.theme--catppuccin-latte .message.is-info .message-header{background-color:#179299;color:#fff}html.theme--catppuccin-latte .message.is-info .message-body{border-color:#179299;color:#1cb2ba}html.theme--catppuccin-latte .message.is-success{background-color:#f1fbef}html.theme--catppuccin-latte .message.is-success .message-header{background-color:#40a02b;color:#fff}html.theme--catppuccin-latte .message.is-success .message-body{border-color:#40a02b;color:#40a12b}html.theme--catppuccin-latte .message.is-warning{background-color:#fdf6ed}html.theme--catppuccin-latte .message.is-warning .message-header{background-color:#df8e1d;color:#fff}html.theme--catppuccin-latte .message.is-warning .message-body{border-color:#df8e1d;color:#9e6515}html.theme--catppuccin-latte .message.is-danger{background-color:#feecf0}html.theme--catppuccin-latte .message.is-danger .message-header{background-color:#d20f39;color:#fff}html.theme--catppuccin-latte .message.is-danger .message-body{border-color:#d20f39;color:#e9113f}html.theme--catppuccin-latte .message-header{align-items:center;background-color:#4c4f69;border-radius:.4em .4em 0 0;color:#fff;display:flex;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.75em 1em;position:relative}html.theme--catppuccin-latte .message-header .delete{flex-grow:0;flex-shrink:0;margin-left:.75em}html.theme--catppuccin-latte .message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}html.theme--catppuccin-latte .message-body{border-color:#acb0be;border-radius:.4em;border-style:solid;border-width:0 0 0 4px;color:#4c4f69;padding:1.25em 1.5em}html.theme--catppuccin-latte .message-body code,html.theme--catppuccin-latte .message-body pre{background-color:#fff}html.theme--catppuccin-latte .message-body pre code{background-color:rgba(0,0,0,0)}html.theme--catppuccin-latte .modal{align-items:center;display:none;flex-direction:column;justify-content:center;overflow:hidden;position:fixed;z-index:40}html.theme--catppuccin-latte .modal.is-active{display:flex}html.theme--catppuccin-latte .modal-background{background-color:rgba(10,10,10,0.86)}html.theme--catppuccin-latte .modal-content,html.theme--catppuccin-latte .modal-card{margin:0 20px;max-height:calc(100vh - 160px);overflow:auto;position:relative;width:100%}@media screen and (min-width: 769px){html.theme--catppuccin-latte .modal-content,html.theme--catppuccin-latte .modal-card{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}html.theme--catppuccin-latte .modal-close{background:none;height:40px;position:fixed;right:20px;top:20px;width:40px}html.theme--catppuccin-latte .modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}html.theme--catppuccin-latte .modal-card-head,html.theme--catppuccin-latte .modal-card-foot{align-items:center;background-color:#e6e9ef;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}html.theme--catppuccin-latte .modal-card-head{border-bottom:1px solid #acb0be;border-top-left-radius:8px;border-top-right-radius:8px}html.theme--catppuccin-latte .modal-card-title{color:#4c4f69;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}html.theme--catppuccin-latte .modal-card-foot{border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top:1px solid #acb0be}html.theme--catppuccin-latte .modal-card-foot .button:not(:last-child){margin-right:.5em}html.theme--catppuccin-latte .modal-card-body{-webkit-overflow-scrolling:touch;background-color:#eff1f5;flex-grow:1;flex-shrink:1;overflow:auto;padding:20px}html.theme--catppuccin-latte .navbar{background-color:#1e66f5;min-height:4rem;position:relative;z-index:30}html.theme--catppuccin-latte .navbar.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .navbar.is-white .navbar-brand>.navbar-item,html.theme--catppuccin-latte .navbar.is-white .navbar-brand .navbar-link{color:#0a0a0a}html.theme--catppuccin-latte .navbar.is-white .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-white .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-white .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-white .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-white .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-white .navbar-brand .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-latte .navbar.is-white .navbar-brand .navbar-link::after{border-color:#0a0a0a}html.theme--catppuccin-latte .navbar.is-white .navbar-burger{color:#0a0a0a}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar.is-white .navbar-start>.navbar-item,html.theme--catppuccin-latte .navbar.is-white .navbar-start .navbar-link,html.theme--catppuccin-latte .navbar.is-white .navbar-end>.navbar-item,html.theme--catppuccin-latte .navbar.is-white .navbar-end .navbar-link{color:#0a0a0a}html.theme--catppuccin-latte .navbar.is-white .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-white .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-white .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-white .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-white .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-white .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .navbar.is-white .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-white .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-white .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-white .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-white .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-white .navbar-end .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-latte .navbar.is-white .navbar-start .navbar-link::after,html.theme--catppuccin-latte .navbar.is-white .navbar-end .navbar-link::after{border-color:#0a0a0a}html.theme--catppuccin-latte .navbar.is-white .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-latte .navbar.is-white .navbar-dropdown a.navbar-item.is-active{background-color:#fff;color:#0a0a0a}}html.theme--catppuccin-latte .navbar.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .navbar.is-black .navbar-brand>.navbar-item,html.theme--catppuccin-latte .navbar.is-black .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-black .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-black .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-black .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-black .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-black .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-black .navbar-brand .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-latte .navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-black .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar.is-black .navbar-start>.navbar-item,html.theme--catppuccin-latte .navbar.is-black .navbar-start .navbar-link,html.theme--catppuccin-latte .navbar.is-black .navbar-end>.navbar-item,html.theme--catppuccin-latte .navbar.is-black .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-black .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-black .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-black .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-black .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-black .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-black .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .navbar.is-black .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-black .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-black .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-black .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-black .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-black .navbar-end .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-latte .navbar.is-black .navbar-start .navbar-link::after,html.theme--catppuccin-latte .navbar.is-black .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-black .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link{background-color:#000;color:#fff}html.theme--catppuccin-latte .navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}html.theme--catppuccin-latte .navbar.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-light .navbar-brand>.navbar-item,html.theme--catppuccin-latte .navbar.is-light .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-light .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-light .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-light .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-light .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-light .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-light .navbar-brand .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-light .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-light .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar.is-light .navbar-start>.navbar-item,html.theme--catppuccin-latte .navbar.is-light .navbar-start .navbar-link,html.theme--catppuccin-latte .navbar.is-light .navbar-end>.navbar-item,html.theme--catppuccin-latte .navbar.is-light .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-light .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-light .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-light .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-light .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-light .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-light .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .navbar.is-light .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-light .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-light .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-light .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-light .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-light .navbar-end .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-light .navbar-start .navbar-link::after,html.theme--catppuccin-latte .navbar.is-light .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-latte .navbar.is-dark,html.theme--catppuccin-latte .content kbd.navbar{background-color:#ccd0da;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-dark .navbar-brand>.navbar-item,html.theme--catppuccin-latte .content kbd.navbar .navbar-brand>.navbar-item,html.theme--catppuccin-latte .navbar.is-dark .navbar-brand .navbar-link,html.theme--catppuccin-latte .content kbd.navbar .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-dark .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .content kbd.navbar .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-dark .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .content kbd.navbar .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-dark .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .content kbd.navbar .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-dark .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .content kbd.navbar .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-dark .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .content kbd.navbar .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-dark .navbar-brand .navbar-link.is-active,html.theme--catppuccin-latte .content kbd.navbar .navbar-brand .navbar-link.is-active{background-color:#bdc2cf;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-dark .navbar-brand .navbar-link::after,html.theme--catppuccin-latte .content kbd.navbar .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-dark .navbar-burger,html.theme--catppuccin-latte .content kbd.navbar .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar.is-dark .navbar-start>.navbar-item,html.theme--catppuccin-latte .content kbd.navbar .navbar-start>.navbar-item,html.theme--catppuccin-latte .navbar.is-dark .navbar-start .navbar-link,html.theme--catppuccin-latte .content kbd.navbar .navbar-start .navbar-link,html.theme--catppuccin-latte .navbar.is-dark .navbar-end>.navbar-item,html.theme--catppuccin-latte .content kbd.navbar .navbar-end>.navbar-item,html.theme--catppuccin-latte .navbar.is-dark .navbar-end .navbar-link,html.theme--catppuccin-latte .content kbd.navbar .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-dark .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .content kbd.navbar .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-dark .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .content kbd.navbar .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-dark .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .content kbd.navbar .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-dark .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .content kbd.navbar .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-dark .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .content kbd.navbar .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-dark .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .content kbd.navbar .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .navbar.is-dark .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .content kbd.navbar .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-dark .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .content kbd.navbar .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-dark .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .content kbd.navbar .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-dark .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .content kbd.navbar .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-dark .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .content kbd.navbar .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-dark .navbar-end .navbar-link.is-active,html.theme--catppuccin-latte .content kbd.navbar .navbar-end .navbar-link.is-active{background-color:#bdc2cf;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-dark .navbar-start .navbar-link::after,html.theme--catppuccin-latte .content kbd.navbar .navbar-start .navbar-link::after,html.theme--catppuccin-latte .navbar.is-dark .navbar-end .navbar-link::after,html.theme--catppuccin-latte .content kbd.navbar .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-latte .content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link{background-color:#bdc2cf;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .navbar.is-dark .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-latte .content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#ccd0da;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-latte .navbar.is-primary,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .navbar.is-primary .navbar-brand>.navbar-item,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-brand>.navbar-item,html.theme--catppuccin-latte .navbar.is-primary .navbar-brand .navbar-link,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-primary .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-primary .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-primary .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-primary .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-primary .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-primary .navbar-brand .navbar-link.is-active,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active{background-color:#0b57ef;color:#fff}html.theme--catppuccin-latte .navbar.is-primary .navbar-brand .navbar-link::after,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-primary .navbar-burger,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar.is-primary .navbar-start>.navbar-item,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-start>.navbar-item,html.theme--catppuccin-latte .navbar.is-primary .navbar-start .navbar-link,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link,html.theme--catppuccin-latte .navbar.is-primary .navbar-end>.navbar-item,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-end>.navbar-item,html.theme--catppuccin-latte .navbar.is-primary .navbar-end .navbar-link,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-primary .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-primary .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-primary .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-primary .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-primary .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-primary .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .navbar.is-primary .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-primary .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-primary .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-primary .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-primary .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-primary .navbar-end .navbar-link.is-active,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active{background-color:#0b57ef;color:#fff}html.theme--catppuccin-latte .navbar.is-primary .navbar-start .navbar-link::after,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link::after,html.theme--catppuccin-latte .navbar.is-primary .navbar-end .navbar-link::after,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link{background-color:#0b57ef;color:#fff}html.theme--catppuccin-latte .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#1e66f5;color:#fff}}html.theme--catppuccin-latte .navbar.is-link{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .navbar.is-link .navbar-brand>.navbar-item,html.theme--catppuccin-latte .navbar.is-link .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-link .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-link .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-link .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-link .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-link .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-link .navbar-brand .navbar-link.is-active{background-color:#0b57ef;color:#fff}html.theme--catppuccin-latte .navbar.is-link .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-link .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar.is-link .navbar-start>.navbar-item,html.theme--catppuccin-latte .navbar.is-link .navbar-start .navbar-link,html.theme--catppuccin-latte .navbar.is-link .navbar-end>.navbar-item,html.theme--catppuccin-latte .navbar.is-link .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-link .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-link .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-link .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-link .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-link .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-link .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .navbar.is-link .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-link .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-link .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-link .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-link .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-link .navbar-end .navbar-link.is-active{background-color:#0b57ef;color:#fff}html.theme--catppuccin-latte .navbar.is-link .navbar-start .navbar-link::after,html.theme--catppuccin-latte .navbar.is-link .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link{background-color:#0b57ef;color:#fff}html.theme--catppuccin-latte .navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:#1e66f5;color:#fff}}html.theme--catppuccin-latte .navbar.is-info{background-color:#179299;color:#fff}html.theme--catppuccin-latte .navbar.is-info .navbar-brand>.navbar-item,html.theme--catppuccin-latte .navbar.is-info .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-info .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-info .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-info .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-info .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-info .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-info .navbar-brand .navbar-link.is-active{background-color:#147d83;color:#fff}html.theme--catppuccin-latte .navbar.is-info .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-info .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar.is-info .navbar-start>.navbar-item,html.theme--catppuccin-latte .navbar.is-info .navbar-start .navbar-link,html.theme--catppuccin-latte .navbar.is-info .navbar-end>.navbar-item,html.theme--catppuccin-latte .navbar.is-info .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-info .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-info .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-info .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-info .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-info .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-info .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .navbar.is-info .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-info .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-info .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-info .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-info .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-info .navbar-end .navbar-link.is-active{background-color:#147d83;color:#fff}html.theme--catppuccin-latte .navbar.is-info .navbar-start .navbar-link::after,html.theme--catppuccin-latte .navbar.is-info .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-info .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link{background-color:#147d83;color:#fff}html.theme--catppuccin-latte .navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:#179299;color:#fff}}html.theme--catppuccin-latte .navbar.is-success{background-color:#40a02b;color:#fff}html.theme--catppuccin-latte .navbar.is-success .navbar-brand>.navbar-item,html.theme--catppuccin-latte .navbar.is-success .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-success .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-success .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-success .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-success .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-success .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-success .navbar-brand .navbar-link.is-active{background-color:#388c26;color:#fff}html.theme--catppuccin-latte .navbar.is-success .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-success .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar.is-success .navbar-start>.navbar-item,html.theme--catppuccin-latte .navbar.is-success .navbar-start .navbar-link,html.theme--catppuccin-latte .navbar.is-success .navbar-end>.navbar-item,html.theme--catppuccin-latte .navbar.is-success .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-success .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-success .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-success .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-success .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-success .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-success .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .navbar.is-success .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-success .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-success .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-success .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-success .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-success .navbar-end .navbar-link.is-active{background-color:#388c26;color:#fff}html.theme--catppuccin-latte .navbar.is-success .navbar-start .navbar-link::after,html.theme--catppuccin-latte .navbar.is-success .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-success .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link{background-color:#388c26;color:#fff}html.theme--catppuccin-latte .navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:#40a02b;color:#fff}}html.theme--catppuccin-latte .navbar.is-warning{background-color:#df8e1d;color:#fff}html.theme--catppuccin-latte .navbar.is-warning .navbar-brand>.navbar-item,html.theme--catppuccin-latte .navbar.is-warning .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-warning .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-warning .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-warning .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-warning .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-warning .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-warning .navbar-brand .navbar-link.is-active{background-color:#c8801a;color:#fff}html.theme--catppuccin-latte .navbar.is-warning .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-warning .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar.is-warning .navbar-start>.navbar-item,html.theme--catppuccin-latte .navbar.is-warning .navbar-start .navbar-link,html.theme--catppuccin-latte .navbar.is-warning .navbar-end>.navbar-item,html.theme--catppuccin-latte .navbar.is-warning .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-warning .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-warning .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-warning .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-warning .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-warning .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-warning .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .navbar.is-warning .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-warning .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-warning .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-warning .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-warning .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-warning .navbar-end .navbar-link.is-active{background-color:#c8801a;color:#fff}html.theme--catppuccin-latte .navbar.is-warning .navbar-start .navbar-link::after,html.theme--catppuccin-latte .navbar.is-warning .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link{background-color:#c8801a;color:#fff}html.theme--catppuccin-latte .navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:#df8e1d;color:#fff}}html.theme--catppuccin-latte .navbar.is-danger{background-color:#d20f39;color:#fff}html.theme--catppuccin-latte .navbar.is-danger .navbar-brand>.navbar-item,html.theme--catppuccin-latte .navbar.is-danger .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-danger .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-danger .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-danger .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-danger .navbar-brand .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-danger .navbar-brand .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-danger .navbar-brand .navbar-link.is-active{background-color:#ba0d33;color:#fff}html.theme--catppuccin-latte .navbar.is-danger .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-danger .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar.is-danger .navbar-start>.navbar-item,html.theme--catppuccin-latte .navbar.is-danger .navbar-start .navbar-link,html.theme--catppuccin-latte .navbar.is-danger .navbar-end>.navbar-item,html.theme--catppuccin-latte .navbar.is-danger .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-latte .navbar.is-danger .navbar-start>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-danger .navbar-start>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-danger .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-danger .navbar-start .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-danger .navbar-start .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-danger .navbar-start .navbar-link.is-active,html.theme--catppuccin-latte .navbar.is-danger .navbar-end>a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-danger .navbar-end>a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-danger .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-danger .navbar-end .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-danger .navbar-end .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-danger .navbar-end .navbar-link.is-active{background-color:#ba0d33;color:#fff}html.theme--catppuccin-latte .navbar.is-danger .navbar-start .navbar-link::after,html.theme--catppuccin-latte .navbar.is-danger .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-latte .navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link{background-color:#ba0d33;color:#fff}html.theme--catppuccin-latte .navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:#d20f39;color:#fff}}html.theme--catppuccin-latte .navbar>.container{align-items:stretch;display:flex;min-height:4rem;width:100%}html.theme--catppuccin-latte .navbar.has-shadow{box-shadow:0 2px 0 0 #e6e9ef}html.theme--catppuccin-latte .navbar.is-fixed-bottom,html.theme--catppuccin-latte .navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-latte .navbar.is-fixed-bottom{bottom:0}html.theme--catppuccin-latte .navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #e6e9ef}html.theme--catppuccin-latte .navbar.is-fixed-top{top:0}html.theme--catppuccin-latte html.has-navbar-fixed-top,html.theme--catppuccin-latte body.has-navbar-fixed-top{padding-top:4rem}html.theme--catppuccin-latte html.has-navbar-fixed-bottom,html.theme--catppuccin-latte body.has-navbar-fixed-bottom{padding-bottom:4rem}html.theme--catppuccin-latte .navbar-brand,html.theme--catppuccin-latte .navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:4rem}html.theme--catppuccin-latte .navbar-brand a.navbar-item:focus,html.theme--catppuccin-latte .navbar-brand a.navbar-item:hover{background-color:transparent}html.theme--catppuccin-latte .navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}html.theme--catppuccin-latte .navbar-burger{color:#4c4f69;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:block;height:4rem;position:relative;width:4rem;margin-left:auto}html.theme--catppuccin-latte .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--catppuccin-latte .navbar-burger span:nth-child(1){top:calc(50% - 6px)}html.theme--catppuccin-latte .navbar-burger span:nth-child(2){top:calc(50% - 1px)}html.theme--catppuccin-latte .navbar-burger span:nth-child(3){top:calc(50% + 4px)}html.theme--catppuccin-latte .navbar-burger:hover{background-color:rgba(0,0,0,0.05)}html.theme--catppuccin-latte .navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}html.theme--catppuccin-latte .navbar-burger.is-active span:nth-child(2){opacity:0}html.theme--catppuccin-latte .navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}html.theme--catppuccin-latte .navbar-menu{display:none}html.theme--catppuccin-latte .navbar-item,html.theme--catppuccin-latte .navbar-link{color:#4c4f69;display:block;line-height:1.5;padding:0.5rem 0.75rem;position:relative}html.theme--catppuccin-latte .navbar-item .icon:only-child,html.theme--catppuccin-latte .navbar-link .icon:only-child{margin-left:-0.25rem;margin-right:-0.25rem}html.theme--catppuccin-latte a.navbar-item,html.theme--catppuccin-latte .navbar-link{cursor:pointer}html.theme--catppuccin-latte a.navbar-item:focus,html.theme--catppuccin-latte a.navbar-item:focus-within,html.theme--catppuccin-latte a.navbar-item:hover,html.theme--catppuccin-latte a.navbar-item.is-active,html.theme--catppuccin-latte .navbar-link:focus,html.theme--catppuccin-latte .navbar-link:focus-within,html.theme--catppuccin-latte .navbar-link:hover,html.theme--catppuccin-latte .navbar-link.is-active{background-color:rgba(0,0,0,0);color:#1e66f5}html.theme--catppuccin-latte .navbar-item{flex-grow:0;flex-shrink:0}html.theme--catppuccin-latte .navbar-item img{max-height:1.75rem}html.theme--catppuccin-latte .navbar-item.has-dropdown{padding:0}html.theme--catppuccin-latte .navbar-item.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-latte .navbar-item.is-tab{border-bottom:1px solid transparent;min-height:4rem;padding-bottom:calc(0.5rem - 1px)}html.theme--catppuccin-latte .navbar-item.is-tab:focus,html.theme--catppuccin-latte .navbar-item.is-tab:hover{background-color:rgba(0,0,0,0);border-bottom-color:#1e66f5}html.theme--catppuccin-latte .navbar-item.is-tab.is-active{background-color:rgba(0,0,0,0);border-bottom-color:#1e66f5;border-bottom-style:solid;border-bottom-width:3px;color:#1e66f5;padding-bottom:calc(0.5rem - 3px)}html.theme--catppuccin-latte .navbar-content{flex-grow:1;flex-shrink:1}html.theme--catppuccin-latte .navbar-link:not(.is-arrowless){padding-right:2.5em}html.theme--catppuccin-latte .navbar-link:not(.is-arrowless)::after{border-color:#fff;margin-top:-0.375em;right:1.125em}html.theme--catppuccin-latte .navbar-dropdown{font-size:0.875rem;padding-bottom:0.5rem;padding-top:0.5rem}html.theme--catppuccin-latte .navbar-dropdown .navbar-item{padding-left:1.5rem;padding-right:1.5rem}html.theme--catppuccin-latte .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--catppuccin-latte .navbar>.container{display:block}html.theme--catppuccin-latte .navbar-brand .navbar-item,html.theme--catppuccin-latte .navbar-tabs .navbar-item{align-items:center;display:flex}html.theme--catppuccin-latte .navbar-link::after{display:none}html.theme--catppuccin-latte .navbar-menu{background-color:#1e66f5;box-shadow:0 8px 16px rgba(10,10,10,0.1);padding:0.5rem 0}html.theme--catppuccin-latte .navbar-menu.is-active{display:block}html.theme--catppuccin-latte .navbar.is-fixed-bottom-touch,html.theme--catppuccin-latte .navbar.is-fixed-top-touch{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-latte .navbar.is-fixed-bottom-touch{bottom:0}html.theme--catppuccin-latte .navbar.is-fixed-bottom-touch.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--catppuccin-latte .navbar.is-fixed-top-touch{top:0}html.theme--catppuccin-latte .navbar.is-fixed-top .navbar-menu,html.theme--catppuccin-latte .navbar.is-fixed-top-touch .navbar-menu{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 4rem);overflow:auto}html.theme--catppuccin-latte html.has-navbar-fixed-top-touch,html.theme--catppuccin-latte body.has-navbar-fixed-top-touch{padding-top:4rem}html.theme--catppuccin-latte html.has-navbar-fixed-bottom-touch,html.theme--catppuccin-latte body.has-navbar-fixed-bottom-touch{padding-bottom:4rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .navbar,html.theme--catppuccin-latte .navbar-menu,html.theme--catppuccin-latte .navbar-start,html.theme--catppuccin-latte .navbar-end{align-items:stretch;display:flex}html.theme--catppuccin-latte .navbar{min-height:4rem}html.theme--catppuccin-latte .navbar.is-spaced{padding:1rem 2rem}html.theme--catppuccin-latte .navbar.is-spaced .navbar-start,html.theme--catppuccin-latte .navbar.is-spaced .navbar-end{align-items:center}html.theme--catppuccin-latte .navbar.is-spaced a.navbar-item,html.theme--catppuccin-latte .navbar.is-spaced .navbar-link{border-radius:.4em}html.theme--catppuccin-latte .navbar.is-transparent a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-transparent a.navbar-item:hover,html.theme--catppuccin-latte .navbar.is-transparent a.navbar-item.is-active,html.theme--catppuccin-latte .navbar.is-transparent .navbar-link:focus,html.theme--catppuccin-latte .navbar.is-transparent .navbar-link:hover,html.theme--catppuccin-latte .navbar.is-transparent .navbar-link.is-active{background-color:transparent !important}html.theme--catppuccin-latte .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-latte .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link,html.theme--catppuccin-latte .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link,html.theme--catppuccin-latte .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link{background-color:transparent !important}html.theme--catppuccin-latte .navbar.is-transparent .navbar-dropdown a.navbar-item:focus,html.theme--catppuccin-latte .navbar.is-transparent .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#8c8fa1}html.theme--catppuccin-latte .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#1e66f5}html.theme--catppuccin-latte .navbar-burger{display:none}html.theme--catppuccin-latte .navbar-item,html.theme--catppuccin-latte .navbar-link{align-items:center;display:flex}html.theme--catppuccin-latte .navbar-item.has-dropdown{align-items:stretch}html.theme--catppuccin-latte .navbar-item.has-dropdown-up .navbar-link::after{transform:rotate(135deg) translate(0.25em, -0.25em)}html.theme--catppuccin-latte .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--catppuccin-latte .navbar-item.is-active .navbar-dropdown,html.theme--catppuccin-latte .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--catppuccin-latte .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--catppuccin-latte .navbar-item.is-hoverable:hover .navbar-dropdown{display:block}.navbar.is-spaced html.theme--catppuccin-latte .navbar-item.is-active .navbar-dropdown,html.theme--catppuccin-latte .navbar-item.is-active .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-latte .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--catppuccin-latte .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-latte .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--catppuccin-latte .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-latte .navbar-item.is-hoverable:hover .navbar-dropdown,html.theme--catppuccin-latte .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed{opacity:1;pointer-events:auto;transform:translateY(0)}html.theme--catppuccin-latte .navbar-menu{flex-grow:1;flex-shrink:0}html.theme--catppuccin-latte .navbar-start{justify-content:flex-start;margin-right:auto}html.theme--catppuccin-latte .navbar-end{justify-content:flex-end;margin-left:auto}html.theme--catppuccin-latte .navbar-dropdown{background-color:#1e66f5;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--catppuccin-latte .navbar-dropdown .navbar-item{padding:0.375rem 1rem;white-space:nowrap}html.theme--catppuccin-latte .navbar-dropdown a.navbar-item{padding-right:3rem}html.theme--catppuccin-latte .navbar-dropdown a.navbar-item:focus,html.theme--catppuccin-latte .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#8c8fa1}html.theme--catppuccin-latte .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#1e66f5}.navbar.is-spaced html.theme--catppuccin-latte .navbar-dropdown,html.theme--catppuccin-latte .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--catppuccin-latte .navbar-dropdown.is-right{left:auto;right:0}html.theme--catppuccin-latte .navbar-divider{display:block}html.theme--catppuccin-latte .navbar>.container .navbar-brand,html.theme--catppuccin-latte .container>.navbar .navbar-brand{margin-left:-.75rem}html.theme--catppuccin-latte .navbar>.container .navbar-menu,html.theme--catppuccin-latte .container>.navbar .navbar-menu{margin-right:-.75rem}html.theme--catppuccin-latte .navbar.is-fixed-bottom-desktop,html.theme--catppuccin-latte .navbar.is-fixed-top-desktop{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-latte .navbar.is-fixed-bottom-desktop{bottom:0}html.theme--catppuccin-latte .navbar.is-fixed-bottom-desktop.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--catppuccin-latte .navbar.is-fixed-top-desktop{top:0}html.theme--catppuccin-latte html.has-navbar-fixed-top-desktop,html.theme--catppuccin-latte body.has-navbar-fixed-top-desktop{padding-top:4rem}html.theme--catppuccin-latte html.has-navbar-fixed-bottom-desktop,html.theme--catppuccin-latte body.has-navbar-fixed-bottom-desktop{padding-bottom:4rem}html.theme--catppuccin-latte html.has-spaced-navbar-fixed-top,html.theme--catppuccin-latte body.has-spaced-navbar-fixed-top{padding-top:6rem}html.theme--catppuccin-latte html.has-spaced-navbar-fixed-bottom,html.theme--catppuccin-latte body.has-spaced-navbar-fixed-bottom{padding-bottom:6rem}html.theme--catppuccin-latte a.navbar-item.is-active,html.theme--catppuccin-latte .navbar-link.is-active{color:#1e66f5}html.theme--catppuccin-latte a.navbar-item.is-active:not(:focus):not(:hover),html.theme--catppuccin-latte .navbar-link.is-active:not(:focus):not(:hover){background-color:rgba(0,0,0,0)}html.theme--catppuccin-latte .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-latte .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-latte .navbar-item.has-dropdown.is-active .navbar-link{background-color:rgba(0,0,0,0)}}html.theme--catppuccin-latte .hero.is-fullheight-with-navbar{min-height:calc(100vh - 4rem)}html.theme--catppuccin-latte .pagination{font-size:1rem;margin:-.25rem}html.theme--catppuccin-latte .pagination.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.pagination{font-size:.75rem}html.theme--catppuccin-latte .pagination.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .pagination.is-large{font-size:1.5rem}html.theme--catppuccin-latte .pagination.is-rounded .pagination-previous,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.pagination .pagination-previous,html.theme--catppuccin-latte .pagination.is-rounded .pagination-next,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.pagination .pagination-next{padding-left:1em;padding-right:1em;border-radius:9999px}html.theme--catppuccin-latte .pagination.is-rounded .pagination-link,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:9999px}html.theme--catppuccin-latte .pagination,html.theme--catppuccin-latte .pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}html.theme--catppuccin-latte .pagination-previous,html.theme--catppuccin-latte .pagination-next,html.theme--catppuccin-latte .pagination-link,html.theme--catppuccin-latte .pagination-ellipsis{font-size:1em;justify-content:center;margin:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}html.theme--catppuccin-latte .pagination-previous,html.theme--catppuccin-latte .pagination-next,html.theme--catppuccin-latte .pagination-link{border-color:#acb0be;color:#1e66f5;min-width:2.5em}html.theme--catppuccin-latte .pagination-previous:hover,html.theme--catppuccin-latte .pagination-next:hover,html.theme--catppuccin-latte .pagination-link:hover{border-color:#9ca0b0;color:#04a5e5}html.theme--catppuccin-latte .pagination-previous:focus,html.theme--catppuccin-latte .pagination-next:focus,html.theme--catppuccin-latte .pagination-link:focus{border-color:#9ca0b0}html.theme--catppuccin-latte .pagination-previous:active,html.theme--catppuccin-latte .pagination-next:active,html.theme--catppuccin-latte .pagination-link:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2)}html.theme--catppuccin-latte .pagination-previous[disabled],html.theme--catppuccin-latte .pagination-previous.is-disabled,html.theme--catppuccin-latte .pagination-next[disabled],html.theme--catppuccin-latte .pagination-next.is-disabled,html.theme--catppuccin-latte .pagination-link[disabled],html.theme--catppuccin-latte .pagination-link.is-disabled{background-color:#acb0be;border-color:#acb0be;box-shadow:none;color:#616587;opacity:0.5}html.theme--catppuccin-latte .pagination-previous,html.theme--catppuccin-latte .pagination-next{padding-left:.75em;padding-right:.75em;white-space:nowrap}html.theme--catppuccin-latte .pagination-link.is-current{background-color:#1e66f5;border-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .pagination-ellipsis{color:#9ca0b0;pointer-events:none}html.theme--catppuccin-latte .pagination-list{flex-wrap:wrap}html.theme--catppuccin-latte .pagination-list li{list-style:none}@media screen and (max-width: 768px){html.theme--catppuccin-latte .pagination{flex-wrap:wrap}html.theme--catppuccin-latte .pagination-previous,html.theme--catppuccin-latte .pagination-next{flex-grow:1;flex-shrink:1}html.theme--catppuccin-latte .pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}html.theme--catppuccin-latte .pagination-previous,html.theme--catppuccin-latte .pagination-next,html.theme--catppuccin-latte .pagination-link,html.theme--catppuccin-latte .pagination-ellipsis{margin-bottom:0;margin-top:0}html.theme--catppuccin-latte .pagination-previous{order:2}html.theme--catppuccin-latte .pagination-next{order:3}html.theme--catppuccin-latte .pagination{justify-content:space-between;margin-bottom:0;margin-top:0}html.theme--catppuccin-latte .pagination.is-centered .pagination-previous{order:1}html.theme--catppuccin-latte .pagination.is-centered .pagination-list{justify-content:center;order:2}html.theme--catppuccin-latte .pagination.is-centered .pagination-next{order:3}html.theme--catppuccin-latte .pagination.is-right .pagination-previous{order:1}html.theme--catppuccin-latte .pagination.is-right .pagination-next{order:2}html.theme--catppuccin-latte .pagination.is-right .pagination-list{justify-content:flex-end;order:3}}html.theme--catppuccin-latte .panel{border-radius:8px;box-shadow:#171717;font-size:1rem}html.theme--catppuccin-latte .panel:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-latte .panel.is-white .panel-heading{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .panel.is-white .panel-tabs a.is-active{border-bottom-color:#fff}html.theme--catppuccin-latte .panel.is-white .panel-block.is-active .panel-icon{color:#fff}html.theme--catppuccin-latte .panel.is-black .panel-heading{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .panel.is-black .panel-tabs a.is-active{border-bottom-color:#0a0a0a}html.theme--catppuccin-latte .panel.is-black .panel-block.is-active .panel-icon{color:#0a0a0a}html.theme--catppuccin-latte .panel.is-light .panel-heading{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .panel.is-light .panel-tabs a.is-active{border-bottom-color:#f5f5f5}html.theme--catppuccin-latte .panel.is-light .panel-block.is-active .panel-icon{color:#f5f5f5}html.theme--catppuccin-latte .panel.is-dark .panel-heading,html.theme--catppuccin-latte .content kbd.panel .panel-heading{background-color:#ccd0da;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .panel.is-dark .panel-tabs a.is-active,html.theme--catppuccin-latte .content kbd.panel .panel-tabs a.is-active{border-bottom-color:#ccd0da}html.theme--catppuccin-latte .panel.is-dark .panel-block.is-active .panel-icon,html.theme--catppuccin-latte .content kbd.panel .panel-block.is-active .panel-icon{color:#ccd0da}html.theme--catppuccin-latte .panel.is-primary .panel-heading,html.theme--catppuccin-latte .docstring>section>a.panel.docs-sourcelink .panel-heading{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .panel.is-primary .panel-tabs a.is-active,html.theme--catppuccin-latte .docstring>section>a.panel.docs-sourcelink .panel-tabs a.is-active{border-bottom-color:#1e66f5}html.theme--catppuccin-latte .panel.is-primary .panel-block.is-active .panel-icon,html.theme--catppuccin-latte .docstring>section>a.panel.docs-sourcelink .panel-block.is-active .panel-icon{color:#1e66f5}html.theme--catppuccin-latte .panel.is-link .panel-heading{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .panel.is-link .panel-tabs a.is-active{border-bottom-color:#1e66f5}html.theme--catppuccin-latte .panel.is-link .panel-block.is-active .panel-icon{color:#1e66f5}html.theme--catppuccin-latte .panel.is-info .panel-heading{background-color:#179299;color:#fff}html.theme--catppuccin-latte .panel.is-info .panel-tabs a.is-active{border-bottom-color:#179299}html.theme--catppuccin-latte .panel.is-info .panel-block.is-active .panel-icon{color:#179299}html.theme--catppuccin-latte .panel.is-success .panel-heading{background-color:#40a02b;color:#fff}html.theme--catppuccin-latte .panel.is-success .panel-tabs a.is-active{border-bottom-color:#40a02b}html.theme--catppuccin-latte .panel.is-success .panel-block.is-active .panel-icon{color:#40a02b}html.theme--catppuccin-latte .panel.is-warning .panel-heading{background-color:#df8e1d;color:#fff}html.theme--catppuccin-latte .panel.is-warning .panel-tabs a.is-active{border-bottom-color:#df8e1d}html.theme--catppuccin-latte .panel.is-warning .panel-block.is-active .panel-icon{color:#df8e1d}html.theme--catppuccin-latte .panel.is-danger .panel-heading{background-color:#d20f39;color:#fff}html.theme--catppuccin-latte .panel.is-danger .panel-tabs a.is-active{border-bottom-color:#d20f39}html.theme--catppuccin-latte .panel.is-danger .panel-block.is-active .panel-icon{color:#d20f39}html.theme--catppuccin-latte .panel-tabs:not(:last-child),html.theme--catppuccin-latte .panel-block:not(:last-child){border-bottom:1px solid #ededed}html.theme--catppuccin-latte .panel-heading{background-color:#bcc0cc;border-radius:8px 8px 0 0;color:#41445a;font-size:1.25em;font-weight:700;line-height:1.25;padding:0.75em 1em}html.theme--catppuccin-latte .panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}html.theme--catppuccin-latte .panel-tabs a{border-bottom:1px solid #acb0be;margin-bottom:-1px;padding:0.5em}html.theme--catppuccin-latte .panel-tabs a.is-active{border-bottom-color:#bcc0cc;color:#0b57ef}html.theme--catppuccin-latte .panel-list a{color:#4c4f69}html.theme--catppuccin-latte .panel-list a:hover{color:#1e66f5}html.theme--catppuccin-latte .panel-block{align-items:center;color:#41445a;display:flex;justify-content:flex-start;padding:0.5em 0.75em}html.theme--catppuccin-latte .panel-block input[type="checkbox"]{margin-right:.75em}html.theme--catppuccin-latte .panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}html.theme--catppuccin-latte .panel-block.is-wrapped{flex-wrap:wrap}html.theme--catppuccin-latte .panel-block.is-active{border-left-color:#1e66f5;color:#0b57ef}html.theme--catppuccin-latte .panel-block.is-active .panel-icon{color:#1e66f5}html.theme--catppuccin-latte .panel-block:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}html.theme--catppuccin-latte a.panel-block,html.theme--catppuccin-latte label.panel-block{cursor:pointer}html.theme--catppuccin-latte a.panel-block:hover,html.theme--catppuccin-latte label.panel-block:hover{background-color:#e6e9ef}html.theme--catppuccin-latte .panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#616587;margin-right:.75em}html.theme--catppuccin-latte .panel-icon .fa{font-size:inherit;line-height:inherit}html.theme--catppuccin-latte .tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:1rem;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}html.theme--catppuccin-latte .tabs a{align-items:center;border-bottom-color:#acb0be;border-bottom-style:solid;border-bottom-width:1px;color:#4c4f69;display:flex;justify-content:center;margin-bottom:-1px;padding:0.5em 1em;vertical-align:top}html.theme--catppuccin-latte .tabs a:hover{border-bottom-color:#41445a;color:#41445a}html.theme--catppuccin-latte .tabs li{display:block}html.theme--catppuccin-latte .tabs li.is-active a{border-bottom-color:#1e66f5;color:#1e66f5}html.theme--catppuccin-latte .tabs ul{align-items:center;border-bottom-color:#acb0be;border-bottom-style:solid;border-bottom-width:1px;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}html.theme--catppuccin-latte .tabs ul.is-left{padding-right:0.75em}html.theme--catppuccin-latte .tabs ul.is-center{flex:none;justify-content:center;padding-left:0.75em;padding-right:0.75em}html.theme--catppuccin-latte .tabs ul.is-right{justify-content:flex-end;padding-left:0.75em}html.theme--catppuccin-latte .tabs .icon:first-child{margin-right:.5em}html.theme--catppuccin-latte .tabs .icon:last-child{margin-left:.5em}html.theme--catppuccin-latte .tabs.is-centered ul{justify-content:center}html.theme--catppuccin-latte .tabs.is-right ul{justify-content:flex-end}html.theme--catppuccin-latte .tabs.is-boxed a{border:1px solid transparent;border-radius:.4em .4em 0 0}html.theme--catppuccin-latte .tabs.is-boxed a:hover{background-color:#e6e9ef;border-bottom-color:#acb0be}html.theme--catppuccin-latte .tabs.is-boxed li.is-active a{background-color:#fff;border-color:#acb0be;border-bottom-color:rgba(0,0,0,0) !important}html.theme--catppuccin-latte .tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}html.theme--catppuccin-latte .tabs.is-toggle a{border-color:#acb0be;border-style:solid;border-width:1px;margin-bottom:0;position:relative}html.theme--catppuccin-latte .tabs.is-toggle a:hover{background-color:#e6e9ef;border-color:#9ca0b0;z-index:2}html.theme--catppuccin-latte .tabs.is-toggle li+li{margin-left:-1px}html.theme--catppuccin-latte .tabs.is-toggle li:first-child a{border-top-left-radius:.4em;border-bottom-left-radius:.4em}html.theme--catppuccin-latte .tabs.is-toggle li:last-child a{border-top-right-radius:.4em;border-bottom-right-radius:.4em}html.theme--catppuccin-latte .tabs.is-toggle li.is-active a{background-color:#1e66f5;border-color:#1e66f5;color:#fff;z-index:1}html.theme--catppuccin-latte .tabs.is-toggle ul{border-bottom:none}html.theme--catppuccin-latte .tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:9999px;border-top-left-radius:9999px;padding-left:1.25em}html.theme--catppuccin-latte .tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:9999px;border-top-right-radius:9999px;padding-right:1.25em}html.theme--catppuccin-latte .tabs.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.tabs{font-size:.75rem}html.theme--catppuccin-latte .tabs.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .tabs.is-large{font-size:1.5rem}html.theme--catppuccin-latte .column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>html.theme--catppuccin-latte .column.is-narrow{flex:none;width:unset}.columns.is-mobile>html.theme--catppuccin-latte .column.is-full{flex:none;width:100%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-half{flex:none;width:50%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-half{margin-left:50%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-0{flex:none;width:0%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-0{margin-left:0%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-1{flex:none;width:8.33333337%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-1{margin-left:8.33333337%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-2{flex:none;width:16.66666674%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-2{margin-left:16.66666674%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-3{flex:none;width:25%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-3{margin-left:25%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-4{flex:none;width:33.33333337%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-4{margin-left:33.33333337%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-5{flex:none;width:41.66666674%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-5{margin-left:41.66666674%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-6{flex:none;width:50%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-6{margin-left:50%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-7{flex:none;width:58.33333337%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-7{margin-left:58.33333337%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-8{flex:none;width:66.66666674%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-8{margin-left:66.66666674%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-9{flex:none;width:75%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-9{margin-left:75%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-10{flex:none;width:83.33333337%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-10{margin-left:83.33333337%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-11{flex:none;width:91.66666674%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-11{margin-left:91.66666674%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-12{flex:none;width:100%}.columns.is-mobile>html.theme--catppuccin-latte .column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){html.theme--catppuccin-latte .column.is-narrow-mobile{flex:none;width:unset}html.theme--catppuccin-latte .column.is-full-mobile{flex:none;width:100%}html.theme--catppuccin-latte .column.is-three-quarters-mobile{flex:none;width:75%}html.theme--catppuccin-latte .column.is-two-thirds-mobile{flex:none;width:66.6666%}html.theme--catppuccin-latte .column.is-half-mobile{flex:none;width:50%}html.theme--catppuccin-latte .column.is-one-third-mobile{flex:none;width:33.3333%}html.theme--catppuccin-latte .column.is-one-quarter-mobile{flex:none;width:25%}html.theme--catppuccin-latte .column.is-one-fifth-mobile{flex:none;width:20%}html.theme--catppuccin-latte .column.is-two-fifths-mobile{flex:none;width:40%}html.theme--catppuccin-latte .column.is-three-fifths-mobile{flex:none;width:60%}html.theme--catppuccin-latte .column.is-four-fifths-mobile{flex:none;width:80%}html.theme--catppuccin-latte .column.is-offset-three-quarters-mobile{margin-left:75%}html.theme--catppuccin-latte .column.is-offset-two-thirds-mobile{margin-left:66.6666%}html.theme--catppuccin-latte .column.is-offset-half-mobile{margin-left:50%}html.theme--catppuccin-latte .column.is-offset-one-third-mobile{margin-left:33.3333%}html.theme--catppuccin-latte .column.is-offset-one-quarter-mobile{margin-left:25%}html.theme--catppuccin-latte .column.is-offset-one-fifth-mobile{margin-left:20%}html.theme--catppuccin-latte .column.is-offset-two-fifths-mobile{margin-left:40%}html.theme--catppuccin-latte .column.is-offset-three-fifths-mobile{margin-left:60%}html.theme--catppuccin-latte .column.is-offset-four-fifths-mobile{margin-left:80%}html.theme--catppuccin-latte .column.is-0-mobile{flex:none;width:0%}html.theme--catppuccin-latte .column.is-offset-0-mobile{margin-left:0%}html.theme--catppuccin-latte .column.is-1-mobile{flex:none;width:8.33333337%}html.theme--catppuccin-latte .column.is-offset-1-mobile{margin-left:8.33333337%}html.theme--catppuccin-latte .column.is-2-mobile{flex:none;width:16.66666674%}html.theme--catppuccin-latte .column.is-offset-2-mobile{margin-left:16.66666674%}html.theme--catppuccin-latte .column.is-3-mobile{flex:none;width:25%}html.theme--catppuccin-latte .column.is-offset-3-mobile{margin-left:25%}html.theme--catppuccin-latte .column.is-4-mobile{flex:none;width:33.33333337%}html.theme--catppuccin-latte .column.is-offset-4-mobile{margin-left:33.33333337%}html.theme--catppuccin-latte .column.is-5-mobile{flex:none;width:41.66666674%}html.theme--catppuccin-latte .column.is-offset-5-mobile{margin-left:41.66666674%}html.theme--catppuccin-latte .column.is-6-mobile{flex:none;width:50%}html.theme--catppuccin-latte .column.is-offset-6-mobile{margin-left:50%}html.theme--catppuccin-latte .column.is-7-mobile{flex:none;width:58.33333337%}html.theme--catppuccin-latte .column.is-offset-7-mobile{margin-left:58.33333337%}html.theme--catppuccin-latte .column.is-8-mobile{flex:none;width:66.66666674%}html.theme--catppuccin-latte .column.is-offset-8-mobile{margin-left:66.66666674%}html.theme--catppuccin-latte .column.is-9-mobile{flex:none;width:75%}html.theme--catppuccin-latte .column.is-offset-9-mobile{margin-left:75%}html.theme--catppuccin-latte .column.is-10-mobile{flex:none;width:83.33333337%}html.theme--catppuccin-latte .column.is-offset-10-mobile{margin-left:83.33333337%}html.theme--catppuccin-latte .column.is-11-mobile{flex:none;width:91.66666674%}html.theme--catppuccin-latte .column.is-offset-11-mobile{margin-left:91.66666674%}html.theme--catppuccin-latte .column.is-12-mobile{flex:none;width:100%}html.theme--catppuccin-latte .column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .column.is-narrow,html.theme--catppuccin-latte .column.is-narrow-tablet{flex:none;width:unset}html.theme--catppuccin-latte .column.is-full,html.theme--catppuccin-latte .column.is-full-tablet{flex:none;width:100%}html.theme--catppuccin-latte .column.is-three-quarters,html.theme--catppuccin-latte .column.is-three-quarters-tablet{flex:none;width:75%}html.theme--catppuccin-latte .column.is-two-thirds,html.theme--catppuccin-latte .column.is-two-thirds-tablet{flex:none;width:66.6666%}html.theme--catppuccin-latte .column.is-half,html.theme--catppuccin-latte .column.is-half-tablet{flex:none;width:50%}html.theme--catppuccin-latte .column.is-one-third,html.theme--catppuccin-latte .column.is-one-third-tablet{flex:none;width:33.3333%}html.theme--catppuccin-latte .column.is-one-quarter,html.theme--catppuccin-latte .column.is-one-quarter-tablet{flex:none;width:25%}html.theme--catppuccin-latte .column.is-one-fifth,html.theme--catppuccin-latte .column.is-one-fifth-tablet{flex:none;width:20%}html.theme--catppuccin-latte .column.is-two-fifths,html.theme--catppuccin-latte .column.is-two-fifths-tablet{flex:none;width:40%}html.theme--catppuccin-latte .column.is-three-fifths,html.theme--catppuccin-latte .column.is-three-fifths-tablet{flex:none;width:60%}html.theme--catppuccin-latte .column.is-four-fifths,html.theme--catppuccin-latte .column.is-four-fifths-tablet{flex:none;width:80%}html.theme--catppuccin-latte .column.is-offset-three-quarters,html.theme--catppuccin-latte .column.is-offset-three-quarters-tablet{margin-left:75%}html.theme--catppuccin-latte .column.is-offset-two-thirds,html.theme--catppuccin-latte .column.is-offset-two-thirds-tablet{margin-left:66.6666%}html.theme--catppuccin-latte .column.is-offset-half,html.theme--catppuccin-latte .column.is-offset-half-tablet{margin-left:50%}html.theme--catppuccin-latte .column.is-offset-one-third,html.theme--catppuccin-latte .column.is-offset-one-third-tablet{margin-left:33.3333%}html.theme--catppuccin-latte .column.is-offset-one-quarter,html.theme--catppuccin-latte .column.is-offset-one-quarter-tablet{margin-left:25%}html.theme--catppuccin-latte .column.is-offset-one-fifth,html.theme--catppuccin-latte .column.is-offset-one-fifth-tablet{margin-left:20%}html.theme--catppuccin-latte .column.is-offset-two-fifths,html.theme--catppuccin-latte .column.is-offset-two-fifths-tablet{margin-left:40%}html.theme--catppuccin-latte .column.is-offset-three-fifths,html.theme--catppuccin-latte .column.is-offset-three-fifths-tablet{margin-left:60%}html.theme--catppuccin-latte .column.is-offset-four-fifths,html.theme--catppuccin-latte .column.is-offset-four-fifths-tablet{margin-left:80%}html.theme--catppuccin-latte .column.is-0,html.theme--catppuccin-latte .column.is-0-tablet{flex:none;width:0%}html.theme--catppuccin-latte .column.is-offset-0,html.theme--catppuccin-latte .column.is-offset-0-tablet{margin-left:0%}html.theme--catppuccin-latte .column.is-1,html.theme--catppuccin-latte .column.is-1-tablet{flex:none;width:8.33333337%}html.theme--catppuccin-latte .column.is-offset-1,html.theme--catppuccin-latte .column.is-offset-1-tablet{margin-left:8.33333337%}html.theme--catppuccin-latte .column.is-2,html.theme--catppuccin-latte .column.is-2-tablet{flex:none;width:16.66666674%}html.theme--catppuccin-latte .column.is-offset-2,html.theme--catppuccin-latte .column.is-offset-2-tablet{margin-left:16.66666674%}html.theme--catppuccin-latte .column.is-3,html.theme--catppuccin-latte .column.is-3-tablet{flex:none;width:25%}html.theme--catppuccin-latte .column.is-offset-3,html.theme--catppuccin-latte .column.is-offset-3-tablet{margin-left:25%}html.theme--catppuccin-latte .column.is-4,html.theme--catppuccin-latte .column.is-4-tablet{flex:none;width:33.33333337%}html.theme--catppuccin-latte .column.is-offset-4,html.theme--catppuccin-latte .column.is-offset-4-tablet{margin-left:33.33333337%}html.theme--catppuccin-latte .column.is-5,html.theme--catppuccin-latte .column.is-5-tablet{flex:none;width:41.66666674%}html.theme--catppuccin-latte .column.is-offset-5,html.theme--catppuccin-latte .column.is-offset-5-tablet{margin-left:41.66666674%}html.theme--catppuccin-latte .column.is-6,html.theme--catppuccin-latte .column.is-6-tablet{flex:none;width:50%}html.theme--catppuccin-latte .column.is-offset-6,html.theme--catppuccin-latte .column.is-offset-6-tablet{margin-left:50%}html.theme--catppuccin-latte .column.is-7,html.theme--catppuccin-latte .column.is-7-tablet{flex:none;width:58.33333337%}html.theme--catppuccin-latte .column.is-offset-7,html.theme--catppuccin-latte .column.is-offset-7-tablet{margin-left:58.33333337%}html.theme--catppuccin-latte .column.is-8,html.theme--catppuccin-latte .column.is-8-tablet{flex:none;width:66.66666674%}html.theme--catppuccin-latte .column.is-offset-8,html.theme--catppuccin-latte .column.is-offset-8-tablet{margin-left:66.66666674%}html.theme--catppuccin-latte .column.is-9,html.theme--catppuccin-latte .column.is-9-tablet{flex:none;width:75%}html.theme--catppuccin-latte .column.is-offset-9,html.theme--catppuccin-latte .column.is-offset-9-tablet{margin-left:75%}html.theme--catppuccin-latte .column.is-10,html.theme--catppuccin-latte .column.is-10-tablet{flex:none;width:83.33333337%}html.theme--catppuccin-latte .column.is-offset-10,html.theme--catppuccin-latte .column.is-offset-10-tablet{margin-left:83.33333337%}html.theme--catppuccin-latte .column.is-11,html.theme--catppuccin-latte .column.is-11-tablet{flex:none;width:91.66666674%}html.theme--catppuccin-latte .column.is-offset-11,html.theme--catppuccin-latte .column.is-offset-11-tablet{margin-left:91.66666674%}html.theme--catppuccin-latte .column.is-12,html.theme--catppuccin-latte .column.is-12-tablet{flex:none;width:100%}html.theme--catppuccin-latte .column.is-offset-12,html.theme--catppuccin-latte .column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .column.is-narrow-touch{flex:none;width:unset}html.theme--catppuccin-latte .column.is-full-touch{flex:none;width:100%}html.theme--catppuccin-latte .column.is-three-quarters-touch{flex:none;width:75%}html.theme--catppuccin-latte .column.is-two-thirds-touch{flex:none;width:66.6666%}html.theme--catppuccin-latte .column.is-half-touch{flex:none;width:50%}html.theme--catppuccin-latte .column.is-one-third-touch{flex:none;width:33.3333%}html.theme--catppuccin-latte .column.is-one-quarter-touch{flex:none;width:25%}html.theme--catppuccin-latte .column.is-one-fifth-touch{flex:none;width:20%}html.theme--catppuccin-latte .column.is-two-fifths-touch{flex:none;width:40%}html.theme--catppuccin-latte .column.is-three-fifths-touch{flex:none;width:60%}html.theme--catppuccin-latte .column.is-four-fifths-touch{flex:none;width:80%}html.theme--catppuccin-latte .column.is-offset-three-quarters-touch{margin-left:75%}html.theme--catppuccin-latte .column.is-offset-two-thirds-touch{margin-left:66.6666%}html.theme--catppuccin-latte .column.is-offset-half-touch{margin-left:50%}html.theme--catppuccin-latte .column.is-offset-one-third-touch{margin-left:33.3333%}html.theme--catppuccin-latte .column.is-offset-one-quarter-touch{margin-left:25%}html.theme--catppuccin-latte .column.is-offset-one-fifth-touch{margin-left:20%}html.theme--catppuccin-latte .column.is-offset-two-fifths-touch{margin-left:40%}html.theme--catppuccin-latte .column.is-offset-three-fifths-touch{margin-left:60%}html.theme--catppuccin-latte .column.is-offset-four-fifths-touch{margin-left:80%}html.theme--catppuccin-latte .column.is-0-touch{flex:none;width:0%}html.theme--catppuccin-latte .column.is-offset-0-touch{margin-left:0%}html.theme--catppuccin-latte .column.is-1-touch{flex:none;width:8.33333337%}html.theme--catppuccin-latte .column.is-offset-1-touch{margin-left:8.33333337%}html.theme--catppuccin-latte .column.is-2-touch{flex:none;width:16.66666674%}html.theme--catppuccin-latte .column.is-offset-2-touch{margin-left:16.66666674%}html.theme--catppuccin-latte .column.is-3-touch{flex:none;width:25%}html.theme--catppuccin-latte .column.is-offset-3-touch{margin-left:25%}html.theme--catppuccin-latte .column.is-4-touch{flex:none;width:33.33333337%}html.theme--catppuccin-latte .column.is-offset-4-touch{margin-left:33.33333337%}html.theme--catppuccin-latte .column.is-5-touch{flex:none;width:41.66666674%}html.theme--catppuccin-latte .column.is-offset-5-touch{margin-left:41.66666674%}html.theme--catppuccin-latte .column.is-6-touch{flex:none;width:50%}html.theme--catppuccin-latte .column.is-offset-6-touch{margin-left:50%}html.theme--catppuccin-latte .column.is-7-touch{flex:none;width:58.33333337%}html.theme--catppuccin-latte .column.is-offset-7-touch{margin-left:58.33333337%}html.theme--catppuccin-latte .column.is-8-touch{flex:none;width:66.66666674%}html.theme--catppuccin-latte .column.is-offset-8-touch{margin-left:66.66666674%}html.theme--catppuccin-latte .column.is-9-touch{flex:none;width:75%}html.theme--catppuccin-latte .column.is-offset-9-touch{margin-left:75%}html.theme--catppuccin-latte .column.is-10-touch{flex:none;width:83.33333337%}html.theme--catppuccin-latte .column.is-offset-10-touch{margin-left:83.33333337%}html.theme--catppuccin-latte .column.is-11-touch{flex:none;width:91.66666674%}html.theme--catppuccin-latte .column.is-offset-11-touch{margin-left:91.66666674%}html.theme--catppuccin-latte .column.is-12-touch{flex:none;width:100%}html.theme--catppuccin-latte .column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .column.is-narrow-desktop{flex:none;width:unset}html.theme--catppuccin-latte .column.is-full-desktop{flex:none;width:100%}html.theme--catppuccin-latte .column.is-three-quarters-desktop{flex:none;width:75%}html.theme--catppuccin-latte .column.is-two-thirds-desktop{flex:none;width:66.6666%}html.theme--catppuccin-latte .column.is-half-desktop{flex:none;width:50%}html.theme--catppuccin-latte .column.is-one-third-desktop{flex:none;width:33.3333%}html.theme--catppuccin-latte .column.is-one-quarter-desktop{flex:none;width:25%}html.theme--catppuccin-latte .column.is-one-fifth-desktop{flex:none;width:20%}html.theme--catppuccin-latte .column.is-two-fifths-desktop{flex:none;width:40%}html.theme--catppuccin-latte .column.is-three-fifths-desktop{flex:none;width:60%}html.theme--catppuccin-latte .column.is-four-fifths-desktop{flex:none;width:80%}html.theme--catppuccin-latte .column.is-offset-three-quarters-desktop{margin-left:75%}html.theme--catppuccin-latte .column.is-offset-two-thirds-desktop{margin-left:66.6666%}html.theme--catppuccin-latte .column.is-offset-half-desktop{margin-left:50%}html.theme--catppuccin-latte .column.is-offset-one-third-desktop{margin-left:33.3333%}html.theme--catppuccin-latte .column.is-offset-one-quarter-desktop{margin-left:25%}html.theme--catppuccin-latte .column.is-offset-one-fifth-desktop{margin-left:20%}html.theme--catppuccin-latte .column.is-offset-two-fifths-desktop{margin-left:40%}html.theme--catppuccin-latte .column.is-offset-three-fifths-desktop{margin-left:60%}html.theme--catppuccin-latte .column.is-offset-four-fifths-desktop{margin-left:80%}html.theme--catppuccin-latte .column.is-0-desktop{flex:none;width:0%}html.theme--catppuccin-latte .column.is-offset-0-desktop{margin-left:0%}html.theme--catppuccin-latte .column.is-1-desktop{flex:none;width:8.33333337%}html.theme--catppuccin-latte .column.is-offset-1-desktop{margin-left:8.33333337%}html.theme--catppuccin-latte .column.is-2-desktop{flex:none;width:16.66666674%}html.theme--catppuccin-latte .column.is-offset-2-desktop{margin-left:16.66666674%}html.theme--catppuccin-latte .column.is-3-desktop{flex:none;width:25%}html.theme--catppuccin-latte .column.is-offset-3-desktop{margin-left:25%}html.theme--catppuccin-latte .column.is-4-desktop{flex:none;width:33.33333337%}html.theme--catppuccin-latte .column.is-offset-4-desktop{margin-left:33.33333337%}html.theme--catppuccin-latte .column.is-5-desktop{flex:none;width:41.66666674%}html.theme--catppuccin-latte .column.is-offset-5-desktop{margin-left:41.66666674%}html.theme--catppuccin-latte .column.is-6-desktop{flex:none;width:50%}html.theme--catppuccin-latte .column.is-offset-6-desktop{margin-left:50%}html.theme--catppuccin-latte .column.is-7-desktop{flex:none;width:58.33333337%}html.theme--catppuccin-latte .column.is-offset-7-desktop{margin-left:58.33333337%}html.theme--catppuccin-latte .column.is-8-desktop{flex:none;width:66.66666674%}html.theme--catppuccin-latte .column.is-offset-8-desktop{margin-left:66.66666674%}html.theme--catppuccin-latte .column.is-9-desktop{flex:none;width:75%}html.theme--catppuccin-latte .column.is-offset-9-desktop{margin-left:75%}html.theme--catppuccin-latte .column.is-10-desktop{flex:none;width:83.33333337%}html.theme--catppuccin-latte .column.is-offset-10-desktop{margin-left:83.33333337%}html.theme--catppuccin-latte .column.is-11-desktop{flex:none;width:91.66666674%}html.theme--catppuccin-latte .column.is-offset-11-desktop{margin-left:91.66666674%}html.theme--catppuccin-latte .column.is-12-desktop{flex:none;width:100%}html.theme--catppuccin-latte .column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .column.is-narrow-widescreen{flex:none;width:unset}html.theme--catppuccin-latte .column.is-full-widescreen{flex:none;width:100%}html.theme--catppuccin-latte .column.is-three-quarters-widescreen{flex:none;width:75%}html.theme--catppuccin-latte .column.is-two-thirds-widescreen{flex:none;width:66.6666%}html.theme--catppuccin-latte .column.is-half-widescreen{flex:none;width:50%}html.theme--catppuccin-latte .column.is-one-third-widescreen{flex:none;width:33.3333%}html.theme--catppuccin-latte .column.is-one-quarter-widescreen{flex:none;width:25%}html.theme--catppuccin-latte .column.is-one-fifth-widescreen{flex:none;width:20%}html.theme--catppuccin-latte .column.is-two-fifths-widescreen{flex:none;width:40%}html.theme--catppuccin-latte .column.is-three-fifths-widescreen{flex:none;width:60%}html.theme--catppuccin-latte .column.is-four-fifths-widescreen{flex:none;width:80%}html.theme--catppuccin-latte .column.is-offset-three-quarters-widescreen{margin-left:75%}html.theme--catppuccin-latte .column.is-offset-two-thirds-widescreen{margin-left:66.6666%}html.theme--catppuccin-latte .column.is-offset-half-widescreen{margin-left:50%}html.theme--catppuccin-latte .column.is-offset-one-third-widescreen{margin-left:33.3333%}html.theme--catppuccin-latte .column.is-offset-one-quarter-widescreen{margin-left:25%}html.theme--catppuccin-latte .column.is-offset-one-fifth-widescreen{margin-left:20%}html.theme--catppuccin-latte .column.is-offset-two-fifths-widescreen{margin-left:40%}html.theme--catppuccin-latte .column.is-offset-three-fifths-widescreen{margin-left:60%}html.theme--catppuccin-latte .column.is-offset-four-fifths-widescreen{margin-left:80%}html.theme--catppuccin-latte .column.is-0-widescreen{flex:none;width:0%}html.theme--catppuccin-latte .column.is-offset-0-widescreen{margin-left:0%}html.theme--catppuccin-latte .column.is-1-widescreen{flex:none;width:8.33333337%}html.theme--catppuccin-latte .column.is-offset-1-widescreen{margin-left:8.33333337%}html.theme--catppuccin-latte .column.is-2-widescreen{flex:none;width:16.66666674%}html.theme--catppuccin-latte .column.is-offset-2-widescreen{margin-left:16.66666674%}html.theme--catppuccin-latte .column.is-3-widescreen{flex:none;width:25%}html.theme--catppuccin-latte .column.is-offset-3-widescreen{margin-left:25%}html.theme--catppuccin-latte .column.is-4-widescreen{flex:none;width:33.33333337%}html.theme--catppuccin-latte .column.is-offset-4-widescreen{margin-left:33.33333337%}html.theme--catppuccin-latte .column.is-5-widescreen{flex:none;width:41.66666674%}html.theme--catppuccin-latte .column.is-offset-5-widescreen{margin-left:41.66666674%}html.theme--catppuccin-latte .column.is-6-widescreen{flex:none;width:50%}html.theme--catppuccin-latte .column.is-offset-6-widescreen{margin-left:50%}html.theme--catppuccin-latte .column.is-7-widescreen{flex:none;width:58.33333337%}html.theme--catppuccin-latte .column.is-offset-7-widescreen{margin-left:58.33333337%}html.theme--catppuccin-latte .column.is-8-widescreen{flex:none;width:66.66666674%}html.theme--catppuccin-latte .column.is-offset-8-widescreen{margin-left:66.66666674%}html.theme--catppuccin-latte .column.is-9-widescreen{flex:none;width:75%}html.theme--catppuccin-latte .column.is-offset-9-widescreen{margin-left:75%}html.theme--catppuccin-latte .column.is-10-widescreen{flex:none;width:83.33333337%}html.theme--catppuccin-latte .column.is-offset-10-widescreen{margin-left:83.33333337%}html.theme--catppuccin-latte .column.is-11-widescreen{flex:none;width:91.66666674%}html.theme--catppuccin-latte .column.is-offset-11-widescreen{margin-left:91.66666674%}html.theme--catppuccin-latte .column.is-12-widescreen{flex:none;width:100%}html.theme--catppuccin-latte .column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .column.is-narrow-fullhd{flex:none;width:unset}html.theme--catppuccin-latte .column.is-full-fullhd{flex:none;width:100%}html.theme--catppuccin-latte .column.is-three-quarters-fullhd{flex:none;width:75%}html.theme--catppuccin-latte .column.is-two-thirds-fullhd{flex:none;width:66.6666%}html.theme--catppuccin-latte .column.is-half-fullhd{flex:none;width:50%}html.theme--catppuccin-latte .column.is-one-third-fullhd{flex:none;width:33.3333%}html.theme--catppuccin-latte .column.is-one-quarter-fullhd{flex:none;width:25%}html.theme--catppuccin-latte .column.is-one-fifth-fullhd{flex:none;width:20%}html.theme--catppuccin-latte .column.is-two-fifths-fullhd{flex:none;width:40%}html.theme--catppuccin-latte .column.is-three-fifths-fullhd{flex:none;width:60%}html.theme--catppuccin-latte .column.is-four-fifths-fullhd{flex:none;width:80%}html.theme--catppuccin-latte .column.is-offset-three-quarters-fullhd{margin-left:75%}html.theme--catppuccin-latte .column.is-offset-two-thirds-fullhd{margin-left:66.6666%}html.theme--catppuccin-latte .column.is-offset-half-fullhd{margin-left:50%}html.theme--catppuccin-latte .column.is-offset-one-third-fullhd{margin-left:33.3333%}html.theme--catppuccin-latte .column.is-offset-one-quarter-fullhd{margin-left:25%}html.theme--catppuccin-latte .column.is-offset-one-fifth-fullhd{margin-left:20%}html.theme--catppuccin-latte .column.is-offset-two-fifths-fullhd{margin-left:40%}html.theme--catppuccin-latte .column.is-offset-three-fifths-fullhd{margin-left:60%}html.theme--catppuccin-latte .column.is-offset-four-fifths-fullhd{margin-left:80%}html.theme--catppuccin-latte .column.is-0-fullhd{flex:none;width:0%}html.theme--catppuccin-latte .column.is-offset-0-fullhd{margin-left:0%}html.theme--catppuccin-latte .column.is-1-fullhd{flex:none;width:8.33333337%}html.theme--catppuccin-latte .column.is-offset-1-fullhd{margin-left:8.33333337%}html.theme--catppuccin-latte .column.is-2-fullhd{flex:none;width:16.66666674%}html.theme--catppuccin-latte .column.is-offset-2-fullhd{margin-left:16.66666674%}html.theme--catppuccin-latte .column.is-3-fullhd{flex:none;width:25%}html.theme--catppuccin-latte .column.is-offset-3-fullhd{margin-left:25%}html.theme--catppuccin-latte .column.is-4-fullhd{flex:none;width:33.33333337%}html.theme--catppuccin-latte .column.is-offset-4-fullhd{margin-left:33.33333337%}html.theme--catppuccin-latte .column.is-5-fullhd{flex:none;width:41.66666674%}html.theme--catppuccin-latte .column.is-offset-5-fullhd{margin-left:41.66666674%}html.theme--catppuccin-latte .column.is-6-fullhd{flex:none;width:50%}html.theme--catppuccin-latte .column.is-offset-6-fullhd{margin-left:50%}html.theme--catppuccin-latte .column.is-7-fullhd{flex:none;width:58.33333337%}html.theme--catppuccin-latte .column.is-offset-7-fullhd{margin-left:58.33333337%}html.theme--catppuccin-latte .column.is-8-fullhd{flex:none;width:66.66666674%}html.theme--catppuccin-latte .column.is-offset-8-fullhd{margin-left:66.66666674%}html.theme--catppuccin-latte .column.is-9-fullhd{flex:none;width:75%}html.theme--catppuccin-latte .column.is-offset-9-fullhd{margin-left:75%}html.theme--catppuccin-latte .column.is-10-fullhd{flex:none;width:83.33333337%}html.theme--catppuccin-latte .column.is-offset-10-fullhd{margin-left:83.33333337%}html.theme--catppuccin-latte .column.is-11-fullhd{flex:none;width:91.66666674%}html.theme--catppuccin-latte .column.is-offset-11-fullhd{margin-left:91.66666674%}html.theme--catppuccin-latte .column.is-12-fullhd{flex:none;width:100%}html.theme--catppuccin-latte .column.is-offset-12-fullhd{margin-left:100%}}html.theme--catppuccin-latte .columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--catppuccin-latte .columns:last-child{margin-bottom:-.75rem}html.theme--catppuccin-latte .columns:not(:last-child){margin-bottom:calc(1.5rem - .75rem)}html.theme--catppuccin-latte .columns.is-centered{justify-content:center}html.theme--catppuccin-latte .columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}html.theme--catppuccin-latte .columns.is-gapless>.column{margin:0;padding:0 !important}html.theme--catppuccin-latte .columns.is-gapless:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-latte .columns.is-gapless:last-child{margin-bottom:0}html.theme--catppuccin-latte .columns.is-mobile{display:flex}html.theme--catppuccin-latte .columns.is-multiline{flex-wrap:wrap}html.theme--catppuccin-latte .columns.is-vcentered{align-items:center}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .columns:not(.is-desktop){display:flex}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .columns.is-desktop{display:flex}}html.theme--catppuccin-latte .columns.is-variable{--columnGap: 0.75rem;margin-left:calc(-1 * var(--columnGap));margin-right:calc(-1 * var(--columnGap))}html.theme--catppuccin-latte .columns.is-variable>.column{padding-left:var(--columnGap);padding-right:var(--columnGap)}html.theme--catppuccin-latte .columns.is-variable.is-0{--columnGap: 0rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .columns.is-variable.is-0-mobile{--columnGap: 0rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .columns.is-variable.is-0-tablet{--columnGap: 0rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-0-tablet-only{--columnGap: 0rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-0-touch{--columnGap: 0rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .columns.is-variable.is-0-desktop{--columnGap: 0rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-latte .columns.is-variable.is-0-desktop-only{--columnGap: 0rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .columns.is-variable.is-0-widescreen{--columnGap: 0rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-latte .columns.is-variable.is-0-widescreen-only{--columnGap: 0rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .columns.is-variable.is-0-fullhd{--columnGap: 0rem}}html.theme--catppuccin-latte .columns.is-variable.is-1{--columnGap: .25rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .columns.is-variable.is-1-mobile{--columnGap: .25rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .columns.is-variable.is-1-tablet{--columnGap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-1-tablet-only{--columnGap: .25rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-1-touch{--columnGap: .25rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .columns.is-variable.is-1-desktop{--columnGap: .25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-latte .columns.is-variable.is-1-desktop-only{--columnGap: .25rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .columns.is-variable.is-1-widescreen{--columnGap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-latte .columns.is-variable.is-1-widescreen-only{--columnGap: .25rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .columns.is-variable.is-1-fullhd{--columnGap: .25rem}}html.theme--catppuccin-latte .columns.is-variable.is-2{--columnGap: .5rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .columns.is-variable.is-2-mobile{--columnGap: .5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .columns.is-variable.is-2-tablet{--columnGap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-2-tablet-only{--columnGap: .5rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-2-touch{--columnGap: .5rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .columns.is-variable.is-2-desktop{--columnGap: .5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-latte .columns.is-variable.is-2-desktop-only{--columnGap: .5rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .columns.is-variable.is-2-widescreen{--columnGap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-latte .columns.is-variable.is-2-widescreen-only{--columnGap: .5rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .columns.is-variable.is-2-fullhd{--columnGap: .5rem}}html.theme--catppuccin-latte .columns.is-variable.is-3{--columnGap: .75rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .columns.is-variable.is-3-mobile{--columnGap: .75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .columns.is-variable.is-3-tablet{--columnGap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-3-tablet-only{--columnGap: .75rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-3-touch{--columnGap: .75rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .columns.is-variable.is-3-desktop{--columnGap: .75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-latte .columns.is-variable.is-3-desktop-only{--columnGap: .75rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .columns.is-variable.is-3-widescreen{--columnGap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-latte .columns.is-variable.is-3-widescreen-only{--columnGap: .75rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .columns.is-variable.is-3-fullhd{--columnGap: .75rem}}html.theme--catppuccin-latte .columns.is-variable.is-4{--columnGap: 1rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .columns.is-variable.is-4-mobile{--columnGap: 1rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .columns.is-variable.is-4-tablet{--columnGap: 1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-4-tablet-only{--columnGap: 1rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-4-touch{--columnGap: 1rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .columns.is-variable.is-4-desktop{--columnGap: 1rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-latte .columns.is-variable.is-4-desktop-only{--columnGap: 1rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .columns.is-variable.is-4-widescreen{--columnGap: 1rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-latte .columns.is-variable.is-4-widescreen-only{--columnGap: 1rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .columns.is-variable.is-4-fullhd{--columnGap: 1rem}}html.theme--catppuccin-latte .columns.is-variable.is-5{--columnGap: 1.25rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .columns.is-variable.is-5-mobile{--columnGap: 1.25rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .columns.is-variable.is-5-tablet{--columnGap: 1.25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-5-tablet-only{--columnGap: 1.25rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-5-touch{--columnGap: 1.25rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .columns.is-variable.is-5-desktop{--columnGap: 1.25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-latte .columns.is-variable.is-5-desktop-only{--columnGap: 1.25rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .columns.is-variable.is-5-widescreen{--columnGap: 1.25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-latte .columns.is-variable.is-5-widescreen-only{--columnGap: 1.25rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .columns.is-variable.is-5-fullhd{--columnGap: 1.25rem}}html.theme--catppuccin-latte .columns.is-variable.is-6{--columnGap: 1.5rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .columns.is-variable.is-6-mobile{--columnGap: 1.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .columns.is-variable.is-6-tablet{--columnGap: 1.5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-6-tablet-only{--columnGap: 1.5rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-6-touch{--columnGap: 1.5rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .columns.is-variable.is-6-desktop{--columnGap: 1.5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-latte .columns.is-variable.is-6-desktop-only{--columnGap: 1.5rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .columns.is-variable.is-6-widescreen{--columnGap: 1.5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-latte .columns.is-variable.is-6-widescreen-only{--columnGap: 1.5rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .columns.is-variable.is-6-fullhd{--columnGap: 1.5rem}}html.theme--catppuccin-latte .columns.is-variable.is-7{--columnGap: 1.75rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .columns.is-variable.is-7-mobile{--columnGap: 1.75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .columns.is-variable.is-7-tablet{--columnGap: 1.75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-7-tablet-only{--columnGap: 1.75rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-7-touch{--columnGap: 1.75rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .columns.is-variable.is-7-desktop{--columnGap: 1.75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-latte .columns.is-variable.is-7-desktop-only{--columnGap: 1.75rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .columns.is-variable.is-7-widescreen{--columnGap: 1.75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-latte .columns.is-variable.is-7-widescreen-only{--columnGap: 1.75rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .columns.is-variable.is-7-fullhd{--columnGap: 1.75rem}}html.theme--catppuccin-latte .columns.is-variable.is-8{--columnGap: 2rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .columns.is-variable.is-8-mobile{--columnGap: 2rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .columns.is-variable.is-8-tablet{--columnGap: 2rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-8-tablet-only{--columnGap: 2rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .columns.is-variable.is-8-touch{--columnGap: 2rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .columns.is-variable.is-8-desktop{--columnGap: 2rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-latte .columns.is-variable.is-8-desktop-only{--columnGap: 2rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-latte .columns.is-variable.is-8-widescreen{--columnGap: 2rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-latte .columns.is-variable.is-8-widescreen-only{--columnGap: 2rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-latte .columns.is-variable.is-8-fullhd{--columnGap: 2rem}}html.theme--catppuccin-latte .tile{align-items:stretch;display:block;flex-basis:0;flex-grow:1;flex-shrink:1;min-height:min-content}html.theme--catppuccin-latte .tile.is-ancestor{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--catppuccin-latte .tile.is-ancestor:last-child{margin-bottom:-.75rem}html.theme--catppuccin-latte .tile.is-ancestor:not(:last-child){margin-bottom:.75rem}html.theme--catppuccin-latte .tile.is-child{margin:0 !important}html.theme--catppuccin-latte .tile.is-parent{padding:.75rem}html.theme--catppuccin-latte .tile.is-vertical{flex-direction:column}html.theme--catppuccin-latte .tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem !important}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .tile:not(.is-child){display:flex}html.theme--catppuccin-latte .tile.is-1{flex:none;width:8.33333337%}html.theme--catppuccin-latte .tile.is-2{flex:none;width:16.66666674%}html.theme--catppuccin-latte .tile.is-3{flex:none;width:25%}html.theme--catppuccin-latte .tile.is-4{flex:none;width:33.33333337%}html.theme--catppuccin-latte .tile.is-5{flex:none;width:41.66666674%}html.theme--catppuccin-latte .tile.is-6{flex:none;width:50%}html.theme--catppuccin-latte .tile.is-7{flex:none;width:58.33333337%}html.theme--catppuccin-latte .tile.is-8{flex:none;width:66.66666674%}html.theme--catppuccin-latte .tile.is-9{flex:none;width:75%}html.theme--catppuccin-latte .tile.is-10{flex:none;width:83.33333337%}html.theme--catppuccin-latte .tile.is-11{flex:none;width:91.66666674%}html.theme--catppuccin-latte .tile.is-12{flex:none;width:100%}}html.theme--catppuccin-latte .hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}html.theme--catppuccin-latte .hero .navbar{background:none}html.theme--catppuccin-latte .hero .tabs ul{border-bottom:none}html.theme--catppuccin-latte .hero.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .hero.is-white strong{color:inherit}html.theme--catppuccin-latte .hero.is-white .title{color:#0a0a0a}html.theme--catppuccin-latte .hero.is-white .subtitle{color:rgba(10,10,10,0.9)}html.theme--catppuccin-latte .hero.is-white .subtitle a:not(.button),html.theme--catppuccin-latte .hero.is-white .subtitle strong{color:#0a0a0a}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .hero.is-white .navbar-menu{background-color:#fff}}html.theme--catppuccin-latte .hero.is-white .navbar-item,html.theme--catppuccin-latte .hero.is-white .navbar-link{color:rgba(10,10,10,0.7)}html.theme--catppuccin-latte .hero.is-white a.navbar-item:hover,html.theme--catppuccin-latte .hero.is-white a.navbar-item.is-active,html.theme--catppuccin-latte .hero.is-white .navbar-link:hover,html.theme--catppuccin-latte .hero.is-white .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-latte .hero.is-white .tabs a{color:#0a0a0a;opacity:0.9}html.theme--catppuccin-latte .hero.is-white .tabs a:hover{opacity:1}html.theme--catppuccin-latte .hero.is-white .tabs li.is-active a{color:#fff !important;opacity:1}html.theme--catppuccin-latte .hero.is-white .tabs.is-boxed a,html.theme--catppuccin-latte .hero.is-white .tabs.is-toggle a{color:#0a0a0a}html.theme--catppuccin-latte .hero.is-white .tabs.is-boxed a:hover,html.theme--catppuccin-latte .hero.is-white .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-latte .hero.is-white .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .hero.is-white .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-latte .hero.is-white .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .hero.is-white .tabs.is-toggle li.is-active a:hover{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .hero.is-white.is-bold{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}}html.theme--catppuccin-latte .hero.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-latte .hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .hero.is-black strong{color:inherit}html.theme--catppuccin-latte .hero.is-black .title{color:#fff}html.theme--catppuccin-latte .hero.is-black .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-latte .hero.is-black .subtitle a:not(.button),html.theme--catppuccin-latte .hero.is-black .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .hero.is-black .navbar-menu{background-color:#0a0a0a}}html.theme--catppuccin-latte .hero.is-black .navbar-item,html.theme--catppuccin-latte .hero.is-black .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-latte .hero.is-black a.navbar-item:hover,html.theme--catppuccin-latte .hero.is-black a.navbar-item.is-active,html.theme--catppuccin-latte .hero.is-black .navbar-link:hover,html.theme--catppuccin-latte .hero.is-black .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-latte .hero.is-black .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-latte .hero.is-black .tabs a:hover{opacity:1}html.theme--catppuccin-latte .hero.is-black .tabs li.is-active a{color:#0a0a0a !important;opacity:1}html.theme--catppuccin-latte .hero.is-black .tabs.is-boxed a,html.theme--catppuccin-latte .hero.is-black .tabs.is-toggle a{color:#fff}html.theme--catppuccin-latte .hero.is-black .tabs.is-boxed a:hover,html.theme--catppuccin-latte .hero.is-black .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-latte .hero.is-black .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .hero.is-black .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-latte .hero.is-black .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .hero.is-black .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-latte .hero.is-black.is-bold{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}}html.theme--catppuccin-latte .hero.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .hero.is-light strong{color:inherit}html.theme--catppuccin-latte .hero.is-light .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .hero.is-light .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-latte .hero.is-light .subtitle a:not(.button),html.theme--catppuccin-latte .hero.is-light .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .hero.is-light .navbar-menu{background-color:#f5f5f5}}html.theme--catppuccin-latte .hero.is-light .navbar-item,html.theme--catppuccin-latte .hero.is-light .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .hero.is-light a.navbar-item:hover,html.theme--catppuccin-latte .hero.is-light a.navbar-item.is-active,html.theme--catppuccin-latte .hero.is-light .navbar-link:hover,html.theme--catppuccin-latte .hero.is-light .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .hero.is-light .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-latte .hero.is-light .tabs a:hover{opacity:1}html.theme--catppuccin-latte .hero.is-light .tabs li.is-active a{color:#f5f5f5 !important;opacity:1}html.theme--catppuccin-latte .hero.is-light .tabs.is-boxed a,html.theme--catppuccin-latte .hero.is-light .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .hero.is-light .tabs.is-boxed a:hover,html.theme--catppuccin-latte .hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-latte .hero.is-light .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .hero.is-light .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-latte .hero.is-light .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-latte .hero.is-light.is-bold{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}}html.theme--catppuccin-latte .hero.is-dark,html.theme--catppuccin-latte .content kbd.hero{background-color:#ccd0da;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .hero.is-dark strong,html.theme--catppuccin-latte .content kbd.hero strong{color:inherit}html.theme--catppuccin-latte .hero.is-dark .title,html.theme--catppuccin-latte .content kbd.hero .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .hero.is-dark .subtitle,html.theme--catppuccin-latte .content kbd.hero .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-latte .hero.is-dark .subtitle a:not(.button),html.theme--catppuccin-latte .content kbd.hero .subtitle a:not(.button),html.theme--catppuccin-latte .hero.is-dark .subtitle strong,html.theme--catppuccin-latte .content kbd.hero .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .hero.is-dark .navbar-menu,html.theme--catppuccin-latte .content kbd.hero .navbar-menu{background-color:#ccd0da}}html.theme--catppuccin-latte .hero.is-dark .navbar-item,html.theme--catppuccin-latte .content kbd.hero .navbar-item,html.theme--catppuccin-latte .hero.is-dark .navbar-link,html.theme--catppuccin-latte .content kbd.hero .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .hero.is-dark a.navbar-item:hover,html.theme--catppuccin-latte .content kbd.hero a.navbar-item:hover,html.theme--catppuccin-latte .hero.is-dark a.navbar-item.is-active,html.theme--catppuccin-latte .content kbd.hero a.navbar-item.is-active,html.theme--catppuccin-latte .hero.is-dark .navbar-link:hover,html.theme--catppuccin-latte .content kbd.hero .navbar-link:hover,html.theme--catppuccin-latte .hero.is-dark .navbar-link.is-active,html.theme--catppuccin-latte .content kbd.hero .navbar-link.is-active{background-color:#bdc2cf;color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .hero.is-dark .tabs a,html.theme--catppuccin-latte .content kbd.hero .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-latte .hero.is-dark .tabs a:hover,html.theme--catppuccin-latte .content kbd.hero .tabs a:hover{opacity:1}html.theme--catppuccin-latte .hero.is-dark .tabs li.is-active a,html.theme--catppuccin-latte .content kbd.hero .tabs li.is-active a{color:#ccd0da !important;opacity:1}html.theme--catppuccin-latte .hero.is-dark .tabs.is-boxed a,html.theme--catppuccin-latte .content kbd.hero .tabs.is-boxed a,html.theme--catppuccin-latte .hero.is-dark .tabs.is-toggle a,html.theme--catppuccin-latte .content kbd.hero .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-latte .hero.is-dark .tabs.is-boxed a:hover,html.theme--catppuccin-latte .content kbd.hero .tabs.is-boxed a:hover,html.theme--catppuccin-latte .hero.is-dark .tabs.is-toggle a:hover,html.theme--catppuccin-latte .content kbd.hero .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-latte .hero.is-dark .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .content kbd.hero .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .hero.is-dark .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-latte .hero.is-dark .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .content kbd.hero .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .hero.is-dark .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:#ccd0da}html.theme--catppuccin-latte .hero.is-dark.is-bold,html.theme--catppuccin-latte .content kbd.hero.is-bold{background-image:linear-gradient(141deg, #a7b8cc 0%, #ccd0da 71%, #d9dbe6 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero.is-dark.is-bold .navbar-menu,html.theme--catppuccin-latte .content kbd.hero.is-bold .navbar-menu{background-image:linear-gradient(141deg, #a7b8cc 0%, #ccd0da 71%, #d9dbe6 100%)}}html.theme--catppuccin-latte .hero.is-primary,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .hero.is-primary strong,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink strong{color:inherit}html.theme--catppuccin-latte .hero.is-primary .title,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .title{color:#fff}html.theme--catppuccin-latte .hero.is-primary .subtitle,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-latte .hero.is-primary .subtitle a:not(.button),html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .subtitle a:not(.button),html.theme--catppuccin-latte .hero.is-primary .subtitle strong,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .hero.is-primary .navbar-menu,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .navbar-menu{background-color:#1e66f5}}html.theme--catppuccin-latte .hero.is-primary .navbar-item,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .navbar-item,html.theme--catppuccin-latte .hero.is-primary .navbar-link,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-latte .hero.is-primary a.navbar-item:hover,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink a.navbar-item:hover,html.theme--catppuccin-latte .hero.is-primary a.navbar-item.is-active,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink a.navbar-item.is-active,html.theme--catppuccin-latte .hero.is-primary .navbar-link:hover,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .navbar-link:hover,html.theme--catppuccin-latte .hero.is-primary .navbar-link.is-active,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .navbar-link.is-active{background-color:#0b57ef;color:#fff}html.theme--catppuccin-latte .hero.is-primary .tabs a,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-latte .hero.is-primary .tabs a:hover,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .tabs a:hover{opacity:1}html.theme--catppuccin-latte .hero.is-primary .tabs li.is-active a,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .tabs li.is-active a{color:#1e66f5 !important;opacity:1}html.theme--catppuccin-latte .hero.is-primary .tabs.is-boxed a,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a,html.theme--catppuccin-latte .hero.is-primary .tabs.is-toggle a,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a{color:#fff}html.theme--catppuccin-latte .hero.is-primary .tabs.is-boxed a:hover,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a:hover,html.theme--catppuccin-latte .hero.is-primary .tabs.is-toggle a:hover,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-latte .hero.is-primary .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .hero.is-primary .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-latte .hero.is-primary .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#1e66f5}html.theme--catppuccin-latte .hero.is-primary.is-bold,html.theme--catppuccin-latte .docstring>section>a.hero.is-bold.docs-sourcelink{background-image:linear-gradient(141deg, #0070e0 0%, #1e66f5 71%, #3153fb 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero.is-primary.is-bold .navbar-menu,html.theme--catppuccin-latte .docstring>section>a.hero.is-bold.docs-sourcelink .navbar-menu{background-image:linear-gradient(141deg, #0070e0 0%, #1e66f5 71%, #3153fb 100%)}}html.theme--catppuccin-latte .hero.is-link{background-color:#1e66f5;color:#fff}html.theme--catppuccin-latte .hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .hero.is-link strong{color:inherit}html.theme--catppuccin-latte .hero.is-link .title{color:#fff}html.theme--catppuccin-latte .hero.is-link .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-latte .hero.is-link .subtitle a:not(.button),html.theme--catppuccin-latte .hero.is-link .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .hero.is-link .navbar-menu{background-color:#1e66f5}}html.theme--catppuccin-latte .hero.is-link .navbar-item,html.theme--catppuccin-latte .hero.is-link .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-latte .hero.is-link a.navbar-item:hover,html.theme--catppuccin-latte .hero.is-link a.navbar-item.is-active,html.theme--catppuccin-latte .hero.is-link .navbar-link:hover,html.theme--catppuccin-latte .hero.is-link .navbar-link.is-active{background-color:#0b57ef;color:#fff}html.theme--catppuccin-latte .hero.is-link .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-latte .hero.is-link .tabs a:hover{opacity:1}html.theme--catppuccin-latte .hero.is-link .tabs li.is-active a{color:#1e66f5 !important;opacity:1}html.theme--catppuccin-latte .hero.is-link .tabs.is-boxed a,html.theme--catppuccin-latte .hero.is-link .tabs.is-toggle a{color:#fff}html.theme--catppuccin-latte .hero.is-link .tabs.is-boxed a:hover,html.theme--catppuccin-latte .hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-latte .hero.is-link .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .hero.is-link .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-latte .hero.is-link .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#1e66f5}html.theme--catppuccin-latte .hero.is-link.is-bold{background-image:linear-gradient(141deg, #0070e0 0%, #1e66f5 71%, #3153fb 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg, #0070e0 0%, #1e66f5 71%, #3153fb 100%)}}html.theme--catppuccin-latte .hero.is-info{background-color:#179299;color:#fff}html.theme--catppuccin-latte .hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .hero.is-info strong{color:inherit}html.theme--catppuccin-latte .hero.is-info .title{color:#fff}html.theme--catppuccin-latte .hero.is-info .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-latte .hero.is-info .subtitle a:not(.button),html.theme--catppuccin-latte .hero.is-info .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .hero.is-info .navbar-menu{background-color:#179299}}html.theme--catppuccin-latte .hero.is-info .navbar-item,html.theme--catppuccin-latte .hero.is-info .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-latte .hero.is-info a.navbar-item:hover,html.theme--catppuccin-latte .hero.is-info a.navbar-item.is-active,html.theme--catppuccin-latte .hero.is-info .navbar-link:hover,html.theme--catppuccin-latte .hero.is-info .navbar-link.is-active{background-color:#147d83;color:#fff}html.theme--catppuccin-latte .hero.is-info .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-latte .hero.is-info .tabs a:hover{opacity:1}html.theme--catppuccin-latte .hero.is-info .tabs li.is-active a{color:#179299 !important;opacity:1}html.theme--catppuccin-latte .hero.is-info .tabs.is-boxed a,html.theme--catppuccin-latte .hero.is-info .tabs.is-toggle a{color:#fff}html.theme--catppuccin-latte .hero.is-info .tabs.is-boxed a:hover,html.theme--catppuccin-latte .hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-latte .hero.is-info .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .hero.is-info .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-latte .hero.is-info .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .hero.is-info .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#179299}html.theme--catppuccin-latte .hero.is-info.is-bold{background-image:linear-gradient(141deg, #0a7367 0%, #179299 71%, #1591b4 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg, #0a7367 0%, #179299 71%, #1591b4 100%)}}html.theme--catppuccin-latte .hero.is-success{background-color:#40a02b;color:#fff}html.theme--catppuccin-latte .hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .hero.is-success strong{color:inherit}html.theme--catppuccin-latte .hero.is-success .title{color:#fff}html.theme--catppuccin-latte .hero.is-success .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-latte .hero.is-success .subtitle a:not(.button),html.theme--catppuccin-latte .hero.is-success .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .hero.is-success .navbar-menu{background-color:#40a02b}}html.theme--catppuccin-latte .hero.is-success .navbar-item,html.theme--catppuccin-latte .hero.is-success .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-latte .hero.is-success a.navbar-item:hover,html.theme--catppuccin-latte .hero.is-success a.navbar-item.is-active,html.theme--catppuccin-latte .hero.is-success .navbar-link:hover,html.theme--catppuccin-latte .hero.is-success .navbar-link.is-active{background-color:#388c26;color:#fff}html.theme--catppuccin-latte .hero.is-success .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-latte .hero.is-success .tabs a:hover{opacity:1}html.theme--catppuccin-latte .hero.is-success .tabs li.is-active a{color:#40a02b !important;opacity:1}html.theme--catppuccin-latte .hero.is-success .tabs.is-boxed a,html.theme--catppuccin-latte .hero.is-success .tabs.is-toggle a{color:#fff}html.theme--catppuccin-latte .hero.is-success .tabs.is-boxed a:hover,html.theme--catppuccin-latte .hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-latte .hero.is-success .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .hero.is-success .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-latte .hero.is-success .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .hero.is-success .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#40a02b}html.theme--catppuccin-latte .hero.is-success.is-bold{background-image:linear-gradient(141deg, #3c7f19 0%, #40a02b 71%, #2dba2b 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg, #3c7f19 0%, #40a02b 71%, #2dba2b 100%)}}html.theme--catppuccin-latte .hero.is-warning{background-color:#df8e1d;color:#fff}html.theme--catppuccin-latte .hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .hero.is-warning strong{color:inherit}html.theme--catppuccin-latte .hero.is-warning .title{color:#fff}html.theme--catppuccin-latte .hero.is-warning .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-latte .hero.is-warning .subtitle a:not(.button),html.theme--catppuccin-latte .hero.is-warning .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .hero.is-warning .navbar-menu{background-color:#df8e1d}}html.theme--catppuccin-latte .hero.is-warning .navbar-item,html.theme--catppuccin-latte .hero.is-warning .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-latte .hero.is-warning a.navbar-item:hover,html.theme--catppuccin-latte .hero.is-warning a.navbar-item.is-active,html.theme--catppuccin-latte .hero.is-warning .navbar-link:hover,html.theme--catppuccin-latte .hero.is-warning .navbar-link.is-active{background-color:#c8801a;color:#fff}html.theme--catppuccin-latte .hero.is-warning .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-latte .hero.is-warning .tabs a:hover{opacity:1}html.theme--catppuccin-latte .hero.is-warning .tabs li.is-active a{color:#df8e1d !important;opacity:1}html.theme--catppuccin-latte .hero.is-warning .tabs.is-boxed a,html.theme--catppuccin-latte .hero.is-warning .tabs.is-toggle a{color:#fff}html.theme--catppuccin-latte .hero.is-warning .tabs.is-boxed a:hover,html.theme--catppuccin-latte .hero.is-warning .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-latte .hero.is-warning .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .hero.is-warning .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-latte .hero.is-warning .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .hero.is-warning .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#df8e1d}html.theme--catppuccin-latte .hero.is-warning.is-bold{background-image:linear-gradient(141deg, #bc560d 0%, #df8e1d 71%, #eaba2b 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg, #bc560d 0%, #df8e1d 71%, #eaba2b 100%)}}html.theme--catppuccin-latte .hero.is-danger{background-color:#d20f39;color:#fff}html.theme--catppuccin-latte .hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-latte .hero.is-danger strong{color:inherit}html.theme--catppuccin-latte .hero.is-danger .title{color:#fff}html.theme--catppuccin-latte .hero.is-danger .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-latte .hero.is-danger .subtitle a:not(.button),html.theme--catppuccin-latte .hero.is-danger .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .hero.is-danger .navbar-menu{background-color:#d20f39}}html.theme--catppuccin-latte .hero.is-danger .navbar-item,html.theme--catppuccin-latte .hero.is-danger .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-latte .hero.is-danger a.navbar-item:hover,html.theme--catppuccin-latte .hero.is-danger a.navbar-item.is-active,html.theme--catppuccin-latte .hero.is-danger .navbar-link:hover,html.theme--catppuccin-latte .hero.is-danger .navbar-link.is-active{background-color:#ba0d33;color:#fff}html.theme--catppuccin-latte .hero.is-danger .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-latte .hero.is-danger .tabs a:hover{opacity:1}html.theme--catppuccin-latte .hero.is-danger .tabs li.is-active a{color:#d20f39 !important;opacity:1}html.theme--catppuccin-latte .hero.is-danger .tabs.is-boxed a,html.theme--catppuccin-latte .hero.is-danger .tabs.is-toggle a{color:#fff}html.theme--catppuccin-latte .hero.is-danger .tabs.is-boxed a:hover,html.theme--catppuccin-latte .hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-latte .hero.is-danger .tabs.is-boxed li.is-active a,html.theme--catppuccin-latte .hero.is-danger .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-latte .hero.is-danger .tabs.is-toggle li.is-active a,html.theme--catppuccin-latte .hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#d20f39}html.theme--catppuccin-latte .hero.is-danger.is-bold{background-image:linear-gradient(141deg, #ab0343 0%, #d20f39 71%, #f00a16 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg, #ab0343 0%, #d20f39 71%, #f00a16 100%)}}html.theme--catppuccin-latte .hero.is-small .hero-body,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.hero .hero-body{padding:1.5rem}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .hero.is-medium .hero-body{padding:9rem 4.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .hero.is-large .hero-body{padding:18rem 6rem}}html.theme--catppuccin-latte .hero.is-halfheight .hero-body,html.theme--catppuccin-latte .hero.is-fullheight .hero-body,html.theme--catppuccin-latte .hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}html.theme--catppuccin-latte .hero.is-halfheight .hero-body>.container,html.theme--catppuccin-latte .hero.is-fullheight .hero-body>.container,html.theme--catppuccin-latte .hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}html.theme--catppuccin-latte .hero.is-halfheight{min-height:50vh}html.theme--catppuccin-latte .hero.is-fullheight{min-height:100vh}html.theme--catppuccin-latte .hero-video{overflow:hidden}html.theme--catppuccin-latte .hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%, -50%, 0)}html.theme--catppuccin-latte .hero-video.is-transparent{opacity:0.3}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero-video{display:none}}html.theme--catppuccin-latte .hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){html.theme--catppuccin-latte .hero-buttons .button{display:flex}html.theme--catppuccin-latte .hero-buttons .button:not(:last-child){margin-bottom:0.75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .hero-buttons{display:flex;justify-content:center}html.theme--catppuccin-latte .hero-buttons .button:not(:last-child){margin-right:1.5rem}}html.theme--catppuccin-latte .hero-head,html.theme--catppuccin-latte .hero-foot{flex-grow:0;flex-shrink:0}html.theme--catppuccin-latte .hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}@media screen and (min-width: 769px),print{html.theme--catppuccin-latte .hero-body{padding:3rem 3rem}}html.theme--catppuccin-latte .section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){html.theme--catppuccin-latte .section{padding:3rem 3rem}html.theme--catppuccin-latte .section.is-medium{padding:9rem 4.5rem}html.theme--catppuccin-latte .section.is-large{padding:18rem 6rem}}html.theme--catppuccin-latte .footer{background-color:#e6e9ef;padding:3rem 1.5rem 6rem}html.theme--catppuccin-latte h1 .docs-heading-anchor,html.theme--catppuccin-latte h1 .docs-heading-anchor:hover,html.theme--catppuccin-latte h1 .docs-heading-anchor:visited,html.theme--catppuccin-latte h2 .docs-heading-anchor,html.theme--catppuccin-latte h2 .docs-heading-anchor:hover,html.theme--catppuccin-latte h2 .docs-heading-anchor:visited,html.theme--catppuccin-latte h3 .docs-heading-anchor,html.theme--catppuccin-latte h3 .docs-heading-anchor:hover,html.theme--catppuccin-latte h3 .docs-heading-anchor:visited,html.theme--catppuccin-latte h4 .docs-heading-anchor,html.theme--catppuccin-latte h4 .docs-heading-anchor:hover,html.theme--catppuccin-latte h4 .docs-heading-anchor:visited,html.theme--catppuccin-latte h5 .docs-heading-anchor,html.theme--catppuccin-latte h5 .docs-heading-anchor:hover,html.theme--catppuccin-latte h5 .docs-heading-anchor:visited,html.theme--catppuccin-latte h6 .docs-heading-anchor,html.theme--catppuccin-latte h6 .docs-heading-anchor:hover,html.theme--catppuccin-latte h6 .docs-heading-anchor:visited{color:#4c4f69}html.theme--catppuccin-latte h1 .docs-heading-anchor-permalink,html.theme--catppuccin-latte h2 .docs-heading-anchor-permalink,html.theme--catppuccin-latte h3 .docs-heading-anchor-permalink,html.theme--catppuccin-latte h4 .docs-heading-anchor-permalink,html.theme--catppuccin-latte h5 .docs-heading-anchor-permalink,html.theme--catppuccin-latte h6 .docs-heading-anchor-permalink{visibility:hidden;vertical-align:middle;margin-left:0.5em;font-size:0.7rem}html.theme--catppuccin-latte h1 .docs-heading-anchor-permalink::before,html.theme--catppuccin-latte h2 .docs-heading-anchor-permalink::before,html.theme--catppuccin-latte h3 .docs-heading-anchor-permalink::before,html.theme--catppuccin-latte h4 .docs-heading-anchor-permalink::before,html.theme--catppuccin-latte h5 .docs-heading-anchor-permalink::before,html.theme--catppuccin-latte h6 .docs-heading-anchor-permalink::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f0c1"}html.theme--catppuccin-latte h1:hover .docs-heading-anchor-permalink,html.theme--catppuccin-latte h2:hover .docs-heading-anchor-permalink,html.theme--catppuccin-latte h3:hover .docs-heading-anchor-permalink,html.theme--catppuccin-latte h4:hover .docs-heading-anchor-permalink,html.theme--catppuccin-latte h5:hover .docs-heading-anchor-permalink,html.theme--catppuccin-latte h6:hover .docs-heading-anchor-permalink{visibility:visible}html.theme--catppuccin-latte .docs-dark-only{display:none !important}html.theme--catppuccin-latte pre{position:relative;overflow:hidden}html.theme--catppuccin-latte pre code,html.theme--catppuccin-latte pre code.hljs{padding:0 .75rem !important;overflow:auto;display:block}html.theme--catppuccin-latte pre code:first-of-type,html.theme--catppuccin-latte pre code.hljs:first-of-type{padding-top:0.5rem !important}html.theme--catppuccin-latte pre code:last-of-type,html.theme--catppuccin-latte pre code.hljs:last-of-type{padding-bottom:0.5rem !important}html.theme--catppuccin-latte pre .copy-button{opacity:0.2;transition:opacity 0.2s;position:absolute;right:0em;top:0em;padding:0.5em;width:2.5em;height:2.5em;background:transparent;border:none;font-family:"Font Awesome 6 Free";color:#4c4f69;cursor:pointer;text-align:center}html.theme--catppuccin-latte pre .copy-button:focus,html.theme--catppuccin-latte pre .copy-button:hover{opacity:1;background:rgba(76,79,105,0.1);color:#1e66f5}html.theme--catppuccin-latte pre .copy-button.success{color:#40a02b;opacity:1}html.theme--catppuccin-latte pre .copy-button.error{color:#d20f39;opacity:1}html.theme--catppuccin-latte pre:hover .copy-button{opacity:1}html.theme--catppuccin-latte .admonition{background-color:#e6e9ef;border-style:solid;border-width:2px;border-color:#5c5f77;border-radius:4px;font-size:1rem}html.theme--catppuccin-latte .admonition strong{color:currentColor}html.theme--catppuccin-latte .admonition.is-small,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input.admonition{font-size:.75rem}html.theme--catppuccin-latte .admonition.is-medium{font-size:1.25rem}html.theme--catppuccin-latte .admonition.is-large{font-size:1.5rem}html.theme--catppuccin-latte .admonition.is-default{background-color:#e6e9ef;border-color:#5c5f77}html.theme--catppuccin-latte .admonition.is-default>.admonition-header{background-color:rgba(0,0,0,0);color:#5c5f77}html.theme--catppuccin-latte .admonition.is-default>.admonition-body{color:#4c4f69}html.theme--catppuccin-latte .admonition.is-info{background-color:#e6e9ef;border-color:#179299}html.theme--catppuccin-latte .admonition.is-info>.admonition-header{background-color:rgba(0,0,0,0);color:#179299}html.theme--catppuccin-latte .admonition.is-info>.admonition-body{color:#4c4f69}html.theme--catppuccin-latte .admonition.is-success{background-color:#e6e9ef;border-color:#40a02b}html.theme--catppuccin-latte .admonition.is-success>.admonition-header{background-color:rgba(0,0,0,0);color:#40a02b}html.theme--catppuccin-latte .admonition.is-success>.admonition-body{color:#4c4f69}html.theme--catppuccin-latte .admonition.is-warning{background-color:#e6e9ef;border-color:#df8e1d}html.theme--catppuccin-latte .admonition.is-warning>.admonition-header{background-color:rgba(0,0,0,0);color:#df8e1d}html.theme--catppuccin-latte .admonition.is-warning>.admonition-body{color:#4c4f69}html.theme--catppuccin-latte .admonition.is-danger{background-color:#e6e9ef;border-color:#d20f39}html.theme--catppuccin-latte .admonition.is-danger>.admonition-header{background-color:rgba(0,0,0,0);color:#d20f39}html.theme--catppuccin-latte .admonition.is-danger>.admonition-body{color:#4c4f69}html.theme--catppuccin-latte .admonition.is-compat{background-color:#e6e9ef;border-color:#04a5e5}html.theme--catppuccin-latte .admonition.is-compat>.admonition-header{background-color:rgba(0,0,0,0);color:#04a5e5}html.theme--catppuccin-latte .admonition.is-compat>.admonition-body{color:#4c4f69}html.theme--catppuccin-latte .admonition.is-todo{background-color:#e6e9ef;border-color:#8839ef}html.theme--catppuccin-latte .admonition.is-todo>.admonition-header{background-color:rgba(0,0,0,0);color:#8839ef}html.theme--catppuccin-latte .admonition.is-todo>.admonition-body{color:#4c4f69}html.theme--catppuccin-latte .admonition-header{color:#5c5f77;background-color:rgba(0,0,0,0);align-items:center;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.5rem .75rem;position:relative}html.theme--catppuccin-latte .admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}html.theme--catppuccin-latte details.admonition.is-details>.admonition-header{list-style:none}html.theme--catppuccin-latte details.admonition.is-details>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f055"}html.theme--catppuccin-latte details.admonition.is-details[open]>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f056"}html.theme--catppuccin-latte .admonition-body{color:#4c4f69;padding:0.5rem .75rem}html.theme--catppuccin-latte .admonition-body pre{background-color:#e6e9ef}html.theme--catppuccin-latte .admonition-body code{background-color:#e6e9ef}html.theme--catppuccin-latte .docstring{margin-bottom:1em;background-color:rgba(0,0,0,0);border:2px solid #acb0be;border-radius:4px;box-shadow:none;max-width:100%}html.theme--catppuccin-latte .docstring>header{cursor:pointer;display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#e6e9ef;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #acb0be;overflow:auto}html.theme--catppuccin-latte .docstring>header code{background-color:transparent}html.theme--catppuccin-latte .docstring>header .docstring-article-toggle-button{min-width:1.1rem;padding:0.2rem 0.2rem 0.2rem 0}html.theme--catppuccin-latte .docstring>header .docstring-binding{margin-right:0.3em}html.theme--catppuccin-latte .docstring>header .docstring-category{margin-left:0.3em}html.theme--catppuccin-latte .docstring>section{position:relative;padding:.75rem .75rem;border-bottom:1px solid #acb0be}html.theme--catppuccin-latte .docstring>section:last-child{border-bottom:none}html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink{transition:opacity 0.3s;opacity:0;position:absolute;right:.375rem;bottom:.375rem}html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink:focus{opacity:1 !important}html.theme--catppuccin-latte .docstring:hover>section>a.docs-sourcelink{opacity:0.2}html.theme--catppuccin-latte .docstring:focus-within>section>a.docs-sourcelink{opacity:0.2}html.theme--catppuccin-latte .docstring>section:hover a.docs-sourcelink{opacity:1}html.theme--catppuccin-latte .documenter-example-output{background-color:#eff1f5}html.theme--catppuccin-latte .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:#e6e9ef;color:#4c4f69;border-bottom:3px solid rgba(0,0,0,0);padding:10px 35px;text-align:center;font-size:15px}html.theme--catppuccin-latte .outdated-warning-overlay .outdated-warning-closer{position:absolute;top:calc(50% - 10px);right:18px;cursor:pointer;width:12px}html.theme--catppuccin-latte .outdated-warning-overlay a{color:#1e66f5}html.theme--catppuccin-latte .outdated-warning-overlay a:hover{color:#04a5e5}html.theme--catppuccin-latte .content pre{border:2px solid #acb0be;border-radius:4px}html.theme--catppuccin-latte .content code{font-weight:inherit}html.theme--catppuccin-latte .content a code{color:#1e66f5}html.theme--catppuccin-latte .content a:hover code{color:#04a5e5}html.theme--catppuccin-latte .content h1 code,html.theme--catppuccin-latte .content h2 code,html.theme--catppuccin-latte .content h3 code,html.theme--catppuccin-latte .content h4 code,html.theme--catppuccin-latte .content h5 code,html.theme--catppuccin-latte .content h6 code{color:#4c4f69}html.theme--catppuccin-latte .content table{display:block;width:initial;max-width:100%;overflow-x:auto}html.theme--catppuccin-latte .content blockquote>ul:first-child,html.theme--catppuccin-latte .content blockquote>ol:first-child,html.theme--catppuccin-latte .content .admonition-body>ul:first-child,html.theme--catppuccin-latte .content .admonition-body>ol:first-child{margin-top:0}html.theme--catppuccin-latte pre,html.theme--catppuccin-latte code{font-variant-ligatures:no-contextual}html.theme--catppuccin-latte .breadcrumb a.is-disabled{cursor:default;pointer-events:none}html.theme--catppuccin-latte .breadcrumb a.is-disabled,html.theme--catppuccin-latte .breadcrumb a.is-disabled:hover{color:#41445a}html.theme--catppuccin-latte .hljs{background:initial !important}html.theme--catppuccin-latte .katex .katex-mathml{top:0;right:0}html.theme--catppuccin-latte .katex-display,html.theme--catppuccin-latte mjx-container,html.theme--catppuccin-latte .MathJax_Display{margin:0.5em 0 !important}html.theme--catppuccin-latte html{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto}html.theme--catppuccin-latte li.no-marker{list-style:none}html.theme--catppuccin-latte #documenter .docs-main>article{overflow-wrap:break-word}html.theme--catppuccin-latte #documenter .docs-main>article .math-container{overflow-x:auto;overflow-y:hidden}@media screen and (min-width: 1056px){html.theme--catppuccin-latte #documenter .docs-main{max-width:52rem;margin-left:20rem;padding-right:1rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte #documenter .docs-main{width:100%}html.theme--catppuccin-latte #documenter .docs-main>article{max-width:52rem;margin-left:auto;margin-right:auto;margin-bottom:1rem;padding:0 1rem}html.theme--catppuccin-latte #documenter .docs-main>header,html.theme--catppuccin-latte #documenter .docs-main>nav{max-width:100%;width:100%;margin:0}}html.theme--catppuccin-latte #documenter .docs-main header.docs-navbar{background-color:#eff1f5;border-bottom:1px solid #acb0be;z-index:2;min-height:4rem;margin-bottom:1rem;display:flex}html.theme--catppuccin-latte #documenter .docs-main header.docs-navbar .breadcrumb{flex-grow:1;overflow-x:hidden}html.theme--catppuccin-latte #documenter .docs-main header.docs-navbar .docs-sidebar-button{display:block;font-size:1.5rem;padding-bottom:0.1rem;margin-right:1rem}html.theme--catppuccin-latte #documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap;gap:1rem;align-items:center}html.theme--catppuccin-latte #documenter .docs-main header.docs-navbar .docs-right .docs-icon,html.theme--catppuccin-latte #documenter .docs-main header.docs-navbar .docs-right .docs-label{display:inline-block}html.theme--catppuccin-latte #documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}@media screen and (max-width: 1055px){html.theme--catppuccin-latte #documenter .docs-main header.docs-navbar .docs-right .docs-navbar-link{margin-left:0.4rem;margin-right:0.4rem}}html.theme--catppuccin-latte #documenter .docs-main header.docs-navbar>*{margin:auto 0}@media screen and (max-width: 1055px){html.theme--catppuccin-latte #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--catppuccin-latte #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--catppuccin-latte #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--catppuccin-latte #documenter .docs-main section.footnotes{border-top:1px solid #acb0be}html.theme--catppuccin-latte #documenter .docs-main section.footnotes li .tag:first-child,html.theme--catppuccin-latte #documenter .docs-main section.footnotes li .docstring>section>a.docs-sourcelink:first-child,html.theme--catppuccin-latte #documenter .docs-main section.footnotes li .content kbd:first-child,html.theme--catppuccin-latte .content #documenter .docs-main section.footnotes li kbd:first-child{margin-right:1em;margin-bottom:0.4em}html.theme--catppuccin-latte #documenter .docs-main .docs-footer{display:flex;flex-wrap:wrap;margin-left:0;margin-right:0;border-top:1px solid #acb0be;padding-top:1rem;padding-bottom:1rem}@media screen and (max-width: 1055px){html.theme--catppuccin-latte #documenter .docs-main .docs-footer{padding-left:1rem;padding-right:1rem}}html.theme--catppuccin-latte #documenter .docs-main .docs-footer .docs-footer-nextpage,html.theme--catppuccin-latte #documenter .docs-main .docs-footer .docs-footer-prevpage{flex-grow:1}html.theme--catppuccin-latte #documenter .docs-main .docs-footer .docs-footer-nextpage{text-align:right}html.theme--catppuccin-latte #documenter .docs-main .docs-footer .flexbox-break{flex-basis:100%;height:0}html.theme--catppuccin-latte #documenter .docs-main .docs-footer .footer-message{font-size:0.8em;margin:0.5em auto 0 auto;text-align:center}html.theme--catppuccin-latte #documenter .docs-sidebar{display:flex;flex-direction:column;color:#4c4f69;background-color:#e6e9ef;border-right:1px solid #acb0be;padding:0;flex:0 0 18rem;z-index:5;font-size:1rem;position:fixed;left:-18rem;width:18rem;height:100%;transition:left 0.3s}html.theme--catppuccin-latte #documenter .docs-sidebar.visible{left:0;box-shadow:.4rem 0rem .8rem #171717}@media screen and (min-width: 1056px){html.theme--catppuccin-latte #documenter .docs-sidebar.visible{box-shadow:none}}@media screen and (min-width: 1056px){html.theme--catppuccin-latte #documenter .docs-sidebar{left:0;top:0}}html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo{margin-top:1rem;padding:0 1rem}html.theme--catppuccin-latte #documenter .docs-sidebar .docs-logo>img{max-height:6rem;margin:auto}html.theme--catppuccin-latte #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--catppuccin-latte #documenter .docs-sidebar .docs-package-name .docs-autofit{max-width:16.2rem}html.theme--catppuccin-latte #documenter .docs-sidebar .docs-package-name a,html.theme--catppuccin-latte #documenter .docs-sidebar .docs-package-name a:hover{color:#4c4f69}html.theme--catppuccin-latte #documenter .docs-sidebar .docs-version-selector{border-top:1px solid #acb0be;display:none;padding:0.5rem}html.theme--catppuccin-latte #documenter .docs-sidebar .docs-version-selector.visible{display:flex}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu{flex-grow:1;user-select:none;border-top:1px solid #acb0be;padding-bottom:1.5rem}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu>li>.tocitem{font-weight:bold}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu>li li{font-size:.95rem;margin-left:1em;border-left:1px solid #acb0be}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu input.collapse-toggle{display:none}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu ul.collapsed{display:none}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu input:checked~ul.collapsed{display:block}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu label.tocitem{display:flex}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label{flex-grow:2}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron{display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;font-size:.75rem;margin-left:1rem;margin-top:auto;margin-bottom:auto}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f054"}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu input:checked~label.tocitem .docs-chevron::before{content:"\f078"}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu .tocitem{display:block;padding:0.5rem 0.5rem}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu .tocitem,html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu .tocitem:hover{color:#4c4f69;background:#e6e9ef}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu a.tocitem:hover,html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu label.tocitem:hover{color:#4c4f69;background-color:#f2f4f7}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu li.is-active{border-top:1px solid #acb0be;border-bottom:1px solid #acb0be;background-color:#dce0e8}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem,html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover{background-color:#dce0e8;color:#4c4f69}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover{background-color:#f2f4f7;color:#4c4f69}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu>li.is-active:first-child{border-top:none}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu ul.internal{margin:0 0.5rem 0.5rem;border-top:1px solid #acb0be}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu ul.internal li{font-size:.85rem;border-left:none;margin-left:0;margin-top:0.5rem}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem{width:100%;padding:0}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before{content:"⚬";margin-right:0.4em}html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search{margin:auto;margin-top:0.5rem;margin-bottom:0.5rem}html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input{width:14.4rem}html.theme--catppuccin-latte #documenter .docs-sidebar #documenter-search-query{color:#868c98;width:14.4rem;box-shadow:inset 0 1px 2px rgba(10,10,10,0.1)}@media screen and (min-width: 1056px){html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar{width:.3rem;background:none}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#fff}html.theme--catppuccin-latte #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover{background:#fff}}@media screen and (max-width: 1055px){html.theme--catppuccin-latte #documenter .docs-sidebar{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--catppuccin-latte #documenter .docs-sidebar::-webkit-scrollbar{width:.3rem;background:none}html.theme--catppuccin-latte #documenter .docs-sidebar::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#fff}html.theme--catppuccin-latte #documenter .docs-sidebar::-webkit-scrollbar-thumb:hover{background:#fff}}html.theme--catppuccin-latte kbd.search-modal-key-hints{border-radius:0.25rem;border:1px solid rgba(245,245,245,0.6);box-shadow:0 2px 0 1px rgba(245,245,245,0.6);cursor:default;font-size:0.9rem;line-height:1.5;min-width:0.75rem;text-align:center;padding:0.1rem 0.3rem;position:relative;top:-1px}html.theme--catppuccin-latte .search-min-width-50{min-width:50%}html.theme--catppuccin-latte .search-min-height-100{min-height:100%}html.theme--catppuccin-latte .search-modal-card-body{max-height:calc(100vh - 15rem)}html.theme--catppuccin-latte .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--catppuccin-latte .search-result-link:hover,html.theme--catppuccin-latte .search-result-link:focus{background-color:rgba(0,128,128,0.1)}html.theme--catppuccin-latte .search-result-link .property-search-result-badge,html.theme--catppuccin-latte .search-result-link .search-filter{transition:all 300ms}html.theme--catppuccin-latte .property-search-result-badge,html.theme--catppuccin-latte .search-filter{padding:0.15em 0.5em;font-size:0.8em;font-style:italic;text-transform:none !important;line-height:1.5;color:#f5f5f5;background-color:rgba(51,65,85,0.501961);border-radius:0.6rem}html.theme--catppuccin-latte .search-result-link:hover .property-search-result-badge,html.theme--catppuccin-latte .search-result-link:hover .search-filter,html.theme--catppuccin-latte .search-result-link:focus .property-search-result-badge,html.theme--catppuccin-latte .search-result-link:focus .search-filter{color:#333;background-color:#f1f5f9}html.theme--catppuccin-latte .search-filter{color:#333;background-color:#f5f5f5;transition:all 300ms}html.theme--catppuccin-latte .search-filter:hover,html.theme--catppuccin-latte .search-filter:focus{color:#333}html.theme--catppuccin-latte .search-filter-selected{color:#ccd0da;background-color:#7287fd}html.theme--catppuccin-latte .search-filter-selected:hover,html.theme--catppuccin-latte .search-filter-selected:focus{color:#ccd0da}html.theme--catppuccin-latte .search-result-highlight{background-color:#ffdd57;color:black}html.theme--catppuccin-latte .search-divider{border-bottom:1px solid #acb0be}html.theme--catppuccin-latte .search-result-title{width:85%;color:#f5f5f5}html.theme--catppuccin-latte .search-result-code-title{font-size:0.875rem;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}html.theme--catppuccin-latte #search-modal .modal-card-body::-webkit-scrollbar,html.theme--catppuccin-latte #search-modal .filter-tabs::-webkit-scrollbar{height:10px;width:10px;background-color:transparent}html.theme--catppuccin-latte #search-modal .modal-card-body::-webkit-scrollbar-thumb,html.theme--catppuccin-latte #search-modal .filter-tabs::-webkit-scrollbar-thumb{background-color:gray;border-radius:1rem}html.theme--catppuccin-latte #search-modal .modal-card-body::-webkit-scrollbar-track,html.theme--catppuccin-latte #search-modal .filter-tabs::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.6);background-color:transparent}html.theme--catppuccin-latte .w-100{width:100%}html.theme--catppuccin-latte .gap-2{gap:0.5rem}html.theme--catppuccin-latte .gap-4{gap:1rem}html.theme--catppuccin-latte .gap-8{gap:2rem}html.theme--catppuccin-latte{background-color:#eff1f5;font-size:16px;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}html.theme--catppuccin-latte a{transition:all 200ms ease}html.theme--catppuccin-latte .label{color:#4c4f69}html.theme--catppuccin-latte .button,html.theme--catppuccin-latte .control.has-icons-left .icon,html.theme--catppuccin-latte .control.has-icons-right .icon,html.theme--catppuccin-latte .input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-latte .pagination-ellipsis,html.theme--catppuccin-latte .pagination-link,html.theme--catppuccin-latte .pagination-next,html.theme--catppuccin-latte .pagination-previous,html.theme--catppuccin-latte .select,html.theme--catppuccin-latte .select select,html.theme--catppuccin-latte .textarea{height:2.5em;color:#4c4f69}html.theme--catppuccin-latte .input,html.theme--catppuccin-latte #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-latte .textarea{transition:all 200ms ease;box-shadow:none;border-width:1px;padding-left:1em;padding-right:1em;color:#4c4f69}html.theme--catppuccin-latte .select:after,html.theme--catppuccin-latte .select select{border-width:1px}html.theme--catppuccin-latte .menu-list a{transition:all 300ms ease}html.theme--catppuccin-latte .modal-card-foot,html.theme--catppuccin-latte .modal-card-head{border-color:#acb0be}html.theme--catppuccin-latte .navbar{border-radius:.4em}html.theme--catppuccin-latte .navbar.is-transparent{background:none}html.theme--catppuccin-latte .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-latte .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#1e66f5}@media screen and (max-width: 1055px){html.theme--catppuccin-latte .navbar .navbar-menu{background-color:#1e66f5;border-radius:0 0 .4em .4em}}html.theme--catppuccin-latte .docstring>section>a.docs-sourcelink:not(body){color:#ccd0da}html.theme--catppuccin-latte .tag.is-link:not(body),html.theme--catppuccin-latte .docstring>section>a.is-link.docs-sourcelink:not(body),html.theme--catppuccin-latte .content kbd.is-link:not(body){color:#ccd0da}html.theme--catppuccin-latte .ansi span.sgr1{font-weight:bolder}html.theme--catppuccin-latte .ansi span.sgr2{font-weight:lighter}html.theme--catppuccin-latte .ansi span.sgr3{font-style:italic}html.theme--catppuccin-latte .ansi span.sgr4{text-decoration:underline}html.theme--catppuccin-latte .ansi span.sgr7{color:#eff1f5;background-color:#4c4f69}html.theme--catppuccin-latte .ansi span.sgr8{color:transparent}html.theme--catppuccin-latte .ansi span.sgr8 span{color:transparent}html.theme--catppuccin-latte .ansi span.sgr9{text-decoration:line-through}html.theme--catppuccin-latte .ansi span.sgr30{color:#5c5f77}html.theme--catppuccin-latte .ansi span.sgr31{color:#d20f39}html.theme--catppuccin-latte .ansi span.sgr32{color:#40a02b}html.theme--catppuccin-latte .ansi span.sgr33{color:#df8e1d}html.theme--catppuccin-latte .ansi span.sgr34{color:#1e66f5}html.theme--catppuccin-latte .ansi span.sgr35{color:#ea76cb}html.theme--catppuccin-latte .ansi span.sgr36{color:#179299}html.theme--catppuccin-latte .ansi span.sgr37{color:#acb0be}html.theme--catppuccin-latte .ansi span.sgr40{background-color:#5c5f77}html.theme--catppuccin-latte .ansi span.sgr41{background-color:#d20f39}html.theme--catppuccin-latte .ansi span.sgr42{background-color:#40a02b}html.theme--catppuccin-latte .ansi span.sgr43{background-color:#df8e1d}html.theme--catppuccin-latte .ansi span.sgr44{background-color:#1e66f5}html.theme--catppuccin-latte .ansi span.sgr45{background-color:#ea76cb}html.theme--catppuccin-latte .ansi span.sgr46{background-color:#179299}html.theme--catppuccin-latte .ansi span.sgr47{background-color:#acb0be}html.theme--catppuccin-latte .ansi span.sgr90{color:#6c6f85}html.theme--catppuccin-latte .ansi span.sgr91{color:#d20f39}html.theme--catppuccin-latte .ansi span.sgr92{color:#40a02b}html.theme--catppuccin-latte .ansi span.sgr93{color:#df8e1d}html.theme--catppuccin-latte .ansi span.sgr94{color:#1e66f5}html.theme--catppuccin-latte .ansi span.sgr95{color:#ea76cb}html.theme--catppuccin-latte .ansi span.sgr96{color:#179299}html.theme--catppuccin-latte .ansi span.sgr97{color:#bcc0cc}html.theme--catppuccin-latte .ansi span.sgr100{background-color:#6c6f85}html.theme--catppuccin-latte .ansi span.sgr101{background-color:#d20f39}html.theme--catppuccin-latte .ansi span.sgr102{background-color:#40a02b}html.theme--catppuccin-latte .ansi span.sgr103{background-color:#df8e1d}html.theme--catppuccin-latte .ansi span.sgr104{background-color:#1e66f5}html.theme--catppuccin-latte .ansi span.sgr105{background-color:#ea76cb}html.theme--catppuccin-latte .ansi span.sgr106{background-color:#179299}html.theme--catppuccin-latte .ansi span.sgr107{background-color:#bcc0cc}html.theme--catppuccin-latte code.language-julia-repl>span.hljs-meta{color:#40a02b;font-weight:bolder}html.theme--catppuccin-latte code .hljs{color:#4c4f69;background:#eff1f5}html.theme--catppuccin-latte code .hljs-keyword{color:#8839ef}html.theme--catppuccin-latte code .hljs-built_in{color:#d20f39}html.theme--catppuccin-latte code .hljs-type{color:#df8e1d}html.theme--catppuccin-latte code .hljs-literal{color:#fe640b}html.theme--catppuccin-latte code .hljs-number{color:#fe640b}html.theme--catppuccin-latte code .hljs-operator{color:#179299}html.theme--catppuccin-latte code .hljs-punctuation{color:#5c5f77}html.theme--catppuccin-latte code .hljs-property{color:#179299}html.theme--catppuccin-latte code .hljs-regexp{color:#ea76cb}html.theme--catppuccin-latte code .hljs-string{color:#40a02b}html.theme--catppuccin-latte code .hljs-char.escape_{color:#40a02b}html.theme--catppuccin-latte code .hljs-subst{color:#6c6f85}html.theme--catppuccin-latte code .hljs-symbol{color:#dd7878}html.theme--catppuccin-latte code .hljs-variable{color:#8839ef}html.theme--catppuccin-latte code .hljs-variable.language_{color:#8839ef}html.theme--catppuccin-latte code .hljs-variable.constant_{color:#fe640b}html.theme--catppuccin-latte code .hljs-title{color:#1e66f5}html.theme--catppuccin-latte code .hljs-title.class_{color:#df8e1d}html.theme--catppuccin-latte code .hljs-title.function_{color:#1e66f5}html.theme--catppuccin-latte code .hljs-params{color:#4c4f69}html.theme--catppuccin-latte code .hljs-comment{color:#acb0be}html.theme--catppuccin-latte code .hljs-doctag{color:#d20f39}html.theme--catppuccin-latte code .hljs-meta{color:#fe640b}html.theme--catppuccin-latte code .hljs-section{color:#1e66f5}html.theme--catppuccin-latte code .hljs-tag{color:#6c6f85}html.theme--catppuccin-latte code .hljs-name{color:#8839ef}html.theme--catppuccin-latte code .hljs-attr{color:#1e66f5}html.theme--catppuccin-latte code .hljs-attribute{color:#40a02b}html.theme--catppuccin-latte code .hljs-bullet{color:#179299}html.theme--catppuccin-latte code .hljs-code{color:#40a02b}html.theme--catppuccin-latte code .hljs-emphasis{color:#d20f39;font-style:italic}html.theme--catppuccin-latte code .hljs-strong{color:#d20f39;font-weight:bold}html.theme--catppuccin-latte code .hljs-formula{color:#179299}html.theme--catppuccin-latte code .hljs-link{color:#209fb5;font-style:italic}html.theme--catppuccin-latte code .hljs-quote{color:#40a02b;font-style:italic}html.theme--catppuccin-latte code .hljs-selector-tag{color:#df8e1d}html.theme--catppuccin-latte code .hljs-selector-id{color:#1e66f5}html.theme--catppuccin-latte code .hljs-selector-class{color:#179299}html.theme--catppuccin-latte code .hljs-selector-attr{color:#8839ef}html.theme--catppuccin-latte code .hljs-selector-pseudo{color:#179299}html.theme--catppuccin-latte code .hljs-template-tag{color:#dd7878}html.theme--catppuccin-latte code .hljs-template-variable{color:#dd7878}html.theme--catppuccin-latte code .hljs-addition{color:#40a02b;background:rgba(166,227,161,0.15)}html.theme--catppuccin-latte code .hljs-deletion{color:#d20f39;background:rgba(243,139,168,0.15)}html.theme--catppuccin-latte .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--catppuccin-latte .search-result-link:hover,html.theme--catppuccin-latte .search-result-link:focus{background-color:#ccd0da}html.theme--catppuccin-latte .search-result-link .property-search-result-badge,html.theme--catppuccin-latte .search-result-link .search-filter{transition:all 300ms}html.theme--catppuccin-latte .search-result-link:hover .property-search-result-badge,html.theme--catppuccin-latte .search-result-link:hover .search-filter,html.theme--catppuccin-latte .search-result-link:focus .property-search-result-badge,html.theme--catppuccin-latte .search-result-link:focus .search-filter{color:#ccd0da !important;background-color:#7287fd !important}html.theme--catppuccin-latte .search-result-title{color:#4c4f69}html.theme--catppuccin-latte .search-result-highlight{background-color:#d20f39;color:#e6e9ef}html.theme--catppuccin-latte .search-divider{border-bottom:1px solid #5e6d6f50}html.theme--catppuccin-latte .w-100{width:100%}html.theme--catppuccin-latte .gap-2{gap:0.5rem}html.theme--catppuccin-latte .gap-4{gap:1rem} diff --git a/v0.9.12/assets/themes/catppuccin-macchiato.css b/v0.9.12/assets/themes/catppuccin-macchiato.css new file mode 100644 index 000000000..a9cf9c573 --- /dev/null +++ b/v0.9.12/assets/themes/catppuccin-macchiato.css @@ -0,0 +1 @@ +html.theme--catppuccin-macchiato .pagination-previous,html.theme--catppuccin-macchiato .pagination-next,html.theme--catppuccin-macchiato .pagination-link,html.theme--catppuccin-macchiato .pagination-ellipsis,html.theme--catppuccin-macchiato .file-cta,html.theme--catppuccin-macchiato .file-name,html.theme--catppuccin-macchiato .select select,html.theme--catppuccin-macchiato .textarea,html.theme--catppuccin-macchiato .input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-macchiato .button{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:.4em;box-shadow:none;display:inline-flex;font-size:1rem;height:2.5em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.5em - 1px);padding-left:calc(0.75em - 1px);padding-right:calc(0.75em - 1px);padding-top:calc(0.5em - 1px);position:relative;vertical-align:top}html.theme--catppuccin-macchiato .pagination-previous:focus,html.theme--catppuccin-macchiato .pagination-next:focus,html.theme--catppuccin-macchiato .pagination-link:focus,html.theme--catppuccin-macchiato .pagination-ellipsis:focus,html.theme--catppuccin-macchiato .file-cta:focus,html.theme--catppuccin-macchiato .file-name:focus,html.theme--catppuccin-macchiato .select select:focus,html.theme--catppuccin-macchiato .textarea:focus,html.theme--catppuccin-macchiato .input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input:focus,html.theme--catppuccin-macchiato .button:focus,html.theme--catppuccin-macchiato .is-focused.pagination-previous,html.theme--catppuccin-macchiato .is-focused.pagination-next,html.theme--catppuccin-macchiato .is-focused.pagination-link,html.theme--catppuccin-macchiato .is-focused.pagination-ellipsis,html.theme--catppuccin-macchiato .is-focused.file-cta,html.theme--catppuccin-macchiato .is-focused.file-name,html.theme--catppuccin-macchiato .select select.is-focused,html.theme--catppuccin-macchiato .is-focused.textarea,html.theme--catppuccin-macchiato .is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .is-focused.button,html.theme--catppuccin-macchiato .pagination-previous:active,html.theme--catppuccin-macchiato .pagination-next:active,html.theme--catppuccin-macchiato .pagination-link:active,html.theme--catppuccin-macchiato .pagination-ellipsis:active,html.theme--catppuccin-macchiato .file-cta:active,html.theme--catppuccin-macchiato .file-name:active,html.theme--catppuccin-macchiato .select select:active,html.theme--catppuccin-macchiato .textarea:active,html.theme--catppuccin-macchiato .input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input:active,html.theme--catppuccin-macchiato .button:active,html.theme--catppuccin-macchiato .is-active.pagination-previous,html.theme--catppuccin-macchiato .is-active.pagination-next,html.theme--catppuccin-macchiato .is-active.pagination-link,html.theme--catppuccin-macchiato .is-active.pagination-ellipsis,html.theme--catppuccin-macchiato .is-active.file-cta,html.theme--catppuccin-macchiato .is-active.file-name,html.theme--catppuccin-macchiato .select select.is-active,html.theme--catppuccin-macchiato .is-active.textarea,html.theme--catppuccin-macchiato .is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-macchiato .is-active.button{outline:none}html.theme--catppuccin-macchiato .pagination-previous[disabled],html.theme--catppuccin-macchiato .pagination-next[disabled],html.theme--catppuccin-macchiato .pagination-link[disabled],html.theme--catppuccin-macchiato .pagination-ellipsis[disabled],html.theme--catppuccin-macchiato .file-cta[disabled],html.theme--catppuccin-macchiato .file-name[disabled],html.theme--catppuccin-macchiato .select select[disabled],html.theme--catppuccin-macchiato .textarea[disabled],html.theme--catppuccin-macchiato .input[disabled],html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input[disabled],html.theme--catppuccin-macchiato .button[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .pagination-previous,html.theme--catppuccin-macchiato fieldset[disabled] .pagination-previous,fieldset[disabled] html.theme--catppuccin-macchiato .pagination-next,html.theme--catppuccin-macchiato fieldset[disabled] .pagination-next,fieldset[disabled] html.theme--catppuccin-macchiato .pagination-link,html.theme--catppuccin-macchiato fieldset[disabled] .pagination-link,fieldset[disabled] html.theme--catppuccin-macchiato .pagination-ellipsis,html.theme--catppuccin-macchiato fieldset[disabled] .pagination-ellipsis,fieldset[disabled] html.theme--catppuccin-macchiato .file-cta,html.theme--catppuccin-macchiato fieldset[disabled] .file-cta,fieldset[disabled] html.theme--catppuccin-macchiato .file-name,html.theme--catppuccin-macchiato fieldset[disabled] .file-name,fieldset[disabled] html.theme--catppuccin-macchiato .select select,fieldset[disabled] html.theme--catppuccin-macchiato .textarea,fieldset[disabled] html.theme--catppuccin-macchiato .input,fieldset[disabled] html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-macchiato fieldset[disabled] .select select,html.theme--catppuccin-macchiato .select fieldset[disabled] select,html.theme--catppuccin-macchiato fieldset[disabled] .textarea,html.theme--catppuccin-macchiato fieldset[disabled] .input,html.theme--catppuccin-macchiato fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-macchiato #documenter .docs-sidebar fieldset[disabled] form.docs-search>input,fieldset[disabled] html.theme--catppuccin-macchiato .button,html.theme--catppuccin-macchiato fieldset[disabled] .button{cursor:not-allowed}html.theme--catppuccin-macchiato .tabs,html.theme--catppuccin-macchiato .pagination-previous,html.theme--catppuccin-macchiato .pagination-next,html.theme--catppuccin-macchiato .pagination-link,html.theme--catppuccin-macchiato .pagination-ellipsis,html.theme--catppuccin-macchiato .breadcrumb,html.theme--catppuccin-macchiato .file,html.theme--catppuccin-macchiato .button,.is-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.theme--catppuccin-macchiato .navbar-link:not(.is-arrowless)::after,html.theme--catppuccin-macchiato .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--catppuccin-macchiato .admonition:not(:last-child),html.theme--catppuccin-macchiato .tabs:not(:last-child),html.theme--catppuccin-macchiato .pagination:not(:last-child),html.theme--catppuccin-macchiato .message:not(:last-child),html.theme--catppuccin-macchiato .level:not(:last-child),html.theme--catppuccin-macchiato .breadcrumb:not(:last-child),html.theme--catppuccin-macchiato .block:not(:last-child),html.theme--catppuccin-macchiato .title:not(:last-child),html.theme--catppuccin-macchiato .subtitle:not(:last-child),html.theme--catppuccin-macchiato .table-container:not(:last-child),html.theme--catppuccin-macchiato .table:not(:last-child),html.theme--catppuccin-macchiato .progress:not(:last-child),html.theme--catppuccin-macchiato .notification:not(:last-child),html.theme--catppuccin-macchiato .content:not(:last-child),html.theme--catppuccin-macchiato .box:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-macchiato .modal-close,html.theme--catppuccin-macchiato .delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:9999px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:none;position:relative;vertical-align:top;width:20px}html.theme--catppuccin-macchiato .modal-close::before,html.theme--catppuccin-macchiato .delete::before,html.theme--catppuccin-macchiato .modal-close::after,html.theme--catppuccin-macchiato .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--catppuccin-macchiato .modal-close::before,html.theme--catppuccin-macchiato .delete::before{height:2px;width:50%}html.theme--catppuccin-macchiato .modal-close::after,html.theme--catppuccin-macchiato .delete::after{height:50%;width:2px}html.theme--catppuccin-macchiato .modal-close:hover,html.theme--catppuccin-macchiato .delete:hover,html.theme--catppuccin-macchiato .modal-close:focus,html.theme--catppuccin-macchiato .delete:focus{background-color:rgba(10,10,10,0.3)}html.theme--catppuccin-macchiato .modal-close:active,html.theme--catppuccin-macchiato .delete:active{background-color:rgba(10,10,10,0.4)}html.theme--catppuccin-macchiato .is-small.modal-close,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.modal-close,html.theme--catppuccin-macchiato .is-small.delete,html.theme--catppuccin-macchiato #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--catppuccin-macchiato .is-medium.modal-close,html.theme--catppuccin-macchiato .is-medium.delete{height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;width:24px}html.theme--catppuccin-macchiato .is-large.modal-close,html.theme--catppuccin-macchiato .is-large.delete{height:32px;max-height:32px;max-width:32px;min-height:32px;min-width:32px;width:32px}html.theme--catppuccin-macchiato .control.is-loading::after,html.theme--catppuccin-macchiato .select.is-loading::after,html.theme--catppuccin-macchiato .loader,html.theme--catppuccin-macchiato .button.is-loading::after{animation:spinAround 500ms infinite linear;border:2px solid #8087a2;border-radius:9999px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}html.theme--catppuccin-macchiato .hero-video,html.theme--catppuccin-macchiato .modal-background,html.theme--catppuccin-macchiato .modal,html.theme--catppuccin-macchiato .image.is-square img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--catppuccin-macchiato .image.is-square .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--catppuccin-macchiato .image.is-1by1 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--catppuccin-macchiato .image.is-1by1 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--catppuccin-macchiato .image.is-5by4 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--catppuccin-macchiato .image.is-5by4 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--catppuccin-macchiato .image.is-4by3 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--catppuccin-macchiato .image.is-4by3 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--catppuccin-macchiato .image.is-3by2 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--catppuccin-macchiato .image.is-3by2 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--catppuccin-macchiato .image.is-5by3 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--catppuccin-macchiato .image.is-5by3 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--catppuccin-macchiato .image.is-16by9 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--catppuccin-macchiato .image.is-16by9 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--catppuccin-macchiato .image.is-2by1 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--catppuccin-macchiato .image.is-2by1 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--catppuccin-macchiato .image.is-3by1 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--catppuccin-macchiato .image.is-3by1 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--catppuccin-macchiato .image.is-4by5 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--catppuccin-macchiato .image.is-4by5 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--catppuccin-macchiato .image.is-3by4 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--catppuccin-macchiato .image.is-3by4 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--catppuccin-macchiato .image.is-2by3 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--catppuccin-macchiato .image.is-2by3 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--catppuccin-macchiato .image.is-3by5 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--catppuccin-macchiato .image.is-3by5 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--catppuccin-macchiato .image.is-9by16 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--catppuccin-macchiato .image.is-9by16 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--catppuccin-macchiato .image.is-1by2 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--catppuccin-macchiato .image.is-1by2 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--catppuccin-macchiato .image.is-1by3 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--catppuccin-macchiato .image.is-1by3 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio,.is-overlay{bottom:0;left:0;position:absolute;right:0;top:0}html.theme--catppuccin-macchiato .navbar-burger{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0}/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:inherit}.has-text-white{color:#fff !important}a.has-text-white:hover,a.has-text-white:focus{color:#e6e6e6 !important}.has-background-white{background-color:#fff !important}.has-text-black{color:#0a0a0a !important}a.has-text-black:hover,a.has-text-black:focus{color:#000 !important}.has-background-black{background-color:#0a0a0a !important}.has-text-light{color:#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:#363a4f !important}a.has-text-dark:hover,a.has-text-dark:focus{color:#212431 !important}.has-background-dark{background-color:#363a4f !important}.has-text-primary{color:#8aadf4 !important}a.has-text-primary:hover,a.has-text-primary:focus{color:#5b8cf0 !important}.has-background-primary{background-color:#8aadf4 !important}.has-text-primary-light{color:#ecf2fd !important}a.has-text-primary-light:hover,a.has-text-primary-light:focus{color:#bed1f9 !important}.has-background-primary-light{background-color:#ecf2fd !important}.has-text-primary-dark{color:#0e3b95 !important}a.has-text-primary-dark:hover,a.has-text-primary-dark:focus{color:#124dc4 !important}.has-background-primary-dark{background-color:#0e3b95 !important}.has-text-link{color:#8aadf4 !important}a.has-text-link:hover,a.has-text-link:focus{color:#5b8cf0 !important}.has-background-link{background-color:#8aadf4 !important}.has-text-link-light{color:#ecf2fd !important}a.has-text-link-light:hover,a.has-text-link-light:focus{color:#bed1f9 !important}.has-background-link-light{background-color:#ecf2fd !important}.has-text-link-dark{color:#0e3b95 !important}a.has-text-link-dark:hover,a.has-text-link-dark:focus{color:#124dc4 !important}.has-background-link-dark{background-color:#0e3b95 !important}.has-text-info{color:#8bd5ca !important}a.has-text-info:hover,a.has-text-info:focus{color:#66c7b9 !important}.has-background-info{background-color:#8bd5ca !important}.has-text-info-light{color:#f0faf8 !important}a.has-text-info-light:hover,a.has-text-info-light:focus{color:#cbece7 !important}.has-background-info-light{background-color:#f0faf8 !important}.has-text-info-dark{color:#276d62 !important}a.has-text-info-dark:hover,a.has-text-info-dark:focus{color:#359284 !important}.has-background-info-dark{background-color:#276d62 !important}.has-text-success{color:#a6da95 !important}a.has-text-success:hover,a.has-text-success:focus{color:#86cd6f !important}.has-background-success{background-color:#a6da95 !important}.has-text-success-light{color:#f2faf0 !important}a.has-text-success-light:hover,a.has-text-success-light:focus{color:#d3edca !important}.has-background-success-light{background-color:#f2faf0 !important}.has-text-success-dark{color:#386e26 !important}a.has-text-success-dark:hover,a.has-text-success-dark:focus{color:#4b9333 !important}.has-background-success-dark{background-color:#386e26 !important}.has-text-warning{color:#eed49f !important}a.has-text-warning:hover,a.has-text-warning:focus{color:#e6c174 !important}.has-background-warning{background-color:#eed49f !important}.has-text-warning-light{color:#fcf7ee !important}a.has-text-warning-light:hover,a.has-text-warning-light:focus{color:#f4e4c2 !important}.has-background-warning-light{background-color:#fcf7ee !important}.has-text-warning-dark{color:#7e5c16 !important}a.has-text-warning-dark:hover,a.has-text-warning-dark:focus{color:#a97b1e !important}.has-background-warning-dark{background-color:#7e5c16 !important}.has-text-danger{color:#ed8796 !important}a.has-text-danger:hover,a.has-text-danger:focus{color:#e65b6f !important}.has-background-danger{background-color:#ed8796 !important}.has-text-danger-light{color:#fcedef !important}a.has-text-danger-light:hover,a.has-text-danger-light:focus{color:#f6c1c9 !important}.has-background-danger-light{background-color:#fcedef !important}.has-text-danger-dark{color:#971729 !important}a.has-text-danger-dark:hover,a.has-text-danger-dark:focus{color:#c31d36 !important}.has-background-danger-dark{background-color:#971729 !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:#363a4f !important}.has-background-grey-darker{background-color:#363a4f !important}.has-text-grey-dark{color:#494d64 !important}.has-background-grey-dark{background-color:#494d64 !important}.has-text-grey{color:#5b6078 !important}.has-background-grey{background-color:#5b6078 !important}.has-text-grey-light{color:#6e738d !important}.has-background-grey-light{background-color:#6e738d !important}.has-text-grey-lighter{color:#8087a2 !important}.has-background-grey-lighter{background-color:#8087a2 !important}.has-text-white-ter{color:#f5f5f5 !important}.has-background-white-ter{background-color:#f5f5f5 !important}.has-text-white-bis{color:#fafafa !important}.has-background-white-bis{background-color:#fafafa !important}.is-flex-direction-row{flex-direction:row !important}.is-flex-direction-row-reverse{flex-direction:row-reverse !important}.is-flex-direction-column{flex-direction:column !important}.is-flex-direction-column-reverse{flex-direction:column-reverse !important}.is-flex-wrap-nowrap{flex-wrap:nowrap !important}.is-flex-wrap-wrap{flex-wrap:wrap !important}.is-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse !important}.is-justify-content-flex-start{justify-content:flex-start !important}.is-justify-content-flex-end{justify-content:flex-end !important}.is-justify-content-center{justify-content:center !important}.is-justify-content-space-between{justify-content:space-between !important}.is-justify-content-space-around{justify-content:space-around !important}.is-justify-content-space-evenly{justify-content:space-evenly !important}.is-justify-content-start{justify-content:start !important}.is-justify-content-end{justify-content:end !important}.is-justify-content-left{justify-content:left !important}.is-justify-content-right{justify-content:right !important}.is-align-content-flex-start{align-content:flex-start !important}.is-align-content-flex-end{align-content:flex-end !important}.is-align-content-center{align-content:center !important}.is-align-content-space-between{align-content:space-between !important}.is-align-content-space-around{align-content:space-around !important}.is-align-content-space-evenly{align-content:space-evenly !important}.is-align-content-stretch{align-content:stretch !important}.is-align-content-start{align-content:start !important}.is-align-content-end{align-content:end !important}.is-align-content-baseline{align-content:baseline !important}.is-align-items-stretch{align-items:stretch !important}.is-align-items-flex-start{align-items:flex-start !important}.is-align-items-flex-end{align-items:flex-end !important}.is-align-items-center{align-items:center !important}.is-align-items-baseline{align-items:baseline !important}.is-align-items-start{align-items:start !important}.is-align-items-end{align-items:end !important}.is-align-items-self-start{align-items:self-start !important}.is-align-items-self-end{align-items:self-end !important}.is-align-self-auto{align-self:auto !important}.is-align-self-flex-start{align-self:flex-start !important}.is-align-self-flex-end{align-self:flex-end !important}.is-align-self-center{align-self:center !important}.is-align-self-baseline{align-self:baseline !important}.is-align-self-stretch{align-self:stretch !important}.is-flex-grow-0{flex-grow:0 !important}.is-flex-grow-1{flex-grow:1 !important}.is-flex-grow-2{flex-grow:2 !important}.is-flex-grow-3{flex-grow:3 !important}.is-flex-grow-4{flex-grow:4 !important}.is-flex-grow-5{flex-grow:5 !important}.is-flex-shrink-0{flex-shrink:0 !important}.is-flex-shrink-1{flex-shrink:1 !important}.is-flex-shrink-2{flex-shrink:2 !important}.is-flex-shrink-3{flex-shrink:3 !important}.is-flex-shrink-4{flex-shrink:4 !important}.is-flex-shrink-5{flex-shrink:5 !important}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-clickable{cursor:pointer !important;pointer-events:all !important}.is-clipped{overflow:hidden !important}.is-relative{position:relative !important}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.m-0{margin:0 !important}.mt-0{margin-top:0 !important}.mr-0{margin-right:0 !important}.mb-0{margin-bottom:0 !important}.ml-0{margin-left:0 !important}.mx-0{margin-left:0 !important;margin-right:0 !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.m-1{margin:.25rem !important}.mt-1{margin-top:.25rem !important}.mr-1{margin-right:.25rem !important}.mb-1{margin-bottom:.25rem !important}.ml-1{margin-left:.25rem !important}.mx-1{margin-left:.25rem !important;margin-right:.25rem !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-2{margin:.5rem !important}.mt-2{margin-top:.5rem !important}.mr-2{margin-right:.5rem !important}.mb-2{margin-bottom:.5rem !important}.ml-2{margin-left:.5rem !important}.mx-2{margin-left:.5rem !important;margin-right:.5rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-3{margin:.75rem !important}.mt-3{margin-top:.75rem !important}.mr-3{margin-right:.75rem !important}.mb-3{margin-bottom:.75rem !important}.ml-3{margin-left:.75rem !important}.mx-3{margin-left:.75rem !important;margin-right:.75rem !important}.my-3{margin-top:.75rem !important;margin-bottom:.75rem !important}.m-4{margin:1rem !important}.mt-4{margin-top:1rem !important}.mr-4{margin-right:1rem !important}.mb-4{margin-bottom:1rem !important}.ml-4{margin-left:1rem !important}.mx-4{margin-left:1rem !important;margin-right:1rem !important}.my-4{margin-top:1rem !important;margin-bottom:1rem !important}.m-5{margin:1.5rem !important}.mt-5{margin-top:1.5rem !important}.mr-5{margin-right:1.5rem !important}.mb-5{margin-bottom:1.5rem !important}.ml-5{margin-left:1.5rem !important}.mx-5{margin-left:1.5rem !important;margin-right:1.5rem !important}.my-5{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-6{margin:3rem !important}.mt-6{margin-top:3rem !important}.mr-6{margin-right:3rem !important}.mb-6{margin-bottom:3rem !important}.ml-6{margin-left:3rem !important}.mx-6{margin-left:3rem !important;margin-right:3rem !important}.my-6{margin-top:3rem !important;margin-bottom:3rem !important}.m-auto{margin:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-right:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-left:auto !important}.mx-auto{margin-left:auto !important;margin-right:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.p-0{padding:0 !important}.pt-0{padding-top:0 !important}.pr-0{padding-right:0 !important}.pb-0{padding-bottom:0 !important}.pl-0{padding-left:0 !important}.px-0{padding-left:0 !important;padding-right:0 !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.p-1{padding:.25rem !important}.pt-1{padding-top:.25rem !important}.pr-1{padding-right:.25rem !important}.pb-1{padding-bottom:.25rem !important}.pl-1{padding-left:.25rem !important}.px-1{padding-left:.25rem !important;padding-right:.25rem !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-2{padding:.5rem !important}.pt-2{padding-top:.5rem !important}.pr-2{padding-right:.5rem !important}.pb-2{padding-bottom:.5rem !important}.pl-2{padding-left:.5rem !important}.px-2{padding-left:.5rem !important;padding-right:.5rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-3{padding:.75rem !important}.pt-3{padding-top:.75rem !important}.pr-3{padding-right:.75rem !important}.pb-3{padding-bottom:.75rem !important}.pl-3{padding-left:.75rem !important}.px-3{padding-left:.75rem !important;padding-right:.75rem !important}.py-3{padding-top:.75rem !important;padding-bottom:.75rem !important}.p-4{padding:1rem !important}.pt-4{padding-top:1rem !important}.pr-4{padding-right:1rem !important}.pb-4{padding-bottom:1rem !important}.pl-4{padding-left:1rem !important}.px-4{padding-left:1rem !important;padding-right:1rem !important}.py-4{padding-top:1rem !important;padding-bottom:1rem !important}.p-5{padding:1.5rem !important}.pt-5{padding-top:1.5rem !important}.pr-5{padding-right:1.5rem !important}.pb-5{padding-bottom:1.5rem !important}.pl-5{padding-left:1.5rem !important}.px-5{padding-left:1.5rem !important;padding-right:1.5rem !important}.py-5{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-6{padding:3rem !important}.pt-6{padding-top:3rem !important}.pr-6{padding-right:3rem !important}.pb-6{padding-bottom:3rem !important}.pl-6{padding-left:3rem !important}.px-6{padding-left:3rem !important;padding-right:3rem !important}.py-6{padding-top:3rem !important;padding-bottom:3rem !important}.p-auto{padding:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-right:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-left:auto !important}.px-auto{padding-left:auto !important;padding-right:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !important}.is-size-1{font-size:3rem !important}.is-size-2{font-size:2.5rem !important}.is-size-3{font-size:2rem !important}.is-size-4{font-size:1.5rem !important}.is-size-5{font-size:1.25rem !important}.is-size-6{font-size:1rem !important}.is-size-7,html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink{font-size:.75rem !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:1rem !important}.is-size-7-mobile{font-size:.75rem !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:1rem !important}.is-size-7-tablet{font-size:.75rem !important}}@media screen and (max-width: 1055px){.is-size-1-touch{font-size:3rem !important}.is-size-2-touch{font-size:2.5rem !important}.is-size-3-touch{font-size:2rem !important}.is-size-4-touch{font-size:1.5rem !important}.is-size-5-touch{font-size:1.25rem !important}.is-size-6-touch{font-size:1rem !important}.is-size-7-touch{font-size:.75rem !important}}@media screen and (min-width: 1056px){.is-size-1-desktop{font-size:3rem !important}.is-size-2-desktop{font-size:2.5rem !important}.is-size-3-desktop{font-size:2rem !important}.is-size-4-desktop{font-size:1.5rem !important}.is-size-5-desktop{font-size:1.25rem !important}.is-size-6-desktop{font-size:1rem !important}.is-size-7-desktop{font-size:.75rem !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:1rem !important}.is-size-7-widescreen{font-size:.75rem !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:1rem !important}.is-size-7-fullhd{font-size:.75rem !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-centered-tablet-only{text-align:center !important}}@media screen and (max-width: 1055px){.has-text-centered-touch{text-align:center !important}}@media screen and (min-width: 1056px){.has-text-centered-desktop{text-align:center !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-centered-desktop-only{text-align:center !important}}@media screen and (min-width: 1216px){.has-text-centered-widescreen{text-align:center !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-centered-widescreen-only{text-align:center !important}}@media screen and (min-width: 1408px){.has-text-centered-fullhd{text-align:center !important}}@media screen and (max-width: 768px){.has-text-justified-mobile{text-align:justify !important}}@media screen and (min-width: 769px),print{.has-text-justified-tablet{text-align:justify !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-justified-tablet-only{text-align:justify !important}}@media screen and (max-width: 1055px){.has-text-justified-touch{text-align:justify !important}}@media screen and (min-width: 1056px){.has-text-justified-desktop{text-align:justify !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-justified-desktop-only{text-align:justify !important}}@media screen and (min-width: 1216px){.has-text-justified-widescreen{text-align:justify !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-justified-widescreen-only{text-align:justify !important}}@media screen and (min-width: 1408px){.has-text-justified-fullhd{text-align:justify !important}}@media screen and (max-width: 768px){.has-text-left-mobile{text-align:left !important}}@media screen and (min-width: 769px),print{.has-text-left-tablet{text-align:left !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-left-tablet-only{text-align:left !important}}@media screen and (max-width: 1055px){.has-text-left-touch{text-align:left !important}}@media screen and (min-width: 1056px){.has-text-left-desktop{text-align:left !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-left-desktop-only{text-align:left !important}}@media screen and (min-width: 1216px){.has-text-left-widescreen{text-align:left !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-left-widescreen-only{text-align:left !important}}@media screen and (min-width: 1408px){.has-text-left-fullhd{text-align:left !important}}@media screen and (max-width: 768px){.has-text-right-mobile{text-align:right !important}}@media screen and (min-width: 769px),print{.has-text-right-tablet{text-align:right !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-right-tablet-only{text-align:right !important}}@media screen and (max-width: 1055px){.has-text-right-touch{text-align:right !important}}@media screen and (min-width: 1056px){.has-text-right-desktop{text-align:right !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-right-desktop-only{text-align:right !important}}@media screen and (min-width: 1216px){.has-text-right-widescreen{text-align:right !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-right-widescreen-only{text-align:right !important}}@media screen and (min-width: 1408px){.has-text-right-fullhd{text-align:right !important}}.is-capitalized{text-transform:capitalize !important}.is-lowercase{text-transform:lowercase !important}.is-uppercase{text-transform:uppercase !important}.is-italic{font-style:italic !important}.is-underlined{text-decoration:underline !important}.has-text-weight-light{font-weight:300 !important}.has-text-weight-normal{font-weight:400 !important}.has-text-weight-medium{font-weight:500 !important}.has-text-weight-semibold{font-weight:600 !important}.has-text-weight-bold{font-weight:700 !important}.is-family-primary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-secondary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-sans-serif{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-monospace{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-family-code{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-block{display:block !important}@media screen and (max-width: 768px){.is-block-mobile{display:block !important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-block-tablet-only{display:block !important}}@media screen and (max-width: 1055px){.is-block-touch{display:block !important}}@media screen and (min-width: 1056px){.is-block-desktop{display:block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-block-desktop-only{display:block !important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block !important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block !important}}.is-flex{display:flex !important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex !important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-flex-tablet-only{display:flex !important}}@media screen and (max-width: 1055px){.is-flex-touch{display:flex !important}}@media screen and (min-width: 1056px){.is-flex-desktop{display:flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-flex-desktop-only{display:flex !important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex !important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex !important}}.is-inline{display:inline !important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline !important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-tablet-only{display:inline !important}}@media screen and (max-width: 1055px){.is-inline-touch{display:inline !important}}@media screen and (min-width: 1056px){.is-inline-desktop{display:inline !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-desktop-only{display:inline !important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline !important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline !important}}.is-inline-block{display:inline-block !important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block !important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-block-tablet-only{display:inline-block !important}}@media screen and (max-width: 1055px){.is-inline-block-touch{display:inline-block !important}}@media screen and (min-width: 1056px){.is-inline-block-desktop{display:inline-block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block !important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block !important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block !important}}.is-inline-flex{display:inline-flex !important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex !important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-flex-tablet-only{display:inline-flex !important}}@media screen and (max-width: 1055px){.is-inline-flex-touch{display:inline-flex !important}}@media screen and (min-width: 1056px){.is-inline-flex-desktop{display:inline-flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex !important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex !important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex !important}}.is-hidden{display:none !important}.is-sr-only{border:none !important;clip:rect(0, 0, 0, 0) !important;height:0.01em !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:0.01em !important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none !important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-hidden-tablet-only{display:none !important}}@media screen and (max-width: 1055px){.is-hidden-touch{display:none !important}}@media screen and (min-width: 1056px){.is-hidden-desktop{display:none !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-hidden-desktop-only{display:none !important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none !important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none !important}}.is-invisible{visibility:hidden !important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden !important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-invisible-tablet-only{visibility:hidden !important}}@media screen and (max-width: 1055px){.is-invisible-touch{visibility:hidden !important}}@media screen and (min-width: 1056px){.is-invisible-desktop{visibility:hidden !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden !important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden !important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden !important}}html.theme--catppuccin-macchiato html{background-color:#24273a;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--catppuccin-macchiato article,html.theme--catppuccin-macchiato aside,html.theme--catppuccin-macchiato figure,html.theme--catppuccin-macchiato footer,html.theme--catppuccin-macchiato header,html.theme--catppuccin-macchiato hgroup,html.theme--catppuccin-macchiato section{display:block}html.theme--catppuccin-macchiato body,html.theme--catppuccin-macchiato button,html.theme--catppuccin-macchiato input,html.theme--catppuccin-macchiato optgroup,html.theme--catppuccin-macchiato select,html.theme--catppuccin-macchiato textarea{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif}html.theme--catppuccin-macchiato code,html.theme--catppuccin-macchiato 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--catppuccin-macchiato body{color:#cad3f5;font-size:1em;font-weight:400;line-height:1.5}html.theme--catppuccin-macchiato a{color:#8aadf4;cursor:pointer;text-decoration:none}html.theme--catppuccin-macchiato a strong{color:currentColor}html.theme--catppuccin-macchiato a:hover{color:#91d7e3}html.theme--catppuccin-macchiato code{background-color:#1e2030;color:#cad3f5;font-size:.875em;font-weight:normal;padding:.1em}html.theme--catppuccin-macchiato hr{background-color:#1e2030;border:none;display:block;height:2px;margin:1.5rem 0}html.theme--catppuccin-macchiato img{height:auto;max-width:100%}html.theme--catppuccin-macchiato input[type="checkbox"],html.theme--catppuccin-macchiato input[type="radio"]{vertical-align:baseline}html.theme--catppuccin-macchiato small{font-size:.875em}html.theme--catppuccin-macchiato span{font-style:inherit;font-weight:inherit}html.theme--catppuccin-macchiato strong{color:#b5c1f1;font-weight:700}html.theme--catppuccin-macchiato fieldset{border:none}html.theme--catppuccin-macchiato pre{-webkit-overflow-scrolling:touch;background-color:#1e2030;color:#cad3f5;font-size:.875em;overflow-x:auto;padding:1.25rem 1.5rem;white-space:pre;word-wrap:normal}html.theme--catppuccin-macchiato pre code{background-color:transparent;color:currentColor;font-size:1em;padding:0}html.theme--catppuccin-macchiato table td,html.theme--catppuccin-macchiato table th{vertical-align:top}html.theme--catppuccin-macchiato table td:not([align]),html.theme--catppuccin-macchiato table th:not([align]){text-align:inherit}html.theme--catppuccin-macchiato table th{color:#b5c1f1}html.theme--catppuccin-macchiato .box{background-color:#494d64;border-radius:8px;box-shadow:none;color:#cad3f5;display:block;padding:1.25rem}html.theme--catppuccin-macchiato a.box:hover,html.theme--catppuccin-macchiato a.box:focus{box-shadow:0 0.5em 1em -0.125em rgba(10,10,10,0.1),0 0 0 1px #8aadf4}html.theme--catppuccin-macchiato a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2),0 0 0 1px #8aadf4}html.theme--catppuccin-macchiato .button{background-color:#1e2030;border-color:#3b3f5f;border-width:1px;color:#8aadf4;cursor:pointer;justify-content:center;padding-bottom:calc(0.5em - 1px);padding-left:1em;padding-right:1em;padding-top:calc(0.5em - 1px);text-align:center;white-space:nowrap}html.theme--catppuccin-macchiato .button strong{color:inherit}html.theme--catppuccin-macchiato .button .icon,html.theme--catppuccin-macchiato .button .icon.is-small,html.theme--catppuccin-macchiato .button #documenter .docs-sidebar form.docs-search>input.icon,html.theme--catppuccin-macchiato #documenter .docs-sidebar .button form.docs-search>input.icon,html.theme--catppuccin-macchiato .button .icon.is-medium,html.theme--catppuccin-macchiato .button .icon.is-large{height:1.5em;width:1.5em}html.theme--catppuccin-macchiato .button .icon:first-child:not(:last-child){margin-left:calc(-0.5em - 1px);margin-right:.25em}html.theme--catppuccin-macchiato .button .icon:last-child:not(:first-child){margin-left:.25em;margin-right:calc(-0.5em - 1px)}html.theme--catppuccin-macchiato .button .icon:first-child:last-child{margin-left:calc(-0.5em - 1px);margin-right:calc(-0.5em - 1px)}html.theme--catppuccin-macchiato .button:hover,html.theme--catppuccin-macchiato .button.is-hovered{border-color:#6e738d;color:#b5c1f1}html.theme--catppuccin-macchiato .button:focus,html.theme--catppuccin-macchiato .button.is-focused{border-color:#6e738d;color:#739df2}html.theme--catppuccin-macchiato .button:focus:not(:active),html.theme--catppuccin-macchiato .button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(138,173,244,0.25)}html.theme--catppuccin-macchiato .button:active,html.theme--catppuccin-macchiato .button.is-active{border-color:#494d64;color:#b5c1f1}html.theme--catppuccin-macchiato .button.is-text{background-color:transparent;border-color:transparent;color:#cad3f5;text-decoration:underline}html.theme--catppuccin-macchiato .button.is-text:hover,html.theme--catppuccin-macchiato .button.is-text.is-hovered,html.theme--catppuccin-macchiato .button.is-text:focus,html.theme--catppuccin-macchiato .button.is-text.is-focused{background-color:#1e2030;color:#b5c1f1}html.theme--catppuccin-macchiato .button.is-text:active,html.theme--catppuccin-macchiato .button.is-text.is-active{background-color:#141620;color:#b5c1f1}html.theme--catppuccin-macchiato .button.is-text[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}html.theme--catppuccin-macchiato .button.is-ghost{background:none;border-color:rgba(0,0,0,0);color:#8aadf4;text-decoration:none}html.theme--catppuccin-macchiato .button.is-ghost:hover,html.theme--catppuccin-macchiato .button.is-ghost.is-hovered{color:#8aadf4;text-decoration:underline}html.theme--catppuccin-macchiato .button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-white:hover,html.theme--catppuccin-macchiato .button.is-white.is-hovered{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-white:focus,html.theme--catppuccin-macchiato .button.is-white.is-focused{border-color:transparent;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-white:focus:not(:active),html.theme--catppuccin-macchiato .button.is-white.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-macchiato .button.is-white:active,html.theme--catppuccin-macchiato .button.is-white.is-active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-white[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-white{background-color:#fff;border-color:#fff;box-shadow:none}html.theme--catppuccin-macchiato .button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .button.is-white.is-inverted:hover,html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-hovered{background-color:#000}html.theme--catppuccin-macchiato .button.is-white.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-white.is-inverted{background-color:#0a0a0a;border-color:transparent;box-shadow:none;color:#fff}html.theme--catppuccin-macchiato .button.is-white.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-macchiato .button.is-white.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-macchiato .button.is-white.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-white.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-white.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-white.is-outlined.is-focused{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-white.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-white.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-white.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-white.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-macchiato .button.is-white.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-white.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined.is-focused{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-black{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-black:hover,html.theme--catppuccin-macchiato .button.is-black.is-hovered{background-color:#040404;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-black:focus,html.theme--catppuccin-macchiato .button.is-black.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-black:focus:not(:active),html.theme--catppuccin-macchiato .button.is-black.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-macchiato .button.is-black:active,html.theme--catppuccin-macchiato .button.is-black.is-active{background-color:#000;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-black[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-black{background-color:#0a0a0a;border-color:#0a0a0a;box-shadow:none}html.theme--catppuccin-macchiato .button.is-black.is-inverted{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-black.is-inverted:hover,html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-macchiato .button.is-black.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-black.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-black.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-black.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-black.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-black.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-black.is-outlined.is-focused{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .button.is-black.is-outlined.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-macchiato .button.is-black.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-black.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-black.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-black.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-black.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined.is-focused{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-macchiato .button.is-light{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-light:hover,html.theme--catppuccin-macchiato .button.is-light.is-hovered{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-light:focus,html.theme--catppuccin-macchiato .button.is-light.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-light:focus:not(:active),html.theme--catppuccin-macchiato .button.is-light.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-macchiato .button.is-light:active,html.theme--catppuccin-macchiato .button.is-light.is-active{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-light[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-light{background-color:#f5f5f5;border-color:#f5f5f5;box-shadow:none}html.theme--catppuccin-macchiato .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-macchiato .button.is-light.is-inverted:hover,html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-light.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#f5f5f5}html.theme--catppuccin-macchiato .button.is-light.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-macchiato .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;color:#f5f5f5}html.theme--catppuccin-macchiato .button.is-light.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-light.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-light.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-light.is-outlined.is-focused{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}html.theme--catppuccin-macchiato .button.is-light.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-light.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-light.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-light.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-macchiato .button.is-light.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;box-shadow:none;color:#f5f5f5}html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-dark,html.theme--catppuccin-macchiato .content kbd.button{background-color:#363a4f;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-dark:hover,html.theme--catppuccin-macchiato .content kbd.button:hover,html.theme--catppuccin-macchiato .button.is-dark.is-hovered,html.theme--catppuccin-macchiato .content kbd.button.is-hovered{background-color:#313447;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-dark:focus,html.theme--catppuccin-macchiato .content kbd.button:focus,html.theme--catppuccin-macchiato .button.is-dark.is-focused,html.theme--catppuccin-macchiato .content kbd.button.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-dark:focus:not(:active),html.theme--catppuccin-macchiato .content kbd.button:focus:not(:active),html.theme--catppuccin-macchiato .button.is-dark.is-focused:not(:active),html.theme--catppuccin-macchiato .content kbd.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(54,58,79,0.25)}html.theme--catppuccin-macchiato .button.is-dark:active,html.theme--catppuccin-macchiato .content kbd.button:active,html.theme--catppuccin-macchiato .button.is-dark.is-active,html.theme--catppuccin-macchiato .content kbd.button.is-active{background-color:#2c2f40;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-dark[disabled],html.theme--catppuccin-macchiato .content kbd.button[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-dark,fieldset[disabled] html.theme--catppuccin-macchiato .content kbd.button{background-color:#363a4f;border-color:#363a4f;box-shadow:none}html.theme--catppuccin-macchiato .button.is-dark.is-inverted,html.theme--catppuccin-macchiato .content kbd.button.is-inverted{background-color:#fff;color:#363a4f}html.theme--catppuccin-macchiato .button.is-dark.is-inverted:hover,html.theme--catppuccin-macchiato .content kbd.button.is-inverted:hover,html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-hovered,html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-macchiato .button.is-dark.is-inverted[disabled],html.theme--catppuccin-macchiato .content kbd.button.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-dark.is-inverted,fieldset[disabled] html.theme--catppuccin-macchiato .content kbd.button.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#363a4f}html.theme--catppuccin-macchiato .button.is-dark.is-loading::after,html.theme--catppuccin-macchiato .content kbd.button.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-dark.is-outlined,html.theme--catppuccin-macchiato .content kbd.button.is-outlined{background-color:transparent;border-color:#363a4f;color:#363a4f}html.theme--catppuccin-macchiato .button.is-dark.is-outlined:hover,html.theme--catppuccin-macchiato .content kbd.button.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-dark.is-outlined.is-hovered,html.theme--catppuccin-macchiato .content kbd.button.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-dark.is-outlined:focus,html.theme--catppuccin-macchiato .content kbd.button.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-dark.is-outlined.is-focused,html.theme--catppuccin-macchiato .content kbd.button.is-outlined.is-focused{background-color:#363a4f;border-color:#363a4f;color:#fff}html.theme--catppuccin-macchiato .button.is-dark.is-outlined.is-loading::after,html.theme--catppuccin-macchiato .content kbd.button.is-outlined.is-loading::after{border-color:transparent transparent #363a4f #363a4f !important}html.theme--catppuccin-macchiato .button.is-dark.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .content kbd.button.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-dark.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .content kbd.button.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-dark.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .content kbd.button.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-dark.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-macchiato .content kbd.button.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-dark.is-outlined[disabled],html.theme--catppuccin-macchiato .content kbd.button.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-dark.is-outlined,fieldset[disabled] html.theme--catppuccin-macchiato .content kbd.button.is-outlined{background-color:transparent;border-color:#363a4f;box-shadow:none;color:#363a4f}html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined,html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined.is-focused,html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined.is-focused{background-color:#fff;color:#363a4f}html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #363a4f #363a4f !important}html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined[disabled],html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-dark.is-inverted.is-outlined,fieldset[disabled] html.theme--catppuccin-macchiato .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-macchiato .button.is-primary,html.theme--catppuccin-macchiato .docstring>section>a.button.docs-sourcelink{background-color:#8aadf4;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-primary:hover,html.theme--catppuccin-macchiato .docstring>section>a.button.docs-sourcelink:hover,html.theme--catppuccin-macchiato .button.is-primary.is-hovered,html.theme--catppuccin-macchiato .docstring>section>a.button.is-hovered.docs-sourcelink{background-color:#7ea5f3;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-primary:focus,html.theme--catppuccin-macchiato .docstring>section>a.button.docs-sourcelink:focus,html.theme--catppuccin-macchiato .button.is-primary.is-focused,html.theme--catppuccin-macchiato .docstring>section>a.button.is-focused.docs-sourcelink{border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-primary:focus:not(:active),html.theme--catppuccin-macchiato .docstring>section>a.button.docs-sourcelink:focus:not(:active),html.theme--catppuccin-macchiato .button.is-primary.is-focused:not(:active),html.theme--catppuccin-macchiato .docstring>section>a.button.is-focused.docs-sourcelink:not(:active){box-shadow:0 0 0 0.125em rgba(138,173,244,0.25)}html.theme--catppuccin-macchiato .button.is-primary:active,html.theme--catppuccin-macchiato .docstring>section>a.button.docs-sourcelink:active,html.theme--catppuccin-macchiato .button.is-primary.is-active,html.theme--catppuccin-macchiato .docstring>section>a.button.is-active.docs-sourcelink{background-color:#739df2;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-primary[disabled],html.theme--catppuccin-macchiato .docstring>section>a.button.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-primary,fieldset[disabled] html.theme--catppuccin-macchiato .docstring>section>a.button.docs-sourcelink{background-color:#8aadf4;border-color:#8aadf4;box-shadow:none}html.theme--catppuccin-macchiato .button.is-primary.is-inverted,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;color:#8aadf4}html.theme--catppuccin-macchiato .button.is-primary.is-inverted:hover,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.docs-sourcelink:hover,html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-hovered,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-hovered.docs-sourcelink{background-color:#f2f2f2}html.theme--catppuccin-macchiato .button.is-primary.is-inverted[disabled],html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-primary.is-inverted,fieldset[disabled] html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;border-color:transparent;box-shadow:none;color:#8aadf4}html.theme--catppuccin-macchiato .button.is-primary.is-loading::after,html.theme--catppuccin-macchiato .docstring>section>a.button.is-loading.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-primary.is-outlined,html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#8aadf4;color:#8aadf4}html.theme--catppuccin-macchiato .button.is-primary.is-outlined:hover,html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.docs-sourcelink:hover,html.theme--catppuccin-macchiato .button.is-primary.is-outlined.is-hovered,html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.is-hovered.docs-sourcelink,html.theme--catppuccin-macchiato .button.is-primary.is-outlined:focus,html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.docs-sourcelink:focus,html.theme--catppuccin-macchiato .button.is-primary.is-outlined.is-focused,html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.is-focused.docs-sourcelink{background-color:#8aadf4;border-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .button.is-primary.is-outlined.is-loading::after,html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink::after{border-color:transparent transparent #8aadf4 #8aadf4 !important}html.theme--catppuccin-macchiato .button.is-primary.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--catppuccin-macchiato .button.is-primary.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--catppuccin-macchiato .button.is-primary.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--catppuccin-macchiato .button.is-primary.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-primary.is-outlined[disabled],html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-primary.is-outlined,fieldset[disabled] html.theme--catppuccin-macchiato .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#8aadf4;box-shadow:none;color:#8aadf4}html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:hover,html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink,html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:focus,html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined.is-focused,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.is-focused.docs-sourcelink{background-color:#fff;color:#8aadf4}html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #8aadf4 #8aadf4 !important}html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined[disabled],html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-primary.is-inverted.is-outlined,fieldset[disabled] html.theme--catppuccin-macchiato .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-macchiato .button.is-primary.is-light,html.theme--catppuccin-macchiato .docstring>section>a.button.is-light.docs-sourcelink{background-color:#ecf2fd;color:#0e3b95}html.theme--catppuccin-macchiato .button.is-primary.is-light:hover,html.theme--catppuccin-macchiato .docstring>section>a.button.is-light.docs-sourcelink:hover,html.theme--catppuccin-macchiato .button.is-primary.is-light.is-hovered,html.theme--catppuccin-macchiato .docstring>section>a.button.is-light.is-hovered.docs-sourcelink{background-color:#e1eafc;border-color:transparent;color:#0e3b95}html.theme--catppuccin-macchiato .button.is-primary.is-light:active,html.theme--catppuccin-macchiato .docstring>section>a.button.is-light.docs-sourcelink:active,html.theme--catppuccin-macchiato .button.is-primary.is-light.is-active,html.theme--catppuccin-macchiato .docstring>section>a.button.is-light.is-active.docs-sourcelink{background-color:#d5e2fb;border-color:transparent;color:#0e3b95}html.theme--catppuccin-macchiato .button.is-link{background-color:#8aadf4;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-link:hover,html.theme--catppuccin-macchiato .button.is-link.is-hovered{background-color:#7ea5f3;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-link:focus,html.theme--catppuccin-macchiato .button.is-link.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-link:focus:not(:active),html.theme--catppuccin-macchiato .button.is-link.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(138,173,244,0.25)}html.theme--catppuccin-macchiato .button.is-link:active,html.theme--catppuccin-macchiato .button.is-link.is-active{background-color:#739df2;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-link[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-link{background-color:#8aadf4;border-color:#8aadf4;box-shadow:none}html.theme--catppuccin-macchiato .button.is-link.is-inverted{background-color:#fff;color:#8aadf4}html.theme--catppuccin-macchiato .button.is-link.is-inverted:hover,html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-macchiato .button.is-link.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#8aadf4}html.theme--catppuccin-macchiato .button.is-link.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-link.is-outlined{background-color:transparent;border-color:#8aadf4;color:#8aadf4}html.theme--catppuccin-macchiato .button.is-link.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-link.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-link.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-link.is-outlined.is-focused{background-color:#8aadf4;border-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #8aadf4 #8aadf4 !important}html.theme--catppuccin-macchiato .button.is-link.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-link.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-link.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-link.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-link.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-link.is-outlined{background-color:transparent;border-color:#8aadf4;box-shadow:none;color:#8aadf4}html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined.is-focused{background-color:#fff;color:#8aadf4}html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #8aadf4 #8aadf4 !important}html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-macchiato .button.is-link.is-light{background-color:#ecf2fd;color:#0e3b95}html.theme--catppuccin-macchiato .button.is-link.is-light:hover,html.theme--catppuccin-macchiato .button.is-link.is-light.is-hovered{background-color:#e1eafc;border-color:transparent;color:#0e3b95}html.theme--catppuccin-macchiato .button.is-link.is-light:active,html.theme--catppuccin-macchiato .button.is-link.is-light.is-active{background-color:#d5e2fb;border-color:transparent;color:#0e3b95}html.theme--catppuccin-macchiato .button.is-info{background-color:#8bd5ca;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-info:hover,html.theme--catppuccin-macchiato .button.is-info.is-hovered{background-color:#82d2c6;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-info:focus,html.theme--catppuccin-macchiato .button.is-info.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-info:focus:not(:active),html.theme--catppuccin-macchiato .button.is-info.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(139,213,202,0.25)}html.theme--catppuccin-macchiato .button.is-info:active,html.theme--catppuccin-macchiato .button.is-info.is-active{background-color:#78cec1;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-info[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-info{background-color:#8bd5ca;border-color:#8bd5ca;box-shadow:none}html.theme--catppuccin-macchiato .button.is-info.is-inverted{background-color:rgba(0,0,0,0.7);color:#8bd5ca}html.theme--catppuccin-macchiato .button.is-info.is-inverted:hover,html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-info.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-info.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#8bd5ca}html.theme--catppuccin-macchiato .button.is-info.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-macchiato .button.is-info.is-outlined{background-color:transparent;border-color:#8bd5ca;color:#8bd5ca}html.theme--catppuccin-macchiato .button.is-info.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-info.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-info.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-info.is-outlined.is-focused{background-color:#8bd5ca;border-color:#8bd5ca;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #8bd5ca #8bd5ca !important}html.theme--catppuccin-macchiato .button.is-info.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-info.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-info.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-info.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-macchiato .button.is-info.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-info.is-outlined{background-color:transparent;border-color:#8bd5ca;box-shadow:none;color:#8bd5ca}html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#8bd5ca}html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #8bd5ca #8bd5ca !important}html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-info.is-light{background-color:#f0faf8;color:#276d62}html.theme--catppuccin-macchiato .button.is-info.is-light:hover,html.theme--catppuccin-macchiato .button.is-info.is-light.is-hovered{background-color:#e7f6f4;border-color:transparent;color:#276d62}html.theme--catppuccin-macchiato .button.is-info.is-light:active,html.theme--catppuccin-macchiato .button.is-info.is-light.is-active{background-color:#ddf3f0;border-color:transparent;color:#276d62}html.theme--catppuccin-macchiato .button.is-success{background-color:#a6da95;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-success:hover,html.theme--catppuccin-macchiato .button.is-success.is-hovered{background-color:#9ed78c;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-success:focus,html.theme--catppuccin-macchiato .button.is-success.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-success:focus:not(:active),html.theme--catppuccin-macchiato .button.is-success.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(166,218,149,0.25)}html.theme--catppuccin-macchiato .button.is-success:active,html.theme--catppuccin-macchiato .button.is-success.is-active{background-color:#96d382;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-success[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-success{background-color:#a6da95;border-color:#a6da95;box-shadow:none}html.theme--catppuccin-macchiato .button.is-success.is-inverted{background-color:rgba(0,0,0,0.7);color:#a6da95}html.theme--catppuccin-macchiato .button.is-success.is-inverted:hover,html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-success.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-success.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#a6da95}html.theme--catppuccin-macchiato .button.is-success.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-macchiato .button.is-success.is-outlined{background-color:transparent;border-color:#a6da95;color:#a6da95}html.theme--catppuccin-macchiato .button.is-success.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-success.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-success.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-success.is-outlined.is-focused{background-color:#a6da95;border-color:#a6da95;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #a6da95 #a6da95 !important}html.theme--catppuccin-macchiato .button.is-success.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-success.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-success.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-success.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-macchiato .button.is-success.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-success.is-outlined{background-color:transparent;border-color:#a6da95;box-shadow:none;color:#a6da95}html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#a6da95}html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #a6da95 #a6da95 !important}html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-success.is-light{background-color:#f2faf0;color:#386e26}html.theme--catppuccin-macchiato .button.is-success.is-light:hover,html.theme--catppuccin-macchiato .button.is-success.is-light.is-hovered{background-color:#eaf6e6;border-color:transparent;color:#386e26}html.theme--catppuccin-macchiato .button.is-success.is-light:active,html.theme--catppuccin-macchiato .button.is-success.is-light.is-active{background-color:#e2f3dd;border-color:transparent;color:#386e26}html.theme--catppuccin-macchiato .button.is-warning{background-color:#eed49f;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-warning:hover,html.theme--catppuccin-macchiato .button.is-warning.is-hovered{background-color:#eccf94;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-warning:focus,html.theme--catppuccin-macchiato .button.is-warning.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-warning:focus:not(:active),html.theme--catppuccin-macchiato .button.is-warning.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(238,212,159,0.25)}html.theme--catppuccin-macchiato .button.is-warning:active,html.theme--catppuccin-macchiato .button.is-warning.is-active{background-color:#eaca89;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-warning[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-warning{background-color:#eed49f;border-color:#eed49f;box-shadow:none}html.theme--catppuccin-macchiato .button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);color:#eed49f}html.theme--catppuccin-macchiato .button.is-warning.is-inverted:hover,html.theme--catppuccin-macchiato .button.is-warning.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-warning.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#eed49f}html.theme--catppuccin-macchiato .button.is-warning.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-macchiato .button.is-warning.is-outlined{background-color:transparent;border-color:#eed49f;color:#eed49f}html.theme--catppuccin-macchiato .button.is-warning.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-warning.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-warning.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-warning.is-outlined.is-focused{background-color:#eed49f;border-color:#eed49f;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #eed49f #eed49f !important}html.theme--catppuccin-macchiato .button.is-warning.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-warning.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-warning.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .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}html.theme--catppuccin-macchiato .button.is-warning.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-warning.is-outlined{background-color:transparent;border-color:#eed49f;box-shadow:none;color:#eed49f}html.theme--catppuccin-macchiato .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)}html.theme--catppuccin-macchiato .button.is-warning.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-warning.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-warning.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-warning.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#eed49f}html.theme--catppuccin-macchiato .button.is-warning.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-warning.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #eed49f #eed49f !important}html.theme--catppuccin-macchiato .button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .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)}html.theme--catppuccin-macchiato .button.is-warning.is-light{background-color:#fcf7ee;color:#7e5c16}html.theme--catppuccin-macchiato .button.is-warning.is-light:hover,html.theme--catppuccin-macchiato .button.is-warning.is-light.is-hovered{background-color:#faf2e3;border-color:transparent;color:#7e5c16}html.theme--catppuccin-macchiato .button.is-warning.is-light:active,html.theme--catppuccin-macchiato .button.is-warning.is-light.is-active{background-color:#f8eed8;border-color:transparent;color:#7e5c16}html.theme--catppuccin-macchiato .button.is-danger{background-color:#ed8796;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-danger:hover,html.theme--catppuccin-macchiato .button.is-danger.is-hovered{background-color:#eb7c8c;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-danger:focus,html.theme--catppuccin-macchiato .button.is-danger.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-danger:focus:not(:active),html.theme--catppuccin-macchiato .button.is-danger.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(237,135,150,0.25)}html.theme--catppuccin-macchiato .button.is-danger:active,html.theme--catppuccin-macchiato .button.is-danger.is-active{background-color:#ea7183;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .button.is-danger[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-danger{background-color:#ed8796;border-color:#ed8796;box-shadow:none}html.theme--catppuccin-macchiato .button.is-danger.is-inverted{background-color:#fff;color:#ed8796}html.theme--catppuccin-macchiato .button.is-danger.is-inverted:hover,html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-macchiato .button.is-danger.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-danger.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#ed8796}html.theme--catppuccin-macchiato .button.is-danger.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-danger.is-outlined{background-color:transparent;border-color:#ed8796;color:#ed8796}html.theme--catppuccin-macchiato .button.is-danger.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-danger.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-danger.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-danger.is-outlined.is-focused{background-color:#ed8796;border-color:#ed8796;color:#fff}html.theme--catppuccin-macchiato .button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #ed8796 #ed8796 !important}html.theme--catppuccin-macchiato .button.is-danger.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-danger.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-danger.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-danger.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-macchiato .button.is-danger.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-danger.is-outlined{background-color:transparent;border-color:#ed8796;box-shadow:none;color:#ed8796}html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined:hover,html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined:focus,html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined.is-focused{background-color:#fff;color:#ed8796}html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ed8796 #ed8796 !important}html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-macchiato .button.is-danger.is-light{background-color:#fcedef;color:#971729}html.theme--catppuccin-macchiato .button.is-danger.is-light:hover,html.theme--catppuccin-macchiato .button.is-danger.is-light.is-hovered{background-color:#fbe2e6;border-color:transparent;color:#971729}html.theme--catppuccin-macchiato .button.is-danger.is-light:active,html.theme--catppuccin-macchiato .button.is-danger.is-light.is-active{background-color:#f9d7dc;border-color:transparent;color:#971729}html.theme--catppuccin-macchiato .button.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.button{font-size:.75rem}html.theme--catppuccin-macchiato .button.is-small:not(.is-rounded),html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.button:not(.is-rounded){border-radius:3px}html.theme--catppuccin-macchiato .button.is-normal{font-size:1rem}html.theme--catppuccin-macchiato .button.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .button.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .button[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .button{background-color:#6e738d;border-color:#5b6078;box-shadow:none;opacity:.5}html.theme--catppuccin-macchiato .button.is-fullwidth{display:flex;width:100%}html.theme--catppuccin-macchiato .button.is-loading{color:transparent !important;pointer-events:none}html.theme--catppuccin-macchiato .button.is-loading::after{position:absolute;left:calc(50% - (1em * 0.5));top:calc(50% - (1em * 0.5));position:absolute !important}html.theme--catppuccin-macchiato .button.is-static{background-color:#1e2030;border-color:#5b6078;color:#8087a2;box-shadow:none;pointer-events:none}html.theme--catppuccin-macchiato .button.is-rounded,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.button{border-radius:9999px;padding-left:calc(1em + 0.25em);padding-right:calc(1em + 0.25em)}html.theme--catppuccin-macchiato .buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-macchiato .buttons .button{margin-bottom:0.5rem}html.theme--catppuccin-macchiato .buttons .button:not(:last-child):not(.is-fullwidth){margin-right:.5rem}html.theme--catppuccin-macchiato .buttons:last-child{margin-bottom:-0.5rem}html.theme--catppuccin-macchiato .buttons:not(:last-child){margin-bottom:1rem}html.theme--catppuccin-macchiato .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){font-size:.75rem}html.theme--catppuccin-macchiato .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large):not(.is-rounded){border-radius:3px}html.theme--catppuccin-macchiato .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}html.theme--catppuccin-macchiato .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}html.theme--catppuccin-macchiato .buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-macchiato .buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}html.theme--catppuccin-macchiato .buttons.has-addons .button:last-child{margin-right:0}html.theme--catppuccin-macchiato .buttons.has-addons .button:hover,html.theme--catppuccin-macchiato .buttons.has-addons .button.is-hovered{z-index:2}html.theme--catppuccin-macchiato .buttons.has-addons .button:focus,html.theme--catppuccin-macchiato .buttons.has-addons .button.is-focused,html.theme--catppuccin-macchiato .buttons.has-addons .button:active,html.theme--catppuccin-macchiato .buttons.has-addons .button.is-active,html.theme--catppuccin-macchiato .buttons.has-addons .button.is-selected{z-index:3}html.theme--catppuccin-macchiato .buttons.has-addons .button:focus:hover,html.theme--catppuccin-macchiato .buttons.has-addons .button.is-focused:hover,html.theme--catppuccin-macchiato .buttons.has-addons .button:active:hover,html.theme--catppuccin-macchiato .buttons.has-addons .button.is-active:hover,html.theme--catppuccin-macchiato .buttons.has-addons .button.is-selected:hover{z-index:4}html.theme--catppuccin-macchiato .buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-macchiato .buttons.is-centered{justify-content:center}html.theme--catppuccin-macchiato .buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}html.theme--catppuccin-macchiato .buttons.is-right{justify-content:flex-end}html.theme--catppuccin-macchiato .buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .button.is-responsive.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.5625rem}html.theme--catppuccin-macchiato .button.is-responsive,html.theme--catppuccin-macchiato .button.is-responsive.is-normal{font-size:.65625rem}html.theme--catppuccin-macchiato .button.is-responsive.is-medium{font-size:.75rem}html.theme--catppuccin-macchiato .button.is-responsive.is-large{font-size:1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-macchiato .button.is-responsive.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.65625rem}html.theme--catppuccin-macchiato .button.is-responsive,html.theme--catppuccin-macchiato .button.is-responsive.is-normal{font-size:.75rem}html.theme--catppuccin-macchiato .button.is-responsive.is-medium{font-size:1rem}html.theme--catppuccin-macchiato .button.is-responsive.is-large{font-size:1.25rem}}html.theme--catppuccin-macchiato .container{flex-grow:1;margin:0 auto;position:relative;width:auto}html.theme--catppuccin-macchiato .container.is-fluid{max-width:none !important;padding-left:32px;padding-right:32px;width:100%}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .container{max-width:992px}}@media screen and (max-width: 1215px){html.theme--catppuccin-macchiato .container.is-widescreen:not(.is-max-desktop){max-width:1152px}}@media screen and (max-width: 1407px){html.theme--catppuccin-macchiato .container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .container:not(.is-max-desktop){max-width:1152px}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .container:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}html.theme--catppuccin-macchiato .content li+li{margin-top:0.25em}html.theme--catppuccin-macchiato .content p:not(:last-child),html.theme--catppuccin-macchiato .content dl:not(:last-child),html.theme--catppuccin-macchiato .content ol:not(:last-child),html.theme--catppuccin-macchiato .content ul:not(:last-child),html.theme--catppuccin-macchiato .content blockquote:not(:last-child),html.theme--catppuccin-macchiato .content pre:not(:last-child),html.theme--catppuccin-macchiato .content table:not(:last-child){margin-bottom:1em}html.theme--catppuccin-macchiato .content h1,html.theme--catppuccin-macchiato .content h2,html.theme--catppuccin-macchiato .content h3,html.theme--catppuccin-macchiato .content h4,html.theme--catppuccin-macchiato .content h5,html.theme--catppuccin-macchiato .content h6{color:#cad3f5;font-weight:600;line-height:1.125}html.theme--catppuccin-macchiato .content h1{font-size:2em;margin-bottom:0.5em}html.theme--catppuccin-macchiato .content h1:not(:first-child){margin-top:1em}html.theme--catppuccin-macchiato .content h2{font-size:1.75em;margin-bottom:0.5714em}html.theme--catppuccin-macchiato .content h2:not(:first-child){margin-top:1.1428em}html.theme--catppuccin-macchiato .content h3{font-size:1.5em;margin-bottom:0.6666em}html.theme--catppuccin-macchiato .content h3:not(:first-child){margin-top:1.3333em}html.theme--catppuccin-macchiato .content h4{font-size:1.25em;margin-bottom:0.8em}html.theme--catppuccin-macchiato .content h5{font-size:1.125em;margin-bottom:0.8888em}html.theme--catppuccin-macchiato .content h6{font-size:1em;margin-bottom:1em}html.theme--catppuccin-macchiato .content blockquote{background-color:#1e2030;border-left:5px solid #5b6078;padding:1.25em 1.5em}html.theme--catppuccin-macchiato .content ol{list-style-position:outside;margin-left:2em;margin-top:1em}html.theme--catppuccin-macchiato .content ol:not([type]){list-style-type:decimal}html.theme--catppuccin-macchiato .content ol.is-lower-alpha:not([type]){list-style-type:lower-alpha}html.theme--catppuccin-macchiato .content ol.is-lower-roman:not([type]){list-style-type:lower-roman}html.theme--catppuccin-macchiato .content ol.is-upper-alpha:not([type]){list-style-type:upper-alpha}html.theme--catppuccin-macchiato .content ol.is-upper-roman:not([type]){list-style-type:upper-roman}html.theme--catppuccin-macchiato .content ul{list-style:disc outside;margin-left:2em;margin-top:1em}html.theme--catppuccin-macchiato .content ul ul{list-style-type:circle;margin-top:0.5em}html.theme--catppuccin-macchiato .content ul ul ul{list-style-type:square}html.theme--catppuccin-macchiato .content dd{margin-left:2em}html.theme--catppuccin-macchiato .content figure{margin-left:2em;margin-right:2em;text-align:center}html.theme--catppuccin-macchiato .content figure:not(:first-child){margin-top:2em}html.theme--catppuccin-macchiato .content figure:not(:last-child){margin-bottom:2em}html.theme--catppuccin-macchiato .content figure img{display:inline-block}html.theme--catppuccin-macchiato .content figure figcaption{font-style:italic}html.theme--catppuccin-macchiato .content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:0;white-space:pre;word-wrap:normal}html.theme--catppuccin-macchiato .content sup,html.theme--catppuccin-macchiato .content sub{font-size:75%}html.theme--catppuccin-macchiato .content table{width:100%}html.theme--catppuccin-macchiato .content table td,html.theme--catppuccin-macchiato .content table th{border:1px solid #5b6078;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--catppuccin-macchiato .content table th{color:#b5c1f1}html.theme--catppuccin-macchiato .content table th:not([align]){text-align:inherit}html.theme--catppuccin-macchiato .content table thead td,html.theme--catppuccin-macchiato .content table thead th{border-width:0 0 2px;color:#b5c1f1}html.theme--catppuccin-macchiato .content table tfoot td,html.theme--catppuccin-macchiato .content table tfoot th{border-width:2px 0 0;color:#b5c1f1}html.theme--catppuccin-macchiato .content table tbody tr:last-child td,html.theme--catppuccin-macchiato .content table tbody tr:last-child th{border-bottom-width:0}html.theme--catppuccin-macchiato .content .tabs li+li{margin-top:0}html.theme--catppuccin-macchiato .content.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.content{font-size:.75rem}html.theme--catppuccin-macchiato .content.is-normal{font-size:1rem}html.theme--catppuccin-macchiato .content.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .content.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}html.theme--catppuccin-macchiato .icon.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.icon{height:1rem;width:1rem}html.theme--catppuccin-macchiato .icon.is-medium{height:2rem;width:2rem}html.theme--catppuccin-macchiato .icon.is-large{height:3rem;width:3rem}html.theme--catppuccin-macchiato .icon-text{align-items:flex-start;color:inherit;display:inline-flex;flex-wrap:wrap;line-height:1.5rem;vertical-align:top}html.theme--catppuccin-macchiato .icon-text .icon{flex-grow:0;flex-shrink:0}html.theme--catppuccin-macchiato .icon-text .icon:not(:last-child){margin-right:.25em}html.theme--catppuccin-macchiato .icon-text .icon:not(:first-child){margin-left:.25em}html.theme--catppuccin-macchiato div.icon-text{display:flex}html.theme--catppuccin-macchiato .image,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img{display:block;position:relative}html.theme--catppuccin-macchiato .image img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img img{display:block;height:auto;width:100%}html.theme--catppuccin-macchiato .image img.is-rounded,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img img.is-rounded{border-radius:9999px}html.theme--catppuccin-macchiato .image.is-fullwidth,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-fullwidth{width:100%}html.theme--catppuccin-macchiato .image.is-square img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--catppuccin-macchiato .image.is-square .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--catppuccin-macchiato .image.is-1by1 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--catppuccin-macchiato .image.is-1by1 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--catppuccin-macchiato .image.is-5by4 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--catppuccin-macchiato .image.is-5by4 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--catppuccin-macchiato .image.is-4by3 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--catppuccin-macchiato .image.is-4by3 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--catppuccin-macchiato .image.is-3by2 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--catppuccin-macchiato .image.is-3by2 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--catppuccin-macchiato .image.is-5by3 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--catppuccin-macchiato .image.is-5by3 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--catppuccin-macchiato .image.is-16by9 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--catppuccin-macchiato .image.is-16by9 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--catppuccin-macchiato .image.is-2by1 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--catppuccin-macchiato .image.is-2by1 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--catppuccin-macchiato .image.is-3by1 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--catppuccin-macchiato .image.is-3by1 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--catppuccin-macchiato .image.is-4by5 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--catppuccin-macchiato .image.is-4by5 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--catppuccin-macchiato .image.is-3by4 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--catppuccin-macchiato .image.is-3by4 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--catppuccin-macchiato .image.is-2by3 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--catppuccin-macchiato .image.is-2by3 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--catppuccin-macchiato .image.is-3by5 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--catppuccin-macchiato .image.is-3by5 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--catppuccin-macchiato .image.is-9by16 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--catppuccin-macchiato .image.is-9by16 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--catppuccin-macchiato .image.is-1by2 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--catppuccin-macchiato .image.is-1by2 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--catppuccin-macchiato .image.is-1by3 img,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--catppuccin-macchiato .image.is-1by3 .has-ratio,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio{height:100%;width:100%}html.theme--catppuccin-macchiato .image.is-square,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-square,html.theme--catppuccin-macchiato .image.is-1by1,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by1{padding-top:100%}html.theme--catppuccin-macchiato .image.is-5by4,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-5by4{padding-top:80%}html.theme--catppuccin-macchiato .image.is-4by3,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-4by3{padding-top:75%}html.theme--catppuccin-macchiato .image.is-3by2,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by2{padding-top:66.6666%}html.theme--catppuccin-macchiato .image.is-5by3,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-5by3{padding-top:60%}html.theme--catppuccin-macchiato .image.is-16by9,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-16by9{padding-top:56.25%}html.theme--catppuccin-macchiato .image.is-2by1,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-2by1{padding-top:50%}html.theme--catppuccin-macchiato .image.is-3by1,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by1{padding-top:33.3333%}html.theme--catppuccin-macchiato .image.is-4by5,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-4by5{padding-top:125%}html.theme--catppuccin-macchiato .image.is-3by4,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by4{padding-top:133.3333%}html.theme--catppuccin-macchiato .image.is-2by3,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-2by3{padding-top:150%}html.theme--catppuccin-macchiato .image.is-3by5,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-3by5{padding-top:166.6666%}html.theme--catppuccin-macchiato .image.is-9by16,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-9by16{padding-top:177.7777%}html.theme--catppuccin-macchiato .image.is-1by2,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by2{padding-top:200%}html.theme--catppuccin-macchiato .image.is-1by3,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-1by3{padding-top:300%}html.theme--catppuccin-macchiato .image.is-16x16,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-16x16{height:16px;width:16px}html.theme--catppuccin-macchiato .image.is-24x24,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-24x24{height:24px;width:24px}html.theme--catppuccin-macchiato .image.is-32x32,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-32x32{height:32px;width:32px}html.theme--catppuccin-macchiato .image.is-48x48,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-48x48{height:48px;width:48px}html.theme--catppuccin-macchiato .image.is-64x64,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-64x64{height:64px;width:64px}html.theme--catppuccin-macchiato .image.is-96x96,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-96x96{height:96px;width:96px}html.theme--catppuccin-macchiato .image.is-128x128,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img.is-128x128{height:128px;width:128px}html.theme--catppuccin-macchiato .notification{background-color:#1e2030;border-radius:.4em;position:relative;padding:1.25rem 2.5rem 1.25rem 1.5rem}html.theme--catppuccin-macchiato .notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--catppuccin-macchiato .notification strong{color:currentColor}html.theme--catppuccin-macchiato .notification code,html.theme--catppuccin-macchiato .notification pre{background:#fff}html.theme--catppuccin-macchiato .notification pre code{background:transparent}html.theme--catppuccin-macchiato .notification>.delete{right:.5rem;position:absolute;top:0.5rem}html.theme--catppuccin-macchiato .notification .title,html.theme--catppuccin-macchiato .notification .subtitle,html.theme--catppuccin-macchiato .notification .content{color:currentColor}html.theme--catppuccin-macchiato .notification.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .notification.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .notification.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .notification.is-dark,html.theme--catppuccin-macchiato .content kbd.notification{background-color:#363a4f;color:#fff}html.theme--catppuccin-macchiato .notification.is-primary,html.theme--catppuccin-macchiato .docstring>section>a.notification.docs-sourcelink{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .notification.is-primary.is-light,html.theme--catppuccin-macchiato .docstring>section>a.notification.is-light.docs-sourcelink{background-color:#ecf2fd;color:#0e3b95}html.theme--catppuccin-macchiato .notification.is-link{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .notification.is-link.is-light{background-color:#ecf2fd;color:#0e3b95}html.theme--catppuccin-macchiato .notification.is-info{background-color:#8bd5ca;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .notification.is-info.is-light{background-color:#f0faf8;color:#276d62}html.theme--catppuccin-macchiato .notification.is-success{background-color:#a6da95;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .notification.is-success.is-light{background-color:#f2faf0;color:#386e26}html.theme--catppuccin-macchiato .notification.is-warning{background-color:#eed49f;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .notification.is-warning.is-light{background-color:#fcf7ee;color:#7e5c16}html.theme--catppuccin-macchiato .notification.is-danger{background-color:#ed8796;color:#fff}html.theme--catppuccin-macchiato .notification.is-danger.is-light{background-color:#fcedef;color:#971729}html.theme--catppuccin-macchiato .progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:9999px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}html.theme--catppuccin-macchiato .progress::-webkit-progress-bar{background-color:#494d64}html.theme--catppuccin-macchiato .progress::-webkit-progress-value{background-color:#8087a2}html.theme--catppuccin-macchiato .progress::-moz-progress-bar{background-color:#8087a2}html.theme--catppuccin-macchiato .progress::-ms-fill{background-color:#8087a2;border:none}html.theme--catppuccin-macchiato .progress.is-white::-webkit-progress-value{background-color:#fff}html.theme--catppuccin-macchiato .progress.is-white::-moz-progress-bar{background-color:#fff}html.theme--catppuccin-macchiato .progress.is-white::-ms-fill{background-color:#fff}html.theme--catppuccin-macchiato .progress.is-white:indeterminate{background-image:linear-gradient(to right, #fff 30%, #494d64 30%)}html.theme--catppuccin-macchiato .progress.is-black::-webkit-progress-value{background-color:#0a0a0a}html.theme--catppuccin-macchiato .progress.is-black::-moz-progress-bar{background-color:#0a0a0a}html.theme--catppuccin-macchiato .progress.is-black::-ms-fill{background-color:#0a0a0a}html.theme--catppuccin-macchiato .progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #494d64 30%)}html.theme--catppuccin-macchiato .progress.is-light::-webkit-progress-value{background-color:#f5f5f5}html.theme--catppuccin-macchiato .progress.is-light::-moz-progress-bar{background-color:#f5f5f5}html.theme--catppuccin-macchiato .progress.is-light::-ms-fill{background-color:#f5f5f5}html.theme--catppuccin-macchiato .progress.is-light:indeterminate{background-image:linear-gradient(to right, #f5f5f5 30%, #494d64 30%)}html.theme--catppuccin-macchiato .progress.is-dark::-webkit-progress-value,html.theme--catppuccin-macchiato .content kbd.progress::-webkit-progress-value{background-color:#363a4f}html.theme--catppuccin-macchiato .progress.is-dark::-moz-progress-bar,html.theme--catppuccin-macchiato .content kbd.progress::-moz-progress-bar{background-color:#363a4f}html.theme--catppuccin-macchiato .progress.is-dark::-ms-fill,html.theme--catppuccin-macchiato .content kbd.progress::-ms-fill{background-color:#363a4f}html.theme--catppuccin-macchiato .progress.is-dark:indeterminate,html.theme--catppuccin-macchiato .content kbd.progress:indeterminate{background-image:linear-gradient(to right, #363a4f 30%, #494d64 30%)}html.theme--catppuccin-macchiato .progress.is-primary::-webkit-progress-value,html.theme--catppuccin-macchiato .docstring>section>a.progress.docs-sourcelink::-webkit-progress-value{background-color:#8aadf4}html.theme--catppuccin-macchiato .progress.is-primary::-moz-progress-bar,html.theme--catppuccin-macchiato .docstring>section>a.progress.docs-sourcelink::-moz-progress-bar{background-color:#8aadf4}html.theme--catppuccin-macchiato .progress.is-primary::-ms-fill,html.theme--catppuccin-macchiato .docstring>section>a.progress.docs-sourcelink::-ms-fill{background-color:#8aadf4}html.theme--catppuccin-macchiato .progress.is-primary:indeterminate,html.theme--catppuccin-macchiato .docstring>section>a.progress.docs-sourcelink:indeterminate{background-image:linear-gradient(to right, #8aadf4 30%, #494d64 30%)}html.theme--catppuccin-macchiato .progress.is-link::-webkit-progress-value{background-color:#8aadf4}html.theme--catppuccin-macchiato .progress.is-link::-moz-progress-bar{background-color:#8aadf4}html.theme--catppuccin-macchiato .progress.is-link::-ms-fill{background-color:#8aadf4}html.theme--catppuccin-macchiato .progress.is-link:indeterminate{background-image:linear-gradient(to right, #8aadf4 30%, #494d64 30%)}html.theme--catppuccin-macchiato .progress.is-info::-webkit-progress-value{background-color:#8bd5ca}html.theme--catppuccin-macchiato .progress.is-info::-moz-progress-bar{background-color:#8bd5ca}html.theme--catppuccin-macchiato .progress.is-info::-ms-fill{background-color:#8bd5ca}html.theme--catppuccin-macchiato .progress.is-info:indeterminate{background-image:linear-gradient(to right, #8bd5ca 30%, #494d64 30%)}html.theme--catppuccin-macchiato .progress.is-success::-webkit-progress-value{background-color:#a6da95}html.theme--catppuccin-macchiato .progress.is-success::-moz-progress-bar{background-color:#a6da95}html.theme--catppuccin-macchiato .progress.is-success::-ms-fill{background-color:#a6da95}html.theme--catppuccin-macchiato .progress.is-success:indeterminate{background-image:linear-gradient(to right, #a6da95 30%, #494d64 30%)}html.theme--catppuccin-macchiato .progress.is-warning::-webkit-progress-value{background-color:#eed49f}html.theme--catppuccin-macchiato .progress.is-warning::-moz-progress-bar{background-color:#eed49f}html.theme--catppuccin-macchiato .progress.is-warning::-ms-fill{background-color:#eed49f}html.theme--catppuccin-macchiato .progress.is-warning:indeterminate{background-image:linear-gradient(to right, #eed49f 30%, #494d64 30%)}html.theme--catppuccin-macchiato .progress.is-danger::-webkit-progress-value{background-color:#ed8796}html.theme--catppuccin-macchiato .progress.is-danger::-moz-progress-bar{background-color:#ed8796}html.theme--catppuccin-macchiato .progress.is-danger::-ms-fill{background-color:#ed8796}html.theme--catppuccin-macchiato .progress.is-danger:indeterminate{background-image:linear-gradient(to right, #ed8796 30%, #494d64 30%)}html.theme--catppuccin-macchiato .progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#494d64;background-image:linear-gradient(to right, #cad3f5 30%, #494d64 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}html.theme--catppuccin-macchiato .progress:indeterminate::-webkit-progress-bar{background-color:transparent}html.theme--catppuccin-macchiato .progress:indeterminate::-moz-progress-bar{background-color:transparent}html.theme--catppuccin-macchiato .progress:indeterminate::-ms-fill{animation-name:none}html.theme--catppuccin-macchiato .progress.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.progress{height:.75rem}html.theme--catppuccin-macchiato .progress.is-medium{height:1.25rem}html.theme--catppuccin-macchiato .progress.is-large{height:1.5rem}@keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}html.theme--catppuccin-macchiato .table{background-color:#494d64;color:#cad3f5}html.theme--catppuccin-macchiato .table td,html.theme--catppuccin-macchiato .table th{border:1px solid #5b6078;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--catppuccin-macchiato .table td.is-white,html.theme--catppuccin-macchiato .table th.is-white{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .table td.is-black,html.theme--catppuccin-macchiato .table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .table td.is-light,html.theme--catppuccin-macchiato .table th.is-light{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .table td.is-dark,html.theme--catppuccin-macchiato .table th.is-dark{background-color:#363a4f;border-color:#363a4f;color:#fff}html.theme--catppuccin-macchiato .table td.is-primary,html.theme--catppuccin-macchiato .table th.is-primary{background-color:#8aadf4;border-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .table td.is-link,html.theme--catppuccin-macchiato .table th.is-link{background-color:#8aadf4;border-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .table td.is-info,html.theme--catppuccin-macchiato .table th.is-info{background-color:#8bd5ca;border-color:#8bd5ca;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .table td.is-success,html.theme--catppuccin-macchiato .table th.is-success{background-color:#a6da95;border-color:#a6da95;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .table td.is-warning,html.theme--catppuccin-macchiato .table th.is-warning{background-color:#eed49f;border-color:#eed49f;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .table td.is-danger,html.theme--catppuccin-macchiato .table th.is-danger{background-color:#ed8796;border-color:#ed8796;color:#fff}html.theme--catppuccin-macchiato .table td.is-narrow,html.theme--catppuccin-macchiato .table th.is-narrow{white-space:nowrap;width:1%}html.theme--catppuccin-macchiato .table td.is-selected,html.theme--catppuccin-macchiato .table th.is-selected{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .table td.is-selected a,html.theme--catppuccin-macchiato .table td.is-selected strong,html.theme--catppuccin-macchiato .table th.is-selected a,html.theme--catppuccin-macchiato .table th.is-selected strong{color:currentColor}html.theme--catppuccin-macchiato .table td.is-vcentered,html.theme--catppuccin-macchiato .table th.is-vcentered{vertical-align:middle}html.theme--catppuccin-macchiato .table th{color:#b5c1f1}html.theme--catppuccin-macchiato .table th:not([align]){text-align:left}html.theme--catppuccin-macchiato .table tr.is-selected{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .table tr.is-selected a,html.theme--catppuccin-macchiato .table tr.is-selected strong{color:currentColor}html.theme--catppuccin-macchiato .table tr.is-selected td,html.theme--catppuccin-macchiato .table tr.is-selected th{border-color:#fff;color:currentColor}html.theme--catppuccin-macchiato .table thead{background-color:rgba(0,0,0,0)}html.theme--catppuccin-macchiato .table thead td,html.theme--catppuccin-macchiato .table thead th{border-width:0 0 2px;color:#b5c1f1}html.theme--catppuccin-macchiato .table tfoot{background-color:rgba(0,0,0,0)}html.theme--catppuccin-macchiato .table tfoot td,html.theme--catppuccin-macchiato .table tfoot th{border-width:2px 0 0;color:#b5c1f1}html.theme--catppuccin-macchiato .table tbody{background-color:rgba(0,0,0,0)}html.theme--catppuccin-macchiato .table tbody tr:last-child td,html.theme--catppuccin-macchiato .table tbody tr:last-child th{border-bottom-width:0}html.theme--catppuccin-macchiato .table.is-bordered td,html.theme--catppuccin-macchiato .table.is-bordered th{border-width:1px}html.theme--catppuccin-macchiato .table.is-bordered tr:last-child td,html.theme--catppuccin-macchiato .table.is-bordered tr:last-child th{border-bottom-width:1px}html.theme--catppuccin-macchiato .table.is-fullwidth{width:100%}html.theme--catppuccin-macchiato .table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#363a4f}html.theme--catppuccin-macchiato .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#363a4f}html.theme--catppuccin-macchiato .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:#3a3e55}html.theme--catppuccin-macchiato .table.is-narrow td,html.theme--catppuccin-macchiato .table.is-narrow th{padding:0.25em 0.5em}html.theme--catppuccin-macchiato .table.is-striped tbody tr:not(.is-selected):nth-child(even){background-color:#363a4f}html.theme--catppuccin-macchiato .table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}html.theme--catppuccin-macchiato .tags{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-macchiato .tags .tag,html.theme--catppuccin-macchiato .tags .content kbd,html.theme--catppuccin-macchiato .content .tags kbd,html.theme--catppuccin-macchiato .tags .docstring>section>a.docs-sourcelink{margin-bottom:0.5rem}html.theme--catppuccin-macchiato .tags .tag:not(:last-child),html.theme--catppuccin-macchiato .tags .content kbd:not(:last-child),html.theme--catppuccin-macchiato .content .tags kbd:not(:last-child),html.theme--catppuccin-macchiato .tags .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:.5rem}html.theme--catppuccin-macchiato .tags:last-child{margin-bottom:-0.5rem}html.theme--catppuccin-macchiato .tags:not(:last-child){margin-bottom:1rem}html.theme--catppuccin-macchiato .tags.are-medium .tag:not(.is-normal):not(.is-large),html.theme--catppuccin-macchiato .tags.are-medium .content kbd:not(.is-normal):not(.is-large),html.theme--catppuccin-macchiato .content .tags.are-medium kbd:not(.is-normal):not(.is-large),html.theme--catppuccin-macchiato .tags.are-medium .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-large){font-size:1rem}html.theme--catppuccin-macchiato .tags.are-large .tag:not(.is-normal):not(.is-medium),html.theme--catppuccin-macchiato .tags.are-large .content kbd:not(.is-normal):not(.is-medium),html.theme--catppuccin-macchiato .content .tags.are-large kbd:not(.is-normal):not(.is-medium),html.theme--catppuccin-macchiato .tags.are-large .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-medium){font-size:1.25rem}html.theme--catppuccin-macchiato .tags.is-centered{justify-content:center}html.theme--catppuccin-macchiato .tags.is-centered .tag,html.theme--catppuccin-macchiato .tags.is-centered .content kbd,html.theme--catppuccin-macchiato .content .tags.is-centered kbd,html.theme--catppuccin-macchiato .tags.is-centered .docstring>section>a.docs-sourcelink{margin-right:0.25rem;margin-left:0.25rem}html.theme--catppuccin-macchiato .tags.is-right{justify-content:flex-end}html.theme--catppuccin-macchiato .tags.is-right .tag:not(:first-child),html.theme--catppuccin-macchiato .tags.is-right .content kbd:not(:first-child),html.theme--catppuccin-macchiato .content .tags.is-right kbd:not(:first-child),html.theme--catppuccin-macchiato .tags.is-right .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0.5rem}html.theme--catppuccin-macchiato .tags.is-right .tag:not(:last-child),html.theme--catppuccin-macchiato .tags.is-right .content kbd:not(:last-child),html.theme--catppuccin-macchiato .content .tags.is-right kbd:not(:last-child),html.theme--catppuccin-macchiato .tags.is-right .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0}html.theme--catppuccin-macchiato .tags.has-addons .tag,html.theme--catppuccin-macchiato .tags.has-addons .content kbd,html.theme--catppuccin-macchiato .content .tags.has-addons kbd,html.theme--catppuccin-macchiato .tags.has-addons .docstring>section>a.docs-sourcelink{margin-right:0}html.theme--catppuccin-macchiato .tags.has-addons .tag:not(:first-child),html.theme--catppuccin-macchiato .tags.has-addons .content kbd:not(:first-child),html.theme--catppuccin-macchiato .content .tags.has-addons kbd:not(:first-child),html.theme--catppuccin-macchiato .tags.has-addons .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}html.theme--catppuccin-macchiato .tags.has-addons .tag:not(:last-child),html.theme--catppuccin-macchiato .tags.has-addons .content kbd:not(:last-child),html.theme--catppuccin-macchiato .content .tags.has-addons kbd:not(:last-child),html.theme--catppuccin-macchiato .tags.has-addons .docstring>section>a.docs-sourcelink:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}html.theme--catppuccin-macchiato .tag:not(body),html.theme--catppuccin-macchiato .content kbd:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#1e2030;border-radius:.4em;color:#cad3f5;display:inline-flex;font-size:.75rem;height:2em;justify-content:center;line-height:1.5;padding-left:0.75em;padding-right:0.75em;white-space:nowrap}html.theme--catppuccin-macchiato .tag:not(body) .delete,html.theme--catppuccin-macchiato .content kbd:not(body) .delete,html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink:not(body) .delete{margin-left:.25rem;margin-right:-.375rem}html.theme--catppuccin-macchiato .tag.is-white:not(body),html.theme--catppuccin-macchiato .content kbd.is-white:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .tag.is-black:not(body),html.theme--catppuccin-macchiato .content kbd.is-black:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-black:not(body){background-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .tag.is-light:not(body),html.theme--catppuccin-macchiato .content kbd.is-light:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .tag.is-dark:not(body),html.theme--catppuccin-macchiato .content kbd:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-dark:not(body),html.theme--catppuccin-macchiato .content .docstring>section>kbd:not(body){background-color:#363a4f;color:#fff}html.theme--catppuccin-macchiato .tag.is-primary:not(body),html.theme--catppuccin-macchiato .content kbd.is-primary:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink:not(body){background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .tag.is-primary.is-light:not(body),html.theme--catppuccin-macchiato .content kbd.is-primary.is-light:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#ecf2fd;color:#0e3b95}html.theme--catppuccin-macchiato .tag.is-link:not(body),html.theme--catppuccin-macchiato .content kbd.is-link:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-link:not(body){background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .tag.is-link.is-light:not(body),html.theme--catppuccin-macchiato .content kbd.is-link.is-light:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-link.is-light:not(body){background-color:#ecf2fd;color:#0e3b95}html.theme--catppuccin-macchiato .tag.is-info:not(body),html.theme--catppuccin-macchiato .content kbd.is-info:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-info:not(body){background-color:#8bd5ca;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .tag.is-info.is-light:not(body),html.theme--catppuccin-macchiato .content kbd.is-info.is-light:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-info.is-light:not(body){background-color:#f0faf8;color:#276d62}html.theme--catppuccin-macchiato .tag.is-success:not(body),html.theme--catppuccin-macchiato .content kbd.is-success:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-success:not(body){background-color:#a6da95;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .tag.is-success.is-light:not(body),html.theme--catppuccin-macchiato .content kbd.is-success.is-light:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-success.is-light:not(body){background-color:#f2faf0;color:#386e26}html.theme--catppuccin-macchiato .tag.is-warning:not(body),html.theme--catppuccin-macchiato .content kbd.is-warning:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-warning:not(body){background-color:#eed49f;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .tag.is-warning.is-light:not(body),html.theme--catppuccin-macchiato .content kbd.is-warning.is-light:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-warning.is-light:not(body){background-color:#fcf7ee;color:#7e5c16}html.theme--catppuccin-macchiato .tag.is-danger:not(body),html.theme--catppuccin-macchiato .content kbd.is-danger:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-danger:not(body){background-color:#ed8796;color:#fff}html.theme--catppuccin-macchiato .tag.is-danger.is-light:not(body),html.theme--catppuccin-macchiato .content kbd.is-danger.is-light:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-danger.is-light:not(body){background-color:#fcedef;color:#971729}html.theme--catppuccin-macchiato .tag.is-normal:not(body),html.theme--catppuccin-macchiato .content kbd.is-normal:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.75rem}html.theme--catppuccin-macchiato .tag.is-medium:not(body),html.theme--catppuccin-macchiato .content kbd.is-medium:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-medium:not(body){font-size:1rem}html.theme--catppuccin-macchiato .tag.is-large:not(body),html.theme--catppuccin-macchiato .content kbd.is-large:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-large:not(body){font-size:1.25rem}html.theme--catppuccin-macchiato .tag:not(body) .icon:first-child:not(:last-child),html.theme--catppuccin-macchiato .content kbd:not(body) .icon:first-child:not(:last-child),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:not(:last-child){margin-left:-.375em;margin-right:.1875em}html.theme--catppuccin-macchiato .tag:not(body) .icon:last-child:not(:first-child),html.theme--catppuccin-macchiato .content kbd:not(body) .icon:last-child:not(:first-child),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink:not(body) .icon:last-child:not(:first-child){margin-left:.1875em;margin-right:-.375em}html.theme--catppuccin-macchiato .tag:not(body) .icon:first-child:last-child,html.theme--catppuccin-macchiato .content kbd:not(body) .icon:first-child:last-child,html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:last-child{margin-left:-.375em;margin-right:-.375em}html.theme--catppuccin-macchiato .tag.is-delete:not(body),html.theme--catppuccin-macchiato .content kbd.is-delete:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-delete:not(body){margin-left:1px;padding:0;position:relative;width:2em}html.theme--catppuccin-macchiato .tag.is-delete:not(body)::before,html.theme--catppuccin-macchiato .content kbd.is-delete:not(body)::before,html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-delete:not(body)::before,html.theme--catppuccin-macchiato .tag.is-delete:not(body)::after,html.theme--catppuccin-macchiato .content kbd.is-delete:not(body)::after,html.theme--catppuccin-macchiato .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--catppuccin-macchiato .tag.is-delete:not(body)::before,html.theme--catppuccin-macchiato .content kbd.is-delete:not(body)::before,html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-delete:not(body)::before{height:1px;width:50%}html.theme--catppuccin-macchiato .tag.is-delete:not(body)::after,html.theme--catppuccin-macchiato .content kbd.is-delete:not(body)::after,html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-delete:not(body)::after{height:50%;width:1px}html.theme--catppuccin-macchiato .tag.is-delete:not(body):hover,html.theme--catppuccin-macchiato .content kbd.is-delete:not(body):hover,html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-delete:not(body):hover,html.theme--catppuccin-macchiato .tag.is-delete:not(body):focus,html.theme--catppuccin-macchiato .content kbd.is-delete:not(body):focus,html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-delete:not(body):focus{background-color:#141620}html.theme--catppuccin-macchiato .tag.is-delete:not(body):active,html.theme--catppuccin-macchiato .content kbd.is-delete:not(body):active,html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-delete:not(body):active{background-color:#0a0b11}html.theme--catppuccin-macchiato .tag.is-rounded:not(body),html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input:not(body),html.theme--catppuccin-macchiato .content kbd.is-rounded:not(body),html.theme--catppuccin-macchiato #documenter .docs-sidebar .content form.docs-search>input:not(body),html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink.is-rounded:not(body){border-radius:9999px}html.theme--catppuccin-macchiato a.tag:hover,html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink:hover{text-decoration:underline}html.theme--catppuccin-macchiato .title,html.theme--catppuccin-macchiato .subtitle{word-break:break-word}html.theme--catppuccin-macchiato .title em,html.theme--catppuccin-macchiato .title span,html.theme--catppuccin-macchiato .subtitle em,html.theme--catppuccin-macchiato .subtitle span{font-weight:inherit}html.theme--catppuccin-macchiato .title sub,html.theme--catppuccin-macchiato .subtitle sub{font-size:.75em}html.theme--catppuccin-macchiato .title sup,html.theme--catppuccin-macchiato .subtitle sup{font-size:.75em}html.theme--catppuccin-macchiato .title .tag,html.theme--catppuccin-macchiato .title .content kbd,html.theme--catppuccin-macchiato .content .title kbd,html.theme--catppuccin-macchiato .title .docstring>section>a.docs-sourcelink,html.theme--catppuccin-macchiato .subtitle .tag,html.theme--catppuccin-macchiato .subtitle .content kbd,html.theme--catppuccin-macchiato .content .subtitle kbd,html.theme--catppuccin-macchiato .subtitle .docstring>section>a.docs-sourcelink{vertical-align:middle}html.theme--catppuccin-macchiato .title{color:#fff;font-size:2rem;font-weight:500;line-height:1.125}html.theme--catppuccin-macchiato .title strong{color:inherit;font-weight:inherit}html.theme--catppuccin-macchiato .title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}html.theme--catppuccin-macchiato .title.is-1{font-size:3rem}html.theme--catppuccin-macchiato .title.is-2{font-size:2.5rem}html.theme--catppuccin-macchiato .title.is-3{font-size:2rem}html.theme--catppuccin-macchiato .title.is-4{font-size:1.5rem}html.theme--catppuccin-macchiato .title.is-5{font-size:1.25rem}html.theme--catppuccin-macchiato .title.is-6{font-size:1rem}html.theme--catppuccin-macchiato .title.is-7{font-size:.75rem}html.theme--catppuccin-macchiato .subtitle{color:#6e738d;font-size:1.25rem;font-weight:400;line-height:1.25}html.theme--catppuccin-macchiato .subtitle strong{color:#6e738d;font-weight:600}html.theme--catppuccin-macchiato .subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}html.theme--catppuccin-macchiato .subtitle.is-1{font-size:3rem}html.theme--catppuccin-macchiato .subtitle.is-2{font-size:2.5rem}html.theme--catppuccin-macchiato .subtitle.is-3{font-size:2rem}html.theme--catppuccin-macchiato .subtitle.is-4{font-size:1.5rem}html.theme--catppuccin-macchiato .subtitle.is-5{font-size:1.25rem}html.theme--catppuccin-macchiato .subtitle.is-6{font-size:1rem}html.theme--catppuccin-macchiato .subtitle.is-7{font-size:.75rem}html.theme--catppuccin-macchiato .heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}html.theme--catppuccin-macchiato .number{align-items:center;background-color:#1e2030;border-radius:9999px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:0.25rem 0.5rem;text-align:center;vertical-align:top}html.theme--catppuccin-macchiato .select select,html.theme--catppuccin-macchiato .textarea,html.theme--catppuccin-macchiato .input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input{background-color:#24273a;border-color:#5b6078;border-radius:.4em;color:#8087a2}html.theme--catppuccin-macchiato .select select::-moz-placeholder,html.theme--catppuccin-macchiato .textarea::-moz-placeholder,html.theme--catppuccin-macchiato .input::-moz-placeholder,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:#868c98}html.theme--catppuccin-macchiato .select select::-webkit-input-placeholder,html.theme--catppuccin-macchiato .textarea::-webkit-input-placeholder,html.theme--catppuccin-macchiato .input::-webkit-input-placeholder,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:#868c98}html.theme--catppuccin-macchiato .select select:-moz-placeholder,html.theme--catppuccin-macchiato .textarea:-moz-placeholder,html.theme--catppuccin-macchiato .input:-moz-placeholder,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:#868c98}html.theme--catppuccin-macchiato .select select:-ms-input-placeholder,html.theme--catppuccin-macchiato .textarea:-ms-input-placeholder,html.theme--catppuccin-macchiato .input:-ms-input-placeholder,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:#868c98}html.theme--catppuccin-macchiato .select select:hover,html.theme--catppuccin-macchiato .textarea:hover,html.theme--catppuccin-macchiato .input:hover,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input:hover,html.theme--catppuccin-macchiato .select select.is-hovered,html.theme--catppuccin-macchiato .is-hovered.textarea,html.theme--catppuccin-macchiato .is-hovered.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-hovered{border-color:#6e738d}html.theme--catppuccin-macchiato .select select:focus,html.theme--catppuccin-macchiato .textarea:focus,html.theme--catppuccin-macchiato .input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input:focus,html.theme--catppuccin-macchiato .select select.is-focused,html.theme--catppuccin-macchiato .is-focused.textarea,html.theme--catppuccin-macchiato .is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .select select:active,html.theme--catppuccin-macchiato .textarea:active,html.theme--catppuccin-macchiato .input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input:active,html.theme--catppuccin-macchiato .select select.is-active,html.theme--catppuccin-macchiato .is-active.textarea,html.theme--catppuccin-macchiato .is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active{border-color:#8aadf4;box-shadow:0 0 0 0.125em rgba(138,173,244,0.25)}html.theme--catppuccin-macchiato .select select[disabled],html.theme--catppuccin-macchiato .textarea[disabled],html.theme--catppuccin-macchiato .input[disabled],html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .select select,fieldset[disabled] html.theme--catppuccin-macchiato .textarea,fieldset[disabled] html.theme--catppuccin-macchiato .input,fieldset[disabled] html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input{background-color:#6e738d;border-color:#1e2030;box-shadow:none;color:#f5f7fd}html.theme--catppuccin-macchiato .select select[disabled]::-moz-placeholder,html.theme--catppuccin-macchiato .textarea[disabled]::-moz-placeholder,html.theme--catppuccin-macchiato .input[disabled]::-moz-placeholder,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input[disabled]::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .select select::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .textarea::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .input::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:rgba(245,247,253,0.3)}html.theme--catppuccin-macchiato .select select[disabled]::-webkit-input-placeholder,html.theme--catppuccin-macchiato .textarea[disabled]::-webkit-input-placeholder,html.theme--catppuccin-macchiato .input[disabled]::-webkit-input-placeholder,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input[disabled]::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .select select::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .textarea::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .input::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:rgba(245,247,253,0.3)}html.theme--catppuccin-macchiato .select select[disabled]:-moz-placeholder,html.theme--catppuccin-macchiato .textarea[disabled]:-moz-placeholder,html.theme--catppuccin-macchiato .input[disabled]:-moz-placeholder,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input[disabled]:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .select select:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .textarea:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .input:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:rgba(245,247,253,0.3)}html.theme--catppuccin-macchiato .select select[disabled]:-ms-input-placeholder,html.theme--catppuccin-macchiato .textarea[disabled]:-ms-input-placeholder,html.theme--catppuccin-macchiato .input[disabled]:-ms-input-placeholder,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input[disabled]:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .select select:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .textarea:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato .input:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:rgba(245,247,253,0.3)}html.theme--catppuccin-macchiato .textarea,html.theme--catppuccin-macchiato .input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input{box-shadow:inset 0 0.0625em 0.125em rgba(10,10,10,0.05);max-width:100%;width:100%}html.theme--catppuccin-macchiato .textarea[readonly],html.theme--catppuccin-macchiato .input[readonly],html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input[readonly]{box-shadow:none}html.theme--catppuccin-macchiato .is-white.textarea,html.theme--catppuccin-macchiato .is-white.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-white{border-color:#fff}html.theme--catppuccin-macchiato .is-white.textarea:focus,html.theme--catppuccin-macchiato .is-white.input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-white:focus,html.theme--catppuccin-macchiato .is-white.is-focused.textarea,html.theme--catppuccin-macchiato .is-white.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .is-white.textarea:active,html.theme--catppuccin-macchiato .is-white.input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-white:active,html.theme--catppuccin-macchiato .is-white.is-active.textarea,html.theme--catppuccin-macchiato .is-white.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-macchiato .is-black.textarea,html.theme--catppuccin-macchiato .is-black.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-black{border-color:#0a0a0a}html.theme--catppuccin-macchiato .is-black.textarea:focus,html.theme--catppuccin-macchiato .is-black.input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-black:focus,html.theme--catppuccin-macchiato .is-black.is-focused.textarea,html.theme--catppuccin-macchiato .is-black.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .is-black.textarea:active,html.theme--catppuccin-macchiato .is-black.input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-black:active,html.theme--catppuccin-macchiato .is-black.is-active.textarea,html.theme--catppuccin-macchiato .is-black.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-macchiato .is-light.textarea,html.theme--catppuccin-macchiato .is-light.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-light{border-color:#f5f5f5}html.theme--catppuccin-macchiato .is-light.textarea:focus,html.theme--catppuccin-macchiato .is-light.input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-light:focus,html.theme--catppuccin-macchiato .is-light.is-focused.textarea,html.theme--catppuccin-macchiato .is-light.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .is-light.textarea:active,html.theme--catppuccin-macchiato .is-light.input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-light:active,html.theme--catppuccin-macchiato .is-light.is-active.textarea,html.theme--catppuccin-macchiato .is-light.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-macchiato .is-dark.textarea,html.theme--catppuccin-macchiato .content kbd.textarea,html.theme--catppuccin-macchiato .is-dark.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-dark,html.theme--catppuccin-macchiato .content kbd.input{border-color:#363a4f}html.theme--catppuccin-macchiato .is-dark.textarea:focus,html.theme--catppuccin-macchiato .content kbd.textarea:focus,html.theme--catppuccin-macchiato .is-dark.input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-dark:focus,html.theme--catppuccin-macchiato .content kbd.input:focus,html.theme--catppuccin-macchiato .is-dark.is-focused.textarea,html.theme--catppuccin-macchiato .content kbd.is-focused.textarea,html.theme--catppuccin-macchiato .is-dark.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .content kbd.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar .content form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .is-dark.textarea:active,html.theme--catppuccin-macchiato .content kbd.textarea:active,html.theme--catppuccin-macchiato .is-dark.input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-dark:active,html.theme--catppuccin-macchiato .content kbd.input:active,html.theme--catppuccin-macchiato .is-dark.is-active.textarea,html.theme--catppuccin-macchiato .content kbd.is-active.textarea,html.theme--catppuccin-macchiato .is-dark.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-macchiato .content kbd.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar .content form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(54,58,79,0.25)}html.theme--catppuccin-macchiato .is-primary.textarea,html.theme--catppuccin-macchiato .docstring>section>a.textarea.docs-sourcelink,html.theme--catppuccin-macchiato .is-primary.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-primary,html.theme--catppuccin-macchiato .docstring>section>a.input.docs-sourcelink{border-color:#8aadf4}html.theme--catppuccin-macchiato .is-primary.textarea:focus,html.theme--catppuccin-macchiato .docstring>section>a.textarea.docs-sourcelink:focus,html.theme--catppuccin-macchiato .is-primary.input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-primary:focus,html.theme--catppuccin-macchiato .docstring>section>a.input.docs-sourcelink:focus,html.theme--catppuccin-macchiato .is-primary.is-focused.textarea,html.theme--catppuccin-macchiato .docstring>section>a.is-focused.textarea.docs-sourcelink,html.theme--catppuccin-macchiato .is-primary.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .docstring>section>a.is-focused.input.docs-sourcelink,html.theme--catppuccin-macchiato .is-primary.textarea:active,html.theme--catppuccin-macchiato .docstring>section>a.textarea.docs-sourcelink:active,html.theme--catppuccin-macchiato .is-primary.input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-primary:active,html.theme--catppuccin-macchiato .docstring>section>a.input.docs-sourcelink:active,html.theme--catppuccin-macchiato .is-primary.is-active.textarea,html.theme--catppuccin-macchiato .docstring>section>a.is-active.textarea.docs-sourcelink,html.theme--catppuccin-macchiato .is-primary.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-macchiato .docstring>section>a.is-active.input.docs-sourcelink{box-shadow:0 0 0 0.125em rgba(138,173,244,0.25)}html.theme--catppuccin-macchiato .is-link.textarea,html.theme--catppuccin-macchiato .is-link.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-link{border-color:#8aadf4}html.theme--catppuccin-macchiato .is-link.textarea:focus,html.theme--catppuccin-macchiato .is-link.input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-link:focus,html.theme--catppuccin-macchiato .is-link.is-focused.textarea,html.theme--catppuccin-macchiato .is-link.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .is-link.textarea:active,html.theme--catppuccin-macchiato .is-link.input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-link:active,html.theme--catppuccin-macchiato .is-link.is-active.textarea,html.theme--catppuccin-macchiato .is-link.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(138,173,244,0.25)}html.theme--catppuccin-macchiato .is-info.textarea,html.theme--catppuccin-macchiato .is-info.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-info{border-color:#8bd5ca}html.theme--catppuccin-macchiato .is-info.textarea:focus,html.theme--catppuccin-macchiato .is-info.input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-info:focus,html.theme--catppuccin-macchiato .is-info.is-focused.textarea,html.theme--catppuccin-macchiato .is-info.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .is-info.textarea:active,html.theme--catppuccin-macchiato .is-info.input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-info:active,html.theme--catppuccin-macchiato .is-info.is-active.textarea,html.theme--catppuccin-macchiato .is-info.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(139,213,202,0.25)}html.theme--catppuccin-macchiato .is-success.textarea,html.theme--catppuccin-macchiato .is-success.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-success{border-color:#a6da95}html.theme--catppuccin-macchiato .is-success.textarea:focus,html.theme--catppuccin-macchiato .is-success.input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-success:focus,html.theme--catppuccin-macchiato .is-success.is-focused.textarea,html.theme--catppuccin-macchiato .is-success.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .is-success.textarea:active,html.theme--catppuccin-macchiato .is-success.input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-success:active,html.theme--catppuccin-macchiato .is-success.is-active.textarea,html.theme--catppuccin-macchiato .is-success.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(166,218,149,0.25)}html.theme--catppuccin-macchiato .is-warning.textarea,html.theme--catppuccin-macchiato .is-warning.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-warning{border-color:#eed49f}html.theme--catppuccin-macchiato .is-warning.textarea:focus,html.theme--catppuccin-macchiato .is-warning.input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-warning:focus,html.theme--catppuccin-macchiato .is-warning.is-focused.textarea,html.theme--catppuccin-macchiato .is-warning.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .is-warning.textarea:active,html.theme--catppuccin-macchiato .is-warning.input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-warning:active,html.theme--catppuccin-macchiato .is-warning.is-active.textarea,html.theme--catppuccin-macchiato .is-warning.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(238,212,159,0.25)}html.theme--catppuccin-macchiato .is-danger.textarea,html.theme--catppuccin-macchiato .is-danger.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-danger{border-color:#ed8796}html.theme--catppuccin-macchiato .is-danger.textarea:focus,html.theme--catppuccin-macchiato .is-danger.input:focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-danger:focus,html.theme--catppuccin-macchiato .is-danger.is-focused.textarea,html.theme--catppuccin-macchiato .is-danger.is-focused.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-macchiato .is-danger.textarea:active,html.theme--catppuccin-macchiato .is-danger.input:active,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-danger:active,html.theme--catppuccin-macchiato .is-danger.is-active.textarea,html.theme--catppuccin-macchiato .is-danger.is-active.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(237,135,150,0.25)}html.theme--catppuccin-macchiato .is-small.textarea,html.theme--catppuccin-macchiato .is-small.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input{border-radius:3px;font-size:.75rem}html.theme--catppuccin-macchiato .is-medium.textarea,html.theme--catppuccin-macchiato .is-medium.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .is-large.textarea,html.theme--catppuccin-macchiato .is-large.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .is-fullwidth.textarea,html.theme--catppuccin-macchiato .is-fullwidth.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-fullwidth{display:block;width:100%}html.theme--catppuccin-macchiato .is-inline.textarea,html.theme--catppuccin-macchiato .is-inline.input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-inline{display:inline;width:auto}html.theme--catppuccin-macchiato .input.is-rounded,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input{border-radius:9999px;padding-left:calc(calc(0.75em - 1px) + 0.375em);padding-right:calc(calc(0.75em - 1px) + 0.375em)}html.theme--catppuccin-macchiato .input.is-static,html.theme--catppuccin-macchiato #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--catppuccin-macchiato .textarea{display:block;max-width:100%;min-width:100%;padding:calc(0.75em - 1px);resize:vertical}html.theme--catppuccin-macchiato .textarea:not([rows]){max-height:40em;min-height:8em}html.theme--catppuccin-macchiato .textarea[rows]{height:initial}html.theme--catppuccin-macchiato .textarea.has-fixed-size{resize:none}html.theme--catppuccin-macchiato .radio,html.theme--catppuccin-macchiato .checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}html.theme--catppuccin-macchiato .radio input,html.theme--catppuccin-macchiato .checkbox input{cursor:pointer}html.theme--catppuccin-macchiato .radio:hover,html.theme--catppuccin-macchiato .checkbox:hover{color:#91d7e3}html.theme--catppuccin-macchiato .radio[disabled],html.theme--catppuccin-macchiato .checkbox[disabled],fieldset[disabled] html.theme--catppuccin-macchiato .radio,fieldset[disabled] html.theme--catppuccin-macchiato .checkbox,html.theme--catppuccin-macchiato .radio input[disabled],html.theme--catppuccin-macchiato .checkbox input[disabled]{color:#f5f7fd;cursor:not-allowed}html.theme--catppuccin-macchiato .radio+.radio{margin-left:.5em}html.theme--catppuccin-macchiato .select{display:inline-block;max-width:100%;position:relative;vertical-align:top}html.theme--catppuccin-macchiato .select:not(.is-multiple){height:2.5em}html.theme--catppuccin-macchiato .select:not(.is-multiple):not(.is-loading)::after{border-color:#8aadf4;right:1.125em;z-index:4}html.theme--catppuccin-macchiato .select.is-rounded select,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.select select{border-radius:9999px;padding-left:1em}html.theme--catppuccin-macchiato .select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}html.theme--catppuccin-macchiato .select select::-ms-expand{display:none}html.theme--catppuccin-macchiato .select select[disabled]:hover,fieldset[disabled] html.theme--catppuccin-macchiato .select select:hover{border-color:#1e2030}html.theme--catppuccin-macchiato .select select:not([multiple]){padding-right:2.5em}html.theme--catppuccin-macchiato .select select[multiple]{height:auto;padding:0}html.theme--catppuccin-macchiato .select select[multiple] option{padding:0.5em 1em}html.theme--catppuccin-macchiato .select:not(.is-multiple):not(.is-loading):hover::after{border-color:#91d7e3}html.theme--catppuccin-macchiato .select.is-white:not(:hover)::after{border-color:#fff}html.theme--catppuccin-macchiato .select.is-white select{border-color:#fff}html.theme--catppuccin-macchiato .select.is-white select:hover,html.theme--catppuccin-macchiato .select.is-white select.is-hovered{border-color:#f2f2f2}html.theme--catppuccin-macchiato .select.is-white select:focus,html.theme--catppuccin-macchiato .select.is-white select.is-focused,html.theme--catppuccin-macchiato .select.is-white select:active,html.theme--catppuccin-macchiato .select.is-white select.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-macchiato .select.is-black:not(:hover)::after{border-color:#0a0a0a}html.theme--catppuccin-macchiato .select.is-black select{border-color:#0a0a0a}html.theme--catppuccin-macchiato .select.is-black select:hover,html.theme--catppuccin-macchiato .select.is-black select.is-hovered{border-color:#000}html.theme--catppuccin-macchiato .select.is-black select:focus,html.theme--catppuccin-macchiato .select.is-black select.is-focused,html.theme--catppuccin-macchiato .select.is-black select:active,html.theme--catppuccin-macchiato .select.is-black select.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-macchiato .select.is-light:not(:hover)::after{border-color:#f5f5f5}html.theme--catppuccin-macchiato .select.is-light select{border-color:#f5f5f5}html.theme--catppuccin-macchiato .select.is-light select:hover,html.theme--catppuccin-macchiato .select.is-light select.is-hovered{border-color:#e8e8e8}html.theme--catppuccin-macchiato .select.is-light select:focus,html.theme--catppuccin-macchiato .select.is-light select.is-focused,html.theme--catppuccin-macchiato .select.is-light select:active,html.theme--catppuccin-macchiato .select.is-light select.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-macchiato .select.is-dark:not(:hover)::after,html.theme--catppuccin-macchiato .content kbd.select:not(:hover)::after{border-color:#363a4f}html.theme--catppuccin-macchiato .select.is-dark select,html.theme--catppuccin-macchiato .content kbd.select select{border-color:#363a4f}html.theme--catppuccin-macchiato .select.is-dark select:hover,html.theme--catppuccin-macchiato .content kbd.select select:hover,html.theme--catppuccin-macchiato .select.is-dark select.is-hovered,html.theme--catppuccin-macchiato .content kbd.select select.is-hovered{border-color:#2c2f40}html.theme--catppuccin-macchiato .select.is-dark select:focus,html.theme--catppuccin-macchiato .content kbd.select select:focus,html.theme--catppuccin-macchiato .select.is-dark select.is-focused,html.theme--catppuccin-macchiato .content kbd.select select.is-focused,html.theme--catppuccin-macchiato .select.is-dark select:active,html.theme--catppuccin-macchiato .content kbd.select select:active,html.theme--catppuccin-macchiato .select.is-dark select.is-active,html.theme--catppuccin-macchiato .content kbd.select select.is-active{box-shadow:0 0 0 0.125em rgba(54,58,79,0.25)}html.theme--catppuccin-macchiato .select.is-primary:not(:hover)::after,html.theme--catppuccin-macchiato .docstring>section>a.select.docs-sourcelink:not(:hover)::after{border-color:#8aadf4}html.theme--catppuccin-macchiato .select.is-primary select,html.theme--catppuccin-macchiato .docstring>section>a.select.docs-sourcelink select{border-color:#8aadf4}html.theme--catppuccin-macchiato .select.is-primary select:hover,html.theme--catppuccin-macchiato .docstring>section>a.select.docs-sourcelink select:hover,html.theme--catppuccin-macchiato .select.is-primary select.is-hovered,html.theme--catppuccin-macchiato .docstring>section>a.select.docs-sourcelink select.is-hovered{border-color:#739df2}html.theme--catppuccin-macchiato .select.is-primary select:focus,html.theme--catppuccin-macchiato .docstring>section>a.select.docs-sourcelink select:focus,html.theme--catppuccin-macchiato .select.is-primary select.is-focused,html.theme--catppuccin-macchiato .docstring>section>a.select.docs-sourcelink select.is-focused,html.theme--catppuccin-macchiato .select.is-primary select:active,html.theme--catppuccin-macchiato .docstring>section>a.select.docs-sourcelink select:active,html.theme--catppuccin-macchiato .select.is-primary select.is-active,html.theme--catppuccin-macchiato .docstring>section>a.select.docs-sourcelink select.is-active{box-shadow:0 0 0 0.125em rgba(138,173,244,0.25)}html.theme--catppuccin-macchiato .select.is-link:not(:hover)::after{border-color:#8aadf4}html.theme--catppuccin-macchiato .select.is-link select{border-color:#8aadf4}html.theme--catppuccin-macchiato .select.is-link select:hover,html.theme--catppuccin-macchiato .select.is-link select.is-hovered{border-color:#739df2}html.theme--catppuccin-macchiato .select.is-link select:focus,html.theme--catppuccin-macchiato .select.is-link select.is-focused,html.theme--catppuccin-macchiato .select.is-link select:active,html.theme--catppuccin-macchiato .select.is-link select.is-active{box-shadow:0 0 0 0.125em rgba(138,173,244,0.25)}html.theme--catppuccin-macchiato .select.is-info:not(:hover)::after{border-color:#8bd5ca}html.theme--catppuccin-macchiato .select.is-info select{border-color:#8bd5ca}html.theme--catppuccin-macchiato .select.is-info select:hover,html.theme--catppuccin-macchiato .select.is-info select.is-hovered{border-color:#78cec1}html.theme--catppuccin-macchiato .select.is-info select:focus,html.theme--catppuccin-macchiato .select.is-info select.is-focused,html.theme--catppuccin-macchiato .select.is-info select:active,html.theme--catppuccin-macchiato .select.is-info select.is-active{box-shadow:0 0 0 0.125em rgba(139,213,202,0.25)}html.theme--catppuccin-macchiato .select.is-success:not(:hover)::after{border-color:#a6da95}html.theme--catppuccin-macchiato .select.is-success select{border-color:#a6da95}html.theme--catppuccin-macchiato .select.is-success select:hover,html.theme--catppuccin-macchiato .select.is-success select.is-hovered{border-color:#96d382}html.theme--catppuccin-macchiato .select.is-success select:focus,html.theme--catppuccin-macchiato .select.is-success select.is-focused,html.theme--catppuccin-macchiato .select.is-success select:active,html.theme--catppuccin-macchiato .select.is-success select.is-active{box-shadow:0 0 0 0.125em rgba(166,218,149,0.25)}html.theme--catppuccin-macchiato .select.is-warning:not(:hover)::after{border-color:#eed49f}html.theme--catppuccin-macchiato .select.is-warning select{border-color:#eed49f}html.theme--catppuccin-macchiato .select.is-warning select:hover,html.theme--catppuccin-macchiato .select.is-warning select.is-hovered{border-color:#eaca89}html.theme--catppuccin-macchiato .select.is-warning select:focus,html.theme--catppuccin-macchiato .select.is-warning select.is-focused,html.theme--catppuccin-macchiato .select.is-warning select:active,html.theme--catppuccin-macchiato .select.is-warning select.is-active{box-shadow:0 0 0 0.125em rgba(238,212,159,0.25)}html.theme--catppuccin-macchiato .select.is-danger:not(:hover)::after{border-color:#ed8796}html.theme--catppuccin-macchiato .select.is-danger select{border-color:#ed8796}html.theme--catppuccin-macchiato .select.is-danger select:hover,html.theme--catppuccin-macchiato .select.is-danger select.is-hovered{border-color:#ea7183}html.theme--catppuccin-macchiato .select.is-danger select:focus,html.theme--catppuccin-macchiato .select.is-danger select.is-focused,html.theme--catppuccin-macchiato .select.is-danger select:active,html.theme--catppuccin-macchiato .select.is-danger select.is-active{box-shadow:0 0 0 0.125em rgba(237,135,150,0.25)}html.theme--catppuccin-macchiato .select.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.select{border-radius:3px;font-size:.75rem}html.theme--catppuccin-macchiato .select.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .select.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .select.is-disabled::after{border-color:#f5f7fd !important;opacity:0.5}html.theme--catppuccin-macchiato .select.is-fullwidth{width:100%}html.theme--catppuccin-macchiato .select.is-fullwidth select{width:100%}html.theme--catppuccin-macchiato .select.is-loading::after{margin-top:0;position:absolute;right:.625em;top:0.625em;transform:none}html.theme--catppuccin-macchiato .select.is-loading.is-small:after,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}html.theme--catppuccin-macchiato .select.is-loading.is-medium:after{font-size:1.25rem}html.theme--catppuccin-macchiato .select.is-loading.is-large:after{font-size:1.5rem}html.theme--catppuccin-macchiato .file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}html.theme--catppuccin-macchiato .file.is-white .file-cta{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-macchiato .file.is-white:hover .file-cta,html.theme--catppuccin-macchiato .file.is-white.is-hovered .file-cta{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-macchiato .file.is-white:focus .file-cta,html.theme--catppuccin-macchiato .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--catppuccin-macchiato .file.is-white:active .file-cta,html.theme--catppuccin-macchiato .file.is-white.is-active .file-cta{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-macchiato .file.is-black .file-cta{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-black:hover .file-cta,html.theme--catppuccin-macchiato .file.is-black.is-hovered .file-cta{background-color:#040404;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-black:focus .file-cta,html.theme--catppuccin-macchiato .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--catppuccin-macchiato .file.is-black:active .file-cta,html.theme--catppuccin-macchiato .file.is-black.is-active .file-cta{background-color:#000;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-light .file-cta{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-light:hover .file-cta,html.theme--catppuccin-macchiato .file.is-light.is-hovered .file-cta{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-light:focus .file-cta,html.theme--catppuccin-macchiato .file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(245,245,245,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-light:active .file-cta,html.theme--catppuccin-macchiato .file.is-light.is-active .file-cta{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-dark .file-cta,html.theme--catppuccin-macchiato .content kbd.file .file-cta{background-color:#363a4f;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-dark:hover .file-cta,html.theme--catppuccin-macchiato .content kbd.file:hover .file-cta,html.theme--catppuccin-macchiato .file.is-dark.is-hovered .file-cta,html.theme--catppuccin-macchiato .content kbd.file.is-hovered .file-cta{background-color:#313447;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-dark:focus .file-cta,html.theme--catppuccin-macchiato .content kbd.file:focus .file-cta,html.theme--catppuccin-macchiato .file.is-dark.is-focused .file-cta,html.theme--catppuccin-macchiato .content kbd.file.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(54,58,79,0.25);color:#fff}html.theme--catppuccin-macchiato .file.is-dark:active .file-cta,html.theme--catppuccin-macchiato .content kbd.file:active .file-cta,html.theme--catppuccin-macchiato .file.is-dark.is-active .file-cta,html.theme--catppuccin-macchiato .content kbd.file.is-active .file-cta{background-color:#2c2f40;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-primary .file-cta,html.theme--catppuccin-macchiato .docstring>section>a.file.docs-sourcelink .file-cta{background-color:#8aadf4;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-primary:hover .file-cta,html.theme--catppuccin-macchiato .docstring>section>a.file.docs-sourcelink:hover .file-cta,html.theme--catppuccin-macchiato .file.is-primary.is-hovered .file-cta,html.theme--catppuccin-macchiato .docstring>section>a.file.is-hovered.docs-sourcelink .file-cta{background-color:#7ea5f3;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-primary:focus .file-cta,html.theme--catppuccin-macchiato .docstring>section>a.file.docs-sourcelink:focus .file-cta,html.theme--catppuccin-macchiato .file.is-primary.is-focused .file-cta,html.theme--catppuccin-macchiato .docstring>section>a.file.is-focused.docs-sourcelink .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(138,173,244,0.25);color:#fff}html.theme--catppuccin-macchiato .file.is-primary:active .file-cta,html.theme--catppuccin-macchiato .docstring>section>a.file.docs-sourcelink:active .file-cta,html.theme--catppuccin-macchiato .file.is-primary.is-active .file-cta,html.theme--catppuccin-macchiato .docstring>section>a.file.is-active.docs-sourcelink .file-cta{background-color:#739df2;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-link .file-cta{background-color:#8aadf4;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-link:hover .file-cta,html.theme--catppuccin-macchiato .file.is-link.is-hovered .file-cta{background-color:#7ea5f3;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-link:focus .file-cta,html.theme--catppuccin-macchiato .file.is-link.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(138,173,244,0.25);color:#fff}html.theme--catppuccin-macchiato .file.is-link:active .file-cta,html.theme--catppuccin-macchiato .file.is-link.is-active .file-cta{background-color:#739df2;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-info .file-cta{background-color:#8bd5ca;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-info:hover .file-cta,html.theme--catppuccin-macchiato .file.is-info.is-hovered .file-cta{background-color:#82d2c6;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-info:focus .file-cta,html.theme--catppuccin-macchiato .file.is-info.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(139,213,202,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-info:active .file-cta,html.theme--catppuccin-macchiato .file.is-info.is-active .file-cta{background-color:#78cec1;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-success .file-cta{background-color:#a6da95;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-success:hover .file-cta,html.theme--catppuccin-macchiato .file.is-success.is-hovered .file-cta{background-color:#9ed78c;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-success:focus .file-cta,html.theme--catppuccin-macchiato .file.is-success.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(166,218,149,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-success:active .file-cta,html.theme--catppuccin-macchiato .file.is-success.is-active .file-cta{background-color:#96d382;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-warning .file-cta{background-color:#eed49f;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-warning:hover .file-cta,html.theme--catppuccin-macchiato .file.is-warning.is-hovered .file-cta{background-color:#eccf94;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-warning:focus .file-cta,html.theme--catppuccin-macchiato .file.is-warning.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(238,212,159,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-warning:active .file-cta,html.theme--catppuccin-macchiato .file.is-warning.is-active .file-cta{background-color:#eaca89;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .file.is-danger .file-cta{background-color:#ed8796;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-danger:hover .file-cta,html.theme--catppuccin-macchiato .file.is-danger.is-hovered .file-cta{background-color:#eb7c8c;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-danger:focus .file-cta,html.theme--catppuccin-macchiato .file.is-danger.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(237,135,150,0.25);color:#fff}html.theme--catppuccin-macchiato .file.is-danger:active .file-cta,html.theme--catppuccin-macchiato .file.is-danger.is-active .file-cta{background-color:#ea7183;border-color:transparent;color:#fff}html.theme--catppuccin-macchiato .file.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.file{font-size:.75rem}html.theme--catppuccin-macchiato .file.is-normal{font-size:1rem}html.theme--catppuccin-macchiato .file.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .file.is-medium .file-icon .fa{font-size:21px}html.theme--catppuccin-macchiato .file.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .file.is-large .file-icon .fa{font-size:28px}html.theme--catppuccin-macchiato .file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--catppuccin-macchiato .file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-macchiato .file.has-name.is-empty .file-cta{border-radius:.4em}html.theme--catppuccin-macchiato .file.has-name.is-empty .file-name{display:none}html.theme--catppuccin-macchiato .file.is-boxed .file-label{flex-direction:column}html.theme--catppuccin-macchiato .file.is-boxed .file-cta{flex-direction:column;height:auto;padding:1em 3em}html.theme--catppuccin-macchiato .file.is-boxed .file-name{border-width:0 1px 1px}html.theme--catppuccin-macchiato .file.is-boxed .file-icon{height:1.5em;width:1.5em}html.theme--catppuccin-macchiato .file.is-boxed .file-icon .fa{font-size:21px}html.theme--catppuccin-macchiato .file.is-boxed.is-small .file-icon .fa,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-boxed .file-icon .fa{font-size:14px}html.theme--catppuccin-macchiato .file.is-boxed.is-medium .file-icon .fa{font-size:28px}html.theme--catppuccin-macchiato .file.is-boxed.is-large .file-icon .fa{font-size:35px}html.theme--catppuccin-macchiato .file.is-boxed.has-name .file-cta{border-radius:.4em .4em 0 0}html.theme--catppuccin-macchiato .file.is-boxed.has-name .file-name{border-radius:0 0 .4em .4em;border-width:0 1px 1px}html.theme--catppuccin-macchiato .file.is-centered{justify-content:center}html.theme--catppuccin-macchiato .file.is-fullwidth .file-label{width:100%}html.theme--catppuccin-macchiato .file.is-fullwidth .file-name{flex-grow:1;max-width:none}html.theme--catppuccin-macchiato .file.is-right{justify-content:flex-end}html.theme--catppuccin-macchiato .file.is-right .file-cta{border-radius:0 .4em .4em 0}html.theme--catppuccin-macchiato .file.is-right .file-name{border-radius:.4em 0 0 .4em;border-width:1px 0 1px 1px;order:-1}html.theme--catppuccin-macchiato .file-label{align-items:stretch;display:flex;cursor:pointer;justify-content:flex-start;overflow:hidden;position:relative}html.theme--catppuccin-macchiato .file-label:hover .file-cta{background-color:#313447;color:#b5c1f1}html.theme--catppuccin-macchiato .file-label:hover .file-name{border-color:#565a71}html.theme--catppuccin-macchiato .file-label:active .file-cta{background-color:#2c2f40;color:#b5c1f1}html.theme--catppuccin-macchiato .file-label:active .file-name{border-color:#505469}html.theme--catppuccin-macchiato .file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}html.theme--catppuccin-macchiato .file-cta,html.theme--catppuccin-macchiato .file-name{border-color:#5b6078;border-radius:.4em;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}html.theme--catppuccin-macchiato .file-cta{background-color:#363a4f;color:#cad3f5}html.theme--catppuccin-macchiato .file-name{border-color:#5b6078;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:inherit;text-overflow:ellipsis}html.theme--catppuccin-macchiato .file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:.5em;width:1em}html.theme--catppuccin-macchiato .file-icon .fa{font-size:14px}html.theme--catppuccin-macchiato .label{color:#b5c1f1;display:block;font-size:1rem;font-weight:700}html.theme--catppuccin-macchiato .label:not(:last-child){margin-bottom:0.5em}html.theme--catppuccin-macchiato .label.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.label{font-size:.75rem}html.theme--catppuccin-macchiato .label.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .label.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .help{display:block;font-size:.75rem;margin-top:0.25rem}html.theme--catppuccin-macchiato .help.is-white{color:#fff}html.theme--catppuccin-macchiato .help.is-black{color:#0a0a0a}html.theme--catppuccin-macchiato .help.is-light{color:#f5f5f5}html.theme--catppuccin-macchiato .help.is-dark,html.theme--catppuccin-macchiato .content kbd.help{color:#363a4f}html.theme--catppuccin-macchiato .help.is-primary,html.theme--catppuccin-macchiato .docstring>section>a.help.docs-sourcelink{color:#8aadf4}html.theme--catppuccin-macchiato .help.is-link{color:#8aadf4}html.theme--catppuccin-macchiato .help.is-info{color:#8bd5ca}html.theme--catppuccin-macchiato .help.is-success{color:#a6da95}html.theme--catppuccin-macchiato .help.is-warning{color:#eed49f}html.theme--catppuccin-macchiato .help.is-danger{color:#ed8796}html.theme--catppuccin-macchiato .field:not(:last-child){margin-bottom:0.75rem}html.theme--catppuccin-macchiato .field.has-addons{display:flex;justify-content:flex-start}html.theme--catppuccin-macchiato .field.has-addons .control:not(:last-child){margin-right:-1px}html.theme--catppuccin-macchiato .field.has-addons .control:not(:first-child):not(:last-child) .button,html.theme--catppuccin-macchiato .field.has-addons .control:not(:first-child):not(:last-child) .input,html.theme--catppuccin-macchiato .field.has-addons .control:not(:first-child):not(:last-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control:not(:first-child):not(:last-child) form.docs-search>input,html.theme--catppuccin-macchiato .field.has-addons .control:not(:first-child):not(:last-child) .select select{border-radius:0}html.theme--catppuccin-macchiato .field.has-addons .control:first-child:not(:only-child) .button,html.theme--catppuccin-macchiato .field.has-addons .control:first-child:not(:only-child) .input,html.theme--catppuccin-macchiato .field.has-addons .control:first-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control:first-child:not(:only-child) form.docs-search>input,html.theme--catppuccin-macchiato .field.has-addons .control:first-child:not(:only-child) .select select{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--catppuccin-macchiato .field.has-addons .control:last-child:not(:only-child) .button,html.theme--catppuccin-macchiato .field.has-addons .control:last-child:not(:only-child) .input,html.theme--catppuccin-macchiato .field.has-addons .control:last-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control:last-child:not(:only-child) form.docs-search>input,html.theme--catppuccin-macchiato .field.has-addons .control:last-child:not(:only-child) .select select{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-macchiato .field.has-addons .control .button:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control .button.is-hovered:not([disabled]),html.theme--catppuccin-macchiato .field.has-addons .control .input:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):hover,html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control .input.is-hovered:not([disabled]),html.theme--catppuccin-macchiato .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-hovered:not([disabled]),html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-hovered:not([disabled]),html.theme--catppuccin-macchiato .field.has-addons .control .select select:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control .select select.is-hovered:not([disabled]){z-index:2}html.theme--catppuccin-macchiato .field.has-addons .control .button:not([disabled]):focus,html.theme--catppuccin-macchiato .field.has-addons .control .button.is-focused:not([disabled]),html.theme--catppuccin-macchiato .field.has-addons .control .button:not([disabled]):active,html.theme--catppuccin-macchiato .field.has-addons .control .button.is-active:not([disabled]),html.theme--catppuccin-macchiato .field.has-addons .control .input:not([disabled]):focus,html.theme--catppuccin-macchiato .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus,html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus,html.theme--catppuccin-macchiato .field.has-addons .control .input.is-focused:not([disabled]),html.theme--catppuccin-macchiato .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]),html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]),html.theme--catppuccin-macchiato .field.has-addons .control .input:not([disabled]):active,html.theme--catppuccin-macchiato .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active,html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active,html.theme--catppuccin-macchiato .field.has-addons .control .input.is-active:not([disabled]),html.theme--catppuccin-macchiato .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]),html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]),html.theme--catppuccin-macchiato .field.has-addons .control .select select:not([disabled]):focus,html.theme--catppuccin-macchiato .field.has-addons .control .select select.is-focused:not([disabled]),html.theme--catppuccin-macchiato .field.has-addons .control .select select:not([disabled]):active,html.theme--catppuccin-macchiato .field.has-addons .control .select select.is-active:not([disabled]){z-index:3}html.theme--catppuccin-macchiato .field.has-addons .control .button:not([disabled]):focus:hover,html.theme--catppuccin-macchiato .field.has-addons .control .button.is-focused:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control .button:not([disabled]):active:hover,html.theme--catppuccin-macchiato .field.has-addons .control .button.is-active:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control .input:not([disabled]):focus:hover,html.theme--catppuccin-macchiato .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus:hover,html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus:hover,html.theme--catppuccin-macchiato .field.has-addons .control .input.is-focused:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]):hover,html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control .input:not([disabled]):active:hover,html.theme--catppuccin-macchiato .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active:hover,html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active:hover,html.theme--catppuccin-macchiato .field.has-addons .control .input.is-active:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]):hover,html.theme--catppuccin-macchiato #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control .select select:not([disabled]):focus:hover,html.theme--catppuccin-macchiato .field.has-addons .control .select select.is-focused:not([disabled]):hover,html.theme--catppuccin-macchiato .field.has-addons .control .select select:not([disabled]):active:hover,html.theme--catppuccin-macchiato .field.has-addons .control .select select.is-active:not([disabled]):hover{z-index:4}html.theme--catppuccin-macchiato .field.has-addons .control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-macchiato .field.has-addons.has-addons-centered{justify-content:center}html.theme--catppuccin-macchiato .field.has-addons.has-addons-right{justify-content:flex-end}html.theme--catppuccin-macchiato .field.has-addons.has-addons-fullwidth .control{flex-grow:1;flex-shrink:0}html.theme--catppuccin-macchiato .field.is-grouped{display:flex;justify-content:flex-start}html.theme--catppuccin-macchiato .field.is-grouped>.control{flex-shrink:0}html.theme--catppuccin-macchiato .field.is-grouped>.control:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--catppuccin-macchiato .field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-macchiato .field.is-grouped.is-grouped-centered{justify-content:center}html.theme--catppuccin-macchiato .field.is-grouped.is-grouped-right{justify-content:flex-end}html.theme--catppuccin-macchiato .field.is-grouped.is-grouped-multiline{flex-wrap:wrap}html.theme--catppuccin-macchiato .field.is-grouped.is-grouped-multiline>.control:last-child,html.theme--catppuccin-macchiato .field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:0.75rem}html.theme--catppuccin-macchiato .field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-0.75rem}html.theme--catppuccin-macchiato .field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .field.is-horizontal{display:flex}}html.theme--catppuccin-macchiato .field-label .label{font-size:inherit}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .field-label{margin-bottom:0.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}html.theme--catppuccin-macchiato .field-label.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.field-label{font-size:.75rem;padding-top:0.375em}html.theme--catppuccin-macchiato .field-label.is-normal{padding-top:0.375em}html.theme--catppuccin-macchiato .field-label.is-medium{font-size:1.25rem;padding-top:0.375em}html.theme--catppuccin-macchiato .field-label.is-large{font-size:1.5rem;padding-top:0.375em}}html.theme--catppuccin-macchiato .field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}html.theme--catppuccin-macchiato .field-body .field{margin-bottom:0}html.theme--catppuccin-macchiato .field-body>.field{flex-shrink:1}html.theme--catppuccin-macchiato .field-body>.field:not(.is-narrow){flex-grow:1}html.theme--catppuccin-macchiato .field-body>.field:not(:last-child){margin-right:.75rem}}html.theme--catppuccin-macchiato .control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:inherit}html.theme--catppuccin-macchiato .control.has-icons-left .input:focus~.icon,html.theme--catppuccin-macchiato .control.has-icons-left #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--catppuccin-macchiato #documenter .docs-sidebar .control.has-icons-left form.docs-search>input:focus~.icon,html.theme--catppuccin-macchiato .control.has-icons-left .select:focus~.icon,html.theme--catppuccin-macchiato .control.has-icons-right .input:focus~.icon,html.theme--catppuccin-macchiato .control.has-icons-right #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--catppuccin-macchiato #documenter .docs-sidebar .control.has-icons-right form.docs-search>input:focus~.icon,html.theme--catppuccin-macchiato .control.has-icons-right .select:focus~.icon{color:#363a4f}html.theme--catppuccin-macchiato .control.has-icons-left .input.is-small~.icon,html.theme--catppuccin-macchiato .control.has-icons-left #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--catppuccin-macchiato #documenter .docs-sidebar .control.has-icons-left form.docs-search>input~.icon,html.theme--catppuccin-macchiato .control.has-icons-left .select.is-small~.icon,html.theme--catppuccin-macchiato .control.has-icons-right .input.is-small~.icon,html.theme--catppuccin-macchiato .control.has-icons-right #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--catppuccin-macchiato #documenter .docs-sidebar .control.has-icons-right form.docs-search>input~.icon,html.theme--catppuccin-macchiato .control.has-icons-right .select.is-small~.icon{font-size:.75rem}html.theme--catppuccin-macchiato .control.has-icons-left .input.is-medium~.icon,html.theme--catppuccin-macchiato .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--catppuccin-macchiato #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-medium~.icon,html.theme--catppuccin-macchiato .control.has-icons-left .select.is-medium~.icon,html.theme--catppuccin-macchiato .control.has-icons-right .input.is-medium~.icon,html.theme--catppuccin-macchiato .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--catppuccin-macchiato #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-medium~.icon,html.theme--catppuccin-macchiato .control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}html.theme--catppuccin-macchiato .control.has-icons-left .input.is-large~.icon,html.theme--catppuccin-macchiato .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--catppuccin-macchiato #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-large~.icon,html.theme--catppuccin-macchiato .control.has-icons-left .select.is-large~.icon,html.theme--catppuccin-macchiato .control.has-icons-right .input.is-large~.icon,html.theme--catppuccin-macchiato .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--catppuccin-macchiato #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-large~.icon,html.theme--catppuccin-macchiato .control.has-icons-right .select.is-large~.icon{font-size:1.5rem}html.theme--catppuccin-macchiato .control.has-icons-left .icon,html.theme--catppuccin-macchiato .control.has-icons-right .icon{color:#5b6078;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}html.theme--catppuccin-macchiato .control.has-icons-left .input,html.theme--catppuccin-macchiato .control.has-icons-left #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-macchiato #documenter .docs-sidebar .control.has-icons-left form.docs-search>input,html.theme--catppuccin-macchiato .control.has-icons-left .select select{padding-left:2.5em}html.theme--catppuccin-macchiato .control.has-icons-left .icon.is-left{left:0}html.theme--catppuccin-macchiato .control.has-icons-right .input,html.theme--catppuccin-macchiato .control.has-icons-right #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-macchiato #documenter .docs-sidebar .control.has-icons-right form.docs-search>input,html.theme--catppuccin-macchiato .control.has-icons-right .select select{padding-right:2.5em}html.theme--catppuccin-macchiato .control.has-icons-right .icon.is-right{right:0}html.theme--catppuccin-macchiato .control.is-loading::after{position:absolute !important;right:.625em;top:0.625em;z-index:4}html.theme--catppuccin-macchiato .control.is-loading.is-small:after,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}html.theme--catppuccin-macchiato .control.is-loading.is-medium:after{font-size:1.25rem}html.theme--catppuccin-macchiato .control.is-loading.is-large:after{font-size:1.5rem}html.theme--catppuccin-macchiato .breadcrumb{font-size:1rem;white-space:nowrap}html.theme--catppuccin-macchiato .breadcrumb a{align-items:center;color:#8aadf4;display:flex;justify-content:center;padding:0 .75em}html.theme--catppuccin-macchiato .breadcrumb a:hover{color:#91d7e3}html.theme--catppuccin-macchiato .breadcrumb li{align-items:center;display:flex}html.theme--catppuccin-macchiato .breadcrumb li:first-child a{padding-left:0}html.theme--catppuccin-macchiato .breadcrumb li.is-active a{color:#b5c1f1;cursor:default;pointer-events:none}html.theme--catppuccin-macchiato .breadcrumb li+li::before{color:#6e738d;content:"\0002f"}html.theme--catppuccin-macchiato .breadcrumb ul,html.theme--catppuccin-macchiato .breadcrumb ol{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-macchiato .breadcrumb .icon:first-child{margin-right:.5em}html.theme--catppuccin-macchiato .breadcrumb .icon:last-child{margin-left:.5em}html.theme--catppuccin-macchiato .breadcrumb.is-centered ol,html.theme--catppuccin-macchiato .breadcrumb.is-centered ul{justify-content:center}html.theme--catppuccin-macchiato .breadcrumb.is-right ol,html.theme--catppuccin-macchiato .breadcrumb.is-right ul{justify-content:flex-end}html.theme--catppuccin-macchiato .breadcrumb.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.75rem}html.theme--catppuccin-macchiato .breadcrumb.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .breadcrumb.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .breadcrumb.has-arrow-separator li+li::before{content:"\02192"}html.theme--catppuccin-macchiato .breadcrumb.has-bullet-separator li+li::before{content:"\02022"}html.theme--catppuccin-macchiato .breadcrumb.has-dot-separator li+li::before{content:"\000b7"}html.theme--catppuccin-macchiato .breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}html.theme--catppuccin-macchiato .card{background-color:#fff;border-radius:.25rem;box-shadow:#171717;color:#cad3f5;max-width:100%;position:relative}html.theme--catppuccin-macchiato .card-footer:first-child,html.theme--catppuccin-macchiato .card-content:first-child,html.theme--catppuccin-macchiato .card-header:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--catppuccin-macchiato .card-footer:last-child,html.theme--catppuccin-macchiato .card-content:last-child,html.theme--catppuccin-macchiato .card-header:last-child{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--catppuccin-macchiato .card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);display:flex}html.theme--catppuccin-macchiato .card-header-title{align-items:center;color:#b5c1f1;display:flex;flex-grow:1;font-weight:700;padding:0.75rem 1rem}html.theme--catppuccin-macchiato .card-header-title.is-centered{justify-content:center}html.theme--catppuccin-macchiato .card-header-icon{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0;align-items:center;cursor:pointer;display:flex;justify-content:center;padding:0.75rem 1rem}html.theme--catppuccin-macchiato .card-image{display:block;position:relative}html.theme--catppuccin-macchiato .card-image:first-child img{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--catppuccin-macchiato .card-image:last-child img{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--catppuccin-macchiato .card-content{background-color:rgba(0,0,0,0);padding:1.5rem}html.theme--catppuccin-macchiato .card-footer{background-color:rgba(0,0,0,0);border-top:1px solid #ededed;align-items:stretch;display:flex}html.theme--catppuccin-macchiato .card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}html.theme--catppuccin-macchiato .card-footer-item:not(:last-child){border-right:1px solid #ededed}html.theme--catppuccin-macchiato .card .media:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-macchiato .dropdown{display:inline-flex;position:relative;vertical-align:top}html.theme--catppuccin-macchiato .dropdown.is-active .dropdown-menu,html.theme--catppuccin-macchiato .dropdown.is-hoverable:hover .dropdown-menu{display:block}html.theme--catppuccin-macchiato .dropdown.is-right .dropdown-menu{left:auto;right:0}html.theme--catppuccin-macchiato .dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}html.theme--catppuccin-macchiato .dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}html.theme--catppuccin-macchiato .dropdown-content{background-color:#1e2030;border-radius:.4em;box-shadow:#171717;padding-bottom:.5rem;padding-top:.5rem}html.theme--catppuccin-macchiato .dropdown-item{color:#cad3f5;display:block;font-size:0.875rem;line-height:1.5;padding:0.375rem 1rem;position:relative}html.theme--catppuccin-macchiato a.dropdown-item,html.theme--catppuccin-macchiato button.dropdown-item{padding-right:3rem;text-align:inherit;white-space:nowrap;width:100%}html.theme--catppuccin-macchiato a.dropdown-item:hover,html.theme--catppuccin-macchiato button.dropdown-item:hover{background-color:#1e2030;color:#0a0a0a}html.theme--catppuccin-macchiato a.dropdown-item.is-active,html.theme--catppuccin-macchiato button.dropdown-item.is-active{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .dropdown-divider{background-color:#ededed;border:none;display:block;height:1px;margin:0.5rem 0}html.theme--catppuccin-macchiato .level{align-items:center;justify-content:space-between}html.theme--catppuccin-macchiato .level code{border-radius:.4em}html.theme--catppuccin-macchiato .level img{display:inline-block;vertical-align:top}html.theme--catppuccin-macchiato .level.is-mobile{display:flex}html.theme--catppuccin-macchiato .level.is-mobile .level-left,html.theme--catppuccin-macchiato .level.is-mobile .level-right{display:flex}html.theme--catppuccin-macchiato .level.is-mobile .level-left+.level-right{margin-top:0}html.theme--catppuccin-macchiato .level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--catppuccin-macchiato .level.is-mobile .level-item:not(.is-narrow){flex-grow:1}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .level{display:flex}html.theme--catppuccin-macchiato .level>.level-item:not(.is-narrow){flex-grow:1}}html.theme--catppuccin-macchiato .level-item{align-items:center;display:flex;flex-basis:auto;flex-grow:0;flex-shrink:0;justify-content:center}html.theme--catppuccin-macchiato .level-item .title,html.theme--catppuccin-macchiato .level-item .subtitle{margin-bottom:0}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .level-item:not(:last-child){margin-bottom:.75rem}}html.theme--catppuccin-macchiato .level-left,html.theme--catppuccin-macchiato .level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--catppuccin-macchiato .level-left .level-item.is-flexible,html.theme--catppuccin-macchiato .level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .level-left .level-item:not(:last-child),html.theme--catppuccin-macchiato .level-right .level-item:not(:last-child){margin-right:.75rem}}html.theme--catppuccin-macchiato .level-left{align-items:center;justify-content:flex-start}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .level-left{display:flex}}html.theme--catppuccin-macchiato .level-right{align-items:center;justify-content:flex-end}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .level-right{display:flex}}html.theme--catppuccin-macchiato .media{align-items:flex-start;display:flex;text-align:inherit}html.theme--catppuccin-macchiato .media .content:not(:last-child){margin-bottom:.75rem}html.theme--catppuccin-macchiato .media .media{border-top:1px solid rgba(91,96,120,0.5);display:flex;padding-top:.75rem}html.theme--catppuccin-macchiato .media .media .content:not(:last-child),html.theme--catppuccin-macchiato .media .media .control:not(:last-child){margin-bottom:.5rem}html.theme--catppuccin-macchiato .media .media .media{padding-top:.5rem}html.theme--catppuccin-macchiato .media .media .media+.media{margin-top:.5rem}html.theme--catppuccin-macchiato .media+.media{border-top:1px solid rgba(91,96,120,0.5);margin-top:1rem;padding-top:1rem}html.theme--catppuccin-macchiato .media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}html.theme--catppuccin-macchiato .media-left,html.theme--catppuccin-macchiato .media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--catppuccin-macchiato .media-left{margin-right:1rem}html.theme--catppuccin-macchiato .media-right{margin-left:1rem}html.theme--catppuccin-macchiato .media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:inherit}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .media-content{overflow-x:auto}}html.theme--catppuccin-macchiato .menu{font-size:1rem}html.theme--catppuccin-macchiato .menu.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.menu{font-size:.75rem}html.theme--catppuccin-macchiato .menu.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .menu.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .menu-list{line-height:1.25}html.theme--catppuccin-macchiato .menu-list a{border-radius:3px;color:#cad3f5;display:block;padding:0.5em 0.75em}html.theme--catppuccin-macchiato .menu-list a:hover{background-color:#1e2030;color:#b5c1f1}html.theme--catppuccin-macchiato .menu-list a.is-active{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .menu-list li ul{border-left:1px solid #5b6078;margin:.75em;padding-left:.75em}html.theme--catppuccin-macchiato .menu-label{color:#f5f7fd;font-size:.75em;letter-spacing:.1em;text-transform:uppercase}html.theme--catppuccin-macchiato .menu-label:not(:first-child){margin-top:1em}html.theme--catppuccin-macchiato .menu-label:not(:last-child){margin-bottom:1em}html.theme--catppuccin-macchiato .message{background-color:#1e2030;border-radius:.4em;font-size:1rem}html.theme--catppuccin-macchiato .message strong{color:currentColor}html.theme--catppuccin-macchiato .message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--catppuccin-macchiato .message.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.message{font-size:.75rem}html.theme--catppuccin-macchiato .message.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .message.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .message.is-white{background-color:#fff}html.theme--catppuccin-macchiato .message.is-white .message-header{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .message.is-white .message-body{border-color:#fff}html.theme--catppuccin-macchiato .message.is-black{background-color:#fafafa}html.theme--catppuccin-macchiato .message.is-black .message-header{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .message.is-black .message-body{border-color:#0a0a0a}html.theme--catppuccin-macchiato .message.is-light{background-color:#fafafa}html.theme--catppuccin-macchiato .message.is-light .message-header{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .message.is-light .message-body{border-color:#f5f5f5}html.theme--catppuccin-macchiato .message.is-dark,html.theme--catppuccin-macchiato .content kbd.message{background-color:#f9f9fb}html.theme--catppuccin-macchiato .message.is-dark .message-header,html.theme--catppuccin-macchiato .content kbd.message .message-header{background-color:#363a4f;color:#fff}html.theme--catppuccin-macchiato .message.is-dark .message-body,html.theme--catppuccin-macchiato .content kbd.message .message-body{border-color:#363a4f}html.theme--catppuccin-macchiato .message.is-primary,html.theme--catppuccin-macchiato .docstring>section>a.message.docs-sourcelink{background-color:#ecf2fd}html.theme--catppuccin-macchiato .message.is-primary .message-header,html.theme--catppuccin-macchiato .docstring>section>a.message.docs-sourcelink .message-header{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .message.is-primary .message-body,html.theme--catppuccin-macchiato .docstring>section>a.message.docs-sourcelink .message-body{border-color:#8aadf4;color:#0e3b95}html.theme--catppuccin-macchiato .message.is-link{background-color:#ecf2fd}html.theme--catppuccin-macchiato .message.is-link .message-header{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .message.is-link .message-body{border-color:#8aadf4;color:#0e3b95}html.theme--catppuccin-macchiato .message.is-info{background-color:#f0faf8}html.theme--catppuccin-macchiato .message.is-info .message-header{background-color:#8bd5ca;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .message.is-info .message-body{border-color:#8bd5ca;color:#276d62}html.theme--catppuccin-macchiato .message.is-success{background-color:#f2faf0}html.theme--catppuccin-macchiato .message.is-success .message-header{background-color:#a6da95;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .message.is-success .message-body{border-color:#a6da95;color:#386e26}html.theme--catppuccin-macchiato .message.is-warning{background-color:#fcf7ee}html.theme--catppuccin-macchiato .message.is-warning .message-header{background-color:#eed49f;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .message.is-warning .message-body{border-color:#eed49f;color:#7e5c16}html.theme--catppuccin-macchiato .message.is-danger{background-color:#fcedef}html.theme--catppuccin-macchiato .message.is-danger .message-header{background-color:#ed8796;color:#fff}html.theme--catppuccin-macchiato .message.is-danger .message-body{border-color:#ed8796;color:#971729}html.theme--catppuccin-macchiato .message-header{align-items:center;background-color:#cad3f5;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--catppuccin-macchiato .message-header .delete{flex-grow:0;flex-shrink:0;margin-left:.75em}html.theme--catppuccin-macchiato .message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}html.theme--catppuccin-macchiato .message-body{border-color:#5b6078;border-radius:.4em;border-style:solid;border-width:0 0 0 4px;color:#cad3f5;padding:1.25em 1.5em}html.theme--catppuccin-macchiato .message-body code,html.theme--catppuccin-macchiato .message-body pre{background-color:#fff}html.theme--catppuccin-macchiato .message-body pre code{background-color:rgba(0,0,0,0)}html.theme--catppuccin-macchiato .modal{align-items:center;display:none;flex-direction:column;justify-content:center;overflow:hidden;position:fixed;z-index:40}html.theme--catppuccin-macchiato .modal.is-active{display:flex}html.theme--catppuccin-macchiato .modal-background{background-color:rgba(10,10,10,0.86)}html.theme--catppuccin-macchiato .modal-content,html.theme--catppuccin-macchiato .modal-card{margin:0 20px;max-height:calc(100vh - 160px);overflow:auto;position:relative;width:100%}@media screen and (min-width: 769px){html.theme--catppuccin-macchiato .modal-content,html.theme--catppuccin-macchiato .modal-card{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}html.theme--catppuccin-macchiato .modal-close{background:none;height:40px;position:fixed;right:20px;top:20px;width:40px}html.theme--catppuccin-macchiato .modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}html.theme--catppuccin-macchiato .modal-card-head,html.theme--catppuccin-macchiato .modal-card-foot{align-items:center;background-color:#1e2030;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}html.theme--catppuccin-macchiato .modal-card-head{border-bottom:1px solid #5b6078;border-top-left-radius:8px;border-top-right-radius:8px}html.theme--catppuccin-macchiato .modal-card-title{color:#cad3f5;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}html.theme--catppuccin-macchiato .modal-card-foot{border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top:1px solid #5b6078}html.theme--catppuccin-macchiato .modal-card-foot .button:not(:last-child){margin-right:.5em}html.theme--catppuccin-macchiato .modal-card-body{-webkit-overflow-scrolling:touch;background-color:#24273a;flex-grow:1;flex-shrink:1;overflow:auto;padding:20px}html.theme--catppuccin-macchiato .navbar{background-color:#8aadf4;min-height:4rem;position:relative;z-index:30}html.theme--catppuccin-macchiato .navbar.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .navbar.is-white .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-white .navbar-brand .navbar-link{color:#0a0a0a}html.theme--catppuccin-macchiato .navbar.is-white .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-white .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-white .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-white .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-white .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-white .navbar-brand .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-macchiato .navbar.is-white .navbar-brand .navbar-link::after{border-color:#0a0a0a}html.theme--catppuccin-macchiato .navbar.is-white .navbar-burger{color:#0a0a0a}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar.is-white .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-white .navbar-start .navbar-link,html.theme--catppuccin-macchiato .navbar.is-white .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-white .navbar-end .navbar-link{color:#0a0a0a}html.theme--catppuccin-macchiato .navbar.is-white .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-white .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-white .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-white .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-white .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-white .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .navbar.is-white .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-white .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-white .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-white .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-white .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-white .navbar-end .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-macchiato .navbar.is-white .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .navbar.is-white .navbar-end .navbar-link::after{border-color:#0a0a0a}html.theme--catppuccin-macchiato .navbar.is-white .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-macchiato .navbar.is-white .navbar-dropdown a.navbar-item.is-active{background-color:#fff;color:#0a0a0a}}html.theme--catppuccin-macchiato .navbar.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .navbar.is-black .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-black .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-macchiato .navbar.is-black .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-black .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-black .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-black .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-black .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-black .navbar-brand .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-macchiato .navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-macchiato .navbar.is-black .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar.is-black .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-black .navbar-start .navbar-link,html.theme--catppuccin-macchiato .navbar.is-black .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-black .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-macchiato .navbar.is-black .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-black .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-black .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-black .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-black .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-black .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .navbar.is-black .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-black .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-black .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-black .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-black .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-black .navbar-end .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-macchiato .navbar.is-black .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .navbar.is-black .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-macchiato .navbar.is-black .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link{background-color:#000;color:#fff}html.theme--catppuccin-macchiato .navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}html.theme--catppuccin-macchiato .navbar.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-light .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-light .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-light .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-light .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-light .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-light .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-light .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-light .navbar-brand .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-light .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-light .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar.is-light .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-light .navbar-start .navbar-link,html.theme--catppuccin-macchiato .navbar.is-light .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-light .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-light .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-light .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-light .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-light .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-light .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-light .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .navbar.is-light .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-light .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-light .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-light .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-light .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-light .navbar-end .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-light .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .navbar.is-light .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-macchiato .navbar.is-dark,html.theme--catppuccin-macchiato .content kbd.navbar{background-color:#363a4f;color:#fff}html.theme--catppuccin-macchiato .navbar.is-dark .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-brand .navbar-link,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-macchiato .navbar.is-dark .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-brand .navbar-link.is-active,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-brand .navbar-link.is-active{background-color:#2c2f40;color:#fff}html.theme--catppuccin-macchiato .navbar.is-dark .navbar-brand .navbar-link::after,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-macchiato .navbar.is-dark .navbar-burger,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar.is-dark .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-start .navbar-link,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-start .navbar-link,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-end .navbar-link,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-macchiato .navbar.is-dark .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-end .navbar-link.is-active,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-end .navbar-link.is-active{background-color:#2c2f40;color:#fff}html.theme--catppuccin-macchiato .navbar.is-dark .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-end .navbar-link::after,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-macchiato .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link{background-color:#2c2f40;color:#fff}html.theme--catppuccin-macchiato .navbar.is-dark .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-macchiato .content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#363a4f;color:#fff}}html.theme--catppuccin-macchiato .navbar.is-primary,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .navbar.is-primary .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-brand .navbar-link,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-macchiato .navbar.is-primary .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-brand .navbar-link.is-active,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active{background-color:#739df2;color:#fff}html.theme--catppuccin-macchiato .navbar.is-primary .navbar-brand .navbar-link::after,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-macchiato .navbar.is-primary .navbar-burger,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar.is-primary .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-start .navbar-link,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-end .navbar-link,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-macchiato .navbar.is-primary .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-end .navbar-link.is-active,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active{background-color:#739df2;color:#fff}html.theme--catppuccin-macchiato .navbar.is-primary .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-end .navbar-link::after,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-macchiato .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link{background-color:#739df2;color:#fff}html.theme--catppuccin-macchiato .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#8aadf4;color:#fff}}html.theme--catppuccin-macchiato .navbar.is-link{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .navbar.is-link .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-link .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-macchiato .navbar.is-link .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-link .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-link .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-link .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-link .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-link .navbar-brand .navbar-link.is-active{background-color:#739df2;color:#fff}html.theme--catppuccin-macchiato .navbar.is-link .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-macchiato .navbar.is-link .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar.is-link .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-link .navbar-start .navbar-link,html.theme--catppuccin-macchiato .navbar.is-link .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-link .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-macchiato .navbar.is-link .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-link .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-link .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-link .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-link .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-link .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .navbar.is-link .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-link .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-link .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-link .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-link .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-link .navbar-end .navbar-link.is-active{background-color:#739df2;color:#fff}html.theme--catppuccin-macchiato .navbar.is-link .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .navbar.is-link .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-macchiato .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link{background-color:#739df2;color:#fff}html.theme--catppuccin-macchiato .navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:#8aadf4;color:#fff}}html.theme--catppuccin-macchiato .navbar.is-info{background-color:#8bd5ca;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-info .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-info .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-info .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-info .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-info .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-info .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-info .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-info .navbar-brand .navbar-link.is-active{background-color:#78cec1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-info .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-info .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar.is-info .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-info .navbar-start .navbar-link,html.theme--catppuccin-macchiato .navbar.is-info .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-info .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-info .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-info .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-info .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-info .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-info .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-info .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .navbar.is-info .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-info .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-info .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-info .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-info .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-info .navbar-end .navbar-link.is-active{background-color:#78cec1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-info .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .navbar.is-info .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-info .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link{background-color:#78cec1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:#8bd5ca;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-macchiato .navbar.is-success{background-color:#a6da95;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-success .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-success .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-success .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-success .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-success .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-success .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-success .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-success .navbar-brand .navbar-link.is-active{background-color:#96d382;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-success .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-success .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar.is-success .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-success .navbar-start .navbar-link,html.theme--catppuccin-macchiato .navbar.is-success .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-success .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-success .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-success .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-success .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-success .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-success .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-success .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .navbar.is-success .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-success .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-success .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-success .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-success .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-success .navbar-end .navbar-link.is-active{background-color:#96d382;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-success .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .navbar.is-success .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-success .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link{background-color:#96d382;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:#a6da95;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-macchiato .navbar.is-warning{background-color:#eed49f;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-warning .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-warning .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-brand .navbar-link.is-active{background-color:#eaca89;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-warning .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-warning .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar.is-warning .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-start .navbar-link,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-warning .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-end .navbar-link.is-active{background-color:#eaca89;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-warning .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link{background-color:#eaca89;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:#eed49f;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-macchiato .navbar.is-danger{background-color:#ed8796;color:#fff}html.theme--catppuccin-macchiato .navbar.is-danger .navbar-brand>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-macchiato .navbar.is-danger .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-brand .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-brand .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-brand .navbar-link.is-active{background-color:#ea7183;color:#fff}html.theme--catppuccin-macchiato .navbar.is-danger .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-macchiato .navbar.is-danger .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar.is-danger .navbar-start>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-start .navbar-link,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-end>.navbar-item,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-macchiato .navbar.is-danger .navbar-start>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-start>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-start .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-start .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-start .navbar-link.is-active,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-end>a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-end>a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-end .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-end .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-end .navbar-link.is-active{background-color:#ea7183;color:#fff}html.theme--catppuccin-macchiato .navbar.is-danger .navbar-start .navbar-link::after,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-macchiato .navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link{background-color:#ea7183;color:#fff}html.theme--catppuccin-macchiato .navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:#ed8796;color:#fff}}html.theme--catppuccin-macchiato .navbar>.container{align-items:stretch;display:flex;min-height:4rem;width:100%}html.theme--catppuccin-macchiato .navbar.has-shadow{box-shadow:0 2px 0 0 #1e2030}html.theme--catppuccin-macchiato .navbar.is-fixed-bottom,html.theme--catppuccin-macchiato .navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-macchiato .navbar.is-fixed-bottom{bottom:0}html.theme--catppuccin-macchiato .navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #1e2030}html.theme--catppuccin-macchiato .navbar.is-fixed-top{top:0}html.theme--catppuccin-macchiato html.has-navbar-fixed-top,html.theme--catppuccin-macchiato body.has-navbar-fixed-top{padding-top:4rem}html.theme--catppuccin-macchiato html.has-navbar-fixed-bottom,html.theme--catppuccin-macchiato body.has-navbar-fixed-bottom{padding-bottom:4rem}html.theme--catppuccin-macchiato .navbar-brand,html.theme--catppuccin-macchiato .navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:4rem}html.theme--catppuccin-macchiato .navbar-brand a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar-brand a.navbar-item:hover{background-color:transparent}html.theme--catppuccin-macchiato .navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}html.theme--catppuccin-macchiato .navbar-burger{color:#cad3f5;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:block;height:4rem;position:relative;width:4rem;margin-left:auto}html.theme--catppuccin-macchiato .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--catppuccin-macchiato .navbar-burger span:nth-child(1){top:calc(50% - 6px)}html.theme--catppuccin-macchiato .navbar-burger span:nth-child(2){top:calc(50% - 1px)}html.theme--catppuccin-macchiato .navbar-burger span:nth-child(3){top:calc(50% + 4px)}html.theme--catppuccin-macchiato .navbar-burger:hover{background-color:rgba(0,0,0,0.05)}html.theme--catppuccin-macchiato .navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}html.theme--catppuccin-macchiato .navbar-burger.is-active span:nth-child(2){opacity:0}html.theme--catppuccin-macchiato .navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}html.theme--catppuccin-macchiato .navbar-menu{display:none}html.theme--catppuccin-macchiato .navbar-item,html.theme--catppuccin-macchiato .navbar-link{color:#cad3f5;display:block;line-height:1.5;padding:0.5rem 0.75rem;position:relative}html.theme--catppuccin-macchiato .navbar-item .icon:only-child,html.theme--catppuccin-macchiato .navbar-link .icon:only-child{margin-left:-0.25rem;margin-right:-0.25rem}html.theme--catppuccin-macchiato a.navbar-item,html.theme--catppuccin-macchiato .navbar-link{cursor:pointer}html.theme--catppuccin-macchiato a.navbar-item:focus,html.theme--catppuccin-macchiato a.navbar-item:focus-within,html.theme--catppuccin-macchiato a.navbar-item:hover,html.theme--catppuccin-macchiato a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar-link:focus,html.theme--catppuccin-macchiato .navbar-link:focus-within,html.theme--catppuccin-macchiato .navbar-link:hover,html.theme--catppuccin-macchiato .navbar-link.is-active{background-color:rgba(0,0,0,0);color:#8aadf4}html.theme--catppuccin-macchiato .navbar-item{flex-grow:0;flex-shrink:0}html.theme--catppuccin-macchiato .navbar-item img{max-height:1.75rem}html.theme--catppuccin-macchiato .navbar-item.has-dropdown{padding:0}html.theme--catppuccin-macchiato .navbar-item.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-macchiato .navbar-item.is-tab{border-bottom:1px solid transparent;min-height:4rem;padding-bottom:calc(0.5rem - 1px)}html.theme--catppuccin-macchiato .navbar-item.is-tab:focus,html.theme--catppuccin-macchiato .navbar-item.is-tab:hover{background-color:rgba(0,0,0,0);border-bottom-color:#8aadf4}html.theme--catppuccin-macchiato .navbar-item.is-tab.is-active{background-color:rgba(0,0,0,0);border-bottom-color:#8aadf4;border-bottom-style:solid;border-bottom-width:3px;color:#8aadf4;padding-bottom:calc(0.5rem - 3px)}html.theme--catppuccin-macchiato .navbar-content{flex-grow:1;flex-shrink:1}html.theme--catppuccin-macchiato .navbar-link:not(.is-arrowless){padding-right:2.5em}html.theme--catppuccin-macchiato .navbar-link:not(.is-arrowless)::after{border-color:#fff;margin-top:-0.375em;right:1.125em}html.theme--catppuccin-macchiato .navbar-dropdown{font-size:0.875rem;padding-bottom:0.5rem;padding-top:0.5rem}html.theme--catppuccin-macchiato .navbar-dropdown .navbar-item{padding-left:1.5rem;padding-right:1.5rem}html.theme--catppuccin-macchiato .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--catppuccin-macchiato .navbar>.container{display:block}html.theme--catppuccin-macchiato .navbar-brand .navbar-item,html.theme--catppuccin-macchiato .navbar-tabs .navbar-item{align-items:center;display:flex}html.theme--catppuccin-macchiato .navbar-link::after{display:none}html.theme--catppuccin-macchiato .navbar-menu{background-color:#8aadf4;box-shadow:0 8px 16px rgba(10,10,10,0.1);padding:0.5rem 0}html.theme--catppuccin-macchiato .navbar-menu.is-active{display:block}html.theme--catppuccin-macchiato .navbar.is-fixed-bottom-touch,html.theme--catppuccin-macchiato .navbar.is-fixed-top-touch{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-macchiato .navbar.is-fixed-bottom-touch{bottom:0}html.theme--catppuccin-macchiato .navbar.is-fixed-bottom-touch.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .navbar.is-fixed-top-touch{top:0}html.theme--catppuccin-macchiato .navbar.is-fixed-top .navbar-menu,html.theme--catppuccin-macchiato .navbar.is-fixed-top-touch .navbar-menu{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 4rem);overflow:auto}html.theme--catppuccin-macchiato html.has-navbar-fixed-top-touch,html.theme--catppuccin-macchiato body.has-navbar-fixed-top-touch{padding-top:4rem}html.theme--catppuccin-macchiato html.has-navbar-fixed-bottom-touch,html.theme--catppuccin-macchiato body.has-navbar-fixed-bottom-touch{padding-bottom:4rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .navbar,html.theme--catppuccin-macchiato .navbar-menu,html.theme--catppuccin-macchiato .navbar-start,html.theme--catppuccin-macchiato .navbar-end{align-items:stretch;display:flex}html.theme--catppuccin-macchiato .navbar{min-height:4rem}html.theme--catppuccin-macchiato .navbar.is-spaced{padding:1rem 2rem}html.theme--catppuccin-macchiato .navbar.is-spaced .navbar-start,html.theme--catppuccin-macchiato .navbar.is-spaced .navbar-end{align-items:center}html.theme--catppuccin-macchiato .navbar.is-spaced a.navbar-item,html.theme--catppuccin-macchiato .navbar.is-spaced .navbar-link{border-radius:.4em}html.theme--catppuccin-macchiato .navbar.is-transparent a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-transparent a.navbar-item:hover,html.theme--catppuccin-macchiato .navbar.is-transparent a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar.is-transparent .navbar-link:focus,html.theme--catppuccin-macchiato .navbar.is-transparent .navbar-link:hover,html.theme--catppuccin-macchiato .navbar.is-transparent .navbar-link.is-active{background-color:transparent !important}html.theme--catppuccin-macchiato .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-macchiato .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link,html.theme--catppuccin-macchiato .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link,html.theme--catppuccin-macchiato .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link{background-color:transparent !important}html.theme--catppuccin-macchiato .navbar.is-transparent .navbar-dropdown a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar.is-transparent .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#8087a2}html.theme--catppuccin-macchiato .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#8aadf4}html.theme--catppuccin-macchiato .navbar-burger{display:none}html.theme--catppuccin-macchiato .navbar-item,html.theme--catppuccin-macchiato .navbar-link{align-items:center;display:flex}html.theme--catppuccin-macchiato .navbar-item.has-dropdown{align-items:stretch}html.theme--catppuccin-macchiato .navbar-item.has-dropdown-up .navbar-link::after{transform:rotate(135deg) translate(0.25em, -0.25em)}html.theme--catppuccin-macchiato .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--catppuccin-macchiato .navbar-item.is-active .navbar-dropdown,html.theme--catppuccin-macchiato .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--catppuccin-macchiato .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--catppuccin-macchiato .navbar-item.is-hoverable:hover .navbar-dropdown{display:block}.navbar.is-spaced html.theme--catppuccin-macchiato .navbar-item.is-active .navbar-dropdown,html.theme--catppuccin-macchiato .navbar-item.is-active .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-macchiato .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--catppuccin-macchiato .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-macchiato .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--catppuccin-macchiato .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-macchiato .navbar-item.is-hoverable:hover .navbar-dropdown,html.theme--catppuccin-macchiato .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed{opacity:1;pointer-events:auto;transform:translateY(0)}html.theme--catppuccin-macchiato .navbar-menu{flex-grow:1;flex-shrink:0}html.theme--catppuccin-macchiato .navbar-start{justify-content:flex-start;margin-right:auto}html.theme--catppuccin-macchiato .navbar-end{justify-content:flex-end;margin-left:auto}html.theme--catppuccin-macchiato .navbar-dropdown{background-color:#8aadf4;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--catppuccin-macchiato .navbar-dropdown .navbar-item{padding:0.375rem 1rem;white-space:nowrap}html.theme--catppuccin-macchiato .navbar-dropdown a.navbar-item{padding-right:3rem}html.theme--catppuccin-macchiato .navbar-dropdown a.navbar-item:focus,html.theme--catppuccin-macchiato .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#8087a2}html.theme--catppuccin-macchiato .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#8aadf4}.navbar.is-spaced html.theme--catppuccin-macchiato .navbar-dropdown,html.theme--catppuccin-macchiato .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--catppuccin-macchiato .navbar-dropdown.is-right{left:auto;right:0}html.theme--catppuccin-macchiato .navbar-divider{display:block}html.theme--catppuccin-macchiato .navbar>.container .navbar-brand,html.theme--catppuccin-macchiato .container>.navbar .navbar-brand{margin-left:-.75rem}html.theme--catppuccin-macchiato .navbar>.container .navbar-menu,html.theme--catppuccin-macchiato .container>.navbar .navbar-menu{margin-right:-.75rem}html.theme--catppuccin-macchiato .navbar.is-fixed-bottom-desktop,html.theme--catppuccin-macchiato .navbar.is-fixed-top-desktop{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-macchiato .navbar.is-fixed-bottom-desktop{bottom:0}html.theme--catppuccin-macchiato .navbar.is-fixed-bottom-desktop.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .navbar.is-fixed-top-desktop{top:0}html.theme--catppuccin-macchiato html.has-navbar-fixed-top-desktop,html.theme--catppuccin-macchiato body.has-navbar-fixed-top-desktop{padding-top:4rem}html.theme--catppuccin-macchiato html.has-navbar-fixed-bottom-desktop,html.theme--catppuccin-macchiato body.has-navbar-fixed-bottom-desktop{padding-bottom:4rem}html.theme--catppuccin-macchiato html.has-spaced-navbar-fixed-top,html.theme--catppuccin-macchiato body.has-spaced-navbar-fixed-top{padding-top:6rem}html.theme--catppuccin-macchiato html.has-spaced-navbar-fixed-bottom,html.theme--catppuccin-macchiato body.has-spaced-navbar-fixed-bottom{padding-bottom:6rem}html.theme--catppuccin-macchiato a.navbar-item.is-active,html.theme--catppuccin-macchiato .navbar-link.is-active{color:#8aadf4}html.theme--catppuccin-macchiato a.navbar-item.is-active:not(:focus):not(:hover),html.theme--catppuccin-macchiato .navbar-link.is-active:not(:focus):not(:hover){background-color:rgba(0,0,0,0)}html.theme--catppuccin-macchiato .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-macchiato .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-macchiato .navbar-item.has-dropdown.is-active .navbar-link{background-color:rgba(0,0,0,0)}}html.theme--catppuccin-macchiato .hero.is-fullheight-with-navbar{min-height:calc(100vh - 4rem)}html.theme--catppuccin-macchiato .pagination{font-size:1rem;margin:-.25rem}html.theme--catppuccin-macchiato .pagination.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.pagination{font-size:.75rem}html.theme--catppuccin-macchiato .pagination.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .pagination.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .pagination.is-rounded .pagination-previous,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.pagination .pagination-previous,html.theme--catppuccin-macchiato .pagination.is-rounded .pagination-next,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.pagination .pagination-next{padding-left:1em;padding-right:1em;border-radius:9999px}html.theme--catppuccin-macchiato .pagination.is-rounded .pagination-link,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:9999px}html.theme--catppuccin-macchiato .pagination,html.theme--catppuccin-macchiato .pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}html.theme--catppuccin-macchiato .pagination-previous,html.theme--catppuccin-macchiato .pagination-next,html.theme--catppuccin-macchiato .pagination-link,html.theme--catppuccin-macchiato .pagination-ellipsis{font-size:1em;justify-content:center;margin:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}html.theme--catppuccin-macchiato .pagination-previous,html.theme--catppuccin-macchiato .pagination-next,html.theme--catppuccin-macchiato .pagination-link{border-color:#5b6078;color:#8aadf4;min-width:2.5em}html.theme--catppuccin-macchiato .pagination-previous:hover,html.theme--catppuccin-macchiato .pagination-next:hover,html.theme--catppuccin-macchiato .pagination-link:hover{border-color:#6e738d;color:#91d7e3}html.theme--catppuccin-macchiato .pagination-previous:focus,html.theme--catppuccin-macchiato .pagination-next:focus,html.theme--catppuccin-macchiato .pagination-link:focus{border-color:#6e738d}html.theme--catppuccin-macchiato .pagination-previous:active,html.theme--catppuccin-macchiato .pagination-next:active,html.theme--catppuccin-macchiato .pagination-link:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2)}html.theme--catppuccin-macchiato .pagination-previous[disabled],html.theme--catppuccin-macchiato .pagination-previous.is-disabled,html.theme--catppuccin-macchiato .pagination-next[disabled],html.theme--catppuccin-macchiato .pagination-next.is-disabled,html.theme--catppuccin-macchiato .pagination-link[disabled],html.theme--catppuccin-macchiato .pagination-link.is-disabled{background-color:#5b6078;border-color:#5b6078;box-shadow:none;color:#f5f7fd;opacity:0.5}html.theme--catppuccin-macchiato .pagination-previous,html.theme--catppuccin-macchiato .pagination-next{padding-left:.75em;padding-right:.75em;white-space:nowrap}html.theme--catppuccin-macchiato .pagination-link.is-current{background-color:#8aadf4;border-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .pagination-ellipsis{color:#6e738d;pointer-events:none}html.theme--catppuccin-macchiato .pagination-list{flex-wrap:wrap}html.theme--catppuccin-macchiato .pagination-list li{list-style:none}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .pagination{flex-wrap:wrap}html.theme--catppuccin-macchiato .pagination-previous,html.theme--catppuccin-macchiato .pagination-next{flex-grow:1;flex-shrink:1}html.theme--catppuccin-macchiato .pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}html.theme--catppuccin-macchiato .pagination-previous,html.theme--catppuccin-macchiato .pagination-next,html.theme--catppuccin-macchiato .pagination-link,html.theme--catppuccin-macchiato .pagination-ellipsis{margin-bottom:0;margin-top:0}html.theme--catppuccin-macchiato .pagination-previous{order:2}html.theme--catppuccin-macchiato .pagination-next{order:3}html.theme--catppuccin-macchiato .pagination{justify-content:space-between;margin-bottom:0;margin-top:0}html.theme--catppuccin-macchiato .pagination.is-centered .pagination-previous{order:1}html.theme--catppuccin-macchiato .pagination.is-centered .pagination-list{justify-content:center;order:2}html.theme--catppuccin-macchiato .pagination.is-centered .pagination-next{order:3}html.theme--catppuccin-macchiato .pagination.is-right .pagination-previous{order:1}html.theme--catppuccin-macchiato .pagination.is-right .pagination-next{order:2}html.theme--catppuccin-macchiato .pagination.is-right .pagination-list{justify-content:flex-end;order:3}}html.theme--catppuccin-macchiato .panel{border-radius:8px;box-shadow:#171717;font-size:1rem}html.theme--catppuccin-macchiato .panel:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-macchiato .panel.is-white .panel-heading{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .panel.is-white .panel-tabs a.is-active{border-bottom-color:#fff}html.theme--catppuccin-macchiato .panel.is-white .panel-block.is-active .panel-icon{color:#fff}html.theme--catppuccin-macchiato .panel.is-black .panel-heading{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .panel.is-black .panel-tabs a.is-active{border-bottom-color:#0a0a0a}html.theme--catppuccin-macchiato .panel.is-black .panel-block.is-active .panel-icon{color:#0a0a0a}html.theme--catppuccin-macchiato .panel.is-light .panel-heading{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .panel.is-light .panel-tabs a.is-active{border-bottom-color:#f5f5f5}html.theme--catppuccin-macchiato .panel.is-light .panel-block.is-active .panel-icon{color:#f5f5f5}html.theme--catppuccin-macchiato .panel.is-dark .panel-heading,html.theme--catppuccin-macchiato .content kbd.panel .panel-heading{background-color:#363a4f;color:#fff}html.theme--catppuccin-macchiato .panel.is-dark .panel-tabs a.is-active,html.theme--catppuccin-macchiato .content kbd.panel .panel-tabs a.is-active{border-bottom-color:#363a4f}html.theme--catppuccin-macchiato .panel.is-dark .panel-block.is-active .panel-icon,html.theme--catppuccin-macchiato .content kbd.panel .panel-block.is-active .panel-icon{color:#363a4f}html.theme--catppuccin-macchiato .panel.is-primary .panel-heading,html.theme--catppuccin-macchiato .docstring>section>a.panel.docs-sourcelink .panel-heading{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .panel.is-primary .panel-tabs a.is-active,html.theme--catppuccin-macchiato .docstring>section>a.panel.docs-sourcelink .panel-tabs a.is-active{border-bottom-color:#8aadf4}html.theme--catppuccin-macchiato .panel.is-primary .panel-block.is-active .panel-icon,html.theme--catppuccin-macchiato .docstring>section>a.panel.docs-sourcelink .panel-block.is-active .panel-icon{color:#8aadf4}html.theme--catppuccin-macchiato .panel.is-link .panel-heading{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .panel.is-link .panel-tabs a.is-active{border-bottom-color:#8aadf4}html.theme--catppuccin-macchiato .panel.is-link .panel-block.is-active .panel-icon{color:#8aadf4}html.theme--catppuccin-macchiato .panel.is-info .panel-heading{background-color:#8bd5ca;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .panel.is-info .panel-tabs a.is-active{border-bottom-color:#8bd5ca}html.theme--catppuccin-macchiato .panel.is-info .panel-block.is-active .panel-icon{color:#8bd5ca}html.theme--catppuccin-macchiato .panel.is-success .panel-heading{background-color:#a6da95;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .panel.is-success .panel-tabs a.is-active{border-bottom-color:#a6da95}html.theme--catppuccin-macchiato .panel.is-success .panel-block.is-active .panel-icon{color:#a6da95}html.theme--catppuccin-macchiato .panel.is-warning .panel-heading{background-color:#eed49f;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .panel.is-warning .panel-tabs a.is-active{border-bottom-color:#eed49f}html.theme--catppuccin-macchiato .panel.is-warning .panel-block.is-active .panel-icon{color:#eed49f}html.theme--catppuccin-macchiato .panel.is-danger .panel-heading{background-color:#ed8796;color:#fff}html.theme--catppuccin-macchiato .panel.is-danger .panel-tabs a.is-active{border-bottom-color:#ed8796}html.theme--catppuccin-macchiato .panel.is-danger .panel-block.is-active .panel-icon{color:#ed8796}html.theme--catppuccin-macchiato .panel-tabs:not(:last-child),html.theme--catppuccin-macchiato .panel-block:not(:last-child){border-bottom:1px solid #ededed}html.theme--catppuccin-macchiato .panel-heading{background-color:#494d64;border-radius:8px 8px 0 0;color:#b5c1f1;font-size:1.25em;font-weight:700;line-height:1.25;padding:0.75em 1em}html.theme--catppuccin-macchiato .panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}html.theme--catppuccin-macchiato .panel-tabs a{border-bottom:1px solid #5b6078;margin-bottom:-1px;padding:0.5em}html.theme--catppuccin-macchiato .panel-tabs a.is-active{border-bottom-color:#494d64;color:#739df2}html.theme--catppuccin-macchiato .panel-list a{color:#cad3f5}html.theme--catppuccin-macchiato .panel-list a:hover{color:#8aadf4}html.theme--catppuccin-macchiato .panel-block{align-items:center;color:#b5c1f1;display:flex;justify-content:flex-start;padding:0.5em 0.75em}html.theme--catppuccin-macchiato .panel-block input[type="checkbox"]{margin-right:.75em}html.theme--catppuccin-macchiato .panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}html.theme--catppuccin-macchiato .panel-block.is-wrapped{flex-wrap:wrap}html.theme--catppuccin-macchiato .panel-block.is-active{border-left-color:#8aadf4;color:#739df2}html.theme--catppuccin-macchiato .panel-block.is-active .panel-icon{color:#8aadf4}html.theme--catppuccin-macchiato .panel-block:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}html.theme--catppuccin-macchiato a.panel-block,html.theme--catppuccin-macchiato label.panel-block{cursor:pointer}html.theme--catppuccin-macchiato a.panel-block:hover,html.theme--catppuccin-macchiato label.panel-block:hover{background-color:#1e2030}html.theme--catppuccin-macchiato .panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#f5f7fd;margin-right:.75em}html.theme--catppuccin-macchiato .panel-icon .fa{font-size:inherit;line-height:inherit}html.theme--catppuccin-macchiato .tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:1rem;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}html.theme--catppuccin-macchiato .tabs a{align-items:center;border-bottom-color:#5b6078;border-bottom-style:solid;border-bottom-width:1px;color:#cad3f5;display:flex;justify-content:center;margin-bottom:-1px;padding:0.5em 1em;vertical-align:top}html.theme--catppuccin-macchiato .tabs a:hover{border-bottom-color:#b5c1f1;color:#b5c1f1}html.theme--catppuccin-macchiato .tabs li{display:block}html.theme--catppuccin-macchiato .tabs li.is-active a{border-bottom-color:#8aadf4;color:#8aadf4}html.theme--catppuccin-macchiato .tabs ul{align-items:center;border-bottom-color:#5b6078;border-bottom-style:solid;border-bottom-width:1px;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}html.theme--catppuccin-macchiato .tabs ul.is-left{padding-right:0.75em}html.theme--catppuccin-macchiato .tabs ul.is-center{flex:none;justify-content:center;padding-left:0.75em;padding-right:0.75em}html.theme--catppuccin-macchiato .tabs ul.is-right{justify-content:flex-end;padding-left:0.75em}html.theme--catppuccin-macchiato .tabs .icon:first-child{margin-right:.5em}html.theme--catppuccin-macchiato .tabs .icon:last-child{margin-left:.5em}html.theme--catppuccin-macchiato .tabs.is-centered ul{justify-content:center}html.theme--catppuccin-macchiato .tabs.is-right ul{justify-content:flex-end}html.theme--catppuccin-macchiato .tabs.is-boxed a{border:1px solid transparent;border-radius:.4em .4em 0 0}html.theme--catppuccin-macchiato .tabs.is-boxed a:hover{background-color:#1e2030;border-bottom-color:#5b6078}html.theme--catppuccin-macchiato .tabs.is-boxed li.is-active a{background-color:#fff;border-color:#5b6078;border-bottom-color:rgba(0,0,0,0) !important}html.theme--catppuccin-macchiato .tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}html.theme--catppuccin-macchiato .tabs.is-toggle a{border-color:#5b6078;border-style:solid;border-width:1px;margin-bottom:0;position:relative}html.theme--catppuccin-macchiato .tabs.is-toggle a:hover{background-color:#1e2030;border-color:#6e738d;z-index:2}html.theme--catppuccin-macchiato .tabs.is-toggle li+li{margin-left:-1px}html.theme--catppuccin-macchiato .tabs.is-toggle li:first-child a{border-top-left-radius:.4em;border-bottom-left-radius:.4em}html.theme--catppuccin-macchiato .tabs.is-toggle li:last-child a{border-top-right-radius:.4em;border-bottom-right-radius:.4em}html.theme--catppuccin-macchiato .tabs.is-toggle li.is-active a{background-color:#8aadf4;border-color:#8aadf4;color:#fff;z-index:1}html.theme--catppuccin-macchiato .tabs.is-toggle ul{border-bottom:none}html.theme--catppuccin-macchiato .tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:9999px;border-top-left-radius:9999px;padding-left:1.25em}html.theme--catppuccin-macchiato .tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:9999px;border-top-right-radius:9999px;padding-right:1.25em}html.theme--catppuccin-macchiato .tabs.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.tabs{font-size:.75rem}html.theme--catppuccin-macchiato .tabs.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .tabs.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-narrow{flex:none;width:unset}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-full{flex:none;width:100%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-half{flex:none;width:50%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-half{margin-left:50%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-0{flex:none;width:0%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-0{margin-left:0%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-1{flex:none;width:8.33333337%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-1{margin-left:8.33333337%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-2{flex:none;width:16.66666674%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-2{margin-left:16.66666674%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-3{flex:none;width:25%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-3{margin-left:25%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-4{flex:none;width:33.33333337%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-4{margin-left:33.33333337%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-5{flex:none;width:41.66666674%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-5{margin-left:41.66666674%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-6{flex:none;width:50%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-6{margin-left:50%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-7{flex:none;width:58.33333337%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-7{margin-left:58.33333337%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-8{flex:none;width:66.66666674%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-8{margin-left:66.66666674%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-9{flex:none;width:75%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-9{margin-left:75%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-10{flex:none;width:83.33333337%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-10{margin-left:83.33333337%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-11{flex:none;width:91.66666674%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-11{margin-left:91.66666674%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-12{flex:none;width:100%}.columns.is-mobile>html.theme--catppuccin-macchiato .column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .column.is-narrow-mobile{flex:none;width:unset}html.theme--catppuccin-macchiato .column.is-full-mobile{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-three-quarters-mobile{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-two-thirds-mobile{flex:none;width:66.6666%}html.theme--catppuccin-macchiato .column.is-half-mobile{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-one-third-mobile{flex:none;width:33.3333%}html.theme--catppuccin-macchiato .column.is-one-quarter-mobile{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-one-fifth-mobile{flex:none;width:20%}html.theme--catppuccin-macchiato .column.is-two-fifths-mobile{flex:none;width:40%}html.theme--catppuccin-macchiato .column.is-three-fifths-mobile{flex:none;width:60%}html.theme--catppuccin-macchiato .column.is-four-fifths-mobile{flex:none;width:80%}html.theme--catppuccin-macchiato .column.is-offset-three-quarters-mobile{margin-left:75%}html.theme--catppuccin-macchiato .column.is-offset-two-thirds-mobile{margin-left:66.6666%}html.theme--catppuccin-macchiato .column.is-offset-half-mobile{margin-left:50%}html.theme--catppuccin-macchiato .column.is-offset-one-third-mobile{margin-left:33.3333%}html.theme--catppuccin-macchiato .column.is-offset-one-quarter-mobile{margin-left:25%}html.theme--catppuccin-macchiato .column.is-offset-one-fifth-mobile{margin-left:20%}html.theme--catppuccin-macchiato .column.is-offset-two-fifths-mobile{margin-left:40%}html.theme--catppuccin-macchiato .column.is-offset-three-fifths-mobile{margin-left:60%}html.theme--catppuccin-macchiato .column.is-offset-four-fifths-mobile{margin-left:80%}html.theme--catppuccin-macchiato .column.is-0-mobile{flex:none;width:0%}html.theme--catppuccin-macchiato .column.is-offset-0-mobile{margin-left:0%}html.theme--catppuccin-macchiato .column.is-1-mobile{flex:none;width:8.33333337%}html.theme--catppuccin-macchiato .column.is-offset-1-mobile{margin-left:8.33333337%}html.theme--catppuccin-macchiato .column.is-2-mobile{flex:none;width:16.66666674%}html.theme--catppuccin-macchiato .column.is-offset-2-mobile{margin-left:16.66666674%}html.theme--catppuccin-macchiato .column.is-3-mobile{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-offset-3-mobile{margin-left:25%}html.theme--catppuccin-macchiato .column.is-4-mobile{flex:none;width:33.33333337%}html.theme--catppuccin-macchiato .column.is-offset-4-mobile{margin-left:33.33333337%}html.theme--catppuccin-macchiato .column.is-5-mobile{flex:none;width:41.66666674%}html.theme--catppuccin-macchiato .column.is-offset-5-mobile{margin-left:41.66666674%}html.theme--catppuccin-macchiato .column.is-6-mobile{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-offset-6-mobile{margin-left:50%}html.theme--catppuccin-macchiato .column.is-7-mobile{flex:none;width:58.33333337%}html.theme--catppuccin-macchiato .column.is-offset-7-mobile{margin-left:58.33333337%}html.theme--catppuccin-macchiato .column.is-8-mobile{flex:none;width:66.66666674%}html.theme--catppuccin-macchiato .column.is-offset-8-mobile{margin-left:66.66666674%}html.theme--catppuccin-macchiato .column.is-9-mobile{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-offset-9-mobile{margin-left:75%}html.theme--catppuccin-macchiato .column.is-10-mobile{flex:none;width:83.33333337%}html.theme--catppuccin-macchiato .column.is-offset-10-mobile{margin-left:83.33333337%}html.theme--catppuccin-macchiato .column.is-11-mobile{flex:none;width:91.66666674%}html.theme--catppuccin-macchiato .column.is-offset-11-mobile{margin-left:91.66666674%}html.theme--catppuccin-macchiato .column.is-12-mobile{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .column.is-narrow,html.theme--catppuccin-macchiato .column.is-narrow-tablet{flex:none;width:unset}html.theme--catppuccin-macchiato .column.is-full,html.theme--catppuccin-macchiato .column.is-full-tablet{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-three-quarters,html.theme--catppuccin-macchiato .column.is-three-quarters-tablet{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-two-thirds,html.theme--catppuccin-macchiato .column.is-two-thirds-tablet{flex:none;width:66.6666%}html.theme--catppuccin-macchiato .column.is-half,html.theme--catppuccin-macchiato .column.is-half-tablet{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-one-third,html.theme--catppuccin-macchiato .column.is-one-third-tablet{flex:none;width:33.3333%}html.theme--catppuccin-macchiato .column.is-one-quarter,html.theme--catppuccin-macchiato .column.is-one-quarter-tablet{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-one-fifth,html.theme--catppuccin-macchiato .column.is-one-fifth-tablet{flex:none;width:20%}html.theme--catppuccin-macchiato .column.is-two-fifths,html.theme--catppuccin-macchiato .column.is-two-fifths-tablet{flex:none;width:40%}html.theme--catppuccin-macchiato .column.is-three-fifths,html.theme--catppuccin-macchiato .column.is-three-fifths-tablet{flex:none;width:60%}html.theme--catppuccin-macchiato .column.is-four-fifths,html.theme--catppuccin-macchiato .column.is-four-fifths-tablet{flex:none;width:80%}html.theme--catppuccin-macchiato .column.is-offset-three-quarters,html.theme--catppuccin-macchiato .column.is-offset-three-quarters-tablet{margin-left:75%}html.theme--catppuccin-macchiato .column.is-offset-two-thirds,html.theme--catppuccin-macchiato .column.is-offset-two-thirds-tablet{margin-left:66.6666%}html.theme--catppuccin-macchiato .column.is-offset-half,html.theme--catppuccin-macchiato .column.is-offset-half-tablet{margin-left:50%}html.theme--catppuccin-macchiato .column.is-offset-one-third,html.theme--catppuccin-macchiato .column.is-offset-one-third-tablet{margin-left:33.3333%}html.theme--catppuccin-macchiato .column.is-offset-one-quarter,html.theme--catppuccin-macchiato .column.is-offset-one-quarter-tablet{margin-left:25%}html.theme--catppuccin-macchiato .column.is-offset-one-fifth,html.theme--catppuccin-macchiato .column.is-offset-one-fifth-tablet{margin-left:20%}html.theme--catppuccin-macchiato .column.is-offset-two-fifths,html.theme--catppuccin-macchiato .column.is-offset-two-fifths-tablet{margin-left:40%}html.theme--catppuccin-macchiato .column.is-offset-three-fifths,html.theme--catppuccin-macchiato .column.is-offset-three-fifths-tablet{margin-left:60%}html.theme--catppuccin-macchiato .column.is-offset-four-fifths,html.theme--catppuccin-macchiato .column.is-offset-four-fifths-tablet{margin-left:80%}html.theme--catppuccin-macchiato .column.is-0,html.theme--catppuccin-macchiato .column.is-0-tablet{flex:none;width:0%}html.theme--catppuccin-macchiato .column.is-offset-0,html.theme--catppuccin-macchiato .column.is-offset-0-tablet{margin-left:0%}html.theme--catppuccin-macchiato .column.is-1,html.theme--catppuccin-macchiato .column.is-1-tablet{flex:none;width:8.33333337%}html.theme--catppuccin-macchiato .column.is-offset-1,html.theme--catppuccin-macchiato .column.is-offset-1-tablet{margin-left:8.33333337%}html.theme--catppuccin-macchiato .column.is-2,html.theme--catppuccin-macchiato .column.is-2-tablet{flex:none;width:16.66666674%}html.theme--catppuccin-macchiato .column.is-offset-2,html.theme--catppuccin-macchiato .column.is-offset-2-tablet{margin-left:16.66666674%}html.theme--catppuccin-macchiato .column.is-3,html.theme--catppuccin-macchiato .column.is-3-tablet{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-offset-3,html.theme--catppuccin-macchiato .column.is-offset-3-tablet{margin-left:25%}html.theme--catppuccin-macchiato .column.is-4,html.theme--catppuccin-macchiato .column.is-4-tablet{flex:none;width:33.33333337%}html.theme--catppuccin-macchiato .column.is-offset-4,html.theme--catppuccin-macchiato .column.is-offset-4-tablet{margin-left:33.33333337%}html.theme--catppuccin-macchiato .column.is-5,html.theme--catppuccin-macchiato .column.is-5-tablet{flex:none;width:41.66666674%}html.theme--catppuccin-macchiato .column.is-offset-5,html.theme--catppuccin-macchiato .column.is-offset-5-tablet{margin-left:41.66666674%}html.theme--catppuccin-macchiato .column.is-6,html.theme--catppuccin-macchiato .column.is-6-tablet{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-offset-6,html.theme--catppuccin-macchiato .column.is-offset-6-tablet{margin-left:50%}html.theme--catppuccin-macchiato .column.is-7,html.theme--catppuccin-macchiato .column.is-7-tablet{flex:none;width:58.33333337%}html.theme--catppuccin-macchiato .column.is-offset-7,html.theme--catppuccin-macchiato .column.is-offset-7-tablet{margin-left:58.33333337%}html.theme--catppuccin-macchiato .column.is-8,html.theme--catppuccin-macchiato .column.is-8-tablet{flex:none;width:66.66666674%}html.theme--catppuccin-macchiato .column.is-offset-8,html.theme--catppuccin-macchiato .column.is-offset-8-tablet{margin-left:66.66666674%}html.theme--catppuccin-macchiato .column.is-9,html.theme--catppuccin-macchiato .column.is-9-tablet{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-offset-9,html.theme--catppuccin-macchiato .column.is-offset-9-tablet{margin-left:75%}html.theme--catppuccin-macchiato .column.is-10,html.theme--catppuccin-macchiato .column.is-10-tablet{flex:none;width:83.33333337%}html.theme--catppuccin-macchiato .column.is-offset-10,html.theme--catppuccin-macchiato .column.is-offset-10-tablet{margin-left:83.33333337%}html.theme--catppuccin-macchiato .column.is-11,html.theme--catppuccin-macchiato .column.is-11-tablet{flex:none;width:91.66666674%}html.theme--catppuccin-macchiato .column.is-offset-11,html.theme--catppuccin-macchiato .column.is-offset-11-tablet{margin-left:91.66666674%}html.theme--catppuccin-macchiato .column.is-12,html.theme--catppuccin-macchiato .column.is-12-tablet{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-offset-12,html.theme--catppuccin-macchiato .column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .column.is-narrow-touch{flex:none;width:unset}html.theme--catppuccin-macchiato .column.is-full-touch{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-three-quarters-touch{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-two-thirds-touch{flex:none;width:66.6666%}html.theme--catppuccin-macchiato .column.is-half-touch{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-one-third-touch{flex:none;width:33.3333%}html.theme--catppuccin-macchiato .column.is-one-quarter-touch{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-one-fifth-touch{flex:none;width:20%}html.theme--catppuccin-macchiato .column.is-two-fifths-touch{flex:none;width:40%}html.theme--catppuccin-macchiato .column.is-three-fifths-touch{flex:none;width:60%}html.theme--catppuccin-macchiato .column.is-four-fifths-touch{flex:none;width:80%}html.theme--catppuccin-macchiato .column.is-offset-three-quarters-touch{margin-left:75%}html.theme--catppuccin-macchiato .column.is-offset-two-thirds-touch{margin-left:66.6666%}html.theme--catppuccin-macchiato .column.is-offset-half-touch{margin-left:50%}html.theme--catppuccin-macchiato .column.is-offset-one-third-touch{margin-left:33.3333%}html.theme--catppuccin-macchiato .column.is-offset-one-quarter-touch{margin-left:25%}html.theme--catppuccin-macchiato .column.is-offset-one-fifth-touch{margin-left:20%}html.theme--catppuccin-macchiato .column.is-offset-two-fifths-touch{margin-left:40%}html.theme--catppuccin-macchiato .column.is-offset-three-fifths-touch{margin-left:60%}html.theme--catppuccin-macchiato .column.is-offset-four-fifths-touch{margin-left:80%}html.theme--catppuccin-macchiato .column.is-0-touch{flex:none;width:0%}html.theme--catppuccin-macchiato .column.is-offset-0-touch{margin-left:0%}html.theme--catppuccin-macchiato .column.is-1-touch{flex:none;width:8.33333337%}html.theme--catppuccin-macchiato .column.is-offset-1-touch{margin-left:8.33333337%}html.theme--catppuccin-macchiato .column.is-2-touch{flex:none;width:16.66666674%}html.theme--catppuccin-macchiato .column.is-offset-2-touch{margin-left:16.66666674%}html.theme--catppuccin-macchiato .column.is-3-touch{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-offset-3-touch{margin-left:25%}html.theme--catppuccin-macchiato .column.is-4-touch{flex:none;width:33.33333337%}html.theme--catppuccin-macchiato .column.is-offset-4-touch{margin-left:33.33333337%}html.theme--catppuccin-macchiato .column.is-5-touch{flex:none;width:41.66666674%}html.theme--catppuccin-macchiato .column.is-offset-5-touch{margin-left:41.66666674%}html.theme--catppuccin-macchiato .column.is-6-touch{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-offset-6-touch{margin-left:50%}html.theme--catppuccin-macchiato .column.is-7-touch{flex:none;width:58.33333337%}html.theme--catppuccin-macchiato .column.is-offset-7-touch{margin-left:58.33333337%}html.theme--catppuccin-macchiato .column.is-8-touch{flex:none;width:66.66666674%}html.theme--catppuccin-macchiato .column.is-offset-8-touch{margin-left:66.66666674%}html.theme--catppuccin-macchiato .column.is-9-touch{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-offset-9-touch{margin-left:75%}html.theme--catppuccin-macchiato .column.is-10-touch{flex:none;width:83.33333337%}html.theme--catppuccin-macchiato .column.is-offset-10-touch{margin-left:83.33333337%}html.theme--catppuccin-macchiato .column.is-11-touch{flex:none;width:91.66666674%}html.theme--catppuccin-macchiato .column.is-offset-11-touch{margin-left:91.66666674%}html.theme--catppuccin-macchiato .column.is-12-touch{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .column.is-narrow-desktop{flex:none;width:unset}html.theme--catppuccin-macchiato .column.is-full-desktop{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-three-quarters-desktop{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-two-thirds-desktop{flex:none;width:66.6666%}html.theme--catppuccin-macchiato .column.is-half-desktop{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-one-third-desktop{flex:none;width:33.3333%}html.theme--catppuccin-macchiato .column.is-one-quarter-desktop{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-one-fifth-desktop{flex:none;width:20%}html.theme--catppuccin-macchiato .column.is-two-fifths-desktop{flex:none;width:40%}html.theme--catppuccin-macchiato .column.is-three-fifths-desktop{flex:none;width:60%}html.theme--catppuccin-macchiato .column.is-four-fifths-desktop{flex:none;width:80%}html.theme--catppuccin-macchiato .column.is-offset-three-quarters-desktop{margin-left:75%}html.theme--catppuccin-macchiato .column.is-offset-two-thirds-desktop{margin-left:66.6666%}html.theme--catppuccin-macchiato .column.is-offset-half-desktop{margin-left:50%}html.theme--catppuccin-macchiato .column.is-offset-one-third-desktop{margin-left:33.3333%}html.theme--catppuccin-macchiato .column.is-offset-one-quarter-desktop{margin-left:25%}html.theme--catppuccin-macchiato .column.is-offset-one-fifth-desktop{margin-left:20%}html.theme--catppuccin-macchiato .column.is-offset-two-fifths-desktop{margin-left:40%}html.theme--catppuccin-macchiato .column.is-offset-three-fifths-desktop{margin-left:60%}html.theme--catppuccin-macchiato .column.is-offset-four-fifths-desktop{margin-left:80%}html.theme--catppuccin-macchiato .column.is-0-desktop{flex:none;width:0%}html.theme--catppuccin-macchiato .column.is-offset-0-desktop{margin-left:0%}html.theme--catppuccin-macchiato .column.is-1-desktop{flex:none;width:8.33333337%}html.theme--catppuccin-macchiato .column.is-offset-1-desktop{margin-left:8.33333337%}html.theme--catppuccin-macchiato .column.is-2-desktop{flex:none;width:16.66666674%}html.theme--catppuccin-macchiato .column.is-offset-2-desktop{margin-left:16.66666674%}html.theme--catppuccin-macchiato .column.is-3-desktop{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-offset-3-desktop{margin-left:25%}html.theme--catppuccin-macchiato .column.is-4-desktop{flex:none;width:33.33333337%}html.theme--catppuccin-macchiato .column.is-offset-4-desktop{margin-left:33.33333337%}html.theme--catppuccin-macchiato .column.is-5-desktop{flex:none;width:41.66666674%}html.theme--catppuccin-macchiato .column.is-offset-5-desktop{margin-left:41.66666674%}html.theme--catppuccin-macchiato .column.is-6-desktop{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-offset-6-desktop{margin-left:50%}html.theme--catppuccin-macchiato .column.is-7-desktop{flex:none;width:58.33333337%}html.theme--catppuccin-macchiato .column.is-offset-7-desktop{margin-left:58.33333337%}html.theme--catppuccin-macchiato .column.is-8-desktop{flex:none;width:66.66666674%}html.theme--catppuccin-macchiato .column.is-offset-8-desktop{margin-left:66.66666674%}html.theme--catppuccin-macchiato .column.is-9-desktop{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-offset-9-desktop{margin-left:75%}html.theme--catppuccin-macchiato .column.is-10-desktop{flex:none;width:83.33333337%}html.theme--catppuccin-macchiato .column.is-offset-10-desktop{margin-left:83.33333337%}html.theme--catppuccin-macchiato .column.is-11-desktop{flex:none;width:91.66666674%}html.theme--catppuccin-macchiato .column.is-offset-11-desktop{margin-left:91.66666674%}html.theme--catppuccin-macchiato .column.is-12-desktop{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .column.is-narrow-widescreen{flex:none;width:unset}html.theme--catppuccin-macchiato .column.is-full-widescreen{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-three-quarters-widescreen{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-two-thirds-widescreen{flex:none;width:66.6666%}html.theme--catppuccin-macchiato .column.is-half-widescreen{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-one-third-widescreen{flex:none;width:33.3333%}html.theme--catppuccin-macchiato .column.is-one-quarter-widescreen{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-one-fifth-widescreen{flex:none;width:20%}html.theme--catppuccin-macchiato .column.is-two-fifths-widescreen{flex:none;width:40%}html.theme--catppuccin-macchiato .column.is-three-fifths-widescreen{flex:none;width:60%}html.theme--catppuccin-macchiato .column.is-four-fifths-widescreen{flex:none;width:80%}html.theme--catppuccin-macchiato .column.is-offset-three-quarters-widescreen{margin-left:75%}html.theme--catppuccin-macchiato .column.is-offset-two-thirds-widescreen{margin-left:66.6666%}html.theme--catppuccin-macchiato .column.is-offset-half-widescreen{margin-left:50%}html.theme--catppuccin-macchiato .column.is-offset-one-third-widescreen{margin-left:33.3333%}html.theme--catppuccin-macchiato .column.is-offset-one-quarter-widescreen{margin-left:25%}html.theme--catppuccin-macchiato .column.is-offset-one-fifth-widescreen{margin-left:20%}html.theme--catppuccin-macchiato .column.is-offset-two-fifths-widescreen{margin-left:40%}html.theme--catppuccin-macchiato .column.is-offset-three-fifths-widescreen{margin-left:60%}html.theme--catppuccin-macchiato .column.is-offset-four-fifths-widescreen{margin-left:80%}html.theme--catppuccin-macchiato .column.is-0-widescreen{flex:none;width:0%}html.theme--catppuccin-macchiato .column.is-offset-0-widescreen{margin-left:0%}html.theme--catppuccin-macchiato .column.is-1-widescreen{flex:none;width:8.33333337%}html.theme--catppuccin-macchiato .column.is-offset-1-widescreen{margin-left:8.33333337%}html.theme--catppuccin-macchiato .column.is-2-widescreen{flex:none;width:16.66666674%}html.theme--catppuccin-macchiato .column.is-offset-2-widescreen{margin-left:16.66666674%}html.theme--catppuccin-macchiato .column.is-3-widescreen{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-offset-3-widescreen{margin-left:25%}html.theme--catppuccin-macchiato .column.is-4-widescreen{flex:none;width:33.33333337%}html.theme--catppuccin-macchiato .column.is-offset-4-widescreen{margin-left:33.33333337%}html.theme--catppuccin-macchiato .column.is-5-widescreen{flex:none;width:41.66666674%}html.theme--catppuccin-macchiato .column.is-offset-5-widescreen{margin-left:41.66666674%}html.theme--catppuccin-macchiato .column.is-6-widescreen{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-offset-6-widescreen{margin-left:50%}html.theme--catppuccin-macchiato .column.is-7-widescreen{flex:none;width:58.33333337%}html.theme--catppuccin-macchiato .column.is-offset-7-widescreen{margin-left:58.33333337%}html.theme--catppuccin-macchiato .column.is-8-widescreen{flex:none;width:66.66666674%}html.theme--catppuccin-macchiato .column.is-offset-8-widescreen{margin-left:66.66666674%}html.theme--catppuccin-macchiato .column.is-9-widescreen{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-offset-9-widescreen{margin-left:75%}html.theme--catppuccin-macchiato .column.is-10-widescreen{flex:none;width:83.33333337%}html.theme--catppuccin-macchiato .column.is-offset-10-widescreen{margin-left:83.33333337%}html.theme--catppuccin-macchiato .column.is-11-widescreen{flex:none;width:91.66666674%}html.theme--catppuccin-macchiato .column.is-offset-11-widescreen{margin-left:91.66666674%}html.theme--catppuccin-macchiato .column.is-12-widescreen{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .column.is-narrow-fullhd{flex:none;width:unset}html.theme--catppuccin-macchiato .column.is-full-fullhd{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-three-quarters-fullhd{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-two-thirds-fullhd{flex:none;width:66.6666%}html.theme--catppuccin-macchiato .column.is-half-fullhd{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-one-third-fullhd{flex:none;width:33.3333%}html.theme--catppuccin-macchiato .column.is-one-quarter-fullhd{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-one-fifth-fullhd{flex:none;width:20%}html.theme--catppuccin-macchiato .column.is-two-fifths-fullhd{flex:none;width:40%}html.theme--catppuccin-macchiato .column.is-three-fifths-fullhd{flex:none;width:60%}html.theme--catppuccin-macchiato .column.is-four-fifths-fullhd{flex:none;width:80%}html.theme--catppuccin-macchiato .column.is-offset-three-quarters-fullhd{margin-left:75%}html.theme--catppuccin-macchiato .column.is-offset-two-thirds-fullhd{margin-left:66.6666%}html.theme--catppuccin-macchiato .column.is-offset-half-fullhd{margin-left:50%}html.theme--catppuccin-macchiato .column.is-offset-one-third-fullhd{margin-left:33.3333%}html.theme--catppuccin-macchiato .column.is-offset-one-quarter-fullhd{margin-left:25%}html.theme--catppuccin-macchiato .column.is-offset-one-fifth-fullhd{margin-left:20%}html.theme--catppuccin-macchiato .column.is-offset-two-fifths-fullhd{margin-left:40%}html.theme--catppuccin-macchiato .column.is-offset-three-fifths-fullhd{margin-left:60%}html.theme--catppuccin-macchiato .column.is-offset-four-fifths-fullhd{margin-left:80%}html.theme--catppuccin-macchiato .column.is-0-fullhd{flex:none;width:0%}html.theme--catppuccin-macchiato .column.is-offset-0-fullhd{margin-left:0%}html.theme--catppuccin-macchiato .column.is-1-fullhd{flex:none;width:8.33333337%}html.theme--catppuccin-macchiato .column.is-offset-1-fullhd{margin-left:8.33333337%}html.theme--catppuccin-macchiato .column.is-2-fullhd{flex:none;width:16.66666674%}html.theme--catppuccin-macchiato .column.is-offset-2-fullhd{margin-left:16.66666674%}html.theme--catppuccin-macchiato .column.is-3-fullhd{flex:none;width:25%}html.theme--catppuccin-macchiato .column.is-offset-3-fullhd{margin-left:25%}html.theme--catppuccin-macchiato .column.is-4-fullhd{flex:none;width:33.33333337%}html.theme--catppuccin-macchiato .column.is-offset-4-fullhd{margin-left:33.33333337%}html.theme--catppuccin-macchiato .column.is-5-fullhd{flex:none;width:41.66666674%}html.theme--catppuccin-macchiato .column.is-offset-5-fullhd{margin-left:41.66666674%}html.theme--catppuccin-macchiato .column.is-6-fullhd{flex:none;width:50%}html.theme--catppuccin-macchiato .column.is-offset-6-fullhd{margin-left:50%}html.theme--catppuccin-macchiato .column.is-7-fullhd{flex:none;width:58.33333337%}html.theme--catppuccin-macchiato .column.is-offset-7-fullhd{margin-left:58.33333337%}html.theme--catppuccin-macchiato .column.is-8-fullhd{flex:none;width:66.66666674%}html.theme--catppuccin-macchiato .column.is-offset-8-fullhd{margin-left:66.66666674%}html.theme--catppuccin-macchiato .column.is-9-fullhd{flex:none;width:75%}html.theme--catppuccin-macchiato .column.is-offset-9-fullhd{margin-left:75%}html.theme--catppuccin-macchiato .column.is-10-fullhd{flex:none;width:83.33333337%}html.theme--catppuccin-macchiato .column.is-offset-10-fullhd{margin-left:83.33333337%}html.theme--catppuccin-macchiato .column.is-11-fullhd{flex:none;width:91.66666674%}html.theme--catppuccin-macchiato .column.is-offset-11-fullhd{margin-left:91.66666674%}html.theme--catppuccin-macchiato .column.is-12-fullhd{flex:none;width:100%}html.theme--catppuccin-macchiato .column.is-offset-12-fullhd{margin-left:100%}}html.theme--catppuccin-macchiato .columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--catppuccin-macchiato .columns:last-child{margin-bottom:-.75rem}html.theme--catppuccin-macchiato .columns:not(:last-child){margin-bottom:calc(1.5rem - .75rem)}html.theme--catppuccin-macchiato .columns.is-centered{justify-content:center}html.theme--catppuccin-macchiato .columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}html.theme--catppuccin-macchiato .columns.is-gapless>.column{margin:0;padding:0 !important}html.theme--catppuccin-macchiato .columns.is-gapless:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-macchiato .columns.is-gapless:last-child{margin-bottom:0}html.theme--catppuccin-macchiato .columns.is-mobile{display:flex}html.theme--catppuccin-macchiato .columns.is-multiline{flex-wrap:wrap}html.theme--catppuccin-macchiato .columns.is-vcentered{align-items:center}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .columns:not(.is-desktop){display:flex}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .columns.is-desktop{display:flex}}html.theme--catppuccin-macchiato .columns.is-variable{--columnGap: 0.75rem;margin-left:calc(-1 * var(--columnGap));margin-right:calc(-1 * var(--columnGap))}html.theme--catppuccin-macchiato .columns.is-variable>.column{padding-left:var(--columnGap);padding-right:var(--columnGap)}html.theme--catppuccin-macchiato .columns.is-variable.is-0{--columnGap: 0rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .columns.is-variable.is-0-mobile{--columnGap: 0rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .columns.is-variable.is-0-tablet{--columnGap: 0rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-0-tablet-only{--columnGap: 0rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-0-touch{--columnGap: 0rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .columns.is-variable.is-0-desktop{--columnGap: 0rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-macchiato .columns.is-variable.is-0-desktop-only{--columnGap: 0rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .columns.is-variable.is-0-widescreen{--columnGap: 0rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-macchiato .columns.is-variable.is-0-widescreen-only{--columnGap: 0rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .columns.is-variable.is-0-fullhd{--columnGap: 0rem}}html.theme--catppuccin-macchiato .columns.is-variable.is-1{--columnGap: .25rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .columns.is-variable.is-1-mobile{--columnGap: .25rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .columns.is-variable.is-1-tablet{--columnGap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-1-tablet-only{--columnGap: .25rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-1-touch{--columnGap: .25rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .columns.is-variable.is-1-desktop{--columnGap: .25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-macchiato .columns.is-variable.is-1-desktop-only{--columnGap: .25rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .columns.is-variable.is-1-widescreen{--columnGap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-macchiato .columns.is-variable.is-1-widescreen-only{--columnGap: .25rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .columns.is-variable.is-1-fullhd{--columnGap: .25rem}}html.theme--catppuccin-macchiato .columns.is-variable.is-2{--columnGap: .5rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .columns.is-variable.is-2-mobile{--columnGap: .5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .columns.is-variable.is-2-tablet{--columnGap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-2-tablet-only{--columnGap: .5rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-2-touch{--columnGap: .5rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .columns.is-variable.is-2-desktop{--columnGap: .5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-macchiato .columns.is-variable.is-2-desktop-only{--columnGap: .5rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .columns.is-variable.is-2-widescreen{--columnGap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-macchiato .columns.is-variable.is-2-widescreen-only{--columnGap: .5rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .columns.is-variable.is-2-fullhd{--columnGap: .5rem}}html.theme--catppuccin-macchiato .columns.is-variable.is-3{--columnGap: .75rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .columns.is-variable.is-3-mobile{--columnGap: .75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .columns.is-variable.is-3-tablet{--columnGap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-3-tablet-only{--columnGap: .75rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-3-touch{--columnGap: .75rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .columns.is-variable.is-3-desktop{--columnGap: .75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-macchiato .columns.is-variable.is-3-desktop-only{--columnGap: .75rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .columns.is-variable.is-3-widescreen{--columnGap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-macchiato .columns.is-variable.is-3-widescreen-only{--columnGap: .75rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .columns.is-variable.is-3-fullhd{--columnGap: .75rem}}html.theme--catppuccin-macchiato .columns.is-variable.is-4{--columnGap: 1rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .columns.is-variable.is-4-mobile{--columnGap: 1rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .columns.is-variable.is-4-tablet{--columnGap: 1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-4-tablet-only{--columnGap: 1rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-4-touch{--columnGap: 1rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .columns.is-variable.is-4-desktop{--columnGap: 1rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-macchiato .columns.is-variable.is-4-desktop-only{--columnGap: 1rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .columns.is-variable.is-4-widescreen{--columnGap: 1rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-macchiato .columns.is-variable.is-4-widescreen-only{--columnGap: 1rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .columns.is-variable.is-4-fullhd{--columnGap: 1rem}}html.theme--catppuccin-macchiato .columns.is-variable.is-5{--columnGap: 1.25rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .columns.is-variable.is-5-mobile{--columnGap: 1.25rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .columns.is-variable.is-5-tablet{--columnGap: 1.25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-5-tablet-only{--columnGap: 1.25rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-5-touch{--columnGap: 1.25rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .columns.is-variable.is-5-desktop{--columnGap: 1.25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-macchiato .columns.is-variable.is-5-desktop-only{--columnGap: 1.25rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .columns.is-variable.is-5-widescreen{--columnGap: 1.25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-macchiato .columns.is-variable.is-5-widescreen-only{--columnGap: 1.25rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .columns.is-variable.is-5-fullhd{--columnGap: 1.25rem}}html.theme--catppuccin-macchiato .columns.is-variable.is-6{--columnGap: 1.5rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .columns.is-variable.is-6-mobile{--columnGap: 1.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .columns.is-variable.is-6-tablet{--columnGap: 1.5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-6-tablet-only{--columnGap: 1.5rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-6-touch{--columnGap: 1.5rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .columns.is-variable.is-6-desktop{--columnGap: 1.5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-macchiato .columns.is-variable.is-6-desktop-only{--columnGap: 1.5rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .columns.is-variable.is-6-widescreen{--columnGap: 1.5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-macchiato .columns.is-variable.is-6-widescreen-only{--columnGap: 1.5rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .columns.is-variable.is-6-fullhd{--columnGap: 1.5rem}}html.theme--catppuccin-macchiato .columns.is-variable.is-7{--columnGap: 1.75rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .columns.is-variable.is-7-mobile{--columnGap: 1.75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .columns.is-variable.is-7-tablet{--columnGap: 1.75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-7-tablet-only{--columnGap: 1.75rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-7-touch{--columnGap: 1.75rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .columns.is-variable.is-7-desktop{--columnGap: 1.75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-macchiato .columns.is-variable.is-7-desktop-only{--columnGap: 1.75rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .columns.is-variable.is-7-widescreen{--columnGap: 1.75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-macchiato .columns.is-variable.is-7-widescreen-only{--columnGap: 1.75rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .columns.is-variable.is-7-fullhd{--columnGap: 1.75rem}}html.theme--catppuccin-macchiato .columns.is-variable.is-8{--columnGap: 2rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .columns.is-variable.is-8-mobile{--columnGap: 2rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .columns.is-variable.is-8-tablet{--columnGap: 2rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-8-tablet-only{--columnGap: 2rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .columns.is-variable.is-8-touch{--columnGap: 2rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .columns.is-variable.is-8-desktop{--columnGap: 2rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-macchiato .columns.is-variable.is-8-desktop-only{--columnGap: 2rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-macchiato .columns.is-variable.is-8-widescreen{--columnGap: 2rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-macchiato .columns.is-variable.is-8-widescreen-only{--columnGap: 2rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-macchiato .columns.is-variable.is-8-fullhd{--columnGap: 2rem}}html.theme--catppuccin-macchiato .tile{align-items:stretch;display:block;flex-basis:0;flex-grow:1;flex-shrink:1;min-height:min-content}html.theme--catppuccin-macchiato .tile.is-ancestor{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--catppuccin-macchiato .tile.is-ancestor:last-child{margin-bottom:-.75rem}html.theme--catppuccin-macchiato .tile.is-ancestor:not(:last-child){margin-bottom:.75rem}html.theme--catppuccin-macchiato .tile.is-child{margin:0 !important}html.theme--catppuccin-macchiato .tile.is-parent{padding:.75rem}html.theme--catppuccin-macchiato .tile.is-vertical{flex-direction:column}html.theme--catppuccin-macchiato .tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem !important}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .tile:not(.is-child){display:flex}html.theme--catppuccin-macchiato .tile.is-1{flex:none;width:8.33333337%}html.theme--catppuccin-macchiato .tile.is-2{flex:none;width:16.66666674%}html.theme--catppuccin-macchiato .tile.is-3{flex:none;width:25%}html.theme--catppuccin-macchiato .tile.is-4{flex:none;width:33.33333337%}html.theme--catppuccin-macchiato .tile.is-5{flex:none;width:41.66666674%}html.theme--catppuccin-macchiato .tile.is-6{flex:none;width:50%}html.theme--catppuccin-macchiato .tile.is-7{flex:none;width:58.33333337%}html.theme--catppuccin-macchiato .tile.is-8{flex:none;width:66.66666674%}html.theme--catppuccin-macchiato .tile.is-9{flex:none;width:75%}html.theme--catppuccin-macchiato .tile.is-10{flex:none;width:83.33333337%}html.theme--catppuccin-macchiato .tile.is-11{flex:none;width:91.66666674%}html.theme--catppuccin-macchiato .tile.is-12{flex:none;width:100%}}html.theme--catppuccin-macchiato .hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}html.theme--catppuccin-macchiato .hero .navbar{background:none}html.theme--catppuccin-macchiato .hero .tabs ul{border-bottom:none}html.theme--catppuccin-macchiato .hero.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .hero.is-white strong{color:inherit}html.theme--catppuccin-macchiato .hero.is-white .title{color:#0a0a0a}html.theme--catppuccin-macchiato .hero.is-white .subtitle{color:rgba(10,10,10,0.9)}html.theme--catppuccin-macchiato .hero.is-white .subtitle a:not(.button),html.theme--catppuccin-macchiato .hero.is-white .subtitle strong{color:#0a0a0a}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .hero.is-white .navbar-menu{background-color:#fff}}html.theme--catppuccin-macchiato .hero.is-white .navbar-item,html.theme--catppuccin-macchiato .hero.is-white .navbar-link{color:rgba(10,10,10,0.7)}html.theme--catppuccin-macchiato .hero.is-white a.navbar-item:hover,html.theme--catppuccin-macchiato .hero.is-white a.navbar-item.is-active,html.theme--catppuccin-macchiato .hero.is-white .navbar-link:hover,html.theme--catppuccin-macchiato .hero.is-white .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-macchiato .hero.is-white .tabs a{color:#0a0a0a;opacity:0.9}html.theme--catppuccin-macchiato .hero.is-white .tabs a:hover{opacity:1}html.theme--catppuccin-macchiato .hero.is-white .tabs li.is-active a{color:#fff !important;opacity:1}html.theme--catppuccin-macchiato .hero.is-white .tabs.is-boxed a,html.theme--catppuccin-macchiato .hero.is-white .tabs.is-toggle a{color:#0a0a0a}html.theme--catppuccin-macchiato .hero.is-white .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .hero.is-white .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .hero.is-white .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .hero.is-white .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-macchiato .hero.is-white .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .hero.is-white .tabs.is-toggle li.is-active a:hover{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .hero.is-white.is-bold{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}}html.theme--catppuccin-macchiato .hero.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-macchiato .hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .hero.is-black strong{color:inherit}html.theme--catppuccin-macchiato .hero.is-black .title{color:#fff}html.theme--catppuccin-macchiato .hero.is-black .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-macchiato .hero.is-black .subtitle a:not(.button),html.theme--catppuccin-macchiato .hero.is-black .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .hero.is-black .navbar-menu{background-color:#0a0a0a}}html.theme--catppuccin-macchiato .hero.is-black .navbar-item,html.theme--catppuccin-macchiato .hero.is-black .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-macchiato .hero.is-black a.navbar-item:hover,html.theme--catppuccin-macchiato .hero.is-black a.navbar-item.is-active,html.theme--catppuccin-macchiato .hero.is-black .navbar-link:hover,html.theme--catppuccin-macchiato .hero.is-black .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-macchiato .hero.is-black .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-macchiato .hero.is-black .tabs a:hover{opacity:1}html.theme--catppuccin-macchiato .hero.is-black .tabs li.is-active a{color:#0a0a0a !important;opacity:1}html.theme--catppuccin-macchiato .hero.is-black .tabs.is-boxed a,html.theme--catppuccin-macchiato .hero.is-black .tabs.is-toggle a{color:#fff}html.theme--catppuccin-macchiato .hero.is-black .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .hero.is-black .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .hero.is-black .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .hero.is-black .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-macchiato .hero.is-black .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .hero.is-black .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-macchiato .hero.is-black.is-bold{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}}html.theme--catppuccin-macchiato .hero.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .hero.is-light strong{color:inherit}html.theme--catppuccin-macchiato .hero.is-light .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-light .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-macchiato .hero.is-light .subtitle a:not(.button),html.theme--catppuccin-macchiato .hero.is-light .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .hero.is-light .navbar-menu{background-color:#f5f5f5}}html.theme--catppuccin-macchiato .hero.is-light .navbar-item,html.theme--catppuccin-macchiato .hero.is-light .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-light a.navbar-item:hover,html.theme--catppuccin-macchiato .hero.is-light a.navbar-item.is-active,html.theme--catppuccin-macchiato .hero.is-light .navbar-link:hover,html.theme--catppuccin-macchiato .hero.is-light .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-light .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-macchiato .hero.is-light .tabs a:hover{opacity:1}html.theme--catppuccin-macchiato .hero.is-light .tabs li.is-active a{color:#f5f5f5 !important;opacity:1}html.theme--catppuccin-macchiato .hero.is-light .tabs.is-boxed a,html.theme--catppuccin-macchiato .hero.is-light .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-light .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .hero.is-light .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .hero.is-light .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-macchiato .hero.is-light .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-macchiato .hero.is-light.is-bold{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}}html.theme--catppuccin-macchiato .hero.is-dark,html.theme--catppuccin-macchiato .content kbd.hero{background-color:#363a4f;color:#fff}html.theme--catppuccin-macchiato .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .hero.is-dark strong,html.theme--catppuccin-macchiato .content kbd.hero strong{color:inherit}html.theme--catppuccin-macchiato .hero.is-dark .title,html.theme--catppuccin-macchiato .content kbd.hero .title{color:#fff}html.theme--catppuccin-macchiato .hero.is-dark .subtitle,html.theme--catppuccin-macchiato .content kbd.hero .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-macchiato .hero.is-dark .subtitle a:not(.button),html.theme--catppuccin-macchiato .content kbd.hero .subtitle a:not(.button),html.theme--catppuccin-macchiato .hero.is-dark .subtitle strong,html.theme--catppuccin-macchiato .content kbd.hero .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .hero.is-dark .navbar-menu,html.theme--catppuccin-macchiato .content kbd.hero .navbar-menu{background-color:#363a4f}}html.theme--catppuccin-macchiato .hero.is-dark .navbar-item,html.theme--catppuccin-macchiato .content kbd.hero .navbar-item,html.theme--catppuccin-macchiato .hero.is-dark .navbar-link,html.theme--catppuccin-macchiato .content kbd.hero .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-macchiato .hero.is-dark a.navbar-item:hover,html.theme--catppuccin-macchiato .content kbd.hero a.navbar-item:hover,html.theme--catppuccin-macchiato .hero.is-dark a.navbar-item.is-active,html.theme--catppuccin-macchiato .content kbd.hero a.navbar-item.is-active,html.theme--catppuccin-macchiato .hero.is-dark .navbar-link:hover,html.theme--catppuccin-macchiato .content kbd.hero .navbar-link:hover,html.theme--catppuccin-macchiato .hero.is-dark .navbar-link.is-active,html.theme--catppuccin-macchiato .content kbd.hero .navbar-link.is-active{background-color:#2c2f40;color:#fff}html.theme--catppuccin-macchiato .hero.is-dark .tabs a,html.theme--catppuccin-macchiato .content kbd.hero .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-macchiato .hero.is-dark .tabs a:hover,html.theme--catppuccin-macchiato .content kbd.hero .tabs a:hover{opacity:1}html.theme--catppuccin-macchiato .hero.is-dark .tabs li.is-active a,html.theme--catppuccin-macchiato .content kbd.hero .tabs li.is-active a{color:#363a4f !important;opacity:1}html.theme--catppuccin-macchiato .hero.is-dark .tabs.is-boxed a,html.theme--catppuccin-macchiato .content kbd.hero .tabs.is-boxed a,html.theme--catppuccin-macchiato .hero.is-dark .tabs.is-toggle a,html.theme--catppuccin-macchiato .content kbd.hero .tabs.is-toggle a{color:#fff}html.theme--catppuccin-macchiato .hero.is-dark .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .content kbd.hero .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .hero.is-dark .tabs.is-toggle a:hover,html.theme--catppuccin-macchiato .content kbd.hero .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .hero.is-dark .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .content kbd.hero .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .hero.is-dark .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-macchiato .hero.is-dark .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .content kbd.hero .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .hero.is-dark .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#363a4f}html.theme--catppuccin-macchiato .hero.is-dark.is-bold,html.theme--catppuccin-macchiato .content kbd.hero.is-bold{background-image:linear-gradient(141deg, #1d2535 0%, #363a4f 71%, #3d3c62 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero.is-dark.is-bold .navbar-menu,html.theme--catppuccin-macchiato .content kbd.hero.is-bold .navbar-menu{background-image:linear-gradient(141deg, #1d2535 0%, #363a4f 71%, #3d3c62 100%)}}html.theme--catppuccin-macchiato .hero.is-primary,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .hero.is-primary strong,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink strong{color:inherit}html.theme--catppuccin-macchiato .hero.is-primary .title,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .title{color:#fff}html.theme--catppuccin-macchiato .hero.is-primary .subtitle,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-macchiato .hero.is-primary .subtitle a:not(.button),html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .subtitle a:not(.button),html.theme--catppuccin-macchiato .hero.is-primary .subtitle strong,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .hero.is-primary .navbar-menu,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .navbar-menu{background-color:#8aadf4}}html.theme--catppuccin-macchiato .hero.is-primary .navbar-item,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .navbar-item,html.theme--catppuccin-macchiato .hero.is-primary .navbar-link,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-macchiato .hero.is-primary a.navbar-item:hover,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink a.navbar-item:hover,html.theme--catppuccin-macchiato .hero.is-primary a.navbar-item.is-active,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink a.navbar-item.is-active,html.theme--catppuccin-macchiato .hero.is-primary .navbar-link:hover,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .navbar-link:hover,html.theme--catppuccin-macchiato .hero.is-primary .navbar-link.is-active,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .navbar-link.is-active{background-color:#739df2;color:#fff}html.theme--catppuccin-macchiato .hero.is-primary .tabs a,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-macchiato .hero.is-primary .tabs a:hover,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .tabs a:hover{opacity:1}html.theme--catppuccin-macchiato .hero.is-primary .tabs li.is-active a,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .tabs li.is-active a{color:#8aadf4 !important;opacity:1}html.theme--catppuccin-macchiato .hero.is-primary .tabs.is-boxed a,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a,html.theme--catppuccin-macchiato .hero.is-primary .tabs.is-toggle a,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a{color:#fff}html.theme--catppuccin-macchiato .hero.is-primary .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .hero.is-primary .tabs.is-toggle a:hover,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .hero.is-primary .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .hero.is-primary .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-macchiato .hero.is-primary .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#8aadf4}html.theme--catppuccin-macchiato .hero.is-primary.is-bold,html.theme--catppuccin-macchiato .docstring>section>a.hero.is-bold.docs-sourcelink{background-image:linear-gradient(141deg, #52a5f9 0%, #8aadf4 71%, #9fadf9 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero.is-primary.is-bold .navbar-menu,html.theme--catppuccin-macchiato .docstring>section>a.hero.is-bold.docs-sourcelink .navbar-menu{background-image:linear-gradient(141deg, #52a5f9 0%, #8aadf4 71%, #9fadf9 100%)}}html.theme--catppuccin-macchiato .hero.is-link{background-color:#8aadf4;color:#fff}html.theme--catppuccin-macchiato .hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .hero.is-link strong{color:inherit}html.theme--catppuccin-macchiato .hero.is-link .title{color:#fff}html.theme--catppuccin-macchiato .hero.is-link .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-macchiato .hero.is-link .subtitle a:not(.button),html.theme--catppuccin-macchiato .hero.is-link .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .hero.is-link .navbar-menu{background-color:#8aadf4}}html.theme--catppuccin-macchiato .hero.is-link .navbar-item,html.theme--catppuccin-macchiato .hero.is-link .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-macchiato .hero.is-link a.navbar-item:hover,html.theme--catppuccin-macchiato .hero.is-link a.navbar-item.is-active,html.theme--catppuccin-macchiato .hero.is-link .navbar-link:hover,html.theme--catppuccin-macchiato .hero.is-link .navbar-link.is-active{background-color:#739df2;color:#fff}html.theme--catppuccin-macchiato .hero.is-link .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-macchiato .hero.is-link .tabs a:hover{opacity:1}html.theme--catppuccin-macchiato .hero.is-link .tabs li.is-active a{color:#8aadf4 !important;opacity:1}html.theme--catppuccin-macchiato .hero.is-link .tabs.is-boxed a,html.theme--catppuccin-macchiato .hero.is-link .tabs.is-toggle a{color:#fff}html.theme--catppuccin-macchiato .hero.is-link .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .hero.is-link .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .hero.is-link .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-macchiato .hero.is-link .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#8aadf4}html.theme--catppuccin-macchiato .hero.is-link.is-bold{background-image:linear-gradient(141deg, #52a5f9 0%, #8aadf4 71%, #9fadf9 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg, #52a5f9 0%, #8aadf4 71%, #9fadf9 100%)}}html.theme--catppuccin-macchiato .hero.is-info{background-color:#8bd5ca;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .hero.is-info strong{color:inherit}html.theme--catppuccin-macchiato .hero.is-info .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-info .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-macchiato .hero.is-info .subtitle a:not(.button),html.theme--catppuccin-macchiato .hero.is-info .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .hero.is-info .navbar-menu{background-color:#8bd5ca}}html.theme--catppuccin-macchiato .hero.is-info .navbar-item,html.theme--catppuccin-macchiato .hero.is-info .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-info a.navbar-item:hover,html.theme--catppuccin-macchiato .hero.is-info a.navbar-item.is-active,html.theme--catppuccin-macchiato .hero.is-info .navbar-link:hover,html.theme--catppuccin-macchiato .hero.is-info .navbar-link.is-active{background-color:#78cec1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-info .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-macchiato .hero.is-info .tabs a:hover{opacity:1}html.theme--catppuccin-macchiato .hero.is-info .tabs li.is-active a{color:#8bd5ca !important;opacity:1}html.theme--catppuccin-macchiato .hero.is-info .tabs.is-boxed a,html.theme--catppuccin-macchiato .hero.is-info .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-info .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .hero.is-info .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .hero.is-info .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-macchiato .hero.is-info .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .hero.is-info .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:#8bd5ca}html.theme--catppuccin-macchiato .hero.is-info.is-bold{background-image:linear-gradient(141deg, #5bd2ac 0%, #8bd5ca 71%, #9adedf 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg, #5bd2ac 0%, #8bd5ca 71%, #9adedf 100%)}}html.theme--catppuccin-macchiato .hero.is-success{background-color:#a6da95;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .hero.is-success strong{color:inherit}html.theme--catppuccin-macchiato .hero.is-success .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-success .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-macchiato .hero.is-success .subtitle a:not(.button),html.theme--catppuccin-macchiato .hero.is-success .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .hero.is-success .navbar-menu{background-color:#a6da95}}html.theme--catppuccin-macchiato .hero.is-success .navbar-item,html.theme--catppuccin-macchiato .hero.is-success .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-success a.navbar-item:hover,html.theme--catppuccin-macchiato .hero.is-success a.navbar-item.is-active,html.theme--catppuccin-macchiato .hero.is-success .navbar-link:hover,html.theme--catppuccin-macchiato .hero.is-success .navbar-link.is-active{background-color:#96d382;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-success .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-macchiato .hero.is-success .tabs a:hover{opacity:1}html.theme--catppuccin-macchiato .hero.is-success .tabs li.is-active a{color:#a6da95 !important;opacity:1}html.theme--catppuccin-macchiato .hero.is-success .tabs.is-boxed a,html.theme--catppuccin-macchiato .hero.is-success .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-success .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .hero.is-success .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .hero.is-success .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-macchiato .hero.is-success .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .hero.is-success .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:#a6da95}html.theme--catppuccin-macchiato .hero.is-success.is-bold{background-image:linear-gradient(141deg, #94d765 0%, #a6da95 71%, #aae4a5 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg, #94d765 0%, #a6da95 71%, #aae4a5 100%)}}html.theme--catppuccin-macchiato .hero.is-warning{background-color:#eed49f;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .hero.is-warning strong{color:inherit}html.theme--catppuccin-macchiato .hero.is-warning .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-warning .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-macchiato .hero.is-warning .subtitle a:not(.button),html.theme--catppuccin-macchiato .hero.is-warning .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .hero.is-warning .navbar-menu{background-color:#eed49f}}html.theme--catppuccin-macchiato .hero.is-warning .navbar-item,html.theme--catppuccin-macchiato .hero.is-warning .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-warning a.navbar-item:hover,html.theme--catppuccin-macchiato .hero.is-warning a.navbar-item.is-active,html.theme--catppuccin-macchiato .hero.is-warning .navbar-link:hover,html.theme--catppuccin-macchiato .hero.is-warning .navbar-link.is-active{background-color:#eaca89;color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-warning .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-macchiato .hero.is-warning .tabs a:hover{opacity:1}html.theme--catppuccin-macchiato .hero.is-warning .tabs li.is-active a{color:#eed49f !important;opacity:1}html.theme--catppuccin-macchiato .hero.is-warning .tabs.is-boxed a,html.theme--catppuccin-macchiato .hero.is-warning .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-macchiato .hero.is-warning .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .hero.is-warning .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .hero.is-warning .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .hero.is-warning .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-macchiato .hero.is-warning .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .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:#eed49f}html.theme--catppuccin-macchiato .hero.is-warning.is-bold{background-image:linear-gradient(141deg, #efae6b 0%, #eed49f 71%, #f4e9b2 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg, #efae6b 0%, #eed49f 71%, #f4e9b2 100%)}}html.theme--catppuccin-macchiato .hero.is-danger{background-color:#ed8796;color:#fff}html.theme--catppuccin-macchiato .hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-macchiato .hero.is-danger strong{color:inherit}html.theme--catppuccin-macchiato .hero.is-danger .title{color:#fff}html.theme--catppuccin-macchiato .hero.is-danger .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-macchiato .hero.is-danger .subtitle a:not(.button),html.theme--catppuccin-macchiato .hero.is-danger .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .hero.is-danger .navbar-menu{background-color:#ed8796}}html.theme--catppuccin-macchiato .hero.is-danger .navbar-item,html.theme--catppuccin-macchiato .hero.is-danger .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-macchiato .hero.is-danger a.navbar-item:hover,html.theme--catppuccin-macchiato .hero.is-danger a.navbar-item.is-active,html.theme--catppuccin-macchiato .hero.is-danger .navbar-link:hover,html.theme--catppuccin-macchiato .hero.is-danger .navbar-link.is-active{background-color:#ea7183;color:#fff}html.theme--catppuccin-macchiato .hero.is-danger .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-macchiato .hero.is-danger .tabs a:hover{opacity:1}html.theme--catppuccin-macchiato .hero.is-danger .tabs li.is-active a{color:#ed8796 !important;opacity:1}html.theme--catppuccin-macchiato .hero.is-danger .tabs.is-boxed a,html.theme--catppuccin-macchiato .hero.is-danger .tabs.is-toggle a{color:#fff}html.theme--catppuccin-macchiato .hero.is-danger .tabs.is-boxed a:hover,html.theme--catppuccin-macchiato .hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-macchiato .hero.is-danger .tabs.is-boxed li.is-active a,html.theme--catppuccin-macchiato .hero.is-danger .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-macchiato .hero.is-danger .tabs.is-toggle li.is-active a,html.theme--catppuccin-macchiato .hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#ed8796}html.theme--catppuccin-macchiato .hero.is-danger.is-bold{background-image:linear-gradient(141deg, #f05183 0%, #ed8796 71%, #f39c9a 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg, #f05183 0%, #ed8796 71%, #f39c9a 100%)}}html.theme--catppuccin-macchiato .hero.is-small .hero-body,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.hero .hero-body{padding:1.5rem}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .hero.is-medium .hero-body{padding:9rem 4.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .hero.is-large .hero-body{padding:18rem 6rem}}html.theme--catppuccin-macchiato .hero.is-halfheight .hero-body,html.theme--catppuccin-macchiato .hero.is-fullheight .hero-body,html.theme--catppuccin-macchiato .hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}html.theme--catppuccin-macchiato .hero.is-halfheight .hero-body>.container,html.theme--catppuccin-macchiato .hero.is-fullheight .hero-body>.container,html.theme--catppuccin-macchiato .hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}html.theme--catppuccin-macchiato .hero.is-halfheight{min-height:50vh}html.theme--catppuccin-macchiato .hero.is-fullheight{min-height:100vh}html.theme--catppuccin-macchiato .hero-video{overflow:hidden}html.theme--catppuccin-macchiato .hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%, -50%, 0)}html.theme--catppuccin-macchiato .hero-video.is-transparent{opacity:0.3}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero-video{display:none}}html.theme--catppuccin-macchiato .hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){html.theme--catppuccin-macchiato .hero-buttons .button{display:flex}html.theme--catppuccin-macchiato .hero-buttons .button:not(:last-child){margin-bottom:0.75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .hero-buttons{display:flex;justify-content:center}html.theme--catppuccin-macchiato .hero-buttons .button:not(:last-child){margin-right:1.5rem}}html.theme--catppuccin-macchiato .hero-head,html.theme--catppuccin-macchiato .hero-foot{flex-grow:0;flex-shrink:0}html.theme--catppuccin-macchiato .hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}@media screen and (min-width: 769px),print{html.theme--catppuccin-macchiato .hero-body{padding:3rem 3rem}}html.theme--catppuccin-macchiato .section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato .section{padding:3rem 3rem}html.theme--catppuccin-macchiato .section.is-medium{padding:9rem 4.5rem}html.theme--catppuccin-macchiato .section.is-large{padding:18rem 6rem}}html.theme--catppuccin-macchiato .footer{background-color:#1e2030;padding:3rem 1.5rem 6rem}html.theme--catppuccin-macchiato h1 .docs-heading-anchor,html.theme--catppuccin-macchiato h1 .docs-heading-anchor:hover,html.theme--catppuccin-macchiato h1 .docs-heading-anchor:visited,html.theme--catppuccin-macchiato h2 .docs-heading-anchor,html.theme--catppuccin-macchiato h2 .docs-heading-anchor:hover,html.theme--catppuccin-macchiato h2 .docs-heading-anchor:visited,html.theme--catppuccin-macchiato h3 .docs-heading-anchor,html.theme--catppuccin-macchiato h3 .docs-heading-anchor:hover,html.theme--catppuccin-macchiato h3 .docs-heading-anchor:visited,html.theme--catppuccin-macchiato h4 .docs-heading-anchor,html.theme--catppuccin-macchiato h4 .docs-heading-anchor:hover,html.theme--catppuccin-macchiato h4 .docs-heading-anchor:visited,html.theme--catppuccin-macchiato h5 .docs-heading-anchor,html.theme--catppuccin-macchiato h5 .docs-heading-anchor:hover,html.theme--catppuccin-macchiato h5 .docs-heading-anchor:visited,html.theme--catppuccin-macchiato h6 .docs-heading-anchor,html.theme--catppuccin-macchiato h6 .docs-heading-anchor:hover,html.theme--catppuccin-macchiato h6 .docs-heading-anchor:visited{color:#cad3f5}html.theme--catppuccin-macchiato h1 .docs-heading-anchor-permalink,html.theme--catppuccin-macchiato h2 .docs-heading-anchor-permalink,html.theme--catppuccin-macchiato h3 .docs-heading-anchor-permalink,html.theme--catppuccin-macchiato h4 .docs-heading-anchor-permalink,html.theme--catppuccin-macchiato h5 .docs-heading-anchor-permalink,html.theme--catppuccin-macchiato h6 .docs-heading-anchor-permalink{visibility:hidden;vertical-align:middle;margin-left:0.5em;font-size:0.7rem}html.theme--catppuccin-macchiato h1 .docs-heading-anchor-permalink::before,html.theme--catppuccin-macchiato h2 .docs-heading-anchor-permalink::before,html.theme--catppuccin-macchiato h3 .docs-heading-anchor-permalink::before,html.theme--catppuccin-macchiato h4 .docs-heading-anchor-permalink::before,html.theme--catppuccin-macchiato h5 .docs-heading-anchor-permalink::before,html.theme--catppuccin-macchiato h6 .docs-heading-anchor-permalink::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f0c1"}html.theme--catppuccin-macchiato h1:hover .docs-heading-anchor-permalink,html.theme--catppuccin-macchiato h2:hover .docs-heading-anchor-permalink,html.theme--catppuccin-macchiato h3:hover .docs-heading-anchor-permalink,html.theme--catppuccin-macchiato h4:hover .docs-heading-anchor-permalink,html.theme--catppuccin-macchiato h5:hover .docs-heading-anchor-permalink,html.theme--catppuccin-macchiato h6:hover .docs-heading-anchor-permalink{visibility:visible}html.theme--catppuccin-macchiato .docs-light-only{display:none !important}html.theme--catppuccin-macchiato pre{position:relative;overflow:hidden}html.theme--catppuccin-macchiato pre code,html.theme--catppuccin-macchiato pre code.hljs{padding:0 .75rem !important;overflow:auto;display:block}html.theme--catppuccin-macchiato pre code:first-of-type,html.theme--catppuccin-macchiato pre code.hljs:first-of-type{padding-top:0.5rem !important}html.theme--catppuccin-macchiato pre code:last-of-type,html.theme--catppuccin-macchiato pre code.hljs:last-of-type{padding-bottom:0.5rem !important}html.theme--catppuccin-macchiato pre .copy-button{opacity:0.2;transition:opacity 0.2s;position:absolute;right:0em;top:0em;padding:0.5em;width:2.5em;height:2.5em;background:transparent;border:none;font-family:"Font Awesome 6 Free";color:#cad3f5;cursor:pointer;text-align:center}html.theme--catppuccin-macchiato pre .copy-button:focus,html.theme--catppuccin-macchiato pre .copy-button:hover{opacity:1;background:rgba(202,211,245,0.1);color:#8aadf4}html.theme--catppuccin-macchiato pre .copy-button.success{color:#a6da95;opacity:1}html.theme--catppuccin-macchiato pre .copy-button.error{color:#ed8796;opacity:1}html.theme--catppuccin-macchiato pre:hover .copy-button{opacity:1}html.theme--catppuccin-macchiato .admonition{background-color:#1e2030;border-style:solid;border-width:2px;border-color:#b8c0e0;border-radius:4px;font-size:1rem}html.theme--catppuccin-macchiato .admonition strong{color:currentColor}html.theme--catppuccin-macchiato .admonition.is-small,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input.admonition{font-size:.75rem}html.theme--catppuccin-macchiato .admonition.is-medium{font-size:1.25rem}html.theme--catppuccin-macchiato .admonition.is-large{font-size:1.5rem}html.theme--catppuccin-macchiato .admonition.is-default{background-color:#1e2030;border-color:#b8c0e0}html.theme--catppuccin-macchiato .admonition.is-default>.admonition-header{background-color:rgba(0,0,0,0);color:#b8c0e0}html.theme--catppuccin-macchiato .admonition.is-default>.admonition-body{color:#cad3f5}html.theme--catppuccin-macchiato .admonition.is-info{background-color:#1e2030;border-color:#8bd5ca}html.theme--catppuccin-macchiato .admonition.is-info>.admonition-header{background-color:rgba(0,0,0,0);color:#8bd5ca}html.theme--catppuccin-macchiato .admonition.is-info>.admonition-body{color:#cad3f5}html.theme--catppuccin-macchiato .admonition.is-success{background-color:#1e2030;border-color:#a6da95}html.theme--catppuccin-macchiato .admonition.is-success>.admonition-header{background-color:rgba(0,0,0,0);color:#a6da95}html.theme--catppuccin-macchiato .admonition.is-success>.admonition-body{color:#cad3f5}html.theme--catppuccin-macchiato .admonition.is-warning{background-color:#1e2030;border-color:#eed49f}html.theme--catppuccin-macchiato .admonition.is-warning>.admonition-header{background-color:rgba(0,0,0,0);color:#eed49f}html.theme--catppuccin-macchiato .admonition.is-warning>.admonition-body{color:#cad3f5}html.theme--catppuccin-macchiato .admonition.is-danger{background-color:#1e2030;border-color:#ed8796}html.theme--catppuccin-macchiato .admonition.is-danger>.admonition-header{background-color:rgba(0,0,0,0);color:#ed8796}html.theme--catppuccin-macchiato .admonition.is-danger>.admonition-body{color:#cad3f5}html.theme--catppuccin-macchiato .admonition.is-compat{background-color:#1e2030;border-color:#91d7e3}html.theme--catppuccin-macchiato .admonition.is-compat>.admonition-header{background-color:rgba(0,0,0,0);color:#91d7e3}html.theme--catppuccin-macchiato .admonition.is-compat>.admonition-body{color:#cad3f5}html.theme--catppuccin-macchiato .admonition.is-todo{background-color:#1e2030;border-color:#c6a0f6}html.theme--catppuccin-macchiato .admonition.is-todo>.admonition-header{background-color:rgba(0,0,0,0);color:#c6a0f6}html.theme--catppuccin-macchiato .admonition.is-todo>.admonition-body{color:#cad3f5}html.theme--catppuccin-macchiato .admonition-header{color:#b8c0e0;background-color:rgba(0,0,0,0);align-items:center;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.5rem .75rem;position:relative}html.theme--catppuccin-macchiato .admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}html.theme--catppuccin-macchiato details.admonition.is-details>.admonition-header{list-style:none}html.theme--catppuccin-macchiato details.admonition.is-details>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f055"}html.theme--catppuccin-macchiato details.admonition.is-details[open]>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f056"}html.theme--catppuccin-macchiato .admonition-body{color:#cad3f5;padding:0.5rem .75rem}html.theme--catppuccin-macchiato .admonition-body pre{background-color:#1e2030}html.theme--catppuccin-macchiato .admonition-body code{background-color:#1e2030}html.theme--catppuccin-macchiato .docstring{margin-bottom:1em;background-color:rgba(0,0,0,0);border:2px solid #5b6078;border-radius:4px;box-shadow:none;max-width:100%}html.theme--catppuccin-macchiato .docstring>header{cursor:pointer;display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#1e2030;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #5b6078;overflow:auto}html.theme--catppuccin-macchiato .docstring>header code{background-color:transparent}html.theme--catppuccin-macchiato .docstring>header .docstring-article-toggle-button{min-width:1.1rem;padding:0.2rem 0.2rem 0.2rem 0}html.theme--catppuccin-macchiato .docstring>header .docstring-binding{margin-right:0.3em}html.theme--catppuccin-macchiato .docstring>header .docstring-category{margin-left:0.3em}html.theme--catppuccin-macchiato .docstring>section{position:relative;padding:.75rem .75rem;border-bottom:1px solid #5b6078}html.theme--catppuccin-macchiato .docstring>section:last-child{border-bottom:none}html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink{transition:opacity 0.3s;opacity:0;position:absolute;right:.375rem;bottom:.375rem}html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink:focus{opacity:1 !important}html.theme--catppuccin-macchiato .docstring:hover>section>a.docs-sourcelink{opacity:0.2}html.theme--catppuccin-macchiato .docstring:focus-within>section>a.docs-sourcelink{opacity:0.2}html.theme--catppuccin-macchiato .docstring>section:hover a.docs-sourcelink{opacity:1}html.theme--catppuccin-macchiato .documenter-example-output{background-color:#24273a}html.theme--catppuccin-macchiato .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:#1e2030;color:#cad3f5;border-bottom:3px solid rgba(0,0,0,0);padding:10px 35px;text-align:center;font-size:15px}html.theme--catppuccin-macchiato .outdated-warning-overlay .outdated-warning-closer{position:absolute;top:calc(50% - 10px);right:18px;cursor:pointer;width:12px}html.theme--catppuccin-macchiato .outdated-warning-overlay a{color:#8aadf4}html.theme--catppuccin-macchiato .outdated-warning-overlay a:hover{color:#91d7e3}html.theme--catppuccin-macchiato .content pre{border:2px solid #5b6078;border-radius:4px}html.theme--catppuccin-macchiato .content code{font-weight:inherit}html.theme--catppuccin-macchiato .content a code{color:#8aadf4}html.theme--catppuccin-macchiato .content a:hover code{color:#91d7e3}html.theme--catppuccin-macchiato .content h1 code,html.theme--catppuccin-macchiato .content h2 code,html.theme--catppuccin-macchiato .content h3 code,html.theme--catppuccin-macchiato .content h4 code,html.theme--catppuccin-macchiato .content h5 code,html.theme--catppuccin-macchiato .content h6 code{color:#cad3f5}html.theme--catppuccin-macchiato .content table{display:block;width:initial;max-width:100%;overflow-x:auto}html.theme--catppuccin-macchiato .content blockquote>ul:first-child,html.theme--catppuccin-macchiato .content blockquote>ol:first-child,html.theme--catppuccin-macchiato .content .admonition-body>ul:first-child,html.theme--catppuccin-macchiato .content .admonition-body>ol:first-child{margin-top:0}html.theme--catppuccin-macchiato pre,html.theme--catppuccin-macchiato code{font-variant-ligatures:no-contextual}html.theme--catppuccin-macchiato .breadcrumb a.is-disabled{cursor:default;pointer-events:none}html.theme--catppuccin-macchiato .breadcrumb a.is-disabled,html.theme--catppuccin-macchiato .breadcrumb a.is-disabled:hover{color:#b5c1f1}html.theme--catppuccin-macchiato .hljs{background:initial !important}html.theme--catppuccin-macchiato .katex .katex-mathml{top:0;right:0}html.theme--catppuccin-macchiato .katex-display,html.theme--catppuccin-macchiato mjx-container,html.theme--catppuccin-macchiato .MathJax_Display{margin:0.5em 0 !important}html.theme--catppuccin-macchiato html{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto}html.theme--catppuccin-macchiato li.no-marker{list-style:none}html.theme--catppuccin-macchiato #documenter .docs-main>article{overflow-wrap:break-word}html.theme--catppuccin-macchiato #documenter .docs-main>article .math-container{overflow-x:auto;overflow-y:hidden}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato #documenter .docs-main{max-width:52rem;margin-left:20rem;padding-right:1rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato #documenter .docs-main{width:100%}html.theme--catppuccin-macchiato #documenter .docs-main>article{max-width:52rem;margin-left:auto;margin-right:auto;margin-bottom:1rem;padding:0 1rem}html.theme--catppuccin-macchiato #documenter .docs-main>header,html.theme--catppuccin-macchiato #documenter .docs-main>nav{max-width:100%;width:100%;margin:0}}html.theme--catppuccin-macchiato #documenter .docs-main header.docs-navbar{background-color:#24273a;border-bottom:1px solid #5b6078;z-index:2;min-height:4rem;margin-bottom:1rem;display:flex}html.theme--catppuccin-macchiato #documenter .docs-main header.docs-navbar .breadcrumb{flex-grow:1;overflow-x:hidden}html.theme--catppuccin-macchiato #documenter .docs-main header.docs-navbar .docs-sidebar-button{display:block;font-size:1.5rem;padding-bottom:0.1rem;margin-right:1rem}html.theme--catppuccin-macchiato #documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap;gap:1rem;align-items:center}html.theme--catppuccin-macchiato #documenter .docs-main header.docs-navbar .docs-right .docs-icon,html.theme--catppuccin-macchiato #documenter .docs-main header.docs-navbar .docs-right .docs-label{display:inline-block}html.theme--catppuccin-macchiato #documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato #documenter .docs-main header.docs-navbar .docs-right .docs-navbar-link{margin-left:0.4rem;margin-right:0.4rem}}html.theme--catppuccin-macchiato #documenter .docs-main header.docs-navbar>*{margin:auto 0}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato #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--catppuccin-macchiato #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--catppuccin-macchiato #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--catppuccin-macchiato #documenter .docs-main section.footnotes{border-top:1px solid #5b6078}html.theme--catppuccin-macchiato #documenter .docs-main section.footnotes li .tag:first-child,html.theme--catppuccin-macchiato #documenter .docs-main section.footnotes li .docstring>section>a.docs-sourcelink:first-child,html.theme--catppuccin-macchiato #documenter .docs-main section.footnotes li .content kbd:first-child,html.theme--catppuccin-macchiato .content #documenter .docs-main section.footnotes li kbd:first-child{margin-right:1em;margin-bottom:0.4em}html.theme--catppuccin-macchiato #documenter .docs-main .docs-footer{display:flex;flex-wrap:wrap;margin-left:0;margin-right:0;border-top:1px solid #5b6078;padding-top:1rem;padding-bottom:1rem}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato #documenter .docs-main .docs-footer{padding-left:1rem;padding-right:1rem}}html.theme--catppuccin-macchiato #documenter .docs-main .docs-footer .docs-footer-nextpage,html.theme--catppuccin-macchiato #documenter .docs-main .docs-footer .docs-footer-prevpage{flex-grow:1}html.theme--catppuccin-macchiato #documenter .docs-main .docs-footer .docs-footer-nextpage{text-align:right}html.theme--catppuccin-macchiato #documenter .docs-main .docs-footer .flexbox-break{flex-basis:100%;height:0}html.theme--catppuccin-macchiato #documenter .docs-main .docs-footer .footer-message{font-size:0.8em;margin:0.5em auto 0 auto;text-align:center}html.theme--catppuccin-macchiato #documenter .docs-sidebar{display:flex;flex-direction:column;color:#cad3f5;background-color:#1e2030;border-right:1px solid #5b6078;padding:0;flex:0 0 18rem;z-index:5;font-size:1rem;position:fixed;left:-18rem;width:18rem;height:100%;transition:left 0.3s}html.theme--catppuccin-macchiato #documenter .docs-sidebar.visible{left:0;box-shadow:.4rem 0rem .8rem #171717}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato #documenter .docs-sidebar.visible{box-shadow:none}}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato #documenter .docs-sidebar{left:0;top:0}}html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo{margin-top:1rem;padding:0 1rem}html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-logo>img{max-height:6rem;margin:auto}html.theme--catppuccin-macchiato #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--catppuccin-macchiato #documenter .docs-sidebar .docs-package-name .docs-autofit{max-width:16.2rem}html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-package-name a,html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-package-name a:hover{color:#cad3f5}html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-version-selector{border-top:1px solid #5b6078;display:none;padding:0.5rem}html.theme--catppuccin-macchiato #documenter .docs-sidebar .docs-version-selector.visible{display:flex}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu{flex-grow:1;user-select:none;border-top:1px solid #5b6078;padding-bottom:1.5rem}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu>li>.tocitem{font-weight:bold}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu>li li{font-size:.95rem;margin-left:1em;border-left:1px solid #5b6078}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu input.collapse-toggle{display:none}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu ul.collapsed{display:none}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu input:checked~ul.collapsed{display:block}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu label.tocitem{display:flex}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label{flex-grow:2}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron{display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;font-size:.75rem;margin-left:1rem;margin-top:auto;margin-bottom:auto}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f054"}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu input:checked~label.tocitem .docs-chevron::before{content:"\f078"}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu .tocitem{display:block;padding:0.5rem 0.5rem}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu .tocitem,html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu .tocitem:hover{color:#cad3f5;background:#1e2030}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu a.tocitem:hover,html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu label.tocitem:hover{color:#cad3f5;background-color:#26283d}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu li.is-active{border-top:1px solid #5b6078;border-bottom:1px solid #5b6078;background-color:#181926}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem,html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover{background-color:#181926;color:#cad3f5}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover{background-color:#26283d;color:#cad3f5}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu>li.is-active:first-child{border-top:none}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu ul.internal{margin:0 0.5rem 0.5rem;border-top:1px solid #5b6078}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu ul.internal li{font-size:.85rem;border-left:none;margin-left:0;margin-top:0.5rem}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem{width:100%;padding:0}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before{content:"⚬";margin-right:0.4em}html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search{margin:auto;margin-top:0.5rem;margin-bottom:0.5rem}html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input{width:14.4rem}html.theme--catppuccin-macchiato #documenter .docs-sidebar #documenter-search-query{color:#868c98;width:14.4rem;box-shadow:inset 0 1px 2px rgba(10,10,10,0.1)}@media screen and (min-width: 1056px){html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar{width:.3rem;background:none}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#2e3149}html.theme--catppuccin-macchiato #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover{background:#3d4162}}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato #documenter .docs-sidebar{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--catppuccin-macchiato #documenter .docs-sidebar::-webkit-scrollbar{width:.3rem;background:none}html.theme--catppuccin-macchiato #documenter .docs-sidebar::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#2e3149}html.theme--catppuccin-macchiato #documenter .docs-sidebar::-webkit-scrollbar-thumb:hover{background:#3d4162}}html.theme--catppuccin-macchiato kbd.search-modal-key-hints{border-radius:0.25rem;border:1px solid rgba(245,245,245,0.6);box-shadow:0 2px 0 1px rgba(245,245,245,0.6);cursor:default;font-size:0.9rem;line-height:1.5;min-width:0.75rem;text-align:center;padding:0.1rem 0.3rem;position:relative;top:-1px}html.theme--catppuccin-macchiato .search-min-width-50{min-width:50%}html.theme--catppuccin-macchiato .search-min-height-100{min-height:100%}html.theme--catppuccin-macchiato .search-modal-card-body{max-height:calc(100vh - 15rem)}html.theme--catppuccin-macchiato .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--catppuccin-macchiato .search-result-link:hover,html.theme--catppuccin-macchiato .search-result-link:focus{background-color:rgba(0,128,128,0.1)}html.theme--catppuccin-macchiato .search-result-link .property-search-result-badge,html.theme--catppuccin-macchiato .search-result-link .search-filter{transition:all 300ms}html.theme--catppuccin-macchiato .property-search-result-badge,html.theme--catppuccin-macchiato .search-filter{padding:0.15em 0.5em;font-size:0.8em;font-style:italic;text-transform:none !important;line-height:1.5;color:#f5f5f5;background-color:rgba(51,65,85,0.501961);border-radius:0.6rem}html.theme--catppuccin-macchiato .search-result-link:hover .property-search-result-badge,html.theme--catppuccin-macchiato .search-result-link:hover .search-filter,html.theme--catppuccin-macchiato .search-result-link:focus .property-search-result-badge,html.theme--catppuccin-macchiato .search-result-link:focus .search-filter{color:#333;background-color:#f1f5f9}html.theme--catppuccin-macchiato .search-filter{color:#333;background-color:#f5f5f5;transition:all 300ms}html.theme--catppuccin-macchiato .search-filter:hover,html.theme--catppuccin-macchiato .search-filter:focus{color:#333}html.theme--catppuccin-macchiato .search-filter-selected{color:#363a4f;background-color:#b7bdf8}html.theme--catppuccin-macchiato .search-filter-selected:hover,html.theme--catppuccin-macchiato .search-filter-selected:focus{color:#363a4f}html.theme--catppuccin-macchiato .search-result-highlight{background-color:#ffdd57;color:black}html.theme--catppuccin-macchiato .search-divider{border-bottom:1px solid #5b6078}html.theme--catppuccin-macchiato .search-result-title{width:85%;color:#f5f5f5}html.theme--catppuccin-macchiato .search-result-code-title{font-size:0.875rem;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}html.theme--catppuccin-macchiato #search-modal .modal-card-body::-webkit-scrollbar,html.theme--catppuccin-macchiato #search-modal .filter-tabs::-webkit-scrollbar{height:10px;width:10px;background-color:transparent}html.theme--catppuccin-macchiato #search-modal .modal-card-body::-webkit-scrollbar-thumb,html.theme--catppuccin-macchiato #search-modal .filter-tabs::-webkit-scrollbar-thumb{background-color:gray;border-radius:1rem}html.theme--catppuccin-macchiato #search-modal .modal-card-body::-webkit-scrollbar-track,html.theme--catppuccin-macchiato #search-modal .filter-tabs::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.6);background-color:transparent}html.theme--catppuccin-macchiato .w-100{width:100%}html.theme--catppuccin-macchiato .gap-2{gap:0.5rem}html.theme--catppuccin-macchiato .gap-4{gap:1rem}html.theme--catppuccin-macchiato .gap-8{gap:2rem}html.theme--catppuccin-macchiato{background-color:#24273a;font-size:16px;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}html.theme--catppuccin-macchiato a{transition:all 200ms ease}html.theme--catppuccin-macchiato .label{color:#cad3f5}html.theme--catppuccin-macchiato .button,html.theme--catppuccin-macchiato .control.has-icons-left .icon,html.theme--catppuccin-macchiato .control.has-icons-right .icon,html.theme--catppuccin-macchiato .input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-macchiato .pagination-ellipsis,html.theme--catppuccin-macchiato .pagination-link,html.theme--catppuccin-macchiato .pagination-next,html.theme--catppuccin-macchiato .pagination-previous,html.theme--catppuccin-macchiato .select,html.theme--catppuccin-macchiato .select select,html.theme--catppuccin-macchiato .textarea{height:2.5em;color:#cad3f5}html.theme--catppuccin-macchiato .input,html.theme--catppuccin-macchiato #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-macchiato .textarea{transition:all 200ms ease;box-shadow:none;border-width:1px;padding-left:1em;padding-right:1em;color:#cad3f5}html.theme--catppuccin-macchiato .select:after,html.theme--catppuccin-macchiato .select select{border-width:1px}html.theme--catppuccin-macchiato .menu-list a{transition:all 300ms ease}html.theme--catppuccin-macchiato .modal-card-foot,html.theme--catppuccin-macchiato .modal-card-head{border-color:#5b6078}html.theme--catppuccin-macchiato .navbar{border-radius:.4em}html.theme--catppuccin-macchiato .navbar.is-transparent{background:none}html.theme--catppuccin-macchiato .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-macchiato .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#8aadf4}@media screen and (max-width: 1055px){html.theme--catppuccin-macchiato .navbar .navbar-menu{background-color:#8aadf4;border-radius:0 0 .4em .4em}}html.theme--catppuccin-macchiato .docstring>section>a.docs-sourcelink:not(body){color:#363a4f}html.theme--catppuccin-macchiato .tag.is-link:not(body),html.theme--catppuccin-macchiato .docstring>section>a.is-link.docs-sourcelink:not(body),html.theme--catppuccin-macchiato .content kbd.is-link:not(body){color:#363a4f}html.theme--catppuccin-macchiato .ansi span.sgr1{font-weight:bolder}html.theme--catppuccin-macchiato .ansi span.sgr2{font-weight:lighter}html.theme--catppuccin-macchiato .ansi span.sgr3{font-style:italic}html.theme--catppuccin-macchiato .ansi span.sgr4{text-decoration:underline}html.theme--catppuccin-macchiato .ansi span.sgr7{color:#24273a;background-color:#cad3f5}html.theme--catppuccin-macchiato .ansi span.sgr8{color:transparent}html.theme--catppuccin-macchiato .ansi span.sgr8 span{color:transparent}html.theme--catppuccin-macchiato .ansi span.sgr9{text-decoration:line-through}html.theme--catppuccin-macchiato .ansi span.sgr30{color:#494d64}html.theme--catppuccin-macchiato .ansi span.sgr31{color:#ed8796}html.theme--catppuccin-macchiato .ansi span.sgr32{color:#a6da95}html.theme--catppuccin-macchiato .ansi span.sgr33{color:#eed49f}html.theme--catppuccin-macchiato .ansi span.sgr34{color:#8aadf4}html.theme--catppuccin-macchiato .ansi span.sgr35{color:#f5bde6}html.theme--catppuccin-macchiato .ansi span.sgr36{color:#8bd5ca}html.theme--catppuccin-macchiato .ansi span.sgr37{color:#b8c0e0}html.theme--catppuccin-macchiato .ansi span.sgr40{background-color:#494d64}html.theme--catppuccin-macchiato .ansi span.sgr41{background-color:#ed8796}html.theme--catppuccin-macchiato .ansi span.sgr42{background-color:#a6da95}html.theme--catppuccin-macchiato .ansi span.sgr43{background-color:#eed49f}html.theme--catppuccin-macchiato .ansi span.sgr44{background-color:#8aadf4}html.theme--catppuccin-macchiato .ansi span.sgr45{background-color:#f5bde6}html.theme--catppuccin-macchiato .ansi span.sgr46{background-color:#8bd5ca}html.theme--catppuccin-macchiato .ansi span.sgr47{background-color:#b8c0e0}html.theme--catppuccin-macchiato .ansi span.sgr90{color:#5b6078}html.theme--catppuccin-macchiato .ansi span.sgr91{color:#ed8796}html.theme--catppuccin-macchiato .ansi span.sgr92{color:#a6da95}html.theme--catppuccin-macchiato .ansi span.sgr93{color:#eed49f}html.theme--catppuccin-macchiato .ansi span.sgr94{color:#8aadf4}html.theme--catppuccin-macchiato .ansi span.sgr95{color:#f5bde6}html.theme--catppuccin-macchiato .ansi span.sgr96{color:#8bd5ca}html.theme--catppuccin-macchiato .ansi span.sgr97{color:#a5adcb}html.theme--catppuccin-macchiato .ansi span.sgr100{background-color:#5b6078}html.theme--catppuccin-macchiato .ansi span.sgr101{background-color:#ed8796}html.theme--catppuccin-macchiato .ansi span.sgr102{background-color:#a6da95}html.theme--catppuccin-macchiato .ansi span.sgr103{background-color:#eed49f}html.theme--catppuccin-macchiato .ansi span.sgr104{background-color:#8aadf4}html.theme--catppuccin-macchiato .ansi span.sgr105{background-color:#f5bde6}html.theme--catppuccin-macchiato .ansi span.sgr106{background-color:#8bd5ca}html.theme--catppuccin-macchiato .ansi span.sgr107{background-color:#a5adcb}html.theme--catppuccin-macchiato code.language-julia-repl>span.hljs-meta{color:#a6da95;font-weight:bolder}html.theme--catppuccin-macchiato code .hljs{color:#cad3f5;background:#24273a}html.theme--catppuccin-macchiato code .hljs-keyword{color:#c6a0f6}html.theme--catppuccin-macchiato code .hljs-built_in{color:#ed8796}html.theme--catppuccin-macchiato code .hljs-type{color:#eed49f}html.theme--catppuccin-macchiato code .hljs-literal{color:#f5a97f}html.theme--catppuccin-macchiato code .hljs-number{color:#f5a97f}html.theme--catppuccin-macchiato code .hljs-operator{color:#8bd5ca}html.theme--catppuccin-macchiato code .hljs-punctuation{color:#b8c0e0}html.theme--catppuccin-macchiato code .hljs-property{color:#8bd5ca}html.theme--catppuccin-macchiato code .hljs-regexp{color:#f5bde6}html.theme--catppuccin-macchiato code .hljs-string{color:#a6da95}html.theme--catppuccin-macchiato code .hljs-char.escape_{color:#a6da95}html.theme--catppuccin-macchiato code .hljs-subst{color:#a5adcb}html.theme--catppuccin-macchiato code .hljs-symbol{color:#f0c6c6}html.theme--catppuccin-macchiato code .hljs-variable{color:#c6a0f6}html.theme--catppuccin-macchiato code .hljs-variable.language_{color:#c6a0f6}html.theme--catppuccin-macchiato code .hljs-variable.constant_{color:#f5a97f}html.theme--catppuccin-macchiato code .hljs-title{color:#8aadf4}html.theme--catppuccin-macchiato code .hljs-title.class_{color:#eed49f}html.theme--catppuccin-macchiato code .hljs-title.function_{color:#8aadf4}html.theme--catppuccin-macchiato code .hljs-params{color:#cad3f5}html.theme--catppuccin-macchiato code .hljs-comment{color:#5b6078}html.theme--catppuccin-macchiato code .hljs-doctag{color:#ed8796}html.theme--catppuccin-macchiato code .hljs-meta{color:#f5a97f}html.theme--catppuccin-macchiato code .hljs-section{color:#8aadf4}html.theme--catppuccin-macchiato code .hljs-tag{color:#a5adcb}html.theme--catppuccin-macchiato code .hljs-name{color:#c6a0f6}html.theme--catppuccin-macchiato code .hljs-attr{color:#8aadf4}html.theme--catppuccin-macchiato code .hljs-attribute{color:#a6da95}html.theme--catppuccin-macchiato code .hljs-bullet{color:#8bd5ca}html.theme--catppuccin-macchiato code .hljs-code{color:#a6da95}html.theme--catppuccin-macchiato code .hljs-emphasis{color:#ed8796;font-style:italic}html.theme--catppuccin-macchiato code .hljs-strong{color:#ed8796;font-weight:bold}html.theme--catppuccin-macchiato code .hljs-formula{color:#8bd5ca}html.theme--catppuccin-macchiato code .hljs-link{color:#7dc4e4;font-style:italic}html.theme--catppuccin-macchiato code .hljs-quote{color:#a6da95;font-style:italic}html.theme--catppuccin-macchiato code .hljs-selector-tag{color:#eed49f}html.theme--catppuccin-macchiato code .hljs-selector-id{color:#8aadf4}html.theme--catppuccin-macchiato code .hljs-selector-class{color:#8bd5ca}html.theme--catppuccin-macchiato code .hljs-selector-attr{color:#c6a0f6}html.theme--catppuccin-macchiato code .hljs-selector-pseudo{color:#8bd5ca}html.theme--catppuccin-macchiato code .hljs-template-tag{color:#f0c6c6}html.theme--catppuccin-macchiato code .hljs-template-variable{color:#f0c6c6}html.theme--catppuccin-macchiato code .hljs-addition{color:#a6da95;background:rgba(166,227,161,0.15)}html.theme--catppuccin-macchiato code .hljs-deletion{color:#ed8796;background:rgba(243,139,168,0.15)}html.theme--catppuccin-macchiato .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--catppuccin-macchiato .search-result-link:hover,html.theme--catppuccin-macchiato .search-result-link:focus{background-color:#363a4f}html.theme--catppuccin-macchiato .search-result-link .property-search-result-badge,html.theme--catppuccin-macchiato .search-result-link .search-filter{transition:all 300ms}html.theme--catppuccin-macchiato .search-result-link:hover .property-search-result-badge,html.theme--catppuccin-macchiato .search-result-link:hover .search-filter,html.theme--catppuccin-macchiato .search-result-link:focus .property-search-result-badge,html.theme--catppuccin-macchiato .search-result-link:focus .search-filter{color:#363a4f !important;background-color:#b7bdf8 !important}html.theme--catppuccin-macchiato .search-result-title{color:#cad3f5}html.theme--catppuccin-macchiato .search-result-highlight{background-color:#ed8796;color:#1e2030}html.theme--catppuccin-macchiato .search-divider{border-bottom:1px solid #5e6d6f50}html.theme--catppuccin-macchiato .w-100{width:100%}html.theme--catppuccin-macchiato .gap-2{gap:0.5rem}html.theme--catppuccin-macchiato .gap-4{gap:1rem} diff --git a/v0.9.12/assets/themes/catppuccin-mocha.css b/v0.9.12/assets/themes/catppuccin-mocha.css new file mode 100644 index 000000000..8b8265256 --- /dev/null +++ b/v0.9.12/assets/themes/catppuccin-mocha.css @@ -0,0 +1 @@ +html.theme--catppuccin-mocha .pagination-previous,html.theme--catppuccin-mocha .pagination-next,html.theme--catppuccin-mocha .pagination-link,html.theme--catppuccin-mocha .pagination-ellipsis,html.theme--catppuccin-mocha .file-cta,html.theme--catppuccin-mocha .file-name,html.theme--catppuccin-mocha .select select,html.theme--catppuccin-mocha .textarea,html.theme--catppuccin-mocha .input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-mocha .button{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:.4em;box-shadow:none;display:inline-flex;font-size:1rem;height:2.5em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.5em - 1px);padding-left:calc(0.75em - 1px);padding-right:calc(0.75em - 1px);padding-top:calc(0.5em - 1px);position:relative;vertical-align:top}html.theme--catppuccin-mocha .pagination-previous:focus,html.theme--catppuccin-mocha .pagination-next:focus,html.theme--catppuccin-mocha .pagination-link:focus,html.theme--catppuccin-mocha .pagination-ellipsis:focus,html.theme--catppuccin-mocha .file-cta:focus,html.theme--catppuccin-mocha .file-name:focus,html.theme--catppuccin-mocha .select select:focus,html.theme--catppuccin-mocha .textarea:focus,html.theme--catppuccin-mocha .input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input:focus,html.theme--catppuccin-mocha .button:focus,html.theme--catppuccin-mocha .is-focused.pagination-previous,html.theme--catppuccin-mocha .is-focused.pagination-next,html.theme--catppuccin-mocha .is-focused.pagination-link,html.theme--catppuccin-mocha .is-focused.pagination-ellipsis,html.theme--catppuccin-mocha .is-focused.file-cta,html.theme--catppuccin-mocha .is-focused.file-name,html.theme--catppuccin-mocha .select select.is-focused,html.theme--catppuccin-mocha .is-focused.textarea,html.theme--catppuccin-mocha .is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .is-focused.button,html.theme--catppuccin-mocha .pagination-previous:active,html.theme--catppuccin-mocha .pagination-next:active,html.theme--catppuccin-mocha .pagination-link:active,html.theme--catppuccin-mocha .pagination-ellipsis:active,html.theme--catppuccin-mocha .file-cta:active,html.theme--catppuccin-mocha .file-name:active,html.theme--catppuccin-mocha .select select:active,html.theme--catppuccin-mocha .textarea:active,html.theme--catppuccin-mocha .input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input:active,html.theme--catppuccin-mocha .button:active,html.theme--catppuccin-mocha .is-active.pagination-previous,html.theme--catppuccin-mocha .is-active.pagination-next,html.theme--catppuccin-mocha .is-active.pagination-link,html.theme--catppuccin-mocha .is-active.pagination-ellipsis,html.theme--catppuccin-mocha .is-active.file-cta,html.theme--catppuccin-mocha .is-active.file-name,html.theme--catppuccin-mocha .select select.is-active,html.theme--catppuccin-mocha .is-active.textarea,html.theme--catppuccin-mocha .is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-mocha .is-active.button{outline:none}html.theme--catppuccin-mocha .pagination-previous[disabled],html.theme--catppuccin-mocha .pagination-next[disabled],html.theme--catppuccin-mocha .pagination-link[disabled],html.theme--catppuccin-mocha .pagination-ellipsis[disabled],html.theme--catppuccin-mocha .file-cta[disabled],html.theme--catppuccin-mocha .file-name[disabled],html.theme--catppuccin-mocha .select select[disabled],html.theme--catppuccin-mocha .textarea[disabled],html.theme--catppuccin-mocha .input[disabled],html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input[disabled],html.theme--catppuccin-mocha .button[disabled],fieldset[disabled] html.theme--catppuccin-mocha .pagination-previous,html.theme--catppuccin-mocha fieldset[disabled] .pagination-previous,fieldset[disabled] html.theme--catppuccin-mocha .pagination-next,html.theme--catppuccin-mocha fieldset[disabled] .pagination-next,fieldset[disabled] html.theme--catppuccin-mocha .pagination-link,html.theme--catppuccin-mocha fieldset[disabled] .pagination-link,fieldset[disabled] html.theme--catppuccin-mocha .pagination-ellipsis,html.theme--catppuccin-mocha fieldset[disabled] .pagination-ellipsis,fieldset[disabled] html.theme--catppuccin-mocha .file-cta,html.theme--catppuccin-mocha fieldset[disabled] .file-cta,fieldset[disabled] html.theme--catppuccin-mocha .file-name,html.theme--catppuccin-mocha fieldset[disabled] .file-name,fieldset[disabled] html.theme--catppuccin-mocha .select select,fieldset[disabled] html.theme--catppuccin-mocha .textarea,fieldset[disabled] html.theme--catppuccin-mocha .input,fieldset[disabled] html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-mocha fieldset[disabled] .select select,html.theme--catppuccin-mocha .select fieldset[disabled] select,html.theme--catppuccin-mocha fieldset[disabled] .textarea,html.theme--catppuccin-mocha fieldset[disabled] .input,html.theme--catppuccin-mocha fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-mocha #documenter .docs-sidebar fieldset[disabled] form.docs-search>input,fieldset[disabled] html.theme--catppuccin-mocha .button,html.theme--catppuccin-mocha fieldset[disabled] .button{cursor:not-allowed}html.theme--catppuccin-mocha .tabs,html.theme--catppuccin-mocha .pagination-previous,html.theme--catppuccin-mocha .pagination-next,html.theme--catppuccin-mocha .pagination-link,html.theme--catppuccin-mocha .pagination-ellipsis,html.theme--catppuccin-mocha .breadcrumb,html.theme--catppuccin-mocha .file,html.theme--catppuccin-mocha .button,.is-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.theme--catppuccin-mocha .navbar-link:not(.is-arrowless)::after,html.theme--catppuccin-mocha .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--catppuccin-mocha .admonition:not(:last-child),html.theme--catppuccin-mocha .tabs:not(:last-child),html.theme--catppuccin-mocha .pagination:not(:last-child),html.theme--catppuccin-mocha .message:not(:last-child),html.theme--catppuccin-mocha .level:not(:last-child),html.theme--catppuccin-mocha .breadcrumb:not(:last-child),html.theme--catppuccin-mocha .block:not(:last-child),html.theme--catppuccin-mocha .title:not(:last-child),html.theme--catppuccin-mocha .subtitle:not(:last-child),html.theme--catppuccin-mocha .table-container:not(:last-child),html.theme--catppuccin-mocha .table:not(:last-child),html.theme--catppuccin-mocha .progress:not(:last-child),html.theme--catppuccin-mocha .notification:not(:last-child),html.theme--catppuccin-mocha .content:not(:last-child),html.theme--catppuccin-mocha .box:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-mocha .modal-close,html.theme--catppuccin-mocha .delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:9999px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:none;position:relative;vertical-align:top;width:20px}html.theme--catppuccin-mocha .modal-close::before,html.theme--catppuccin-mocha .delete::before,html.theme--catppuccin-mocha .modal-close::after,html.theme--catppuccin-mocha .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--catppuccin-mocha .modal-close::before,html.theme--catppuccin-mocha .delete::before{height:2px;width:50%}html.theme--catppuccin-mocha .modal-close::after,html.theme--catppuccin-mocha .delete::after{height:50%;width:2px}html.theme--catppuccin-mocha .modal-close:hover,html.theme--catppuccin-mocha .delete:hover,html.theme--catppuccin-mocha .modal-close:focus,html.theme--catppuccin-mocha .delete:focus{background-color:rgba(10,10,10,0.3)}html.theme--catppuccin-mocha .modal-close:active,html.theme--catppuccin-mocha .delete:active{background-color:rgba(10,10,10,0.4)}html.theme--catppuccin-mocha .is-small.modal-close,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.modal-close,html.theme--catppuccin-mocha .is-small.delete,html.theme--catppuccin-mocha #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--catppuccin-mocha .is-medium.modal-close,html.theme--catppuccin-mocha .is-medium.delete{height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;width:24px}html.theme--catppuccin-mocha .is-large.modal-close,html.theme--catppuccin-mocha .is-large.delete{height:32px;max-height:32px;max-width:32px;min-height:32px;min-width:32px;width:32px}html.theme--catppuccin-mocha .control.is-loading::after,html.theme--catppuccin-mocha .select.is-loading::after,html.theme--catppuccin-mocha .loader,html.theme--catppuccin-mocha .button.is-loading::after{animation:spinAround 500ms infinite linear;border:2px solid #7f849c;border-radius:9999px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}html.theme--catppuccin-mocha .hero-video,html.theme--catppuccin-mocha .modal-background,html.theme--catppuccin-mocha .modal,html.theme--catppuccin-mocha .image.is-square img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--catppuccin-mocha .image.is-square .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--catppuccin-mocha .image.is-1by1 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--catppuccin-mocha .image.is-1by1 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--catppuccin-mocha .image.is-5by4 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--catppuccin-mocha .image.is-5by4 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--catppuccin-mocha .image.is-4by3 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--catppuccin-mocha .image.is-4by3 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--catppuccin-mocha .image.is-3by2 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--catppuccin-mocha .image.is-3by2 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--catppuccin-mocha .image.is-5by3 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--catppuccin-mocha .image.is-5by3 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--catppuccin-mocha .image.is-16by9 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--catppuccin-mocha .image.is-16by9 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--catppuccin-mocha .image.is-2by1 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--catppuccin-mocha .image.is-2by1 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--catppuccin-mocha .image.is-3by1 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--catppuccin-mocha .image.is-3by1 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--catppuccin-mocha .image.is-4by5 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--catppuccin-mocha .image.is-4by5 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--catppuccin-mocha .image.is-3by4 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--catppuccin-mocha .image.is-3by4 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--catppuccin-mocha .image.is-2by3 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--catppuccin-mocha .image.is-2by3 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--catppuccin-mocha .image.is-3by5 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--catppuccin-mocha .image.is-3by5 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--catppuccin-mocha .image.is-9by16 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--catppuccin-mocha .image.is-9by16 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--catppuccin-mocha .image.is-1by2 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--catppuccin-mocha .image.is-1by2 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--catppuccin-mocha .image.is-1by3 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--catppuccin-mocha .image.is-1by3 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio,.is-overlay{bottom:0;left:0;position:absolute;right:0;top:0}html.theme--catppuccin-mocha .navbar-burger{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0}/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:inherit}.has-text-white{color:#fff !important}a.has-text-white:hover,a.has-text-white:focus{color:#e6e6e6 !important}.has-background-white{background-color:#fff !important}.has-text-black{color:#0a0a0a !important}a.has-text-black:hover,a.has-text-black:focus{color:#000 !important}.has-background-black{background-color:#0a0a0a !important}.has-text-light{color:#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:#313244 !important}a.has-text-dark:hover,a.has-text-dark:focus{color:#1c1c26 !important}.has-background-dark{background-color:#313244 !important}.has-text-primary{color:#89b4fa !important}a.has-text-primary:hover,a.has-text-primary:focus{color:#5895f8 !important}.has-background-primary{background-color:#89b4fa !important}.has-text-primary-light{color:#ebf3fe !important}a.has-text-primary-light:hover,a.has-text-primary-light:focus{color:#bbd3fc !important}.has-background-primary-light{background-color:#ebf3fe !important}.has-text-primary-dark{color:#063c93 !important}a.has-text-primary-dark:hover,a.has-text-primary-dark:focus{color:#0850c4 !important}.has-background-primary-dark{background-color:#063c93 !important}.has-text-link{color:#89b4fa !important}a.has-text-link:hover,a.has-text-link:focus{color:#5895f8 !important}.has-background-link{background-color:#89b4fa !important}.has-text-link-light{color:#ebf3fe !important}a.has-text-link-light:hover,a.has-text-link-light:focus{color:#bbd3fc !important}.has-background-link-light{background-color:#ebf3fe !important}.has-text-link-dark{color:#063c93 !important}a.has-text-link-dark:hover,a.has-text-link-dark:focus{color:#0850c4 !important}.has-background-link-dark{background-color:#063c93 !important}.has-text-info{color:#94e2d5 !important}a.has-text-info:hover,a.has-text-info:focus{color:#6cd7c5 !important}.has-background-info{background-color:#94e2d5 !important}.has-text-info-light{color:#effbf9 !important}a.has-text-info-light:hover,a.has-text-info-light:focus{color:#c7f0e9 !important}.has-background-info-light{background-color:#effbf9 !important}.has-text-info-dark{color:#207466 !important}a.has-text-info-dark:hover,a.has-text-info-dark:focus{color:#2a9c89 !important}.has-background-info-dark{background-color:#207466 !important}.has-text-success{color:#a6e3a1 !important}a.has-text-success:hover,a.has-text-success:focus{color:#81d77a !important}.has-background-success{background-color:#a6e3a1 !important}.has-text-success-light{color:#f0faef !important}a.has-text-success-light:hover,a.has-text-success-light:focus{color:#cbefc8 !important}.has-background-success-light{background-color:#f0faef !important}.has-text-success-dark{color:#287222 !important}a.has-text-success-dark:hover,a.has-text-success-dark:focus{color:#36992e !important}.has-background-success-dark{background-color:#287222 !important}.has-text-warning{color:#f9e2af !important}a.has-text-warning:hover,a.has-text-warning:focus{color:#f5d180 !important}.has-background-warning{background-color:#f9e2af !important}.has-text-warning-light{color:#fef8ec !important}a.has-text-warning-light:hover,a.has-text-warning-light:focus{color:#fae7bd !important}.has-background-warning-light{background-color:#fef8ec !important}.has-text-warning-dark{color:#8a620a !important}a.has-text-warning-dark:hover,a.has-text-warning-dark:focus{color:#b9840e !important}.has-background-warning-dark{background-color:#8a620a !important}.has-text-danger{color:#f38ba8 !important}a.has-text-danger:hover,a.has-text-danger:focus{color:#ee5d85 !important}.has-background-danger{background-color:#f38ba8 !important}.has-text-danger-light{color:#fdedf1 !important}a.has-text-danger-light:hover,a.has-text-danger-light:focus{color:#f8bece !important}.has-background-danger-light{background-color:#fdedf1 !important}.has-text-danger-dark{color:#991036 !important}a.has-text-danger-dark:hover,a.has-text-danger-dark:focus{color:#c71546 !important}.has-background-danger-dark{background-color:#991036 !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:#313244 !important}.has-background-grey-darker{background-color:#313244 !important}.has-text-grey-dark{color:#45475a !important}.has-background-grey-dark{background-color:#45475a !important}.has-text-grey{color:#585b70 !important}.has-background-grey{background-color:#585b70 !important}.has-text-grey-light{color:#6c7086 !important}.has-background-grey-light{background-color:#6c7086 !important}.has-text-grey-lighter{color:#7f849c !important}.has-background-grey-lighter{background-color:#7f849c !important}.has-text-white-ter{color:#f5f5f5 !important}.has-background-white-ter{background-color:#f5f5f5 !important}.has-text-white-bis{color:#fafafa !important}.has-background-white-bis{background-color:#fafafa !important}.is-flex-direction-row{flex-direction:row !important}.is-flex-direction-row-reverse{flex-direction:row-reverse !important}.is-flex-direction-column{flex-direction:column !important}.is-flex-direction-column-reverse{flex-direction:column-reverse !important}.is-flex-wrap-nowrap{flex-wrap:nowrap !important}.is-flex-wrap-wrap{flex-wrap:wrap !important}.is-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse !important}.is-justify-content-flex-start{justify-content:flex-start !important}.is-justify-content-flex-end{justify-content:flex-end !important}.is-justify-content-center{justify-content:center !important}.is-justify-content-space-between{justify-content:space-between !important}.is-justify-content-space-around{justify-content:space-around !important}.is-justify-content-space-evenly{justify-content:space-evenly !important}.is-justify-content-start{justify-content:start !important}.is-justify-content-end{justify-content:end !important}.is-justify-content-left{justify-content:left !important}.is-justify-content-right{justify-content:right !important}.is-align-content-flex-start{align-content:flex-start !important}.is-align-content-flex-end{align-content:flex-end !important}.is-align-content-center{align-content:center !important}.is-align-content-space-between{align-content:space-between !important}.is-align-content-space-around{align-content:space-around !important}.is-align-content-space-evenly{align-content:space-evenly !important}.is-align-content-stretch{align-content:stretch !important}.is-align-content-start{align-content:start !important}.is-align-content-end{align-content:end !important}.is-align-content-baseline{align-content:baseline !important}.is-align-items-stretch{align-items:stretch !important}.is-align-items-flex-start{align-items:flex-start !important}.is-align-items-flex-end{align-items:flex-end !important}.is-align-items-center{align-items:center !important}.is-align-items-baseline{align-items:baseline !important}.is-align-items-start{align-items:start !important}.is-align-items-end{align-items:end !important}.is-align-items-self-start{align-items:self-start !important}.is-align-items-self-end{align-items:self-end !important}.is-align-self-auto{align-self:auto !important}.is-align-self-flex-start{align-self:flex-start !important}.is-align-self-flex-end{align-self:flex-end !important}.is-align-self-center{align-self:center !important}.is-align-self-baseline{align-self:baseline !important}.is-align-self-stretch{align-self:stretch !important}.is-flex-grow-0{flex-grow:0 !important}.is-flex-grow-1{flex-grow:1 !important}.is-flex-grow-2{flex-grow:2 !important}.is-flex-grow-3{flex-grow:3 !important}.is-flex-grow-4{flex-grow:4 !important}.is-flex-grow-5{flex-grow:5 !important}.is-flex-shrink-0{flex-shrink:0 !important}.is-flex-shrink-1{flex-shrink:1 !important}.is-flex-shrink-2{flex-shrink:2 !important}.is-flex-shrink-3{flex-shrink:3 !important}.is-flex-shrink-4{flex-shrink:4 !important}.is-flex-shrink-5{flex-shrink:5 !important}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-clickable{cursor:pointer !important;pointer-events:all !important}.is-clipped{overflow:hidden !important}.is-relative{position:relative !important}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.m-0{margin:0 !important}.mt-0{margin-top:0 !important}.mr-0{margin-right:0 !important}.mb-0{margin-bottom:0 !important}.ml-0{margin-left:0 !important}.mx-0{margin-left:0 !important;margin-right:0 !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.m-1{margin:.25rem !important}.mt-1{margin-top:.25rem !important}.mr-1{margin-right:.25rem !important}.mb-1{margin-bottom:.25rem !important}.ml-1{margin-left:.25rem !important}.mx-1{margin-left:.25rem !important;margin-right:.25rem !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-2{margin:.5rem !important}.mt-2{margin-top:.5rem !important}.mr-2{margin-right:.5rem !important}.mb-2{margin-bottom:.5rem !important}.ml-2{margin-left:.5rem !important}.mx-2{margin-left:.5rem !important;margin-right:.5rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-3{margin:.75rem !important}.mt-3{margin-top:.75rem !important}.mr-3{margin-right:.75rem !important}.mb-3{margin-bottom:.75rem !important}.ml-3{margin-left:.75rem !important}.mx-3{margin-left:.75rem !important;margin-right:.75rem !important}.my-3{margin-top:.75rem !important;margin-bottom:.75rem !important}.m-4{margin:1rem !important}.mt-4{margin-top:1rem !important}.mr-4{margin-right:1rem !important}.mb-4{margin-bottom:1rem !important}.ml-4{margin-left:1rem !important}.mx-4{margin-left:1rem !important;margin-right:1rem !important}.my-4{margin-top:1rem !important;margin-bottom:1rem !important}.m-5{margin:1.5rem !important}.mt-5{margin-top:1.5rem !important}.mr-5{margin-right:1.5rem !important}.mb-5{margin-bottom:1.5rem !important}.ml-5{margin-left:1.5rem !important}.mx-5{margin-left:1.5rem !important;margin-right:1.5rem !important}.my-5{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-6{margin:3rem !important}.mt-6{margin-top:3rem !important}.mr-6{margin-right:3rem !important}.mb-6{margin-bottom:3rem !important}.ml-6{margin-left:3rem !important}.mx-6{margin-left:3rem !important;margin-right:3rem !important}.my-6{margin-top:3rem !important;margin-bottom:3rem !important}.m-auto{margin:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-right:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-left:auto !important}.mx-auto{margin-left:auto !important;margin-right:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.p-0{padding:0 !important}.pt-0{padding-top:0 !important}.pr-0{padding-right:0 !important}.pb-0{padding-bottom:0 !important}.pl-0{padding-left:0 !important}.px-0{padding-left:0 !important;padding-right:0 !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.p-1{padding:.25rem !important}.pt-1{padding-top:.25rem !important}.pr-1{padding-right:.25rem !important}.pb-1{padding-bottom:.25rem !important}.pl-1{padding-left:.25rem !important}.px-1{padding-left:.25rem !important;padding-right:.25rem !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-2{padding:.5rem !important}.pt-2{padding-top:.5rem !important}.pr-2{padding-right:.5rem !important}.pb-2{padding-bottom:.5rem !important}.pl-2{padding-left:.5rem !important}.px-2{padding-left:.5rem !important;padding-right:.5rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-3{padding:.75rem !important}.pt-3{padding-top:.75rem !important}.pr-3{padding-right:.75rem !important}.pb-3{padding-bottom:.75rem !important}.pl-3{padding-left:.75rem !important}.px-3{padding-left:.75rem !important;padding-right:.75rem !important}.py-3{padding-top:.75rem !important;padding-bottom:.75rem !important}.p-4{padding:1rem !important}.pt-4{padding-top:1rem !important}.pr-4{padding-right:1rem !important}.pb-4{padding-bottom:1rem !important}.pl-4{padding-left:1rem !important}.px-4{padding-left:1rem !important;padding-right:1rem !important}.py-4{padding-top:1rem !important;padding-bottom:1rem !important}.p-5{padding:1.5rem !important}.pt-5{padding-top:1.5rem !important}.pr-5{padding-right:1.5rem !important}.pb-5{padding-bottom:1.5rem !important}.pl-5{padding-left:1.5rem !important}.px-5{padding-left:1.5rem !important;padding-right:1.5rem !important}.py-5{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-6{padding:3rem !important}.pt-6{padding-top:3rem !important}.pr-6{padding-right:3rem !important}.pb-6{padding-bottom:3rem !important}.pl-6{padding-left:3rem !important}.px-6{padding-left:3rem !important;padding-right:3rem !important}.py-6{padding-top:3rem !important;padding-bottom:3rem !important}.p-auto{padding:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-right:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-left:auto !important}.px-auto{padding-left:auto !important;padding-right:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !important}.is-size-1{font-size:3rem !important}.is-size-2{font-size:2.5rem !important}.is-size-3{font-size:2rem !important}.is-size-4{font-size:1.5rem !important}.is-size-5{font-size:1.25rem !important}.is-size-6{font-size:1rem !important}.is-size-7,html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink{font-size:.75rem !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:1rem !important}.is-size-7-mobile{font-size:.75rem !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:1rem !important}.is-size-7-tablet{font-size:.75rem !important}}@media screen and (max-width: 1055px){.is-size-1-touch{font-size:3rem !important}.is-size-2-touch{font-size:2.5rem !important}.is-size-3-touch{font-size:2rem !important}.is-size-4-touch{font-size:1.5rem !important}.is-size-5-touch{font-size:1.25rem !important}.is-size-6-touch{font-size:1rem !important}.is-size-7-touch{font-size:.75rem !important}}@media screen and (min-width: 1056px){.is-size-1-desktop{font-size:3rem !important}.is-size-2-desktop{font-size:2.5rem !important}.is-size-3-desktop{font-size:2rem !important}.is-size-4-desktop{font-size:1.5rem !important}.is-size-5-desktop{font-size:1.25rem !important}.is-size-6-desktop{font-size:1rem !important}.is-size-7-desktop{font-size:.75rem !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:1rem !important}.is-size-7-widescreen{font-size:.75rem !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:1rem !important}.is-size-7-fullhd{font-size:.75rem !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-centered-tablet-only{text-align:center !important}}@media screen and (max-width: 1055px){.has-text-centered-touch{text-align:center !important}}@media screen and (min-width: 1056px){.has-text-centered-desktop{text-align:center !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-centered-desktop-only{text-align:center !important}}@media screen and (min-width: 1216px){.has-text-centered-widescreen{text-align:center !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-centered-widescreen-only{text-align:center !important}}@media screen and (min-width: 1408px){.has-text-centered-fullhd{text-align:center !important}}@media screen and (max-width: 768px){.has-text-justified-mobile{text-align:justify !important}}@media screen and (min-width: 769px),print{.has-text-justified-tablet{text-align:justify !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-justified-tablet-only{text-align:justify !important}}@media screen and (max-width: 1055px){.has-text-justified-touch{text-align:justify !important}}@media screen and (min-width: 1056px){.has-text-justified-desktop{text-align:justify !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-justified-desktop-only{text-align:justify !important}}@media screen and (min-width: 1216px){.has-text-justified-widescreen{text-align:justify !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-justified-widescreen-only{text-align:justify !important}}@media screen and (min-width: 1408px){.has-text-justified-fullhd{text-align:justify !important}}@media screen and (max-width: 768px){.has-text-left-mobile{text-align:left !important}}@media screen and (min-width: 769px),print{.has-text-left-tablet{text-align:left !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-left-tablet-only{text-align:left !important}}@media screen and (max-width: 1055px){.has-text-left-touch{text-align:left !important}}@media screen and (min-width: 1056px){.has-text-left-desktop{text-align:left !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-left-desktop-only{text-align:left !important}}@media screen and (min-width: 1216px){.has-text-left-widescreen{text-align:left !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-left-widescreen-only{text-align:left !important}}@media screen and (min-width: 1408px){.has-text-left-fullhd{text-align:left !important}}@media screen and (max-width: 768px){.has-text-right-mobile{text-align:right !important}}@media screen and (min-width: 769px),print{.has-text-right-tablet{text-align:right !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-right-tablet-only{text-align:right !important}}@media screen and (max-width: 1055px){.has-text-right-touch{text-align:right !important}}@media screen and (min-width: 1056px){.has-text-right-desktop{text-align:right !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-right-desktop-only{text-align:right !important}}@media screen and (min-width: 1216px){.has-text-right-widescreen{text-align:right !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-right-widescreen-only{text-align:right !important}}@media screen and (min-width: 1408px){.has-text-right-fullhd{text-align:right !important}}.is-capitalized{text-transform:capitalize !important}.is-lowercase{text-transform:lowercase !important}.is-uppercase{text-transform:uppercase !important}.is-italic{font-style:italic !important}.is-underlined{text-decoration:underline !important}.has-text-weight-light{font-weight:300 !important}.has-text-weight-normal{font-weight:400 !important}.has-text-weight-medium{font-weight:500 !important}.has-text-weight-semibold{font-weight:600 !important}.has-text-weight-bold{font-weight:700 !important}.is-family-primary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-secondary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-sans-serif{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-monospace{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-family-code{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-block{display:block !important}@media screen and (max-width: 768px){.is-block-mobile{display:block !important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-block-tablet-only{display:block !important}}@media screen and (max-width: 1055px){.is-block-touch{display:block !important}}@media screen and (min-width: 1056px){.is-block-desktop{display:block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-block-desktop-only{display:block !important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block !important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block !important}}.is-flex{display:flex !important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex !important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-flex-tablet-only{display:flex !important}}@media screen and (max-width: 1055px){.is-flex-touch{display:flex !important}}@media screen and (min-width: 1056px){.is-flex-desktop{display:flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-flex-desktop-only{display:flex !important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex !important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex !important}}.is-inline{display:inline !important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline !important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-tablet-only{display:inline !important}}@media screen and (max-width: 1055px){.is-inline-touch{display:inline !important}}@media screen and (min-width: 1056px){.is-inline-desktop{display:inline !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-desktop-only{display:inline !important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline !important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline !important}}.is-inline-block{display:inline-block !important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block !important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-block-tablet-only{display:inline-block !important}}@media screen and (max-width: 1055px){.is-inline-block-touch{display:inline-block !important}}@media screen and (min-width: 1056px){.is-inline-block-desktop{display:inline-block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block !important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block !important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block !important}}.is-inline-flex{display:inline-flex !important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex !important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-flex-tablet-only{display:inline-flex !important}}@media screen and (max-width: 1055px){.is-inline-flex-touch{display:inline-flex !important}}@media screen and (min-width: 1056px){.is-inline-flex-desktop{display:inline-flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex !important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex !important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex !important}}.is-hidden{display:none !important}.is-sr-only{border:none !important;clip:rect(0, 0, 0, 0) !important;height:0.01em !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:0.01em !important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none !important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-hidden-tablet-only{display:none !important}}@media screen and (max-width: 1055px){.is-hidden-touch{display:none !important}}@media screen and (min-width: 1056px){.is-hidden-desktop{display:none !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-hidden-desktop-only{display:none !important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none !important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none !important}}.is-invisible{visibility:hidden !important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden !important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-invisible-tablet-only{visibility:hidden !important}}@media screen and (max-width: 1055px){.is-invisible-touch{visibility:hidden !important}}@media screen and (min-width: 1056px){.is-invisible-desktop{visibility:hidden !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden !important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden !important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden !important}}html.theme--catppuccin-mocha html{background-color:#1e1e2e;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--catppuccin-mocha article,html.theme--catppuccin-mocha aside,html.theme--catppuccin-mocha figure,html.theme--catppuccin-mocha footer,html.theme--catppuccin-mocha header,html.theme--catppuccin-mocha hgroup,html.theme--catppuccin-mocha section{display:block}html.theme--catppuccin-mocha body,html.theme--catppuccin-mocha button,html.theme--catppuccin-mocha input,html.theme--catppuccin-mocha optgroup,html.theme--catppuccin-mocha select,html.theme--catppuccin-mocha textarea{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif}html.theme--catppuccin-mocha code,html.theme--catppuccin-mocha 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--catppuccin-mocha body{color:#cdd6f4;font-size:1em;font-weight:400;line-height:1.5}html.theme--catppuccin-mocha a{color:#89b4fa;cursor:pointer;text-decoration:none}html.theme--catppuccin-mocha a strong{color:currentColor}html.theme--catppuccin-mocha a:hover{color:#89dceb}html.theme--catppuccin-mocha code{background-color:#181825;color:#cdd6f4;font-size:.875em;font-weight:normal;padding:.1em}html.theme--catppuccin-mocha hr{background-color:#181825;border:none;display:block;height:2px;margin:1.5rem 0}html.theme--catppuccin-mocha img{height:auto;max-width:100%}html.theme--catppuccin-mocha input[type="checkbox"],html.theme--catppuccin-mocha input[type="radio"]{vertical-align:baseline}html.theme--catppuccin-mocha small{font-size:.875em}html.theme--catppuccin-mocha span{font-style:inherit;font-weight:inherit}html.theme--catppuccin-mocha strong{color:#b8c5ef;font-weight:700}html.theme--catppuccin-mocha fieldset{border:none}html.theme--catppuccin-mocha pre{-webkit-overflow-scrolling:touch;background-color:#181825;color:#cdd6f4;font-size:.875em;overflow-x:auto;padding:1.25rem 1.5rem;white-space:pre;word-wrap:normal}html.theme--catppuccin-mocha pre code{background-color:transparent;color:currentColor;font-size:1em;padding:0}html.theme--catppuccin-mocha table td,html.theme--catppuccin-mocha table th{vertical-align:top}html.theme--catppuccin-mocha table td:not([align]),html.theme--catppuccin-mocha table th:not([align]){text-align:inherit}html.theme--catppuccin-mocha table th{color:#b8c5ef}html.theme--catppuccin-mocha .box{background-color:#45475a;border-radius:8px;box-shadow:none;color:#cdd6f4;display:block;padding:1.25rem}html.theme--catppuccin-mocha a.box:hover,html.theme--catppuccin-mocha a.box:focus{box-shadow:0 0.5em 1em -0.125em rgba(10,10,10,0.1),0 0 0 1px #89b4fa}html.theme--catppuccin-mocha a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2),0 0 0 1px #89b4fa}html.theme--catppuccin-mocha .button{background-color:#181825;border-color:#363653;border-width:1px;color:#89b4fa;cursor:pointer;justify-content:center;padding-bottom:calc(0.5em - 1px);padding-left:1em;padding-right:1em;padding-top:calc(0.5em - 1px);text-align:center;white-space:nowrap}html.theme--catppuccin-mocha .button strong{color:inherit}html.theme--catppuccin-mocha .button .icon,html.theme--catppuccin-mocha .button .icon.is-small,html.theme--catppuccin-mocha .button #documenter .docs-sidebar form.docs-search>input.icon,html.theme--catppuccin-mocha #documenter .docs-sidebar .button form.docs-search>input.icon,html.theme--catppuccin-mocha .button .icon.is-medium,html.theme--catppuccin-mocha .button .icon.is-large{height:1.5em;width:1.5em}html.theme--catppuccin-mocha .button .icon:first-child:not(:last-child){margin-left:calc(-0.5em - 1px);margin-right:.25em}html.theme--catppuccin-mocha .button .icon:last-child:not(:first-child){margin-left:.25em;margin-right:calc(-0.5em - 1px)}html.theme--catppuccin-mocha .button .icon:first-child:last-child{margin-left:calc(-0.5em - 1px);margin-right:calc(-0.5em - 1px)}html.theme--catppuccin-mocha .button:hover,html.theme--catppuccin-mocha .button.is-hovered{border-color:#6c7086;color:#b8c5ef}html.theme--catppuccin-mocha .button:focus,html.theme--catppuccin-mocha .button.is-focused{border-color:#6c7086;color:#71a4f9}html.theme--catppuccin-mocha .button:focus:not(:active),html.theme--catppuccin-mocha .button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(137,180,250,0.25)}html.theme--catppuccin-mocha .button:active,html.theme--catppuccin-mocha .button.is-active{border-color:#45475a;color:#b8c5ef}html.theme--catppuccin-mocha .button.is-text{background-color:transparent;border-color:transparent;color:#cdd6f4;text-decoration:underline}html.theme--catppuccin-mocha .button.is-text:hover,html.theme--catppuccin-mocha .button.is-text.is-hovered,html.theme--catppuccin-mocha .button.is-text:focus,html.theme--catppuccin-mocha .button.is-text.is-focused{background-color:#181825;color:#b8c5ef}html.theme--catppuccin-mocha .button.is-text:active,html.theme--catppuccin-mocha .button.is-text.is-active{background-color:#0e0e16;color:#b8c5ef}html.theme--catppuccin-mocha .button.is-text[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}html.theme--catppuccin-mocha .button.is-ghost{background:none;border-color:rgba(0,0,0,0);color:#89b4fa;text-decoration:none}html.theme--catppuccin-mocha .button.is-ghost:hover,html.theme--catppuccin-mocha .button.is-ghost.is-hovered{color:#89b4fa;text-decoration:underline}html.theme--catppuccin-mocha .button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-white:hover,html.theme--catppuccin-mocha .button.is-white.is-hovered{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-white:focus,html.theme--catppuccin-mocha .button.is-white.is-focused{border-color:transparent;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-white:focus:not(:active),html.theme--catppuccin-mocha .button.is-white.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-mocha .button.is-white:active,html.theme--catppuccin-mocha .button.is-white.is-active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-white[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-white{background-color:#fff;border-color:#fff;box-shadow:none}html.theme--catppuccin-mocha .button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .button.is-white.is-inverted:hover,html.theme--catppuccin-mocha .button.is-white.is-inverted.is-hovered{background-color:#000}html.theme--catppuccin-mocha .button.is-white.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-white.is-inverted{background-color:#0a0a0a;border-color:transparent;box-shadow:none;color:#fff}html.theme--catppuccin-mocha .button.is-white.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-mocha .button.is-white.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-mocha .button.is-white.is-outlined:hover,html.theme--catppuccin-mocha .button.is-white.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-white.is-outlined:focus,html.theme--catppuccin-mocha .button.is-white.is-outlined.is-focused{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-white.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-white.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-white.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-white.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-mocha .button.is-white.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-white.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined.is-focused{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-black{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-black:hover,html.theme--catppuccin-mocha .button.is-black.is-hovered{background-color:#040404;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-black:focus,html.theme--catppuccin-mocha .button.is-black.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-black:focus:not(:active),html.theme--catppuccin-mocha .button.is-black.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-mocha .button.is-black:active,html.theme--catppuccin-mocha .button.is-black.is-active{background-color:#000;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-black[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-black{background-color:#0a0a0a;border-color:#0a0a0a;box-shadow:none}html.theme--catppuccin-mocha .button.is-black.is-inverted{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-black.is-inverted:hover,html.theme--catppuccin-mocha .button.is-black.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-mocha .button.is-black.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-black.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-black.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-black.is-outlined:hover,html.theme--catppuccin-mocha .button.is-black.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-black.is-outlined:focus,html.theme--catppuccin-mocha .button.is-black.is-outlined.is-focused{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .button.is-black.is-outlined.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-mocha .button.is-black.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-black.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-black.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-black.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-black.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined.is-focused{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-mocha .button.is-light{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-light:hover,html.theme--catppuccin-mocha .button.is-light.is-hovered{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-light:focus,html.theme--catppuccin-mocha .button.is-light.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-light:focus:not(:active),html.theme--catppuccin-mocha .button.is-light.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-mocha .button.is-light:active,html.theme--catppuccin-mocha .button.is-light.is-active{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-light[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-light{background-color:#f5f5f5;border-color:#f5f5f5;box-shadow:none}html.theme--catppuccin-mocha .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-mocha .button.is-light.is-inverted:hover,html.theme--catppuccin-mocha .button.is-light.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-light.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#f5f5f5}html.theme--catppuccin-mocha .button.is-light.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-mocha .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;color:#f5f5f5}html.theme--catppuccin-mocha .button.is-light.is-outlined:hover,html.theme--catppuccin-mocha .button.is-light.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-light.is-outlined:focus,html.theme--catppuccin-mocha .button.is-light.is-outlined.is-focused{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}html.theme--catppuccin-mocha .button.is-light.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-light.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-light.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-light.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-mocha .button.is-light.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;box-shadow:none;color:#f5f5f5}html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-dark,html.theme--catppuccin-mocha .content kbd.button{background-color:#313244;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-dark:hover,html.theme--catppuccin-mocha .content kbd.button:hover,html.theme--catppuccin-mocha .button.is-dark.is-hovered,html.theme--catppuccin-mocha .content kbd.button.is-hovered{background-color:#2c2d3d;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-dark:focus,html.theme--catppuccin-mocha .content kbd.button:focus,html.theme--catppuccin-mocha .button.is-dark.is-focused,html.theme--catppuccin-mocha .content kbd.button.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-dark:focus:not(:active),html.theme--catppuccin-mocha .content kbd.button:focus:not(:active),html.theme--catppuccin-mocha .button.is-dark.is-focused:not(:active),html.theme--catppuccin-mocha .content kbd.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(49,50,68,0.25)}html.theme--catppuccin-mocha .button.is-dark:active,html.theme--catppuccin-mocha .content kbd.button:active,html.theme--catppuccin-mocha .button.is-dark.is-active,html.theme--catppuccin-mocha .content kbd.button.is-active{background-color:#262735;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-dark[disabled],html.theme--catppuccin-mocha .content kbd.button[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-dark,fieldset[disabled] html.theme--catppuccin-mocha .content kbd.button{background-color:#313244;border-color:#313244;box-shadow:none}html.theme--catppuccin-mocha .button.is-dark.is-inverted,html.theme--catppuccin-mocha .content kbd.button.is-inverted{background-color:#fff;color:#313244}html.theme--catppuccin-mocha .button.is-dark.is-inverted:hover,html.theme--catppuccin-mocha .content kbd.button.is-inverted:hover,html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-hovered,html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-mocha .button.is-dark.is-inverted[disabled],html.theme--catppuccin-mocha .content kbd.button.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-dark.is-inverted,fieldset[disabled] html.theme--catppuccin-mocha .content kbd.button.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#313244}html.theme--catppuccin-mocha .button.is-dark.is-loading::after,html.theme--catppuccin-mocha .content kbd.button.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-dark.is-outlined,html.theme--catppuccin-mocha .content kbd.button.is-outlined{background-color:transparent;border-color:#313244;color:#313244}html.theme--catppuccin-mocha .button.is-dark.is-outlined:hover,html.theme--catppuccin-mocha .content kbd.button.is-outlined:hover,html.theme--catppuccin-mocha .button.is-dark.is-outlined.is-hovered,html.theme--catppuccin-mocha .content kbd.button.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-dark.is-outlined:focus,html.theme--catppuccin-mocha .content kbd.button.is-outlined:focus,html.theme--catppuccin-mocha .button.is-dark.is-outlined.is-focused,html.theme--catppuccin-mocha .content kbd.button.is-outlined.is-focused{background-color:#313244;border-color:#313244;color:#fff}html.theme--catppuccin-mocha .button.is-dark.is-outlined.is-loading::after,html.theme--catppuccin-mocha .content kbd.button.is-outlined.is-loading::after{border-color:transparent transparent #313244 #313244 !important}html.theme--catppuccin-mocha .button.is-dark.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .content kbd.button.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-dark.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .content kbd.button.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-dark.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .content kbd.button.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-dark.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-mocha .content kbd.button.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-dark.is-outlined[disabled],html.theme--catppuccin-mocha .content kbd.button.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-dark.is-outlined,fieldset[disabled] html.theme--catppuccin-mocha .content kbd.button.is-outlined{background-color:transparent;border-color:#313244;box-shadow:none;color:#313244}html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined,html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined.is-focused,html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined.is-focused{background-color:#fff;color:#313244}html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #313244 #313244 !important}html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined[disabled],html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-dark.is-inverted.is-outlined,fieldset[disabled] html.theme--catppuccin-mocha .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-mocha .button.is-primary,html.theme--catppuccin-mocha .docstring>section>a.button.docs-sourcelink{background-color:#89b4fa;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-primary:hover,html.theme--catppuccin-mocha .docstring>section>a.button.docs-sourcelink:hover,html.theme--catppuccin-mocha .button.is-primary.is-hovered,html.theme--catppuccin-mocha .docstring>section>a.button.is-hovered.docs-sourcelink{background-color:#7dacf9;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-primary:focus,html.theme--catppuccin-mocha .docstring>section>a.button.docs-sourcelink:focus,html.theme--catppuccin-mocha .button.is-primary.is-focused,html.theme--catppuccin-mocha .docstring>section>a.button.is-focused.docs-sourcelink{border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-primary:focus:not(:active),html.theme--catppuccin-mocha .docstring>section>a.button.docs-sourcelink:focus:not(:active),html.theme--catppuccin-mocha .button.is-primary.is-focused:not(:active),html.theme--catppuccin-mocha .docstring>section>a.button.is-focused.docs-sourcelink:not(:active){box-shadow:0 0 0 0.125em rgba(137,180,250,0.25)}html.theme--catppuccin-mocha .button.is-primary:active,html.theme--catppuccin-mocha .docstring>section>a.button.docs-sourcelink:active,html.theme--catppuccin-mocha .button.is-primary.is-active,html.theme--catppuccin-mocha .docstring>section>a.button.is-active.docs-sourcelink{background-color:#71a4f9;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-primary[disabled],html.theme--catppuccin-mocha .docstring>section>a.button.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-primary,fieldset[disabled] html.theme--catppuccin-mocha .docstring>section>a.button.docs-sourcelink{background-color:#89b4fa;border-color:#89b4fa;box-shadow:none}html.theme--catppuccin-mocha .button.is-primary.is-inverted,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;color:#89b4fa}html.theme--catppuccin-mocha .button.is-primary.is-inverted:hover,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.docs-sourcelink:hover,html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-hovered,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-hovered.docs-sourcelink{background-color:#f2f2f2}html.theme--catppuccin-mocha .button.is-primary.is-inverted[disabled],html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-primary.is-inverted,fieldset[disabled] html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;border-color:transparent;box-shadow:none;color:#89b4fa}html.theme--catppuccin-mocha .button.is-primary.is-loading::after,html.theme--catppuccin-mocha .docstring>section>a.button.is-loading.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-primary.is-outlined,html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#89b4fa;color:#89b4fa}html.theme--catppuccin-mocha .button.is-primary.is-outlined:hover,html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.docs-sourcelink:hover,html.theme--catppuccin-mocha .button.is-primary.is-outlined.is-hovered,html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.is-hovered.docs-sourcelink,html.theme--catppuccin-mocha .button.is-primary.is-outlined:focus,html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.docs-sourcelink:focus,html.theme--catppuccin-mocha .button.is-primary.is-outlined.is-focused,html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.is-focused.docs-sourcelink{background-color:#89b4fa;border-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .button.is-primary.is-outlined.is-loading::after,html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink::after{border-color:transparent transparent #89b4fa #89b4fa !important}html.theme--catppuccin-mocha .button.is-primary.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--catppuccin-mocha .button.is-primary.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--catppuccin-mocha .button.is-primary.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--catppuccin-mocha .button.is-primary.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-primary.is-outlined[disabled],html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-primary.is-outlined,fieldset[disabled] html.theme--catppuccin-mocha .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#89b4fa;box-shadow:none;color:#89b4fa}html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:hover,html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink,html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:focus,html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined.is-focused,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.is-focused.docs-sourcelink{background-color:#fff;color:#89b4fa}html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #89b4fa #89b4fa !important}html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined[disabled],html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-primary.is-inverted.is-outlined,fieldset[disabled] html.theme--catppuccin-mocha .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-mocha .button.is-primary.is-light,html.theme--catppuccin-mocha .docstring>section>a.button.is-light.docs-sourcelink{background-color:#ebf3fe;color:#063c93}html.theme--catppuccin-mocha .button.is-primary.is-light:hover,html.theme--catppuccin-mocha .docstring>section>a.button.is-light.docs-sourcelink:hover,html.theme--catppuccin-mocha .button.is-primary.is-light.is-hovered,html.theme--catppuccin-mocha .docstring>section>a.button.is-light.is-hovered.docs-sourcelink{background-color:#dfebfe;border-color:transparent;color:#063c93}html.theme--catppuccin-mocha .button.is-primary.is-light:active,html.theme--catppuccin-mocha .docstring>section>a.button.is-light.docs-sourcelink:active,html.theme--catppuccin-mocha .button.is-primary.is-light.is-active,html.theme--catppuccin-mocha .docstring>section>a.button.is-light.is-active.docs-sourcelink{background-color:#d3e3fd;border-color:transparent;color:#063c93}html.theme--catppuccin-mocha .button.is-link{background-color:#89b4fa;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-link:hover,html.theme--catppuccin-mocha .button.is-link.is-hovered{background-color:#7dacf9;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-link:focus,html.theme--catppuccin-mocha .button.is-link.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-link:focus:not(:active),html.theme--catppuccin-mocha .button.is-link.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(137,180,250,0.25)}html.theme--catppuccin-mocha .button.is-link:active,html.theme--catppuccin-mocha .button.is-link.is-active{background-color:#71a4f9;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-link[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-link{background-color:#89b4fa;border-color:#89b4fa;box-shadow:none}html.theme--catppuccin-mocha .button.is-link.is-inverted{background-color:#fff;color:#89b4fa}html.theme--catppuccin-mocha .button.is-link.is-inverted:hover,html.theme--catppuccin-mocha .button.is-link.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-mocha .button.is-link.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#89b4fa}html.theme--catppuccin-mocha .button.is-link.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-link.is-outlined{background-color:transparent;border-color:#89b4fa;color:#89b4fa}html.theme--catppuccin-mocha .button.is-link.is-outlined:hover,html.theme--catppuccin-mocha .button.is-link.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-link.is-outlined:focus,html.theme--catppuccin-mocha .button.is-link.is-outlined.is-focused{background-color:#89b4fa;border-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #89b4fa #89b4fa !important}html.theme--catppuccin-mocha .button.is-link.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-link.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-link.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-link.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-link.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-link.is-outlined{background-color:transparent;border-color:#89b4fa;box-shadow:none;color:#89b4fa}html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined.is-focused{background-color:#fff;color:#89b4fa}html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #89b4fa #89b4fa !important}html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-mocha .button.is-link.is-light{background-color:#ebf3fe;color:#063c93}html.theme--catppuccin-mocha .button.is-link.is-light:hover,html.theme--catppuccin-mocha .button.is-link.is-light.is-hovered{background-color:#dfebfe;border-color:transparent;color:#063c93}html.theme--catppuccin-mocha .button.is-link.is-light:active,html.theme--catppuccin-mocha .button.is-link.is-light.is-active{background-color:#d3e3fd;border-color:transparent;color:#063c93}html.theme--catppuccin-mocha .button.is-info{background-color:#94e2d5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-info:hover,html.theme--catppuccin-mocha .button.is-info.is-hovered{background-color:#8adfd1;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-info:focus,html.theme--catppuccin-mocha .button.is-info.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-info:focus:not(:active),html.theme--catppuccin-mocha .button.is-info.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(148,226,213,0.25)}html.theme--catppuccin-mocha .button.is-info:active,html.theme--catppuccin-mocha .button.is-info.is-active{background-color:#80ddcd;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-info[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-info{background-color:#94e2d5;border-color:#94e2d5;box-shadow:none}html.theme--catppuccin-mocha .button.is-info.is-inverted{background-color:rgba(0,0,0,0.7);color:#94e2d5}html.theme--catppuccin-mocha .button.is-info.is-inverted:hover,html.theme--catppuccin-mocha .button.is-info.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-info.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-info.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#94e2d5}html.theme--catppuccin-mocha .button.is-info.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-mocha .button.is-info.is-outlined{background-color:transparent;border-color:#94e2d5;color:#94e2d5}html.theme--catppuccin-mocha .button.is-info.is-outlined:hover,html.theme--catppuccin-mocha .button.is-info.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-info.is-outlined:focus,html.theme--catppuccin-mocha .button.is-info.is-outlined.is-focused{background-color:#94e2d5;border-color:#94e2d5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #94e2d5 #94e2d5 !important}html.theme--catppuccin-mocha .button.is-info.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-info.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-info.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-info.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-mocha .button.is-info.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-info.is-outlined{background-color:transparent;border-color:#94e2d5;box-shadow:none;color:#94e2d5}html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#94e2d5}html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #94e2d5 #94e2d5 !important}html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-info.is-light{background-color:#effbf9;color:#207466}html.theme--catppuccin-mocha .button.is-info.is-light:hover,html.theme--catppuccin-mocha .button.is-info.is-light.is-hovered{background-color:#e5f8f5;border-color:transparent;color:#207466}html.theme--catppuccin-mocha .button.is-info.is-light:active,html.theme--catppuccin-mocha .button.is-info.is-light.is-active{background-color:#dbf5f1;border-color:transparent;color:#207466}html.theme--catppuccin-mocha .button.is-success{background-color:#a6e3a1;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-success:hover,html.theme--catppuccin-mocha .button.is-success.is-hovered{background-color:#9de097;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-success:focus,html.theme--catppuccin-mocha .button.is-success.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-success:focus:not(:active),html.theme--catppuccin-mocha .button.is-success.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(166,227,161,0.25)}html.theme--catppuccin-mocha .button.is-success:active,html.theme--catppuccin-mocha .button.is-success.is-active{background-color:#93dd8d;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-success[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-success{background-color:#a6e3a1;border-color:#a6e3a1;box-shadow:none}html.theme--catppuccin-mocha .button.is-success.is-inverted{background-color:rgba(0,0,0,0.7);color:#a6e3a1}html.theme--catppuccin-mocha .button.is-success.is-inverted:hover,html.theme--catppuccin-mocha .button.is-success.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-success.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-success.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#a6e3a1}html.theme--catppuccin-mocha .button.is-success.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-mocha .button.is-success.is-outlined{background-color:transparent;border-color:#a6e3a1;color:#a6e3a1}html.theme--catppuccin-mocha .button.is-success.is-outlined:hover,html.theme--catppuccin-mocha .button.is-success.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-success.is-outlined:focus,html.theme--catppuccin-mocha .button.is-success.is-outlined.is-focused{background-color:#a6e3a1;border-color:#a6e3a1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #a6e3a1 #a6e3a1 !important}html.theme--catppuccin-mocha .button.is-success.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-success.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-success.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-success.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-mocha .button.is-success.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-success.is-outlined{background-color:transparent;border-color:#a6e3a1;box-shadow:none;color:#a6e3a1}html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#a6e3a1}html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #a6e3a1 #a6e3a1 !important}html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-success.is-light{background-color:#f0faef;color:#287222}html.theme--catppuccin-mocha .button.is-success.is-light:hover,html.theme--catppuccin-mocha .button.is-success.is-light.is-hovered{background-color:#e7f7e5;border-color:transparent;color:#287222}html.theme--catppuccin-mocha .button.is-success.is-light:active,html.theme--catppuccin-mocha .button.is-success.is-light.is-active{background-color:#def4dc;border-color:transparent;color:#287222}html.theme--catppuccin-mocha .button.is-warning{background-color:#f9e2af;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-warning:hover,html.theme--catppuccin-mocha .button.is-warning.is-hovered{background-color:#f8dea3;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-warning:focus,html.theme--catppuccin-mocha .button.is-warning.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-warning:focus:not(:active),html.theme--catppuccin-mocha .button.is-warning.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(249,226,175,0.25)}html.theme--catppuccin-mocha .button.is-warning:active,html.theme--catppuccin-mocha .button.is-warning.is-active{background-color:#f7d997;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-warning[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-warning{background-color:#f9e2af;border-color:#f9e2af;box-shadow:none}html.theme--catppuccin-mocha .button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);color:#f9e2af}html.theme--catppuccin-mocha .button.is-warning.is-inverted:hover,html.theme--catppuccin-mocha .button.is-warning.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-warning.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#f9e2af}html.theme--catppuccin-mocha .button.is-warning.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--catppuccin-mocha .button.is-warning.is-outlined{background-color:transparent;border-color:#f9e2af;color:#f9e2af}html.theme--catppuccin-mocha .button.is-warning.is-outlined:hover,html.theme--catppuccin-mocha .button.is-warning.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-warning.is-outlined:focus,html.theme--catppuccin-mocha .button.is-warning.is-outlined.is-focused{background-color:#f9e2af;border-color:#f9e2af;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #f9e2af #f9e2af !important}html.theme--catppuccin-mocha .button.is-warning.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-warning.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-warning.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .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}html.theme--catppuccin-mocha .button.is-warning.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-warning.is-outlined{background-color:transparent;border-color:#f9e2af;box-shadow:none;color:#f9e2af}html.theme--catppuccin-mocha .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)}html.theme--catppuccin-mocha .button.is-warning.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .button.is-warning.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-warning.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .button.is-warning.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#f9e2af}html.theme--catppuccin-mocha .button.is-warning.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-warning.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-warning.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-warning.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #f9e2af #f9e2af !important}html.theme--catppuccin-mocha .button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .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)}html.theme--catppuccin-mocha .button.is-warning.is-light{background-color:#fef8ec;color:#8a620a}html.theme--catppuccin-mocha .button.is-warning.is-light:hover,html.theme--catppuccin-mocha .button.is-warning.is-light.is-hovered{background-color:#fdf4e0;border-color:transparent;color:#8a620a}html.theme--catppuccin-mocha .button.is-warning.is-light:active,html.theme--catppuccin-mocha .button.is-warning.is-light.is-active{background-color:#fcf0d4;border-color:transparent;color:#8a620a}html.theme--catppuccin-mocha .button.is-danger{background-color:#f38ba8;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-danger:hover,html.theme--catppuccin-mocha .button.is-danger.is-hovered{background-color:#f27f9f;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-danger:focus,html.theme--catppuccin-mocha .button.is-danger.is-focused{border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-danger:focus:not(:active),html.theme--catppuccin-mocha .button.is-danger.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(243,139,168,0.25)}html.theme--catppuccin-mocha .button.is-danger:active,html.theme--catppuccin-mocha .button.is-danger.is-active{background-color:#f17497;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .button.is-danger[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-danger{background-color:#f38ba8;border-color:#f38ba8;box-shadow:none}html.theme--catppuccin-mocha .button.is-danger.is-inverted{background-color:#fff;color:#f38ba8}html.theme--catppuccin-mocha .button.is-danger.is-inverted:hover,html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--catppuccin-mocha .button.is-danger.is-inverted[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-danger.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#f38ba8}html.theme--catppuccin-mocha .button.is-danger.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-danger.is-outlined{background-color:transparent;border-color:#f38ba8;color:#f38ba8}html.theme--catppuccin-mocha .button.is-danger.is-outlined:hover,html.theme--catppuccin-mocha .button.is-danger.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-danger.is-outlined:focus,html.theme--catppuccin-mocha .button.is-danger.is-outlined.is-focused{background-color:#f38ba8;border-color:#f38ba8;color:#fff}html.theme--catppuccin-mocha .button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #f38ba8 #f38ba8 !important}html.theme--catppuccin-mocha .button.is-danger.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-danger.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-danger.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-danger.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--catppuccin-mocha .button.is-danger.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-danger.is-outlined{background-color:transparent;border-color:#f38ba8;box-shadow:none;color:#f38ba8}html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined:hover,html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined.is-hovered,html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined:focus,html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined.is-focused{background-color:#fff;color:#f38ba8}html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined.is-loading:hover::after,html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined.is-loading:focus::after,html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #f38ba8 #f38ba8 !important}html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--catppuccin-mocha .button.is-danger.is-light{background-color:#fdedf1;color:#991036}html.theme--catppuccin-mocha .button.is-danger.is-light:hover,html.theme--catppuccin-mocha .button.is-danger.is-light.is-hovered{background-color:#fce1e8;border-color:transparent;color:#991036}html.theme--catppuccin-mocha .button.is-danger.is-light:active,html.theme--catppuccin-mocha .button.is-danger.is-light.is-active{background-color:#fbd5e0;border-color:transparent;color:#991036}html.theme--catppuccin-mocha .button.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.button{font-size:.75rem}html.theme--catppuccin-mocha .button.is-small:not(.is-rounded),html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.button:not(.is-rounded){border-radius:3px}html.theme--catppuccin-mocha .button.is-normal{font-size:1rem}html.theme--catppuccin-mocha .button.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .button.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .button[disabled],fieldset[disabled] html.theme--catppuccin-mocha .button{background-color:#6c7086;border-color:#585b70;box-shadow:none;opacity:.5}html.theme--catppuccin-mocha .button.is-fullwidth{display:flex;width:100%}html.theme--catppuccin-mocha .button.is-loading{color:transparent !important;pointer-events:none}html.theme--catppuccin-mocha .button.is-loading::after{position:absolute;left:calc(50% - (1em * 0.5));top:calc(50% - (1em * 0.5));position:absolute !important}html.theme--catppuccin-mocha .button.is-static{background-color:#181825;border-color:#585b70;color:#7f849c;box-shadow:none;pointer-events:none}html.theme--catppuccin-mocha .button.is-rounded,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.button{border-radius:9999px;padding-left:calc(1em + 0.25em);padding-right:calc(1em + 0.25em)}html.theme--catppuccin-mocha .buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-mocha .buttons .button{margin-bottom:0.5rem}html.theme--catppuccin-mocha .buttons .button:not(:last-child):not(.is-fullwidth){margin-right:.5rem}html.theme--catppuccin-mocha .buttons:last-child{margin-bottom:-0.5rem}html.theme--catppuccin-mocha .buttons:not(:last-child){margin-bottom:1rem}html.theme--catppuccin-mocha .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){font-size:.75rem}html.theme--catppuccin-mocha .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large):not(.is-rounded){border-radius:3px}html.theme--catppuccin-mocha .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}html.theme--catppuccin-mocha .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}html.theme--catppuccin-mocha .buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-mocha .buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}html.theme--catppuccin-mocha .buttons.has-addons .button:last-child{margin-right:0}html.theme--catppuccin-mocha .buttons.has-addons .button:hover,html.theme--catppuccin-mocha .buttons.has-addons .button.is-hovered{z-index:2}html.theme--catppuccin-mocha .buttons.has-addons .button:focus,html.theme--catppuccin-mocha .buttons.has-addons .button.is-focused,html.theme--catppuccin-mocha .buttons.has-addons .button:active,html.theme--catppuccin-mocha .buttons.has-addons .button.is-active,html.theme--catppuccin-mocha .buttons.has-addons .button.is-selected{z-index:3}html.theme--catppuccin-mocha .buttons.has-addons .button:focus:hover,html.theme--catppuccin-mocha .buttons.has-addons .button.is-focused:hover,html.theme--catppuccin-mocha .buttons.has-addons .button:active:hover,html.theme--catppuccin-mocha .buttons.has-addons .button.is-active:hover,html.theme--catppuccin-mocha .buttons.has-addons .button.is-selected:hover{z-index:4}html.theme--catppuccin-mocha .buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-mocha .buttons.is-centered{justify-content:center}html.theme--catppuccin-mocha .buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}html.theme--catppuccin-mocha .buttons.is-right{justify-content:flex-end}html.theme--catppuccin-mocha .buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .button.is-responsive.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.5625rem}html.theme--catppuccin-mocha .button.is-responsive,html.theme--catppuccin-mocha .button.is-responsive.is-normal{font-size:.65625rem}html.theme--catppuccin-mocha .button.is-responsive.is-medium{font-size:.75rem}html.theme--catppuccin-mocha .button.is-responsive.is-large{font-size:1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-mocha .button.is-responsive.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.65625rem}html.theme--catppuccin-mocha .button.is-responsive,html.theme--catppuccin-mocha .button.is-responsive.is-normal{font-size:.75rem}html.theme--catppuccin-mocha .button.is-responsive.is-medium{font-size:1rem}html.theme--catppuccin-mocha .button.is-responsive.is-large{font-size:1.25rem}}html.theme--catppuccin-mocha .container{flex-grow:1;margin:0 auto;position:relative;width:auto}html.theme--catppuccin-mocha .container.is-fluid{max-width:none !important;padding-left:32px;padding-right:32px;width:100%}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .container{max-width:992px}}@media screen and (max-width: 1215px){html.theme--catppuccin-mocha .container.is-widescreen:not(.is-max-desktop){max-width:1152px}}@media screen and (max-width: 1407px){html.theme--catppuccin-mocha .container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .container:not(.is-max-desktop){max-width:1152px}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .container:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}html.theme--catppuccin-mocha .content li+li{margin-top:0.25em}html.theme--catppuccin-mocha .content p:not(:last-child),html.theme--catppuccin-mocha .content dl:not(:last-child),html.theme--catppuccin-mocha .content ol:not(:last-child),html.theme--catppuccin-mocha .content ul:not(:last-child),html.theme--catppuccin-mocha .content blockquote:not(:last-child),html.theme--catppuccin-mocha .content pre:not(:last-child),html.theme--catppuccin-mocha .content table:not(:last-child){margin-bottom:1em}html.theme--catppuccin-mocha .content h1,html.theme--catppuccin-mocha .content h2,html.theme--catppuccin-mocha .content h3,html.theme--catppuccin-mocha .content h4,html.theme--catppuccin-mocha .content h5,html.theme--catppuccin-mocha .content h6{color:#cdd6f4;font-weight:600;line-height:1.125}html.theme--catppuccin-mocha .content h1{font-size:2em;margin-bottom:0.5em}html.theme--catppuccin-mocha .content h1:not(:first-child){margin-top:1em}html.theme--catppuccin-mocha .content h2{font-size:1.75em;margin-bottom:0.5714em}html.theme--catppuccin-mocha .content h2:not(:first-child){margin-top:1.1428em}html.theme--catppuccin-mocha .content h3{font-size:1.5em;margin-bottom:0.6666em}html.theme--catppuccin-mocha .content h3:not(:first-child){margin-top:1.3333em}html.theme--catppuccin-mocha .content h4{font-size:1.25em;margin-bottom:0.8em}html.theme--catppuccin-mocha .content h5{font-size:1.125em;margin-bottom:0.8888em}html.theme--catppuccin-mocha .content h6{font-size:1em;margin-bottom:1em}html.theme--catppuccin-mocha .content blockquote{background-color:#181825;border-left:5px solid #585b70;padding:1.25em 1.5em}html.theme--catppuccin-mocha .content ol{list-style-position:outside;margin-left:2em;margin-top:1em}html.theme--catppuccin-mocha .content ol:not([type]){list-style-type:decimal}html.theme--catppuccin-mocha .content ol.is-lower-alpha:not([type]){list-style-type:lower-alpha}html.theme--catppuccin-mocha .content ol.is-lower-roman:not([type]){list-style-type:lower-roman}html.theme--catppuccin-mocha .content ol.is-upper-alpha:not([type]){list-style-type:upper-alpha}html.theme--catppuccin-mocha .content ol.is-upper-roman:not([type]){list-style-type:upper-roman}html.theme--catppuccin-mocha .content ul{list-style:disc outside;margin-left:2em;margin-top:1em}html.theme--catppuccin-mocha .content ul ul{list-style-type:circle;margin-top:0.5em}html.theme--catppuccin-mocha .content ul ul ul{list-style-type:square}html.theme--catppuccin-mocha .content dd{margin-left:2em}html.theme--catppuccin-mocha .content figure{margin-left:2em;margin-right:2em;text-align:center}html.theme--catppuccin-mocha .content figure:not(:first-child){margin-top:2em}html.theme--catppuccin-mocha .content figure:not(:last-child){margin-bottom:2em}html.theme--catppuccin-mocha .content figure img{display:inline-block}html.theme--catppuccin-mocha .content figure figcaption{font-style:italic}html.theme--catppuccin-mocha .content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:0;white-space:pre;word-wrap:normal}html.theme--catppuccin-mocha .content sup,html.theme--catppuccin-mocha .content sub{font-size:75%}html.theme--catppuccin-mocha .content table{width:100%}html.theme--catppuccin-mocha .content table td,html.theme--catppuccin-mocha .content table th{border:1px solid #585b70;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--catppuccin-mocha .content table th{color:#b8c5ef}html.theme--catppuccin-mocha .content table th:not([align]){text-align:inherit}html.theme--catppuccin-mocha .content table thead td,html.theme--catppuccin-mocha .content table thead th{border-width:0 0 2px;color:#b8c5ef}html.theme--catppuccin-mocha .content table tfoot td,html.theme--catppuccin-mocha .content table tfoot th{border-width:2px 0 0;color:#b8c5ef}html.theme--catppuccin-mocha .content table tbody tr:last-child td,html.theme--catppuccin-mocha .content table tbody tr:last-child th{border-bottom-width:0}html.theme--catppuccin-mocha .content .tabs li+li{margin-top:0}html.theme--catppuccin-mocha .content.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.content{font-size:.75rem}html.theme--catppuccin-mocha .content.is-normal{font-size:1rem}html.theme--catppuccin-mocha .content.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .content.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}html.theme--catppuccin-mocha .icon.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.icon{height:1rem;width:1rem}html.theme--catppuccin-mocha .icon.is-medium{height:2rem;width:2rem}html.theme--catppuccin-mocha .icon.is-large{height:3rem;width:3rem}html.theme--catppuccin-mocha .icon-text{align-items:flex-start;color:inherit;display:inline-flex;flex-wrap:wrap;line-height:1.5rem;vertical-align:top}html.theme--catppuccin-mocha .icon-text .icon{flex-grow:0;flex-shrink:0}html.theme--catppuccin-mocha .icon-text .icon:not(:last-child){margin-right:.25em}html.theme--catppuccin-mocha .icon-text .icon:not(:first-child){margin-left:.25em}html.theme--catppuccin-mocha div.icon-text{display:flex}html.theme--catppuccin-mocha .image,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img{display:block;position:relative}html.theme--catppuccin-mocha .image img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img img{display:block;height:auto;width:100%}html.theme--catppuccin-mocha .image img.is-rounded,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img img.is-rounded{border-radius:9999px}html.theme--catppuccin-mocha .image.is-fullwidth,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-fullwidth{width:100%}html.theme--catppuccin-mocha .image.is-square img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--catppuccin-mocha .image.is-square .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--catppuccin-mocha .image.is-1by1 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--catppuccin-mocha .image.is-1by1 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--catppuccin-mocha .image.is-5by4 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--catppuccin-mocha .image.is-5by4 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--catppuccin-mocha .image.is-4by3 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--catppuccin-mocha .image.is-4by3 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--catppuccin-mocha .image.is-3by2 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--catppuccin-mocha .image.is-3by2 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--catppuccin-mocha .image.is-5by3 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--catppuccin-mocha .image.is-5by3 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--catppuccin-mocha .image.is-16by9 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--catppuccin-mocha .image.is-16by9 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--catppuccin-mocha .image.is-2by1 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--catppuccin-mocha .image.is-2by1 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--catppuccin-mocha .image.is-3by1 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--catppuccin-mocha .image.is-3by1 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--catppuccin-mocha .image.is-4by5 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--catppuccin-mocha .image.is-4by5 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--catppuccin-mocha .image.is-3by4 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--catppuccin-mocha .image.is-3by4 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--catppuccin-mocha .image.is-2by3 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--catppuccin-mocha .image.is-2by3 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--catppuccin-mocha .image.is-3by5 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--catppuccin-mocha .image.is-3by5 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--catppuccin-mocha .image.is-9by16 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--catppuccin-mocha .image.is-9by16 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--catppuccin-mocha .image.is-1by2 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--catppuccin-mocha .image.is-1by2 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--catppuccin-mocha .image.is-1by3 img,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--catppuccin-mocha .image.is-1by3 .has-ratio,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio{height:100%;width:100%}html.theme--catppuccin-mocha .image.is-square,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-square,html.theme--catppuccin-mocha .image.is-1by1,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by1{padding-top:100%}html.theme--catppuccin-mocha .image.is-5by4,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-5by4{padding-top:80%}html.theme--catppuccin-mocha .image.is-4by3,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-4by3{padding-top:75%}html.theme--catppuccin-mocha .image.is-3by2,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by2{padding-top:66.6666%}html.theme--catppuccin-mocha .image.is-5by3,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-5by3{padding-top:60%}html.theme--catppuccin-mocha .image.is-16by9,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-16by9{padding-top:56.25%}html.theme--catppuccin-mocha .image.is-2by1,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-2by1{padding-top:50%}html.theme--catppuccin-mocha .image.is-3by1,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by1{padding-top:33.3333%}html.theme--catppuccin-mocha .image.is-4by5,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-4by5{padding-top:125%}html.theme--catppuccin-mocha .image.is-3by4,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by4{padding-top:133.3333%}html.theme--catppuccin-mocha .image.is-2by3,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-2by3{padding-top:150%}html.theme--catppuccin-mocha .image.is-3by5,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-3by5{padding-top:166.6666%}html.theme--catppuccin-mocha .image.is-9by16,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-9by16{padding-top:177.7777%}html.theme--catppuccin-mocha .image.is-1by2,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by2{padding-top:200%}html.theme--catppuccin-mocha .image.is-1by3,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-1by3{padding-top:300%}html.theme--catppuccin-mocha .image.is-16x16,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-16x16{height:16px;width:16px}html.theme--catppuccin-mocha .image.is-24x24,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-24x24{height:24px;width:24px}html.theme--catppuccin-mocha .image.is-32x32,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-32x32{height:32px;width:32px}html.theme--catppuccin-mocha .image.is-48x48,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-48x48{height:48px;width:48px}html.theme--catppuccin-mocha .image.is-64x64,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-64x64{height:64px;width:64px}html.theme--catppuccin-mocha .image.is-96x96,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-96x96{height:96px;width:96px}html.theme--catppuccin-mocha .image.is-128x128,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img.is-128x128{height:128px;width:128px}html.theme--catppuccin-mocha .notification{background-color:#181825;border-radius:.4em;position:relative;padding:1.25rem 2.5rem 1.25rem 1.5rem}html.theme--catppuccin-mocha .notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--catppuccin-mocha .notification strong{color:currentColor}html.theme--catppuccin-mocha .notification code,html.theme--catppuccin-mocha .notification pre{background:#fff}html.theme--catppuccin-mocha .notification pre code{background:transparent}html.theme--catppuccin-mocha .notification>.delete{right:.5rem;position:absolute;top:0.5rem}html.theme--catppuccin-mocha .notification .title,html.theme--catppuccin-mocha .notification .subtitle,html.theme--catppuccin-mocha .notification .content{color:currentColor}html.theme--catppuccin-mocha .notification.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .notification.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .notification.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .notification.is-dark,html.theme--catppuccin-mocha .content kbd.notification{background-color:#313244;color:#fff}html.theme--catppuccin-mocha .notification.is-primary,html.theme--catppuccin-mocha .docstring>section>a.notification.docs-sourcelink{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .notification.is-primary.is-light,html.theme--catppuccin-mocha .docstring>section>a.notification.is-light.docs-sourcelink{background-color:#ebf3fe;color:#063c93}html.theme--catppuccin-mocha .notification.is-link{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .notification.is-link.is-light{background-color:#ebf3fe;color:#063c93}html.theme--catppuccin-mocha .notification.is-info{background-color:#94e2d5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .notification.is-info.is-light{background-color:#effbf9;color:#207466}html.theme--catppuccin-mocha .notification.is-success{background-color:#a6e3a1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .notification.is-success.is-light{background-color:#f0faef;color:#287222}html.theme--catppuccin-mocha .notification.is-warning{background-color:#f9e2af;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .notification.is-warning.is-light{background-color:#fef8ec;color:#8a620a}html.theme--catppuccin-mocha .notification.is-danger{background-color:#f38ba8;color:#fff}html.theme--catppuccin-mocha .notification.is-danger.is-light{background-color:#fdedf1;color:#991036}html.theme--catppuccin-mocha .progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:9999px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}html.theme--catppuccin-mocha .progress::-webkit-progress-bar{background-color:#45475a}html.theme--catppuccin-mocha .progress::-webkit-progress-value{background-color:#7f849c}html.theme--catppuccin-mocha .progress::-moz-progress-bar{background-color:#7f849c}html.theme--catppuccin-mocha .progress::-ms-fill{background-color:#7f849c;border:none}html.theme--catppuccin-mocha .progress.is-white::-webkit-progress-value{background-color:#fff}html.theme--catppuccin-mocha .progress.is-white::-moz-progress-bar{background-color:#fff}html.theme--catppuccin-mocha .progress.is-white::-ms-fill{background-color:#fff}html.theme--catppuccin-mocha .progress.is-white:indeterminate{background-image:linear-gradient(to right, #fff 30%, #45475a 30%)}html.theme--catppuccin-mocha .progress.is-black::-webkit-progress-value{background-color:#0a0a0a}html.theme--catppuccin-mocha .progress.is-black::-moz-progress-bar{background-color:#0a0a0a}html.theme--catppuccin-mocha .progress.is-black::-ms-fill{background-color:#0a0a0a}html.theme--catppuccin-mocha .progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #45475a 30%)}html.theme--catppuccin-mocha .progress.is-light::-webkit-progress-value{background-color:#f5f5f5}html.theme--catppuccin-mocha .progress.is-light::-moz-progress-bar{background-color:#f5f5f5}html.theme--catppuccin-mocha .progress.is-light::-ms-fill{background-color:#f5f5f5}html.theme--catppuccin-mocha .progress.is-light:indeterminate{background-image:linear-gradient(to right, #f5f5f5 30%, #45475a 30%)}html.theme--catppuccin-mocha .progress.is-dark::-webkit-progress-value,html.theme--catppuccin-mocha .content kbd.progress::-webkit-progress-value{background-color:#313244}html.theme--catppuccin-mocha .progress.is-dark::-moz-progress-bar,html.theme--catppuccin-mocha .content kbd.progress::-moz-progress-bar{background-color:#313244}html.theme--catppuccin-mocha .progress.is-dark::-ms-fill,html.theme--catppuccin-mocha .content kbd.progress::-ms-fill{background-color:#313244}html.theme--catppuccin-mocha .progress.is-dark:indeterminate,html.theme--catppuccin-mocha .content kbd.progress:indeterminate{background-image:linear-gradient(to right, #313244 30%, #45475a 30%)}html.theme--catppuccin-mocha .progress.is-primary::-webkit-progress-value,html.theme--catppuccin-mocha .docstring>section>a.progress.docs-sourcelink::-webkit-progress-value{background-color:#89b4fa}html.theme--catppuccin-mocha .progress.is-primary::-moz-progress-bar,html.theme--catppuccin-mocha .docstring>section>a.progress.docs-sourcelink::-moz-progress-bar{background-color:#89b4fa}html.theme--catppuccin-mocha .progress.is-primary::-ms-fill,html.theme--catppuccin-mocha .docstring>section>a.progress.docs-sourcelink::-ms-fill{background-color:#89b4fa}html.theme--catppuccin-mocha .progress.is-primary:indeterminate,html.theme--catppuccin-mocha .docstring>section>a.progress.docs-sourcelink:indeterminate{background-image:linear-gradient(to right, #89b4fa 30%, #45475a 30%)}html.theme--catppuccin-mocha .progress.is-link::-webkit-progress-value{background-color:#89b4fa}html.theme--catppuccin-mocha .progress.is-link::-moz-progress-bar{background-color:#89b4fa}html.theme--catppuccin-mocha .progress.is-link::-ms-fill{background-color:#89b4fa}html.theme--catppuccin-mocha .progress.is-link:indeterminate{background-image:linear-gradient(to right, #89b4fa 30%, #45475a 30%)}html.theme--catppuccin-mocha .progress.is-info::-webkit-progress-value{background-color:#94e2d5}html.theme--catppuccin-mocha .progress.is-info::-moz-progress-bar{background-color:#94e2d5}html.theme--catppuccin-mocha .progress.is-info::-ms-fill{background-color:#94e2d5}html.theme--catppuccin-mocha .progress.is-info:indeterminate{background-image:linear-gradient(to right, #94e2d5 30%, #45475a 30%)}html.theme--catppuccin-mocha .progress.is-success::-webkit-progress-value{background-color:#a6e3a1}html.theme--catppuccin-mocha .progress.is-success::-moz-progress-bar{background-color:#a6e3a1}html.theme--catppuccin-mocha .progress.is-success::-ms-fill{background-color:#a6e3a1}html.theme--catppuccin-mocha .progress.is-success:indeterminate{background-image:linear-gradient(to right, #a6e3a1 30%, #45475a 30%)}html.theme--catppuccin-mocha .progress.is-warning::-webkit-progress-value{background-color:#f9e2af}html.theme--catppuccin-mocha .progress.is-warning::-moz-progress-bar{background-color:#f9e2af}html.theme--catppuccin-mocha .progress.is-warning::-ms-fill{background-color:#f9e2af}html.theme--catppuccin-mocha .progress.is-warning:indeterminate{background-image:linear-gradient(to right, #f9e2af 30%, #45475a 30%)}html.theme--catppuccin-mocha .progress.is-danger::-webkit-progress-value{background-color:#f38ba8}html.theme--catppuccin-mocha .progress.is-danger::-moz-progress-bar{background-color:#f38ba8}html.theme--catppuccin-mocha .progress.is-danger::-ms-fill{background-color:#f38ba8}html.theme--catppuccin-mocha .progress.is-danger:indeterminate{background-image:linear-gradient(to right, #f38ba8 30%, #45475a 30%)}html.theme--catppuccin-mocha .progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#45475a;background-image:linear-gradient(to right, #cdd6f4 30%, #45475a 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}html.theme--catppuccin-mocha .progress:indeterminate::-webkit-progress-bar{background-color:transparent}html.theme--catppuccin-mocha .progress:indeterminate::-moz-progress-bar{background-color:transparent}html.theme--catppuccin-mocha .progress:indeterminate::-ms-fill{animation-name:none}html.theme--catppuccin-mocha .progress.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.progress{height:.75rem}html.theme--catppuccin-mocha .progress.is-medium{height:1.25rem}html.theme--catppuccin-mocha .progress.is-large{height:1.5rem}@keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}html.theme--catppuccin-mocha .table{background-color:#45475a;color:#cdd6f4}html.theme--catppuccin-mocha .table td,html.theme--catppuccin-mocha .table th{border:1px solid #585b70;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--catppuccin-mocha .table td.is-white,html.theme--catppuccin-mocha .table th.is-white{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .table td.is-black,html.theme--catppuccin-mocha .table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .table td.is-light,html.theme--catppuccin-mocha .table th.is-light{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .table td.is-dark,html.theme--catppuccin-mocha .table th.is-dark{background-color:#313244;border-color:#313244;color:#fff}html.theme--catppuccin-mocha .table td.is-primary,html.theme--catppuccin-mocha .table th.is-primary{background-color:#89b4fa;border-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .table td.is-link,html.theme--catppuccin-mocha .table th.is-link{background-color:#89b4fa;border-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .table td.is-info,html.theme--catppuccin-mocha .table th.is-info{background-color:#94e2d5;border-color:#94e2d5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .table td.is-success,html.theme--catppuccin-mocha .table th.is-success{background-color:#a6e3a1;border-color:#a6e3a1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .table td.is-warning,html.theme--catppuccin-mocha .table th.is-warning{background-color:#f9e2af;border-color:#f9e2af;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .table td.is-danger,html.theme--catppuccin-mocha .table th.is-danger{background-color:#f38ba8;border-color:#f38ba8;color:#fff}html.theme--catppuccin-mocha .table td.is-narrow,html.theme--catppuccin-mocha .table th.is-narrow{white-space:nowrap;width:1%}html.theme--catppuccin-mocha .table td.is-selected,html.theme--catppuccin-mocha .table th.is-selected{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .table td.is-selected a,html.theme--catppuccin-mocha .table td.is-selected strong,html.theme--catppuccin-mocha .table th.is-selected a,html.theme--catppuccin-mocha .table th.is-selected strong{color:currentColor}html.theme--catppuccin-mocha .table td.is-vcentered,html.theme--catppuccin-mocha .table th.is-vcentered{vertical-align:middle}html.theme--catppuccin-mocha .table th{color:#b8c5ef}html.theme--catppuccin-mocha .table th:not([align]){text-align:left}html.theme--catppuccin-mocha .table tr.is-selected{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .table tr.is-selected a,html.theme--catppuccin-mocha .table tr.is-selected strong{color:currentColor}html.theme--catppuccin-mocha .table tr.is-selected td,html.theme--catppuccin-mocha .table tr.is-selected th{border-color:#fff;color:currentColor}html.theme--catppuccin-mocha .table thead{background-color:rgba(0,0,0,0)}html.theme--catppuccin-mocha .table thead td,html.theme--catppuccin-mocha .table thead th{border-width:0 0 2px;color:#b8c5ef}html.theme--catppuccin-mocha .table tfoot{background-color:rgba(0,0,0,0)}html.theme--catppuccin-mocha .table tfoot td,html.theme--catppuccin-mocha .table tfoot th{border-width:2px 0 0;color:#b8c5ef}html.theme--catppuccin-mocha .table tbody{background-color:rgba(0,0,0,0)}html.theme--catppuccin-mocha .table tbody tr:last-child td,html.theme--catppuccin-mocha .table tbody tr:last-child th{border-bottom-width:0}html.theme--catppuccin-mocha .table.is-bordered td,html.theme--catppuccin-mocha .table.is-bordered th{border-width:1px}html.theme--catppuccin-mocha .table.is-bordered tr:last-child td,html.theme--catppuccin-mocha .table.is-bordered tr:last-child th{border-bottom-width:1px}html.theme--catppuccin-mocha .table.is-fullwidth{width:100%}html.theme--catppuccin-mocha .table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#313244}html.theme--catppuccin-mocha .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#313244}html.theme--catppuccin-mocha .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:#35364a}html.theme--catppuccin-mocha .table.is-narrow td,html.theme--catppuccin-mocha .table.is-narrow th{padding:0.25em 0.5em}html.theme--catppuccin-mocha .table.is-striped tbody tr:not(.is-selected):nth-child(even){background-color:#313244}html.theme--catppuccin-mocha .table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}html.theme--catppuccin-mocha .tags{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-mocha .tags .tag,html.theme--catppuccin-mocha .tags .content kbd,html.theme--catppuccin-mocha .content .tags kbd,html.theme--catppuccin-mocha .tags .docstring>section>a.docs-sourcelink{margin-bottom:0.5rem}html.theme--catppuccin-mocha .tags .tag:not(:last-child),html.theme--catppuccin-mocha .tags .content kbd:not(:last-child),html.theme--catppuccin-mocha .content .tags kbd:not(:last-child),html.theme--catppuccin-mocha .tags .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:.5rem}html.theme--catppuccin-mocha .tags:last-child{margin-bottom:-0.5rem}html.theme--catppuccin-mocha .tags:not(:last-child){margin-bottom:1rem}html.theme--catppuccin-mocha .tags.are-medium .tag:not(.is-normal):not(.is-large),html.theme--catppuccin-mocha .tags.are-medium .content kbd:not(.is-normal):not(.is-large),html.theme--catppuccin-mocha .content .tags.are-medium kbd:not(.is-normal):not(.is-large),html.theme--catppuccin-mocha .tags.are-medium .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-large){font-size:1rem}html.theme--catppuccin-mocha .tags.are-large .tag:not(.is-normal):not(.is-medium),html.theme--catppuccin-mocha .tags.are-large .content kbd:not(.is-normal):not(.is-medium),html.theme--catppuccin-mocha .content .tags.are-large kbd:not(.is-normal):not(.is-medium),html.theme--catppuccin-mocha .tags.are-large .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-medium){font-size:1.25rem}html.theme--catppuccin-mocha .tags.is-centered{justify-content:center}html.theme--catppuccin-mocha .tags.is-centered .tag,html.theme--catppuccin-mocha .tags.is-centered .content kbd,html.theme--catppuccin-mocha .content .tags.is-centered kbd,html.theme--catppuccin-mocha .tags.is-centered .docstring>section>a.docs-sourcelink{margin-right:0.25rem;margin-left:0.25rem}html.theme--catppuccin-mocha .tags.is-right{justify-content:flex-end}html.theme--catppuccin-mocha .tags.is-right .tag:not(:first-child),html.theme--catppuccin-mocha .tags.is-right .content kbd:not(:first-child),html.theme--catppuccin-mocha .content .tags.is-right kbd:not(:first-child),html.theme--catppuccin-mocha .tags.is-right .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0.5rem}html.theme--catppuccin-mocha .tags.is-right .tag:not(:last-child),html.theme--catppuccin-mocha .tags.is-right .content kbd:not(:last-child),html.theme--catppuccin-mocha .content .tags.is-right kbd:not(:last-child),html.theme--catppuccin-mocha .tags.is-right .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0}html.theme--catppuccin-mocha .tags.has-addons .tag,html.theme--catppuccin-mocha .tags.has-addons .content kbd,html.theme--catppuccin-mocha .content .tags.has-addons kbd,html.theme--catppuccin-mocha .tags.has-addons .docstring>section>a.docs-sourcelink{margin-right:0}html.theme--catppuccin-mocha .tags.has-addons .tag:not(:first-child),html.theme--catppuccin-mocha .tags.has-addons .content kbd:not(:first-child),html.theme--catppuccin-mocha .content .tags.has-addons kbd:not(:first-child),html.theme--catppuccin-mocha .tags.has-addons .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}html.theme--catppuccin-mocha .tags.has-addons .tag:not(:last-child),html.theme--catppuccin-mocha .tags.has-addons .content kbd:not(:last-child),html.theme--catppuccin-mocha .content .tags.has-addons kbd:not(:last-child),html.theme--catppuccin-mocha .tags.has-addons .docstring>section>a.docs-sourcelink:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}html.theme--catppuccin-mocha .tag:not(body),html.theme--catppuccin-mocha .content kbd:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#181825;border-radius:.4em;color:#cdd6f4;display:inline-flex;font-size:.75rem;height:2em;justify-content:center;line-height:1.5;padding-left:0.75em;padding-right:0.75em;white-space:nowrap}html.theme--catppuccin-mocha .tag:not(body) .delete,html.theme--catppuccin-mocha .content kbd:not(body) .delete,html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink:not(body) .delete{margin-left:.25rem;margin-right:-.375rem}html.theme--catppuccin-mocha .tag.is-white:not(body),html.theme--catppuccin-mocha .content kbd.is-white:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .tag.is-black:not(body),html.theme--catppuccin-mocha .content kbd.is-black:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-black:not(body){background-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .tag.is-light:not(body),html.theme--catppuccin-mocha .content kbd.is-light:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .tag.is-dark:not(body),html.theme--catppuccin-mocha .content kbd:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-dark:not(body),html.theme--catppuccin-mocha .content .docstring>section>kbd:not(body){background-color:#313244;color:#fff}html.theme--catppuccin-mocha .tag.is-primary:not(body),html.theme--catppuccin-mocha .content kbd.is-primary:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink:not(body){background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .tag.is-primary.is-light:not(body),html.theme--catppuccin-mocha .content kbd.is-primary.is-light:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#ebf3fe;color:#063c93}html.theme--catppuccin-mocha .tag.is-link:not(body),html.theme--catppuccin-mocha .content kbd.is-link:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-link:not(body){background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .tag.is-link.is-light:not(body),html.theme--catppuccin-mocha .content kbd.is-link.is-light:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-link.is-light:not(body){background-color:#ebf3fe;color:#063c93}html.theme--catppuccin-mocha .tag.is-info:not(body),html.theme--catppuccin-mocha .content kbd.is-info:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-info:not(body){background-color:#94e2d5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .tag.is-info.is-light:not(body),html.theme--catppuccin-mocha .content kbd.is-info.is-light:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-info.is-light:not(body){background-color:#effbf9;color:#207466}html.theme--catppuccin-mocha .tag.is-success:not(body),html.theme--catppuccin-mocha .content kbd.is-success:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-success:not(body){background-color:#a6e3a1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .tag.is-success.is-light:not(body),html.theme--catppuccin-mocha .content kbd.is-success.is-light:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-success.is-light:not(body){background-color:#f0faef;color:#287222}html.theme--catppuccin-mocha .tag.is-warning:not(body),html.theme--catppuccin-mocha .content kbd.is-warning:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-warning:not(body){background-color:#f9e2af;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .tag.is-warning.is-light:not(body),html.theme--catppuccin-mocha .content kbd.is-warning.is-light:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-warning.is-light:not(body){background-color:#fef8ec;color:#8a620a}html.theme--catppuccin-mocha .tag.is-danger:not(body),html.theme--catppuccin-mocha .content kbd.is-danger:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-danger:not(body){background-color:#f38ba8;color:#fff}html.theme--catppuccin-mocha .tag.is-danger.is-light:not(body),html.theme--catppuccin-mocha .content kbd.is-danger.is-light:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-danger.is-light:not(body){background-color:#fdedf1;color:#991036}html.theme--catppuccin-mocha .tag.is-normal:not(body),html.theme--catppuccin-mocha .content kbd.is-normal:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.75rem}html.theme--catppuccin-mocha .tag.is-medium:not(body),html.theme--catppuccin-mocha .content kbd.is-medium:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-medium:not(body){font-size:1rem}html.theme--catppuccin-mocha .tag.is-large:not(body),html.theme--catppuccin-mocha .content kbd.is-large:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-large:not(body){font-size:1.25rem}html.theme--catppuccin-mocha .tag:not(body) .icon:first-child:not(:last-child),html.theme--catppuccin-mocha .content kbd:not(body) .icon:first-child:not(:last-child),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:not(:last-child){margin-left:-.375em;margin-right:.1875em}html.theme--catppuccin-mocha .tag:not(body) .icon:last-child:not(:first-child),html.theme--catppuccin-mocha .content kbd:not(body) .icon:last-child:not(:first-child),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink:not(body) .icon:last-child:not(:first-child){margin-left:.1875em;margin-right:-.375em}html.theme--catppuccin-mocha .tag:not(body) .icon:first-child:last-child,html.theme--catppuccin-mocha .content kbd:not(body) .icon:first-child:last-child,html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:last-child{margin-left:-.375em;margin-right:-.375em}html.theme--catppuccin-mocha .tag.is-delete:not(body),html.theme--catppuccin-mocha .content kbd.is-delete:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-delete:not(body){margin-left:1px;padding:0;position:relative;width:2em}html.theme--catppuccin-mocha .tag.is-delete:not(body)::before,html.theme--catppuccin-mocha .content kbd.is-delete:not(body)::before,html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-delete:not(body)::before,html.theme--catppuccin-mocha .tag.is-delete:not(body)::after,html.theme--catppuccin-mocha .content kbd.is-delete:not(body)::after,html.theme--catppuccin-mocha .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--catppuccin-mocha .tag.is-delete:not(body)::before,html.theme--catppuccin-mocha .content kbd.is-delete:not(body)::before,html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-delete:not(body)::before{height:1px;width:50%}html.theme--catppuccin-mocha .tag.is-delete:not(body)::after,html.theme--catppuccin-mocha .content kbd.is-delete:not(body)::after,html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-delete:not(body)::after{height:50%;width:1px}html.theme--catppuccin-mocha .tag.is-delete:not(body):hover,html.theme--catppuccin-mocha .content kbd.is-delete:not(body):hover,html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-delete:not(body):hover,html.theme--catppuccin-mocha .tag.is-delete:not(body):focus,html.theme--catppuccin-mocha .content kbd.is-delete:not(body):focus,html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-delete:not(body):focus{background-color:#0e0e16}html.theme--catppuccin-mocha .tag.is-delete:not(body):active,html.theme--catppuccin-mocha .content kbd.is-delete:not(body):active,html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-delete:not(body):active{background-color:#040406}html.theme--catppuccin-mocha .tag.is-rounded:not(body),html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input:not(body),html.theme--catppuccin-mocha .content kbd.is-rounded:not(body),html.theme--catppuccin-mocha #documenter .docs-sidebar .content form.docs-search>input:not(body),html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink.is-rounded:not(body){border-radius:9999px}html.theme--catppuccin-mocha a.tag:hover,html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink:hover{text-decoration:underline}html.theme--catppuccin-mocha .title,html.theme--catppuccin-mocha .subtitle{word-break:break-word}html.theme--catppuccin-mocha .title em,html.theme--catppuccin-mocha .title span,html.theme--catppuccin-mocha .subtitle em,html.theme--catppuccin-mocha .subtitle span{font-weight:inherit}html.theme--catppuccin-mocha .title sub,html.theme--catppuccin-mocha .subtitle sub{font-size:.75em}html.theme--catppuccin-mocha .title sup,html.theme--catppuccin-mocha .subtitle sup{font-size:.75em}html.theme--catppuccin-mocha .title .tag,html.theme--catppuccin-mocha .title .content kbd,html.theme--catppuccin-mocha .content .title kbd,html.theme--catppuccin-mocha .title .docstring>section>a.docs-sourcelink,html.theme--catppuccin-mocha .subtitle .tag,html.theme--catppuccin-mocha .subtitle .content kbd,html.theme--catppuccin-mocha .content .subtitle kbd,html.theme--catppuccin-mocha .subtitle .docstring>section>a.docs-sourcelink{vertical-align:middle}html.theme--catppuccin-mocha .title{color:#fff;font-size:2rem;font-weight:500;line-height:1.125}html.theme--catppuccin-mocha .title strong{color:inherit;font-weight:inherit}html.theme--catppuccin-mocha .title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}html.theme--catppuccin-mocha .title.is-1{font-size:3rem}html.theme--catppuccin-mocha .title.is-2{font-size:2.5rem}html.theme--catppuccin-mocha .title.is-3{font-size:2rem}html.theme--catppuccin-mocha .title.is-4{font-size:1.5rem}html.theme--catppuccin-mocha .title.is-5{font-size:1.25rem}html.theme--catppuccin-mocha .title.is-6{font-size:1rem}html.theme--catppuccin-mocha .title.is-7{font-size:.75rem}html.theme--catppuccin-mocha .subtitle{color:#6c7086;font-size:1.25rem;font-weight:400;line-height:1.25}html.theme--catppuccin-mocha .subtitle strong{color:#6c7086;font-weight:600}html.theme--catppuccin-mocha .subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}html.theme--catppuccin-mocha .subtitle.is-1{font-size:3rem}html.theme--catppuccin-mocha .subtitle.is-2{font-size:2.5rem}html.theme--catppuccin-mocha .subtitle.is-3{font-size:2rem}html.theme--catppuccin-mocha .subtitle.is-4{font-size:1.5rem}html.theme--catppuccin-mocha .subtitle.is-5{font-size:1.25rem}html.theme--catppuccin-mocha .subtitle.is-6{font-size:1rem}html.theme--catppuccin-mocha .subtitle.is-7{font-size:.75rem}html.theme--catppuccin-mocha .heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}html.theme--catppuccin-mocha .number{align-items:center;background-color:#181825;border-radius:9999px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:0.25rem 0.5rem;text-align:center;vertical-align:top}html.theme--catppuccin-mocha .select select,html.theme--catppuccin-mocha .textarea,html.theme--catppuccin-mocha .input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input{background-color:#1e1e2e;border-color:#585b70;border-radius:.4em;color:#7f849c}html.theme--catppuccin-mocha .select select::-moz-placeholder,html.theme--catppuccin-mocha .textarea::-moz-placeholder,html.theme--catppuccin-mocha .input::-moz-placeholder,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:#868c98}html.theme--catppuccin-mocha .select select::-webkit-input-placeholder,html.theme--catppuccin-mocha .textarea::-webkit-input-placeholder,html.theme--catppuccin-mocha .input::-webkit-input-placeholder,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:#868c98}html.theme--catppuccin-mocha .select select:-moz-placeholder,html.theme--catppuccin-mocha .textarea:-moz-placeholder,html.theme--catppuccin-mocha .input:-moz-placeholder,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:#868c98}html.theme--catppuccin-mocha .select select:-ms-input-placeholder,html.theme--catppuccin-mocha .textarea:-ms-input-placeholder,html.theme--catppuccin-mocha .input:-ms-input-placeholder,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:#868c98}html.theme--catppuccin-mocha .select select:hover,html.theme--catppuccin-mocha .textarea:hover,html.theme--catppuccin-mocha .input:hover,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input:hover,html.theme--catppuccin-mocha .select select.is-hovered,html.theme--catppuccin-mocha .is-hovered.textarea,html.theme--catppuccin-mocha .is-hovered.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-hovered{border-color:#6c7086}html.theme--catppuccin-mocha .select select:focus,html.theme--catppuccin-mocha .textarea:focus,html.theme--catppuccin-mocha .input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input:focus,html.theme--catppuccin-mocha .select select.is-focused,html.theme--catppuccin-mocha .is-focused.textarea,html.theme--catppuccin-mocha .is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .select select:active,html.theme--catppuccin-mocha .textarea:active,html.theme--catppuccin-mocha .input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input:active,html.theme--catppuccin-mocha .select select.is-active,html.theme--catppuccin-mocha .is-active.textarea,html.theme--catppuccin-mocha .is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active{border-color:#89b4fa;box-shadow:0 0 0 0.125em rgba(137,180,250,0.25)}html.theme--catppuccin-mocha .select select[disabled],html.theme--catppuccin-mocha .textarea[disabled],html.theme--catppuccin-mocha .input[disabled],html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input[disabled],fieldset[disabled] html.theme--catppuccin-mocha .select select,fieldset[disabled] html.theme--catppuccin-mocha .textarea,fieldset[disabled] html.theme--catppuccin-mocha .input,fieldset[disabled] html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input{background-color:#6c7086;border-color:#181825;box-shadow:none;color:#f7f8fd}html.theme--catppuccin-mocha .select select[disabled]::-moz-placeholder,html.theme--catppuccin-mocha .textarea[disabled]::-moz-placeholder,html.theme--catppuccin-mocha .input[disabled]::-moz-placeholder,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input[disabled]::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .select select::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .textarea::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .input::-moz-placeholder,fieldset[disabled] html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:rgba(247,248,253,0.3)}html.theme--catppuccin-mocha .select select[disabled]::-webkit-input-placeholder,html.theme--catppuccin-mocha .textarea[disabled]::-webkit-input-placeholder,html.theme--catppuccin-mocha .input[disabled]::-webkit-input-placeholder,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input[disabled]::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .select select::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .textarea::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .input::-webkit-input-placeholder,fieldset[disabled] html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:rgba(247,248,253,0.3)}html.theme--catppuccin-mocha .select select[disabled]:-moz-placeholder,html.theme--catppuccin-mocha .textarea[disabled]:-moz-placeholder,html.theme--catppuccin-mocha .input[disabled]:-moz-placeholder,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input[disabled]:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .select select:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .textarea:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .input:-moz-placeholder,fieldset[disabled] html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:rgba(247,248,253,0.3)}html.theme--catppuccin-mocha .select select[disabled]:-ms-input-placeholder,html.theme--catppuccin-mocha .textarea[disabled]:-ms-input-placeholder,html.theme--catppuccin-mocha .input[disabled]:-ms-input-placeholder,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input[disabled]:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .select select:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .textarea:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-mocha .input:-ms-input-placeholder,fieldset[disabled] html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:rgba(247,248,253,0.3)}html.theme--catppuccin-mocha .textarea,html.theme--catppuccin-mocha .input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input{box-shadow:inset 0 0.0625em 0.125em rgba(10,10,10,0.05);max-width:100%;width:100%}html.theme--catppuccin-mocha .textarea[readonly],html.theme--catppuccin-mocha .input[readonly],html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input[readonly]{box-shadow:none}html.theme--catppuccin-mocha .is-white.textarea,html.theme--catppuccin-mocha .is-white.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-white{border-color:#fff}html.theme--catppuccin-mocha .is-white.textarea:focus,html.theme--catppuccin-mocha .is-white.input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-white:focus,html.theme--catppuccin-mocha .is-white.is-focused.textarea,html.theme--catppuccin-mocha .is-white.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .is-white.textarea:active,html.theme--catppuccin-mocha .is-white.input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-white:active,html.theme--catppuccin-mocha .is-white.is-active.textarea,html.theme--catppuccin-mocha .is-white.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-mocha .is-black.textarea,html.theme--catppuccin-mocha .is-black.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-black{border-color:#0a0a0a}html.theme--catppuccin-mocha .is-black.textarea:focus,html.theme--catppuccin-mocha .is-black.input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-black:focus,html.theme--catppuccin-mocha .is-black.is-focused.textarea,html.theme--catppuccin-mocha .is-black.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .is-black.textarea:active,html.theme--catppuccin-mocha .is-black.input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-black:active,html.theme--catppuccin-mocha .is-black.is-active.textarea,html.theme--catppuccin-mocha .is-black.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-mocha .is-light.textarea,html.theme--catppuccin-mocha .is-light.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-light{border-color:#f5f5f5}html.theme--catppuccin-mocha .is-light.textarea:focus,html.theme--catppuccin-mocha .is-light.input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-light:focus,html.theme--catppuccin-mocha .is-light.is-focused.textarea,html.theme--catppuccin-mocha .is-light.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .is-light.textarea:active,html.theme--catppuccin-mocha .is-light.input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-light:active,html.theme--catppuccin-mocha .is-light.is-active.textarea,html.theme--catppuccin-mocha .is-light.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-mocha .is-dark.textarea,html.theme--catppuccin-mocha .content kbd.textarea,html.theme--catppuccin-mocha .is-dark.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-dark,html.theme--catppuccin-mocha .content kbd.input{border-color:#313244}html.theme--catppuccin-mocha .is-dark.textarea:focus,html.theme--catppuccin-mocha .content kbd.textarea:focus,html.theme--catppuccin-mocha .is-dark.input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-dark:focus,html.theme--catppuccin-mocha .content kbd.input:focus,html.theme--catppuccin-mocha .is-dark.is-focused.textarea,html.theme--catppuccin-mocha .content kbd.is-focused.textarea,html.theme--catppuccin-mocha .is-dark.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .content kbd.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar .content form.docs-search>input.is-focused,html.theme--catppuccin-mocha .is-dark.textarea:active,html.theme--catppuccin-mocha .content kbd.textarea:active,html.theme--catppuccin-mocha .is-dark.input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-dark:active,html.theme--catppuccin-mocha .content kbd.input:active,html.theme--catppuccin-mocha .is-dark.is-active.textarea,html.theme--catppuccin-mocha .content kbd.is-active.textarea,html.theme--catppuccin-mocha .is-dark.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-mocha .content kbd.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar .content form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(49,50,68,0.25)}html.theme--catppuccin-mocha .is-primary.textarea,html.theme--catppuccin-mocha .docstring>section>a.textarea.docs-sourcelink,html.theme--catppuccin-mocha .is-primary.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-primary,html.theme--catppuccin-mocha .docstring>section>a.input.docs-sourcelink{border-color:#89b4fa}html.theme--catppuccin-mocha .is-primary.textarea:focus,html.theme--catppuccin-mocha .docstring>section>a.textarea.docs-sourcelink:focus,html.theme--catppuccin-mocha .is-primary.input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-primary:focus,html.theme--catppuccin-mocha .docstring>section>a.input.docs-sourcelink:focus,html.theme--catppuccin-mocha .is-primary.is-focused.textarea,html.theme--catppuccin-mocha .docstring>section>a.is-focused.textarea.docs-sourcelink,html.theme--catppuccin-mocha .is-primary.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .docstring>section>a.is-focused.input.docs-sourcelink,html.theme--catppuccin-mocha .is-primary.textarea:active,html.theme--catppuccin-mocha .docstring>section>a.textarea.docs-sourcelink:active,html.theme--catppuccin-mocha .is-primary.input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-primary:active,html.theme--catppuccin-mocha .docstring>section>a.input.docs-sourcelink:active,html.theme--catppuccin-mocha .is-primary.is-active.textarea,html.theme--catppuccin-mocha .docstring>section>a.is-active.textarea.docs-sourcelink,html.theme--catppuccin-mocha .is-primary.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--catppuccin-mocha .docstring>section>a.is-active.input.docs-sourcelink{box-shadow:0 0 0 0.125em rgba(137,180,250,0.25)}html.theme--catppuccin-mocha .is-link.textarea,html.theme--catppuccin-mocha .is-link.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-link{border-color:#89b4fa}html.theme--catppuccin-mocha .is-link.textarea:focus,html.theme--catppuccin-mocha .is-link.input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-link:focus,html.theme--catppuccin-mocha .is-link.is-focused.textarea,html.theme--catppuccin-mocha .is-link.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .is-link.textarea:active,html.theme--catppuccin-mocha .is-link.input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-link:active,html.theme--catppuccin-mocha .is-link.is-active.textarea,html.theme--catppuccin-mocha .is-link.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(137,180,250,0.25)}html.theme--catppuccin-mocha .is-info.textarea,html.theme--catppuccin-mocha .is-info.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-info{border-color:#94e2d5}html.theme--catppuccin-mocha .is-info.textarea:focus,html.theme--catppuccin-mocha .is-info.input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-info:focus,html.theme--catppuccin-mocha .is-info.is-focused.textarea,html.theme--catppuccin-mocha .is-info.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .is-info.textarea:active,html.theme--catppuccin-mocha .is-info.input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-info:active,html.theme--catppuccin-mocha .is-info.is-active.textarea,html.theme--catppuccin-mocha .is-info.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(148,226,213,0.25)}html.theme--catppuccin-mocha .is-success.textarea,html.theme--catppuccin-mocha .is-success.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-success{border-color:#a6e3a1}html.theme--catppuccin-mocha .is-success.textarea:focus,html.theme--catppuccin-mocha .is-success.input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-success:focus,html.theme--catppuccin-mocha .is-success.is-focused.textarea,html.theme--catppuccin-mocha .is-success.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .is-success.textarea:active,html.theme--catppuccin-mocha .is-success.input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-success:active,html.theme--catppuccin-mocha .is-success.is-active.textarea,html.theme--catppuccin-mocha .is-success.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(166,227,161,0.25)}html.theme--catppuccin-mocha .is-warning.textarea,html.theme--catppuccin-mocha .is-warning.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-warning{border-color:#f9e2af}html.theme--catppuccin-mocha .is-warning.textarea:focus,html.theme--catppuccin-mocha .is-warning.input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-warning:focus,html.theme--catppuccin-mocha .is-warning.is-focused.textarea,html.theme--catppuccin-mocha .is-warning.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .is-warning.textarea:active,html.theme--catppuccin-mocha .is-warning.input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-warning:active,html.theme--catppuccin-mocha .is-warning.is-active.textarea,html.theme--catppuccin-mocha .is-warning.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(249,226,175,0.25)}html.theme--catppuccin-mocha .is-danger.textarea,html.theme--catppuccin-mocha .is-danger.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-danger{border-color:#f38ba8}html.theme--catppuccin-mocha .is-danger.textarea:focus,html.theme--catppuccin-mocha .is-danger.input:focus,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-danger:focus,html.theme--catppuccin-mocha .is-danger.is-focused.textarea,html.theme--catppuccin-mocha .is-danger.is-focused.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--catppuccin-mocha .is-danger.textarea:active,html.theme--catppuccin-mocha .is-danger.input:active,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-danger:active,html.theme--catppuccin-mocha .is-danger.is-active.textarea,html.theme--catppuccin-mocha .is-danger.is-active.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(243,139,168,0.25)}html.theme--catppuccin-mocha .is-small.textarea,html.theme--catppuccin-mocha .is-small.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input{border-radius:3px;font-size:.75rem}html.theme--catppuccin-mocha .is-medium.textarea,html.theme--catppuccin-mocha .is-medium.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .is-large.textarea,html.theme--catppuccin-mocha .is-large.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .is-fullwidth.textarea,html.theme--catppuccin-mocha .is-fullwidth.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-fullwidth{display:block;width:100%}html.theme--catppuccin-mocha .is-inline.textarea,html.theme--catppuccin-mocha .is-inline.input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-inline{display:inline;width:auto}html.theme--catppuccin-mocha .input.is-rounded,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input{border-radius:9999px;padding-left:calc(calc(0.75em - 1px) + 0.375em);padding-right:calc(calc(0.75em - 1px) + 0.375em)}html.theme--catppuccin-mocha .input.is-static,html.theme--catppuccin-mocha #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--catppuccin-mocha .textarea{display:block;max-width:100%;min-width:100%;padding:calc(0.75em - 1px);resize:vertical}html.theme--catppuccin-mocha .textarea:not([rows]){max-height:40em;min-height:8em}html.theme--catppuccin-mocha .textarea[rows]{height:initial}html.theme--catppuccin-mocha .textarea.has-fixed-size{resize:none}html.theme--catppuccin-mocha .radio,html.theme--catppuccin-mocha .checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}html.theme--catppuccin-mocha .radio input,html.theme--catppuccin-mocha .checkbox input{cursor:pointer}html.theme--catppuccin-mocha .radio:hover,html.theme--catppuccin-mocha .checkbox:hover{color:#89dceb}html.theme--catppuccin-mocha .radio[disabled],html.theme--catppuccin-mocha .checkbox[disabled],fieldset[disabled] html.theme--catppuccin-mocha .radio,fieldset[disabled] html.theme--catppuccin-mocha .checkbox,html.theme--catppuccin-mocha .radio input[disabled],html.theme--catppuccin-mocha .checkbox input[disabled]{color:#f7f8fd;cursor:not-allowed}html.theme--catppuccin-mocha .radio+.radio{margin-left:.5em}html.theme--catppuccin-mocha .select{display:inline-block;max-width:100%;position:relative;vertical-align:top}html.theme--catppuccin-mocha .select:not(.is-multiple){height:2.5em}html.theme--catppuccin-mocha .select:not(.is-multiple):not(.is-loading)::after{border-color:#89b4fa;right:1.125em;z-index:4}html.theme--catppuccin-mocha .select.is-rounded select,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.select select{border-radius:9999px;padding-left:1em}html.theme--catppuccin-mocha .select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}html.theme--catppuccin-mocha .select select::-ms-expand{display:none}html.theme--catppuccin-mocha .select select[disabled]:hover,fieldset[disabled] html.theme--catppuccin-mocha .select select:hover{border-color:#181825}html.theme--catppuccin-mocha .select select:not([multiple]){padding-right:2.5em}html.theme--catppuccin-mocha .select select[multiple]{height:auto;padding:0}html.theme--catppuccin-mocha .select select[multiple] option{padding:0.5em 1em}html.theme--catppuccin-mocha .select:not(.is-multiple):not(.is-loading):hover::after{border-color:#89dceb}html.theme--catppuccin-mocha .select.is-white:not(:hover)::after{border-color:#fff}html.theme--catppuccin-mocha .select.is-white select{border-color:#fff}html.theme--catppuccin-mocha .select.is-white select:hover,html.theme--catppuccin-mocha .select.is-white select.is-hovered{border-color:#f2f2f2}html.theme--catppuccin-mocha .select.is-white select:focus,html.theme--catppuccin-mocha .select.is-white select.is-focused,html.theme--catppuccin-mocha .select.is-white select:active,html.theme--catppuccin-mocha .select.is-white select.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--catppuccin-mocha .select.is-black:not(:hover)::after{border-color:#0a0a0a}html.theme--catppuccin-mocha .select.is-black select{border-color:#0a0a0a}html.theme--catppuccin-mocha .select.is-black select:hover,html.theme--catppuccin-mocha .select.is-black select.is-hovered{border-color:#000}html.theme--catppuccin-mocha .select.is-black select:focus,html.theme--catppuccin-mocha .select.is-black select.is-focused,html.theme--catppuccin-mocha .select.is-black select:active,html.theme--catppuccin-mocha .select.is-black select.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--catppuccin-mocha .select.is-light:not(:hover)::after{border-color:#f5f5f5}html.theme--catppuccin-mocha .select.is-light select{border-color:#f5f5f5}html.theme--catppuccin-mocha .select.is-light select:hover,html.theme--catppuccin-mocha .select.is-light select.is-hovered{border-color:#e8e8e8}html.theme--catppuccin-mocha .select.is-light select:focus,html.theme--catppuccin-mocha .select.is-light select.is-focused,html.theme--catppuccin-mocha .select.is-light select:active,html.theme--catppuccin-mocha .select.is-light select.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}html.theme--catppuccin-mocha .select.is-dark:not(:hover)::after,html.theme--catppuccin-mocha .content kbd.select:not(:hover)::after{border-color:#313244}html.theme--catppuccin-mocha .select.is-dark select,html.theme--catppuccin-mocha .content kbd.select select{border-color:#313244}html.theme--catppuccin-mocha .select.is-dark select:hover,html.theme--catppuccin-mocha .content kbd.select select:hover,html.theme--catppuccin-mocha .select.is-dark select.is-hovered,html.theme--catppuccin-mocha .content kbd.select select.is-hovered{border-color:#262735}html.theme--catppuccin-mocha .select.is-dark select:focus,html.theme--catppuccin-mocha .content kbd.select select:focus,html.theme--catppuccin-mocha .select.is-dark select.is-focused,html.theme--catppuccin-mocha .content kbd.select select.is-focused,html.theme--catppuccin-mocha .select.is-dark select:active,html.theme--catppuccin-mocha .content kbd.select select:active,html.theme--catppuccin-mocha .select.is-dark select.is-active,html.theme--catppuccin-mocha .content kbd.select select.is-active{box-shadow:0 0 0 0.125em rgba(49,50,68,0.25)}html.theme--catppuccin-mocha .select.is-primary:not(:hover)::after,html.theme--catppuccin-mocha .docstring>section>a.select.docs-sourcelink:not(:hover)::after{border-color:#89b4fa}html.theme--catppuccin-mocha .select.is-primary select,html.theme--catppuccin-mocha .docstring>section>a.select.docs-sourcelink select{border-color:#89b4fa}html.theme--catppuccin-mocha .select.is-primary select:hover,html.theme--catppuccin-mocha .docstring>section>a.select.docs-sourcelink select:hover,html.theme--catppuccin-mocha .select.is-primary select.is-hovered,html.theme--catppuccin-mocha .docstring>section>a.select.docs-sourcelink select.is-hovered{border-color:#71a4f9}html.theme--catppuccin-mocha .select.is-primary select:focus,html.theme--catppuccin-mocha .docstring>section>a.select.docs-sourcelink select:focus,html.theme--catppuccin-mocha .select.is-primary select.is-focused,html.theme--catppuccin-mocha .docstring>section>a.select.docs-sourcelink select.is-focused,html.theme--catppuccin-mocha .select.is-primary select:active,html.theme--catppuccin-mocha .docstring>section>a.select.docs-sourcelink select:active,html.theme--catppuccin-mocha .select.is-primary select.is-active,html.theme--catppuccin-mocha .docstring>section>a.select.docs-sourcelink select.is-active{box-shadow:0 0 0 0.125em rgba(137,180,250,0.25)}html.theme--catppuccin-mocha .select.is-link:not(:hover)::after{border-color:#89b4fa}html.theme--catppuccin-mocha .select.is-link select{border-color:#89b4fa}html.theme--catppuccin-mocha .select.is-link select:hover,html.theme--catppuccin-mocha .select.is-link select.is-hovered{border-color:#71a4f9}html.theme--catppuccin-mocha .select.is-link select:focus,html.theme--catppuccin-mocha .select.is-link select.is-focused,html.theme--catppuccin-mocha .select.is-link select:active,html.theme--catppuccin-mocha .select.is-link select.is-active{box-shadow:0 0 0 0.125em rgba(137,180,250,0.25)}html.theme--catppuccin-mocha .select.is-info:not(:hover)::after{border-color:#94e2d5}html.theme--catppuccin-mocha .select.is-info select{border-color:#94e2d5}html.theme--catppuccin-mocha .select.is-info select:hover,html.theme--catppuccin-mocha .select.is-info select.is-hovered{border-color:#80ddcd}html.theme--catppuccin-mocha .select.is-info select:focus,html.theme--catppuccin-mocha .select.is-info select.is-focused,html.theme--catppuccin-mocha .select.is-info select:active,html.theme--catppuccin-mocha .select.is-info select.is-active{box-shadow:0 0 0 0.125em rgba(148,226,213,0.25)}html.theme--catppuccin-mocha .select.is-success:not(:hover)::after{border-color:#a6e3a1}html.theme--catppuccin-mocha .select.is-success select{border-color:#a6e3a1}html.theme--catppuccin-mocha .select.is-success select:hover,html.theme--catppuccin-mocha .select.is-success select.is-hovered{border-color:#93dd8d}html.theme--catppuccin-mocha .select.is-success select:focus,html.theme--catppuccin-mocha .select.is-success select.is-focused,html.theme--catppuccin-mocha .select.is-success select:active,html.theme--catppuccin-mocha .select.is-success select.is-active{box-shadow:0 0 0 0.125em rgba(166,227,161,0.25)}html.theme--catppuccin-mocha .select.is-warning:not(:hover)::after{border-color:#f9e2af}html.theme--catppuccin-mocha .select.is-warning select{border-color:#f9e2af}html.theme--catppuccin-mocha .select.is-warning select:hover,html.theme--catppuccin-mocha .select.is-warning select.is-hovered{border-color:#f7d997}html.theme--catppuccin-mocha .select.is-warning select:focus,html.theme--catppuccin-mocha .select.is-warning select.is-focused,html.theme--catppuccin-mocha .select.is-warning select:active,html.theme--catppuccin-mocha .select.is-warning select.is-active{box-shadow:0 0 0 0.125em rgba(249,226,175,0.25)}html.theme--catppuccin-mocha .select.is-danger:not(:hover)::after{border-color:#f38ba8}html.theme--catppuccin-mocha .select.is-danger select{border-color:#f38ba8}html.theme--catppuccin-mocha .select.is-danger select:hover,html.theme--catppuccin-mocha .select.is-danger select.is-hovered{border-color:#f17497}html.theme--catppuccin-mocha .select.is-danger select:focus,html.theme--catppuccin-mocha .select.is-danger select.is-focused,html.theme--catppuccin-mocha .select.is-danger select:active,html.theme--catppuccin-mocha .select.is-danger select.is-active{box-shadow:0 0 0 0.125em rgba(243,139,168,0.25)}html.theme--catppuccin-mocha .select.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.select{border-radius:3px;font-size:.75rem}html.theme--catppuccin-mocha .select.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .select.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .select.is-disabled::after{border-color:#f7f8fd !important;opacity:0.5}html.theme--catppuccin-mocha .select.is-fullwidth{width:100%}html.theme--catppuccin-mocha .select.is-fullwidth select{width:100%}html.theme--catppuccin-mocha .select.is-loading::after{margin-top:0;position:absolute;right:.625em;top:0.625em;transform:none}html.theme--catppuccin-mocha .select.is-loading.is-small:after,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}html.theme--catppuccin-mocha .select.is-loading.is-medium:after{font-size:1.25rem}html.theme--catppuccin-mocha .select.is-loading.is-large:after{font-size:1.5rem}html.theme--catppuccin-mocha .file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}html.theme--catppuccin-mocha .file.is-white .file-cta{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-mocha .file.is-white:hover .file-cta,html.theme--catppuccin-mocha .file.is-white.is-hovered .file-cta{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-mocha .file.is-white:focus .file-cta,html.theme--catppuccin-mocha .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--catppuccin-mocha .file.is-white:active .file-cta,html.theme--catppuccin-mocha .file.is-white.is-active .file-cta{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--catppuccin-mocha .file.is-black .file-cta{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-black:hover .file-cta,html.theme--catppuccin-mocha .file.is-black.is-hovered .file-cta{background-color:#040404;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-black:focus .file-cta,html.theme--catppuccin-mocha .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--catppuccin-mocha .file.is-black:active .file-cta,html.theme--catppuccin-mocha .file.is-black.is-active .file-cta{background-color:#000;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-light .file-cta{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-light:hover .file-cta,html.theme--catppuccin-mocha .file.is-light.is-hovered .file-cta{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-light:focus .file-cta,html.theme--catppuccin-mocha .file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(245,245,245,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-light:active .file-cta,html.theme--catppuccin-mocha .file.is-light.is-active .file-cta{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-dark .file-cta,html.theme--catppuccin-mocha .content kbd.file .file-cta{background-color:#313244;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-dark:hover .file-cta,html.theme--catppuccin-mocha .content kbd.file:hover .file-cta,html.theme--catppuccin-mocha .file.is-dark.is-hovered .file-cta,html.theme--catppuccin-mocha .content kbd.file.is-hovered .file-cta{background-color:#2c2d3d;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-dark:focus .file-cta,html.theme--catppuccin-mocha .content kbd.file:focus .file-cta,html.theme--catppuccin-mocha .file.is-dark.is-focused .file-cta,html.theme--catppuccin-mocha .content kbd.file.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(49,50,68,0.25);color:#fff}html.theme--catppuccin-mocha .file.is-dark:active .file-cta,html.theme--catppuccin-mocha .content kbd.file:active .file-cta,html.theme--catppuccin-mocha .file.is-dark.is-active .file-cta,html.theme--catppuccin-mocha .content kbd.file.is-active .file-cta{background-color:#262735;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-primary .file-cta,html.theme--catppuccin-mocha .docstring>section>a.file.docs-sourcelink .file-cta{background-color:#89b4fa;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-primary:hover .file-cta,html.theme--catppuccin-mocha .docstring>section>a.file.docs-sourcelink:hover .file-cta,html.theme--catppuccin-mocha .file.is-primary.is-hovered .file-cta,html.theme--catppuccin-mocha .docstring>section>a.file.is-hovered.docs-sourcelink .file-cta{background-color:#7dacf9;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-primary:focus .file-cta,html.theme--catppuccin-mocha .docstring>section>a.file.docs-sourcelink:focus .file-cta,html.theme--catppuccin-mocha .file.is-primary.is-focused .file-cta,html.theme--catppuccin-mocha .docstring>section>a.file.is-focused.docs-sourcelink .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(137,180,250,0.25);color:#fff}html.theme--catppuccin-mocha .file.is-primary:active .file-cta,html.theme--catppuccin-mocha .docstring>section>a.file.docs-sourcelink:active .file-cta,html.theme--catppuccin-mocha .file.is-primary.is-active .file-cta,html.theme--catppuccin-mocha .docstring>section>a.file.is-active.docs-sourcelink .file-cta{background-color:#71a4f9;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-link .file-cta{background-color:#89b4fa;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-link:hover .file-cta,html.theme--catppuccin-mocha .file.is-link.is-hovered .file-cta{background-color:#7dacf9;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-link:focus .file-cta,html.theme--catppuccin-mocha .file.is-link.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(137,180,250,0.25);color:#fff}html.theme--catppuccin-mocha .file.is-link:active .file-cta,html.theme--catppuccin-mocha .file.is-link.is-active .file-cta{background-color:#71a4f9;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-info .file-cta{background-color:#94e2d5;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-info:hover .file-cta,html.theme--catppuccin-mocha .file.is-info.is-hovered .file-cta{background-color:#8adfd1;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-info:focus .file-cta,html.theme--catppuccin-mocha .file.is-info.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(148,226,213,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-info:active .file-cta,html.theme--catppuccin-mocha .file.is-info.is-active .file-cta{background-color:#80ddcd;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-success .file-cta{background-color:#a6e3a1;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-success:hover .file-cta,html.theme--catppuccin-mocha .file.is-success.is-hovered .file-cta{background-color:#9de097;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-success:focus .file-cta,html.theme--catppuccin-mocha .file.is-success.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(166,227,161,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-success:active .file-cta,html.theme--catppuccin-mocha .file.is-success.is-active .file-cta{background-color:#93dd8d;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-warning .file-cta{background-color:#f9e2af;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-warning:hover .file-cta,html.theme--catppuccin-mocha .file.is-warning.is-hovered .file-cta{background-color:#f8dea3;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-warning:focus .file-cta,html.theme--catppuccin-mocha .file.is-warning.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(249,226,175,0.25);color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-warning:active .file-cta,html.theme--catppuccin-mocha .file.is-warning.is-active .file-cta{background-color:#f7d997;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .file.is-danger .file-cta{background-color:#f38ba8;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-danger:hover .file-cta,html.theme--catppuccin-mocha .file.is-danger.is-hovered .file-cta{background-color:#f27f9f;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-danger:focus .file-cta,html.theme--catppuccin-mocha .file.is-danger.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(243,139,168,0.25);color:#fff}html.theme--catppuccin-mocha .file.is-danger:active .file-cta,html.theme--catppuccin-mocha .file.is-danger.is-active .file-cta{background-color:#f17497;border-color:transparent;color:#fff}html.theme--catppuccin-mocha .file.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.file{font-size:.75rem}html.theme--catppuccin-mocha .file.is-normal{font-size:1rem}html.theme--catppuccin-mocha .file.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .file.is-medium .file-icon .fa{font-size:21px}html.theme--catppuccin-mocha .file.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .file.is-large .file-icon .fa{font-size:28px}html.theme--catppuccin-mocha .file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--catppuccin-mocha .file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-mocha .file.has-name.is-empty .file-cta{border-radius:.4em}html.theme--catppuccin-mocha .file.has-name.is-empty .file-name{display:none}html.theme--catppuccin-mocha .file.is-boxed .file-label{flex-direction:column}html.theme--catppuccin-mocha .file.is-boxed .file-cta{flex-direction:column;height:auto;padding:1em 3em}html.theme--catppuccin-mocha .file.is-boxed .file-name{border-width:0 1px 1px}html.theme--catppuccin-mocha .file.is-boxed .file-icon{height:1.5em;width:1.5em}html.theme--catppuccin-mocha .file.is-boxed .file-icon .fa{font-size:21px}html.theme--catppuccin-mocha .file.is-boxed.is-small .file-icon .fa,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-boxed .file-icon .fa{font-size:14px}html.theme--catppuccin-mocha .file.is-boxed.is-medium .file-icon .fa{font-size:28px}html.theme--catppuccin-mocha .file.is-boxed.is-large .file-icon .fa{font-size:35px}html.theme--catppuccin-mocha .file.is-boxed.has-name .file-cta{border-radius:.4em .4em 0 0}html.theme--catppuccin-mocha .file.is-boxed.has-name .file-name{border-radius:0 0 .4em .4em;border-width:0 1px 1px}html.theme--catppuccin-mocha .file.is-centered{justify-content:center}html.theme--catppuccin-mocha .file.is-fullwidth .file-label{width:100%}html.theme--catppuccin-mocha .file.is-fullwidth .file-name{flex-grow:1;max-width:none}html.theme--catppuccin-mocha .file.is-right{justify-content:flex-end}html.theme--catppuccin-mocha .file.is-right .file-cta{border-radius:0 .4em .4em 0}html.theme--catppuccin-mocha .file.is-right .file-name{border-radius:.4em 0 0 .4em;border-width:1px 0 1px 1px;order:-1}html.theme--catppuccin-mocha .file-label{align-items:stretch;display:flex;cursor:pointer;justify-content:flex-start;overflow:hidden;position:relative}html.theme--catppuccin-mocha .file-label:hover .file-cta{background-color:#2c2d3d;color:#b8c5ef}html.theme--catppuccin-mocha .file-label:hover .file-name{border-color:#525569}html.theme--catppuccin-mocha .file-label:active .file-cta{background-color:#262735;color:#b8c5ef}html.theme--catppuccin-mocha .file-label:active .file-name{border-color:#4d4f62}html.theme--catppuccin-mocha .file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}html.theme--catppuccin-mocha .file-cta,html.theme--catppuccin-mocha .file-name{border-color:#585b70;border-radius:.4em;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}html.theme--catppuccin-mocha .file-cta{background-color:#313244;color:#cdd6f4}html.theme--catppuccin-mocha .file-name{border-color:#585b70;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:inherit;text-overflow:ellipsis}html.theme--catppuccin-mocha .file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:.5em;width:1em}html.theme--catppuccin-mocha .file-icon .fa{font-size:14px}html.theme--catppuccin-mocha .label{color:#b8c5ef;display:block;font-size:1rem;font-weight:700}html.theme--catppuccin-mocha .label:not(:last-child){margin-bottom:0.5em}html.theme--catppuccin-mocha .label.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.label{font-size:.75rem}html.theme--catppuccin-mocha .label.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .label.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .help{display:block;font-size:.75rem;margin-top:0.25rem}html.theme--catppuccin-mocha .help.is-white{color:#fff}html.theme--catppuccin-mocha .help.is-black{color:#0a0a0a}html.theme--catppuccin-mocha .help.is-light{color:#f5f5f5}html.theme--catppuccin-mocha .help.is-dark,html.theme--catppuccin-mocha .content kbd.help{color:#313244}html.theme--catppuccin-mocha .help.is-primary,html.theme--catppuccin-mocha .docstring>section>a.help.docs-sourcelink{color:#89b4fa}html.theme--catppuccin-mocha .help.is-link{color:#89b4fa}html.theme--catppuccin-mocha .help.is-info{color:#94e2d5}html.theme--catppuccin-mocha .help.is-success{color:#a6e3a1}html.theme--catppuccin-mocha .help.is-warning{color:#f9e2af}html.theme--catppuccin-mocha .help.is-danger{color:#f38ba8}html.theme--catppuccin-mocha .field:not(:last-child){margin-bottom:0.75rem}html.theme--catppuccin-mocha .field.has-addons{display:flex;justify-content:flex-start}html.theme--catppuccin-mocha .field.has-addons .control:not(:last-child){margin-right:-1px}html.theme--catppuccin-mocha .field.has-addons .control:not(:first-child):not(:last-child) .button,html.theme--catppuccin-mocha .field.has-addons .control:not(:first-child):not(:last-child) .input,html.theme--catppuccin-mocha .field.has-addons .control:not(:first-child):not(:last-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control:not(:first-child):not(:last-child) form.docs-search>input,html.theme--catppuccin-mocha .field.has-addons .control:not(:first-child):not(:last-child) .select select{border-radius:0}html.theme--catppuccin-mocha .field.has-addons .control:first-child:not(:only-child) .button,html.theme--catppuccin-mocha .field.has-addons .control:first-child:not(:only-child) .input,html.theme--catppuccin-mocha .field.has-addons .control:first-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control:first-child:not(:only-child) form.docs-search>input,html.theme--catppuccin-mocha .field.has-addons .control:first-child:not(:only-child) .select select{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--catppuccin-mocha .field.has-addons .control:last-child:not(:only-child) .button,html.theme--catppuccin-mocha .field.has-addons .control:last-child:not(:only-child) .input,html.theme--catppuccin-mocha .field.has-addons .control:last-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control:last-child:not(:only-child) form.docs-search>input,html.theme--catppuccin-mocha .field.has-addons .control:last-child:not(:only-child) .select select{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--catppuccin-mocha .field.has-addons .control .button:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control .button.is-hovered:not([disabled]),html.theme--catppuccin-mocha .field.has-addons .control .input:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):hover,html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control .input.is-hovered:not([disabled]),html.theme--catppuccin-mocha .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-hovered:not([disabled]),html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-hovered:not([disabled]),html.theme--catppuccin-mocha .field.has-addons .control .select select:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control .select select.is-hovered:not([disabled]){z-index:2}html.theme--catppuccin-mocha .field.has-addons .control .button:not([disabled]):focus,html.theme--catppuccin-mocha .field.has-addons .control .button.is-focused:not([disabled]),html.theme--catppuccin-mocha .field.has-addons .control .button:not([disabled]):active,html.theme--catppuccin-mocha .field.has-addons .control .button.is-active:not([disabled]),html.theme--catppuccin-mocha .field.has-addons .control .input:not([disabled]):focus,html.theme--catppuccin-mocha .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus,html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus,html.theme--catppuccin-mocha .field.has-addons .control .input.is-focused:not([disabled]),html.theme--catppuccin-mocha .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]),html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]),html.theme--catppuccin-mocha .field.has-addons .control .input:not([disabled]):active,html.theme--catppuccin-mocha .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active,html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active,html.theme--catppuccin-mocha .field.has-addons .control .input.is-active:not([disabled]),html.theme--catppuccin-mocha .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]),html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]),html.theme--catppuccin-mocha .field.has-addons .control .select select:not([disabled]):focus,html.theme--catppuccin-mocha .field.has-addons .control .select select.is-focused:not([disabled]),html.theme--catppuccin-mocha .field.has-addons .control .select select:not([disabled]):active,html.theme--catppuccin-mocha .field.has-addons .control .select select.is-active:not([disabled]){z-index:3}html.theme--catppuccin-mocha .field.has-addons .control .button:not([disabled]):focus:hover,html.theme--catppuccin-mocha .field.has-addons .control .button.is-focused:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control .button:not([disabled]):active:hover,html.theme--catppuccin-mocha .field.has-addons .control .button.is-active:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control .input:not([disabled]):focus:hover,html.theme--catppuccin-mocha .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus:hover,html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus:hover,html.theme--catppuccin-mocha .field.has-addons .control .input.is-focused:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]):hover,html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control .input:not([disabled]):active:hover,html.theme--catppuccin-mocha .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active:hover,html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active:hover,html.theme--catppuccin-mocha .field.has-addons .control .input.is-active:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]):hover,html.theme--catppuccin-mocha #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control .select select:not([disabled]):focus:hover,html.theme--catppuccin-mocha .field.has-addons .control .select select.is-focused:not([disabled]):hover,html.theme--catppuccin-mocha .field.has-addons .control .select select:not([disabled]):active:hover,html.theme--catppuccin-mocha .field.has-addons .control .select select.is-active:not([disabled]):hover{z-index:4}html.theme--catppuccin-mocha .field.has-addons .control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-mocha .field.has-addons.has-addons-centered{justify-content:center}html.theme--catppuccin-mocha .field.has-addons.has-addons-right{justify-content:flex-end}html.theme--catppuccin-mocha .field.has-addons.has-addons-fullwidth .control{flex-grow:1;flex-shrink:0}html.theme--catppuccin-mocha .field.is-grouped{display:flex;justify-content:flex-start}html.theme--catppuccin-mocha .field.is-grouped>.control{flex-shrink:0}html.theme--catppuccin-mocha .field.is-grouped>.control:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--catppuccin-mocha .field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-mocha .field.is-grouped.is-grouped-centered{justify-content:center}html.theme--catppuccin-mocha .field.is-grouped.is-grouped-right{justify-content:flex-end}html.theme--catppuccin-mocha .field.is-grouped.is-grouped-multiline{flex-wrap:wrap}html.theme--catppuccin-mocha .field.is-grouped.is-grouped-multiline>.control:last-child,html.theme--catppuccin-mocha .field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:0.75rem}html.theme--catppuccin-mocha .field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-0.75rem}html.theme--catppuccin-mocha .field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .field.is-horizontal{display:flex}}html.theme--catppuccin-mocha .field-label .label{font-size:inherit}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .field-label{margin-bottom:0.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}html.theme--catppuccin-mocha .field-label.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.field-label{font-size:.75rem;padding-top:0.375em}html.theme--catppuccin-mocha .field-label.is-normal{padding-top:0.375em}html.theme--catppuccin-mocha .field-label.is-medium{font-size:1.25rem;padding-top:0.375em}html.theme--catppuccin-mocha .field-label.is-large{font-size:1.5rem;padding-top:0.375em}}html.theme--catppuccin-mocha .field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}html.theme--catppuccin-mocha .field-body .field{margin-bottom:0}html.theme--catppuccin-mocha .field-body>.field{flex-shrink:1}html.theme--catppuccin-mocha .field-body>.field:not(.is-narrow){flex-grow:1}html.theme--catppuccin-mocha .field-body>.field:not(:last-child){margin-right:.75rem}}html.theme--catppuccin-mocha .control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:inherit}html.theme--catppuccin-mocha .control.has-icons-left .input:focus~.icon,html.theme--catppuccin-mocha .control.has-icons-left #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--catppuccin-mocha #documenter .docs-sidebar .control.has-icons-left form.docs-search>input:focus~.icon,html.theme--catppuccin-mocha .control.has-icons-left .select:focus~.icon,html.theme--catppuccin-mocha .control.has-icons-right .input:focus~.icon,html.theme--catppuccin-mocha .control.has-icons-right #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--catppuccin-mocha #documenter .docs-sidebar .control.has-icons-right form.docs-search>input:focus~.icon,html.theme--catppuccin-mocha .control.has-icons-right .select:focus~.icon{color:#313244}html.theme--catppuccin-mocha .control.has-icons-left .input.is-small~.icon,html.theme--catppuccin-mocha .control.has-icons-left #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--catppuccin-mocha #documenter .docs-sidebar .control.has-icons-left form.docs-search>input~.icon,html.theme--catppuccin-mocha .control.has-icons-left .select.is-small~.icon,html.theme--catppuccin-mocha .control.has-icons-right .input.is-small~.icon,html.theme--catppuccin-mocha .control.has-icons-right #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--catppuccin-mocha #documenter .docs-sidebar .control.has-icons-right form.docs-search>input~.icon,html.theme--catppuccin-mocha .control.has-icons-right .select.is-small~.icon{font-size:.75rem}html.theme--catppuccin-mocha .control.has-icons-left .input.is-medium~.icon,html.theme--catppuccin-mocha .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--catppuccin-mocha #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-medium~.icon,html.theme--catppuccin-mocha .control.has-icons-left .select.is-medium~.icon,html.theme--catppuccin-mocha .control.has-icons-right .input.is-medium~.icon,html.theme--catppuccin-mocha .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--catppuccin-mocha #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-medium~.icon,html.theme--catppuccin-mocha .control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}html.theme--catppuccin-mocha .control.has-icons-left .input.is-large~.icon,html.theme--catppuccin-mocha .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--catppuccin-mocha #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-large~.icon,html.theme--catppuccin-mocha .control.has-icons-left .select.is-large~.icon,html.theme--catppuccin-mocha .control.has-icons-right .input.is-large~.icon,html.theme--catppuccin-mocha .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--catppuccin-mocha #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-large~.icon,html.theme--catppuccin-mocha .control.has-icons-right .select.is-large~.icon{font-size:1.5rem}html.theme--catppuccin-mocha .control.has-icons-left .icon,html.theme--catppuccin-mocha .control.has-icons-right .icon{color:#585b70;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}html.theme--catppuccin-mocha .control.has-icons-left .input,html.theme--catppuccin-mocha .control.has-icons-left #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-mocha #documenter .docs-sidebar .control.has-icons-left form.docs-search>input,html.theme--catppuccin-mocha .control.has-icons-left .select select{padding-left:2.5em}html.theme--catppuccin-mocha .control.has-icons-left .icon.is-left{left:0}html.theme--catppuccin-mocha .control.has-icons-right .input,html.theme--catppuccin-mocha .control.has-icons-right #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-mocha #documenter .docs-sidebar .control.has-icons-right form.docs-search>input,html.theme--catppuccin-mocha .control.has-icons-right .select select{padding-right:2.5em}html.theme--catppuccin-mocha .control.has-icons-right .icon.is-right{right:0}html.theme--catppuccin-mocha .control.is-loading::after{position:absolute !important;right:.625em;top:0.625em;z-index:4}html.theme--catppuccin-mocha .control.is-loading.is-small:after,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}html.theme--catppuccin-mocha .control.is-loading.is-medium:after{font-size:1.25rem}html.theme--catppuccin-mocha .control.is-loading.is-large:after{font-size:1.5rem}html.theme--catppuccin-mocha .breadcrumb{font-size:1rem;white-space:nowrap}html.theme--catppuccin-mocha .breadcrumb a{align-items:center;color:#89b4fa;display:flex;justify-content:center;padding:0 .75em}html.theme--catppuccin-mocha .breadcrumb a:hover{color:#89dceb}html.theme--catppuccin-mocha .breadcrumb li{align-items:center;display:flex}html.theme--catppuccin-mocha .breadcrumb li:first-child a{padding-left:0}html.theme--catppuccin-mocha .breadcrumb li.is-active a{color:#b8c5ef;cursor:default;pointer-events:none}html.theme--catppuccin-mocha .breadcrumb li+li::before{color:#6c7086;content:"\0002f"}html.theme--catppuccin-mocha .breadcrumb ul,html.theme--catppuccin-mocha .breadcrumb ol{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--catppuccin-mocha .breadcrumb .icon:first-child{margin-right:.5em}html.theme--catppuccin-mocha .breadcrumb .icon:last-child{margin-left:.5em}html.theme--catppuccin-mocha .breadcrumb.is-centered ol,html.theme--catppuccin-mocha .breadcrumb.is-centered ul{justify-content:center}html.theme--catppuccin-mocha .breadcrumb.is-right ol,html.theme--catppuccin-mocha .breadcrumb.is-right ul{justify-content:flex-end}html.theme--catppuccin-mocha .breadcrumb.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.75rem}html.theme--catppuccin-mocha .breadcrumb.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .breadcrumb.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .breadcrumb.has-arrow-separator li+li::before{content:"\02192"}html.theme--catppuccin-mocha .breadcrumb.has-bullet-separator li+li::before{content:"\02022"}html.theme--catppuccin-mocha .breadcrumb.has-dot-separator li+li::before{content:"\000b7"}html.theme--catppuccin-mocha .breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}html.theme--catppuccin-mocha .card{background-color:#fff;border-radius:.25rem;box-shadow:#171717;color:#cdd6f4;max-width:100%;position:relative}html.theme--catppuccin-mocha .card-footer:first-child,html.theme--catppuccin-mocha .card-content:first-child,html.theme--catppuccin-mocha .card-header:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--catppuccin-mocha .card-footer:last-child,html.theme--catppuccin-mocha .card-content:last-child,html.theme--catppuccin-mocha .card-header:last-child{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--catppuccin-mocha .card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);display:flex}html.theme--catppuccin-mocha .card-header-title{align-items:center;color:#b8c5ef;display:flex;flex-grow:1;font-weight:700;padding:0.75rem 1rem}html.theme--catppuccin-mocha .card-header-title.is-centered{justify-content:center}html.theme--catppuccin-mocha .card-header-icon{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0;align-items:center;cursor:pointer;display:flex;justify-content:center;padding:0.75rem 1rem}html.theme--catppuccin-mocha .card-image{display:block;position:relative}html.theme--catppuccin-mocha .card-image:first-child img{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--catppuccin-mocha .card-image:last-child img{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--catppuccin-mocha .card-content{background-color:rgba(0,0,0,0);padding:1.5rem}html.theme--catppuccin-mocha .card-footer{background-color:rgba(0,0,0,0);border-top:1px solid #ededed;align-items:stretch;display:flex}html.theme--catppuccin-mocha .card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}html.theme--catppuccin-mocha .card-footer-item:not(:last-child){border-right:1px solid #ededed}html.theme--catppuccin-mocha .card .media:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-mocha .dropdown{display:inline-flex;position:relative;vertical-align:top}html.theme--catppuccin-mocha .dropdown.is-active .dropdown-menu,html.theme--catppuccin-mocha .dropdown.is-hoverable:hover .dropdown-menu{display:block}html.theme--catppuccin-mocha .dropdown.is-right .dropdown-menu{left:auto;right:0}html.theme--catppuccin-mocha .dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}html.theme--catppuccin-mocha .dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}html.theme--catppuccin-mocha .dropdown-content{background-color:#181825;border-radius:.4em;box-shadow:#171717;padding-bottom:.5rem;padding-top:.5rem}html.theme--catppuccin-mocha .dropdown-item{color:#cdd6f4;display:block;font-size:0.875rem;line-height:1.5;padding:0.375rem 1rem;position:relative}html.theme--catppuccin-mocha a.dropdown-item,html.theme--catppuccin-mocha button.dropdown-item{padding-right:3rem;text-align:inherit;white-space:nowrap;width:100%}html.theme--catppuccin-mocha a.dropdown-item:hover,html.theme--catppuccin-mocha button.dropdown-item:hover{background-color:#181825;color:#0a0a0a}html.theme--catppuccin-mocha a.dropdown-item.is-active,html.theme--catppuccin-mocha button.dropdown-item.is-active{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .dropdown-divider{background-color:#ededed;border:none;display:block;height:1px;margin:0.5rem 0}html.theme--catppuccin-mocha .level{align-items:center;justify-content:space-between}html.theme--catppuccin-mocha .level code{border-radius:.4em}html.theme--catppuccin-mocha .level img{display:inline-block;vertical-align:top}html.theme--catppuccin-mocha .level.is-mobile{display:flex}html.theme--catppuccin-mocha .level.is-mobile .level-left,html.theme--catppuccin-mocha .level.is-mobile .level-right{display:flex}html.theme--catppuccin-mocha .level.is-mobile .level-left+.level-right{margin-top:0}html.theme--catppuccin-mocha .level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--catppuccin-mocha .level.is-mobile .level-item:not(.is-narrow){flex-grow:1}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .level{display:flex}html.theme--catppuccin-mocha .level>.level-item:not(.is-narrow){flex-grow:1}}html.theme--catppuccin-mocha .level-item{align-items:center;display:flex;flex-basis:auto;flex-grow:0;flex-shrink:0;justify-content:center}html.theme--catppuccin-mocha .level-item .title,html.theme--catppuccin-mocha .level-item .subtitle{margin-bottom:0}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .level-item:not(:last-child){margin-bottom:.75rem}}html.theme--catppuccin-mocha .level-left,html.theme--catppuccin-mocha .level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--catppuccin-mocha .level-left .level-item.is-flexible,html.theme--catppuccin-mocha .level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .level-left .level-item:not(:last-child),html.theme--catppuccin-mocha .level-right .level-item:not(:last-child){margin-right:.75rem}}html.theme--catppuccin-mocha .level-left{align-items:center;justify-content:flex-start}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .level-left{display:flex}}html.theme--catppuccin-mocha .level-right{align-items:center;justify-content:flex-end}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .level-right{display:flex}}html.theme--catppuccin-mocha .media{align-items:flex-start;display:flex;text-align:inherit}html.theme--catppuccin-mocha .media .content:not(:last-child){margin-bottom:.75rem}html.theme--catppuccin-mocha .media .media{border-top:1px solid rgba(88,91,112,0.5);display:flex;padding-top:.75rem}html.theme--catppuccin-mocha .media .media .content:not(:last-child),html.theme--catppuccin-mocha .media .media .control:not(:last-child){margin-bottom:.5rem}html.theme--catppuccin-mocha .media .media .media{padding-top:.5rem}html.theme--catppuccin-mocha .media .media .media+.media{margin-top:.5rem}html.theme--catppuccin-mocha .media+.media{border-top:1px solid rgba(88,91,112,0.5);margin-top:1rem;padding-top:1rem}html.theme--catppuccin-mocha .media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}html.theme--catppuccin-mocha .media-left,html.theme--catppuccin-mocha .media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--catppuccin-mocha .media-left{margin-right:1rem}html.theme--catppuccin-mocha .media-right{margin-left:1rem}html.theme--catppuccin-mocha .media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:inherit}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .media-content{overflow-x:auto}}html.theme--catppuccin-mocha .menu{font-size:1rem}html.theme--catppuccin-mocha .menu.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.menu{font-size:.75rem}html.theme--catppuccin-mocha .menu.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .menu.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .menu-list{line-height:1.25}html.theme--catppuccin-mocha .menu-list a{border-radius:3px;color:#cdd6f4;display:block;padding:0.5em 0.75em}html.theme--catppuccin-mocha .menu-list a:hover{background-color:#181825;color:#b8c5ef}html.theme--catppuccin-mocha .menu-list a.is-active{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .menu-list li ul{border-left:1px solid #585b70;margin:.75em;padding-left:.75em}html.theme--catppuccin-mocha .menu-label{color:#f7f8fd;font-size:.75em;letter-spacing:.1em;text-transform:uppercase}html.theme--catppuccin-mocha .menu-label:not(:first-child){margin-top:1em}html.theme--catppuccin-mocha .menu-label:not(:last-child){margin-bottom:1em}html.theme--catppuccin-mocha .message{background-color:#181825;border-radius:.4em;font-size:1rem}html.theme--catppuccin-mocha .message strong{color:currentColor}html.theme--catppuccin-mocha .message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--catppuccin-mocha .message.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.message{font-size:.75rem}html.theme--catppuccin-mocha .message.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .message.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .message.is-white{background-color:#fff}html.theme--catppuccin-mocha .message.is-white .message-header{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .message.is-white .message-body{border-color:#fff}html.theme--catppuccin-mocha .message.is-black{background-color:#fafafa}html.theme--catppuccin-mocha .message.is-black .message-header{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .message.is-black .message-body{border-color:#0a0a0a}html.theme--catppuccin-mocha .message.is-light{background-color:#fafafa}html.theme--catppuccin-mocha .message.is-light .message-header{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .message.is-light .message-body{border-color:#f5f5f5}html.theme--catppuccin-mocha .message.is-dark,html.theme--catppuccin-mocha .content kbd.message{background-color:#f9f9fb}html.theme--catppuccin-mocha .message.is-dark .message-header,html.theme--catppuccin-mocha .content kbd.message .message-header{background-color:#313244;color:#fff}html.theme--catppuccin-mocha .message.is-dark .message-body,html.theme--catppuccin-mocha .content kbd.message .message-body{border-color:#313244}html.theme--catppuccin-mocha .message.is-primary,html.theme--catppuccin-mocha .docstring>section>a.message.docs-sourcelink{background-color:#ebf3fe}html.theme--catppuccin-mocha .message.is-primary .message-header,html.theme--catppuccin-mocha .docstring>section>a.message.docs-sourcelink .message-header{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .message.is-primary .message-body,html.theme--catppuccin-mocha .docstring>section>a.message.docs-sourcelink .message-body{border-color:#89b4fa;color:#063c93}html.theme--catppuccin-mocha .message.is-link{background-color:#ebf3fe}html.theme--catppuccin-mocha .message.is-link .message-header{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .message.is-link .message-body{border-color:#89b4fa;color:#063c93}html.theme--catppuccin-mocha .message.is-info{background-color:#effbf9}html.theme--catppuccin-mocha .message.is-info .message-header{background-color:#94e2d5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .message.is-info .message-body{border-color:#94e2d5;color:#207466}html.theme--catppuccin-mocha .message.is-success{background-color:#f0faef}html.theme--catppuccin-mocha .message.is-success .message-header{background-color:#a6e3a1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .message.is-success .message-body{border-color:#a6e3a1;color:#287222}html.theme--catppuccin-mocha .message.is-warning{background-color:#fef8ec}html.theme--catppuccin-mocha .message.is-warning .message-header{background-color:#f9e2af;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .message.is-warning .message-body{border-color:#f9e2af;color:#8a620a}html.theme--catppuccin-mocha .message.is-danger{background-color:#fdedf1}html.theme--catppuccin-mocha .message.is-danger .message-header{background-color:#f38ba8;color:#fff}html.theme--catppuccin-mocha .message.is-danger .message-body{border-color:#f38ba8;color:#991036}html.theme--catppuccin-mocha .message-header{align-items:center;background-color:#cdd6f4;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--catppuccin-mocha .message-header .delete{flex-grow:0;flex-shrink:0;margin-left:.75em}html.theme--catppuccin-mocha .message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}html.theme--catppuccin-mocha .message-body{border-color:#585b70;border-radius:.4em;border-style:solid;border-width:0 0 0 4px;color:#cdd6f4;padding:1.25em 1.5em}html.theme--catppuccin-mocha .message-body code,html.theme--catppuccin-mocha .message-body pre{background-color:#fff}html.theme--catppuccin-mocha .message-body pre code{background-color:rgba(0,0,0,0)}html.theme--catppuccin-mocha .modal{align-items:center;display:none;flex-direction:column;justify-content:center;overflow:hidden;position:fixed;z-index:40}html.theme--catppuccin-mocha .modal.is-active{display:flex}html.theme--catppuccin-mocha .modal-background{background-color:rgba(10,10,10,0.86)}html.theme--catppuccin-mocha .modal-content,html.theme--catppuccin-mocha .modal-card{margin:0 20px;max-height:calc(100vh - 160px);overflow:auto;position:relative;width:100%}@media screen and (min-width: 769px){html.theme--catppuccin-mocha .modal-content,html.theme--catppuccin-mocha .modal-card{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}html.theme--catppuccin-mocha .modal-close{background:none;height:40px;position:fixed;right:20px;top:20px;width:40px}html.theme--catppuccin-mocha .modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}html.theme--catppuccin-mocha .modal-card-head,html.theme--catppuccin-mocha .modal-card-foot{align-items:center;background-color:#181825;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}html.theme--catppuccin-mocha .modal-card-head{border-bottom:1px solid #585b70;border-top-left-radius:8px;border-top-right-radius:8px}html.theme--catppuccin-mocha .modal-card-title{color:#cdd6f4;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}html.theme--catppuccin-mocha .modal-card-foot{border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top:1px solid #585b70}html.theme--catppuccin-mocha .modal-card-foot .button:not(:last-child){margin-right:.5em}html.theme--catppuccin-mocha .modal-card-body{-webkit-overflow-scrolling:touch;background-color:#1e1e2e;flex-grow:1;flex-shrink:1;overflow:auto;padding:20px}html.theme--catppuccin-mocha .navbar{background-color:#89b4fa;min-height:4rem;position:relative;z-index:30}html.theme--catppuccin-mocha .navbar.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .navbar.is-white .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .navbar.is-white .navbar-brand .navbar-link{color:#0a0a0a}html.theme--catppuccin-mocha .navbar.is-white .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-white .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-white .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-white .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-white .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-white .navbar-brand .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-mocha .navbar.is-white .navbar-brand .navbar-link::after{border-color:#0a0a0a}html.theme--catppuccin-mocha .navbar.is-white .navbar-burger{color:#0a0a0a}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar.is-white .navbar-start>.navbar-item,html.theme--catppuccin-mocha .navbar.is-white .navbar-start .navbar-link,html.theme--catppuccin-mocha .navbar.is-white .navbar-end>.navbar-item,html.theme--catppuccin-mocha .navbar.is-white .navbar-end .navbar-link{color:#0a0a0a}html.theme--catppuccin-mocha .navbar.is-white .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-white .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-white .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-white .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-white .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-white .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .navbar.is-white .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-white .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-white .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-white .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-white .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-white .navbar-end .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-mocha .navbar.is-white .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .navbar.is-white .navbar-end .navbar-link::after{border-color:#0a0a0a}html.theme--catppuccin-mocha .navbar.is-white .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-mocha .navbar.is-white .navbar-dropdown a.navbar-item.is-active{background-color:#fff;color:#0a0a0a}}html.theme--catppuccin-mocha .navbar.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .navbar.is-black .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .navbar.is-black .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-mocha .navbar.is-black .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-black .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-black .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-black .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-black .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-black .navbar-brand .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-mocha .navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-mocha .navbar.is-black .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar.is-black .navbar-start>.navbar-item,html.theme--catppuccin-mocha .navbar.is-black .navbar-start .navbar-link,html.theme--catppuccin-mocha .navbar.is-black .navbar-end>.navbar-item,html.theme--catppuccin-mocha .navbar.is-black .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-mocha .navbar.is-black .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-black .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-black .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-black .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-black .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-black .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .navbar.is-black .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-black .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-black .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-black .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-black .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-black .navbar-end .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-mocha .navbar.is-black .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .navbar.is-black .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-mocha .navbar.is-black .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link{background-color:#000;color:#fff}html.theme--catppuccin-mocha .navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}html.theme--catppuccin-mocha .navbar.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-light .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .navbar.is-light .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-light .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-light .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-light .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-light .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-light .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-light .navbar-brand .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-light .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-light .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar.is-light .navbar-start>.navbar-item,html.theme--catppuccin-mocha .navbar.is-light .navbar-start .navbar-link,html.theme--catppuccin-mocha .navbar.is-light .navbar-end>.navbar-item,html.theme--catppuccin-mocha .navbar.is-light .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-light .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-light .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-light .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-light .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-light .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-light .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .navbar.is-light .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-light .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-light .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-light .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-light .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-light .navbar-end .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-light .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .navbar.is-light .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-mocha .navbar.is-dark,html.theme--catppuccin-mocha .content kbd.navbar{background-color:#313244;color:#fff}html.theme--catppuccin-mocha .navbar.is-dark .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .content kbd.navbar .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .navbar.is-dark .navbar-brand .navbar-link,html.theme--catppuccin-mocha .content kbd.navbar .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-mocha .navbar.is-dark .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .content kbd.navbar .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-dark .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .content kbd.navbar .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-dark .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .content kbd.navbar .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-dark .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .content kbd.navbar .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-dark .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .content kbd.navbar .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-dark .navbar-brand .navbar-link.is-active,html.theme--catppuccin-mocha .content kbd.navbar .navbar-brand .navbar-link.is-active{background-color:#262735;color:#fff}html.theme--catppuccin-mocha .navbar.is-dark .navbar-brand .navbar-link::after,html.theme--catppuccin-mocha .content kbd.navbar .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-mocha .navbar.is-dark .navbar-burger,html.theme--catppuccin-mocha .content kbd.navbar .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar.is-dark .navbar-start>.navbar-item,html.theme--catppuccin-mocha .content kbd.navbar .navbar-start>.navbar-item,html.theme--catppuccin-mocha .navbar.is-dark .navbar-start .navbar-link,html.theme--catppuccin-mocha .content kbd.navbar .navbar-start .navbar-link,html.theme--catppuccin-mocha .navbar.is-dark .navbar-end>.navbar-item,html.theme--catppuccin-mocha .content kbd.navbar .navbar-end>.navbar-item,html.theme--catppuccin-mocha .navbar.is-dark .navbar-end .navbar-link,html.theme--catppuccin-mocha .content kbd.navbar .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-mocha .navbar.is-dark .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .content kbd.navbar .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-dark .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .content kbd.navbar .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-dark .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .content kbd.navbar .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-dark .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .content kbd.navbar .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-dark .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .content kbd.navbar .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-dark .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .content kbd.navbar .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .navbar.is-dark .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .content kbd.navbar .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-dark .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .content kbd.navbar .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-dark .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .content kbd.navbar .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-dark .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .content kbd.navbar .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-dark .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .content kbd.navbar .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-dark .navbar-end .navbar-link.is-active,html.theme--catppuccin-mocha .content kbd.navbar .navbar-end .navbar-link.is-active{background-color:#262735;color:#fff}html.theme--catppuccin-mocha .navbar.is-dark .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .content kbd.navbar .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .navbar.is-dark .navbar-end .navbar-link::after,html.theme--catppuccin-mocha .content kbd.navbar .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-mocha .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-mocha .content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link{background-color:#262735;color:#fff}html.theme--catppuccin-mocha .navbar.is-dark .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-mocha .content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#313244;color:#fff}}html.theme--catppuccin-mocha .navbar.is-primary,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .navbar.is-primary .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .navbar.is-primary .navbar-brand .navbar-link,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-mocha .navbar.is-primary .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-primary .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-primary .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-primary .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-primary .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-primary .navbar-brand .navbar-link.is-active,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active{background-color:#71a4f9;color:#fff}html.theme--catppuccin-mocha .navbar.is-primary .navbar-brand .navbar-link::after,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-mocha .navbar.is-primary .navbar-burger,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar.is-primary .navbar-start>.navbar-item,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-start>.navbar-item,html.theme--catppuccin-mocha .navbar.is-primary .navbar-start .navbar-link,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link,html.theme--catppuccin-mocha .navbar.is-primary .navbar-end>.navbar-item,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-end>.navbar-item,html.theme--catppuccin-mocha .navbar.is-primary .navbar-end .navbar-link,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-mocha .navbar.is-primary .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-primary .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-primary .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-primary .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-primary .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-primary .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .navbar.is-primary .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-primary .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-primary .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-primary .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-primary .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-primary .navbar-end .navbar-link.is-active,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active{background-color:#71a4f9;color:#fff}html.theme--catppuccin-mocha .navbar.is-primary .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .navbar.is-primary .navbar-end .navbar-link::after,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-mocha .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link{background-color:#71a4f9;color:#fff}html.theme--catppuccin-mocha .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#89b4fa;color:#fff}}html.theme--catppuccin-mocha .navbar.is-link{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .navbar.is-link .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .navbar.is-link .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-mocha .navbar.is-link .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-link .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-link .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-link .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-link .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-link .navbar-brand .navbar-link.is-active{background-color:#71a4f9;color:#fff}html.theme--catppuccin-mocha .navbar.is-link .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-mocha .navbar.is-link .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar.is-link .navbar-start>.navbar-item,html.theme--catppuccin-mocha .navbar.is-link .navbar-start .navbar-link,html.theme--catppuccin-mocha .navbar.is-link .navbar-end>.navbar-item,html.theme--catppuccin-mocha .navbar.is-link .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-mocha .navbar.is-link .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-link .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-link .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-link .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-link .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-link .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .navbar.is-link .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-link .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-link .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-link .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-link .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-link .navbar-end .navbar-link.is-active{background-color:#71a4f9;color:#fff}html.theme--catppuccin-mocha .navbar.is-link .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .navbar.is-link .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-mocha .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link{background-color:#71a4f9;color:#fff}html.theme--catppuccin-mocha .navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:#89b4fa;color:#fff}}html.theme--catppuccin-mocha .navbar.is-info{background-color:#94e2d5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-info .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .navbar.is-info .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-info .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-info .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-info .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-info .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-info .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-info .navbar-brand .navbar-link.is-active{background-color:#80ddcd;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-info .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-info .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar.is-info .navbar-start>.navbar-item,html.theme--catppuccin-mocha .navbar.is-info .navbar-start .navbar-link,html.theme--catppuccin-mocha .navbar.is-info .navbar-end>.navbar-item,html.theme--catppuccin-mocha .navbar.is-info .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-info .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-info .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-info .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-info .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-info .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-info .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .navbar.is-info .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-info .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-info .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-info .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-info .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-info .navbar-end .navbar-link.is-active{background-color:#80ddcd;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-info .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .navbar.is-info .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-info .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link{background-color:#80ddcd;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:#94e2d5;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-mocha .navbar.is-success{background-color:#a6e3a1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-success .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .navbar.is-success .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-success .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-success .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-success .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-success .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-success .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-success .navbar-brand .navbar-link.is-active{background-color:#93dd8d;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-success .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-success .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar.is-success .navbar-start>.navbar-item,html.theme--catppuccin-mocha .navbar.is-success .navbar-start .navbar-link,html.theme--catppuccin-mocha .navbar.is-success .navbar-end>.navbar-item,html.theme--catppuccin-mocha .navbar.is-success .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-success .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-success .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-success .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-success .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-success .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-success .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .navbar.is-success .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-success .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-success .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-success .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-success .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-success .navbar-end .navbar-link.is-active{background-color:#93dd8d;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-success .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .navbar.is-success .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-success .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link{background-color:#93dd8d;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:#a6e3a1;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-mocha .navbar.is-warning{background-color:#f9e2af;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-warning .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .navbar.is-warning .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-warning .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-warning .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-warning .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-warning .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-warning .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-warning .navbar-brand .navbar-link.is-active{background-color:#f7d997;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-warning .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-warning .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar.is-warning .navbar-start>.navbar-item,html.theme--catppuccin-mocha .navbar.is-warning .navbar-start .navbar-link,html.theme--catppuccin-mocha .navbar.is-warning .navbar-end>.navbar-item,html.theme--catppuccin-mocha .navbar.is-warning .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-warning .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-warning .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-warning .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-warning .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-warning .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-warning .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .navbar.is-warning .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-warning .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-warning .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-warning .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-warning .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-warning .navbar-end .navbar-link.is-active{background-color:#f7d997;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-warning .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .navbar.is-warning .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-warning .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link{background-color:#f7d997;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:#f9e2af;color:rgba(0,0,0,0.7)}}html.theme--catppuccin-mocha .navbar.is-danger{background-color:#f38ba8;color:#fff}html.theme--catppuccin-mocha .navbar.is-danger .navbar-brand>.navbar-item,html.theme--catppuccin-mocha .navbar.is-danger .navbar-brand .navbar-link{color:#fff}html.theme--catppuccin-mocha .navbar.is-danger .navbar-brand>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-danger .navbar-brand>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-danger .navbar-brand>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-danger .navbar-brand .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-danger .navbar-brand .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-danger .navbar-brand .navbar-link.is-active{background-color:#f17497;color:#fff}html.theme--catppuccin-mocha .navbar.is-danger .navbar-brand .navbar-link::after{border-color:#fff}html.theme--catppuccin-mocha .navbar.is-danger .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar.is-danger .navbar-start>.navbar-item,html.theme--catppuccin-mocha .navbar.is-danger .navbar-start .navbar-link,html.theme--catppuccin-mocha .navbar.is-danger .navbar-end>.navbar-item,html.theme--catppuccin-mocha .navbar.is-danger .navbar-end .navbar-link{color:#fff}html.theme--catppuccin-mocha .navbar.is-danger .navbar-start>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-danger .navbar-start>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-danger .navbar-start>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-danger .navbar-start .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-danger .navbar-start .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-danger .navbar-start .navbar-link.is-active,html.theme--catppuccin-mocha .navbar.is-danger .navbar-end>a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-danger .navbar-end>a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-danger .navbar-end>a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-danger .navbar-end .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-danger .navbar-end .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-danger .navbar-end .navbar-link.is-active{background-color:#f17497;color:#fff}html.theme--catppuccin-mocha .navbar.is-danger .navbar-start .navbar-link::after,html.theme--catppuccin-mocha .navbar.is-danger .navbar-end .navbar-link::after{border-color:#fff}html.theme--catppuccin-mocha .navbar.is-danger .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link{background-color:#f17497;color:#fff}html.theme--catppuccin-mocha .navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:#f38ba8;color:#fff}}html.theme--catppuccin-mocha .navbar>.container{align-items:stretch;display:flex;min-height:4rem;width:100%}html.theme--catppuccin-mocha .navbar.has-shadow{box-shadow:0 2px 0 0 #181825}html.theme--catppuccin-mocha .navbar.is-fixed-bottom,html.theme--catppuccin-mocha .navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-mocha .navbar.is-fixed-bottom{bottom:0}html.theme--catppuccin-mocha .navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #181825}html.theme--catppuccin-mocha .navbar.is-fixed-top{top:0}html.theme--catppuccin-mocha html.has-navbar-fixed-top,html.theme--catppuccin-mocha body.has-navbar-fixed-top{padding-top:4rem}html.theme--catppuccin-mocha html.has-navbar-fixed-bottom,html.theme--catppuccin-mocha body.has-navbar-fixed-bottom{padding-bottom:4rem}html.theme--catppuccin-mocha .navbar-brand,html.theme--catppuccin-mocha .navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:4rem}html.theme--catppuccin-mocha .navbar-brand a.navbar-item:focus,html.theme--catppuccin-mocha .navbar-brand a.navbar-item:hover{background-color:transparent}html.theme--catppuccin-mocha .navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}html.theme--catppuccin-mocha .navbar-burger{color:#cdd6f4;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:block;height:4rem;position:relative;width:4rem;margin-left:auto}html.theme--catppuccin-mocha .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--catppuccin-mocha .navbar-burger span:nth-child(1){top:calc(50% - 6px)}html.theme--catppuccin-mocha .navbar-burger span:nth-child(2){top:calc(50% - 1px)}html.theme--catppuccin-mocha .navbar-burger span:nth-child(3){top:calc(50% + 4px)}html.theme--catppuccin-mocha .navbar-burger:hover{background-color:rgba(0,0,0,0.05)}html.theme--catppuccin-mocha .navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}html.theme--catppuccin-mocha .navbar-burger.is-active span:nth-child(2){opacity:0}html.theme--catppuccin-mocha .navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}html.theme--catppuccin-mocha .navbar-menu{display:none}html.theme--catppuccin-mocha .navbar-item,html.theme--catppuccin-mocha .navbar-link{color:#cdd6f4;display:block;line-height:1.5;padding:0.5rem 0.75rem;position:relative}html.theme--catppuccin-mocha .navbar-item .icon:only-child,html.theme--catppuccin-mocha .navbar-link .icon:only-child{margin-left:-0.25rem;margin-right:-0.25rem}html.theme--catppuccin-mocha a.navbar-item,html.theme--catppuccin-mocha .navbar-link{cursor:pointer}html.theme--catppuccin-mocha a.navbar-item:focus,html.theme--catppuccin-mocha a.navbar-item:focus-within,html.theme--catppuccin-mocha a.navbar-item:hover,html.theme--catppuccin-mocha a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar-link:focus,html.theme--catppuccin-mocha .navbar-link:focus-within,html.theme--catppuccin-mocha .navbar-link:hover,html.theme--catppuccin-mocha .navbar-link.is-active{background-color:rgba(0,0,0,0);color:#89b4fa}html.theme--catppuccin-mocha .navbar-item{flex-grow:0;flex-shrink:0}html.theme--catppuccin-mocha .navbar-item img{max-height:1.75rem}html.theme--catppuccin-mocha .navbar-item.has-dropdown{padding:0}html.theme--catppuccin-mocha .navbar-item.is-expanded{flex-grow:1;flex-shrink:1}html.theme--catppuccin-mocha .navbar-item.is-tab{border-bottom:1px solid transparent;min-height:4rem;padding-bottom:calc(0.5rem - 1px)}html.theme--catppuccin-mocha .navbar-item.is-tab:focus,html.theme--catppuccin-mocha .navbar-item.is-tab:hover{background-color:rgba(0,0,0,0);border-bottom-color:#89b4fa}html.theme--catppuccin-mocha .navbar-item.is-tab.is-active{background-color:rgba(0,0,0,0);border-bottom-color:#89b4fa;border-bottom-style:solid;border-bottom-width:3px;color:#89b4fa;padding-bottom:calc(0.5rem - 3px)}html.theme--catppuccin-mocha .navbar-content{flex-grow:1;flex-shrink:1}html.theme--catppuccin-mocha .navbar-link:not(.is-arrowless){padding-right:2.5em}html.theme--catppuccin-mocha .navbar-link:not(.is-arrowless)::after{border-color:#fff;margin-top:-0.375em;right:1.125em}html.theme--catppuccin-mocha .navbar-dropdown{font-size:0.875rem;padding-bottom:0.5rem;padding-top:0.5rem}html.theme--catppuccin-mocha .navbar-dropdown .navbar-item{padding-left:1.5rem;padding-right:1.5rem}html.theme--catppuccin-mocha .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--catppuccin-mocha .navbar>.container{display:block}html.theme--catppuccin-mocha .navbar-brand .navbar-item,html.theme--catppuccin-mocha .navbar-tabs .navbar-item{align-items:center;display:flex}html.theme--catppuccin-mocha .navbar-link::after{display:none}html.theme--catppuccin-mocha .navbar-menu{background-color:#89b4fa;box-shadow:0 8px 16px rgba(10,10,10,0.1);padding:0.5rem 0}html.theme--catppuccin-mocha .navbar-menu.is-active{display:block}html.theme--catppuccin-mocha .navbar.is-fixed-bottom-touch,html.theme--catppuccin-mocha .navbar.is-fixed-top-touch{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-mocha .navbar.is-fixed-bottom-touch{bottom:0}html.theme--catppuccin-mocha .navbar.is-fixed-bottom-touch.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .navbar.is-fixed-top-touch{top:0}html.theme--catppuccin-mocha .navbar.is-fixed-top .navbar-menu,html.theme--catppuccin-mocha .navbar.is-fixed-top-touch .navbar-menu{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 4rem);overflow:auto}html.theme--catppuccin-mocha html.has-navbar-fixed-top-touch,html.theme--catppuccin-mocha body.has-navbar-fixed-top-touch{padding-top:4rem}html.theme--catppuccin-mocha html.has-navbar-fixed-bottom-touch,html.theme--catppuccin-mocha body.has-navbar-fixed-bottom-touch{padding-bottom:4rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .navbar,html.theme--catppuccin-mocha .navbar-menu,html.theme--catppuccin-mocha .navbar-start,html.theme--catppuccin-mocha .navbar-end{align-items:stretch;display:flex}html.theme--catppuccin-mocha .navbar{min-height:4rem}html.theme--catppuccin-mocha .navbar.is-spaced{padding:1rem 2rem}html.theme--catppuccin-mocha .navbar.is-spaced .navbar-start,html.theme--catppuccin-mocha .navbar.is-spaced .navbar-end{align-items:center}html.theme--catppuccin-mocha .navbar.is-spaced a.navbar-item,html.theme--catppuccin-mocha .navbar.is-spaced .navbar-link{border-radius:.4em}html.theme--catppuccin-mocha .navbar.is-transparent a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-transparent a.navbar-item:hover,html.theme--catppuccin-mocha .navbar.is-transparent a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar.is-transparent .navbar-link:focus,html.theme--catppuccin-mocha .navbar.is-transparent .navbar-link:hover,html.theme--catppuccin-mocha .navbar.is-transparent .navbar-link.is-active{background-color:transparent !important}html.theme--catppuccin-mocha .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link,html.theme--catppuccin-mocha .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link,html.theme--catppuccin-mocha .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link,html.theme--catppuccin-mocha .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link{background-color:transparent !important}html.theme--catppuccin-mocha .navbar.is-transparent .navbar-dropdown a.navbar-item:focus,html.theme--catppuccin-mocha .navbar.is-transparent .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#7f849c}html.theme--catppuccin-mocha .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#89b4fa}html.theme--catppuccin-mocha .navbar-burger{display:none}html.theme--catppuccin-mocha .navbar-item,html.theme--catppuccin-mocha .navbar-link{align-items:center;display:flex}html.theme--catppuccin-mocha .navbar-item.has-dropdown{align-items:stretch}html.theme--catppuccin-mocha .navbar-item.has-dropdown-up .navbar-link::after{transform:rotate(135deg) translate(0.25em, -0.25em)}html.theme--catppuccin-mocha .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--catppuccin-mocha .navbar-item.is-active .navbar-dropdown,html.theme--catppuccin-mocha .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--catppuccin-mocha .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--catppuccin-mocha .navbar-item.is-hoverable:hover .navbar-dropdown{display:block}.navbar.is-spaced html.theme--catppuccin-mocha .navbar-item.is-active .navbar-dropdown,html.theme--catppuccin-mocha .navbar-item.is-active .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-mocha .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--catppuccin-mocha .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-mocha .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--catppuccin-mocha .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--catppuccin-mocha .navbar-item.is-hoverable:hover .navbar-dropdown,html.theme--catppuccin-mocha .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed{opacity:1;pointer-events:auto;transform:translateY(0)}html.theme--catppuccin-mocha .navbar-menu{flex-grow:1;flex-shrink:0}html.theme--catppuccin-mocha .navbar-start{justify-content:flex-start;margin-right:auto}html.theme--catppuccin-mocha .navbar-end{justify-content:flex-end;margin-left:auto}html.theme--catppuccin-mocha .navbar-dropdown{background-color:#89b4fa;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--catppuccin-mocha .navbar-dropdown .navbar-item{padding:0.375rem 1rem;white-space:nowrap}html.theme--catppuccin-mocha .navbar-dropdown a.navbar-item{padding-right:3rem}html.theme--catppuccin-mocha .navbar-dropdown a.navbar-item:focus,html.theme--catppuccin-mocha .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#7f849c}html.theme--catppuccin-mocha .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#89b4fa}.navbar.is-spaced html.theme--catppuccin-mocha .navbar-dropdown,html.theme--catppuccin-mocha .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--catppuccin-mocha .navbar-dropdown.is-right{left:auto;right:0}html.theme--catppuccin-mocha .navbar-divider{display:block}html.theme--catppuccin-mocha .navbar>.container .navbar-brand,html.theme--catppuccin-mocha .container>.navbar .navbar-brand{margin-left:-.75rem}html.theme--catppuccin-mocha .navbar>.container .navbar-menu,html.theme--catppuccin-mocha .container>.navbar .navbar-menu{margin-right:-.75rem}html.theme--catppuccin-mocha .navbar.is-fixed-bottom-desktop,html.theme--catppuccin-mocha .navbar.is-fixed-top-desktop{left:0;position:fixed;right:0;z-index:30}html.theme--catppuccin-mocha .navbar.is-fixed-bottom-desktop{bottom:0}html.theme--catppuccin-mocha .navbar.is-fixed-bottom-desktop.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .navbar.is-fixed-top-desktop{top:0}html.theme--catppuccin-mocha html.has-navbar-fixed-top-desktop,html.theme--catppuccin-mocha body.has-navbar-fixed-top-desktop{padding-top:4rem}html.theme--catppuccin-mocha html.has-navbar-fixed-bottom-desktop,html.theme--catppuccin-mocha body.has-navbar-fixed-bottom-desktop{padding-bottom:4rem}html.theme--catppuccin-mocha html.has-spaced-navbar-fixed-top,html.theme--catppuccin-mocha body.has-spaced-navbar-fixed-top{padding-top:6rem}html.theme--catppuccin-mocha html.has-spaced-navbar-fixed-bottom,html.theme--catppuccin-mocha body.has-spaced-navbar-fixed-bottom{padding-bottom:6rem}html.theme--catppuccin-mocha a.navbar-item.is-active,html.theme--catppuccin-mocha .navbar-link.is-active{color:#89b4fa}html.theme--catppuccin-mocha a.navbar-item.is-active:not(:focus):not(:hover),html.theme--catppuccin-mocha .navbar-link.is-active:not(:focus):not(:hover){background-color:rgba(0,0,0,0)}html.theme--catppuccin-mocha .navbar-item.has-dropdown:focus .navbar-link,html.theme--catppuccin-mocha .navbar-item.has-dropdown:hover .navbar-link,html.theme--catppuccin-mocha .navbar-item.has-dropdown.is-active .navbar-link{background-color:rgba(0,0,0,0)}}html.theme--catppuccin-mocha .hero.is-fullheight-with-navbar{min-height:calc(100vh - 4rem)}html.theme--catppuccin-mocha .pagination{font-size:1rem;margin:-.25rem}html.theme--catppuccin-mocha .pagination.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.pagination{font-size:.75rem}html.theme--catppuccin-mocha .pagination.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .pagination.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .pagination.is-rounded .pagination-previous,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.pagination .pagination-previous,html.theme--catppuccin-mocha .pagination.is-rounded .pagination-next,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.pagination .pagination-next{padding-left:1em;padding-right:1em;border-radius:9999px}html.theme--catppuccin-mocha .pagination.is-rounded .pagination-link,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:9999px}html.theme--catppuccin-mocha .pagination,html.theme--catppuccin-mocha .pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}html.theme--catppuccin-mocha .pagination-previous,html.theme--catppuccin-mocha .pagination-next,html.theme--catppuccin-mocha .pagination-link,html.theme--catppuccin-mocha .pagination-ellipsis{font-size:1em;justify-content:center;margin:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}html.theme--catppuccin-mocha .pagination-previous,html.theme--catppuccin-mocha .pagination-next,html.theme--catppuccin-mocha .pagination-link{border-color:#585b70;color:#89b4fa;min-width:2.5em}html.theme--catppuccin-mocha .pagination-previous:hover,html.theme--catppuccin-mocha .pagination-next:hover,html.theme--catppuccin-mocha .pagination-link:hover{border-color:#6c7086;color:#89dceb}html.theme--catppuccin-mocha .pagination-previous:focus,html.theme--catppuccin-mocha .pagination-next:focus,html.theme--catppuccin-mocha .pagination-link:focus{border-color:#6c7086}html.theme--catppuccin-mocha .pagination-previous:active,html.theme--catppuccin-mocha .pagination-next:active,html.theme--catppuccin-mocha .pagination-link:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2)}html.theme--catppuccin-mocha .pagination-previous[disabled],html.theme--catppuccin-mocha .pagination-previous.is-disabled,html.theme--catppuccin-mocha .pagination-next[disabled],html.theme--catppuccin-mocha .pagination-next.is-disabled,html.theme--catppuccin-mocha .pagination-link[disabled],html.theme--catppuccin-mocha .pagination-link.is-disabled{background-color:#585b70;border-color:#585b70;box-shadow:none;color:#f7f8fd;opacity:0.5}html.theme--catppuccin-mocha .pagination-previous,html.theme--catppuccin-mocha .pagination-next{padding-left:.75em;padding-right:.75em;white-space:nowrap}html.theme--catppuccin-mocha .pagination-link.is-current{background-color:#89b4fa;border-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .pagination-ellipsis{color:#6c7086;pointer-events:none}html.theme--catppuccin-mocha .pagination-list{flex-wrap:wrap}html.theme--catppuccin-mocha .pagination-list li{list-style:none}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .pagination{flex-wrap:wrap}html.theme--catppuccin-mocha .pagination-previous,html.theme--catppuccin-mocha .pagination-next{flex-grow:1;flex-shrink:1}html.theme--catppuccin-mocha .pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}html.theme--catppuccin-mocha .pagination-previous,html.theme--catppuccin-mocha .pagination-next,html.theme--catppuccin-mocha .pagination-link,html.theme--catppuccin-mocha .pagination-ellipsis{margin-bottom:0;margin-top:0}html.theme--catppuccin-mocha .pagination-previous{order:2}html.theme--catppuccin-mocha .pagination-next{order:3}html.theme--catppuccin-mocha .pagination{justify-content:space-between;margin-bottom:0;margin-top:0}html.theme--catppuccin-mocha .pagination.is-centered .pagination-previous{order:1}html.theme--catppuccin-mocha .pagination.is-centered .pagination-list{justify-content:center;order:2}html.theme--catppuccin-mocha .pagination.is-centered .pagination-next{order:3}html.theme--catppuccin-mocha .pagination.is-right .pagination-previous{order:1}html.theme--catppuccin-mocha .pagination.is-right .pagination-next{order:2}html.theme--catppuccin-mocha .pagination.is-right .pagination-list{justify-content:flex-end;order:3}}html.theme--catppuccin-mocha .panel{border-radius:8px;box-shadow:#171717;font-size:1rem}html.theme--catppuccin-mocha .panel:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-mocha .panel.is-white .panel-heading{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .panel.is-white .panel-tabs a.is-active{border-bottom-color:#fff}html.theme--catppuccin-mocha .panel.is-white .panel-block.is-active .panel-icon{color:#fff}html.theme--catppuccin-mocha .panel.is-black .panel-heading{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .panel.is-black .panel-tabs a.is-active{border-bottom-color:#0a0a0a}html.theme--catppuccin-mocha .panel.is-black .panel-block.is-active .panel-icon{color:#0a0a0a}html.theme--catppuccin-mocha .panel.is-light .panel-heading{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .panel.is-light .panel-tabs a.is-active{border-bottom-color:#f5f5f5}html.theme--catppuccin-mocha .panel.is-light .panel-block.is-active .panel-icon{color:#f5f5f5}html.theme--catppuccin-mocha .panel.is-dark .panel-heading,html.theme--catppuccin-mocha .content kbd.panel .panel-heading{background-color:#313244;color:#fff}html.theme--catppuccin-mocha .panel.is-dark .panel-tabs a.is-active,html.theme--catppuccin-mocha .content kbd.panel .panel-tabs a.is-active{border-bottom-color:#313244}html.theme--catppuccin-mocha .panel.is-dark .panel-block.is-active .panel-icon,html.theme--catppuccin-mocha .content kbd.panel .panel-block.is-active .panel-icon{color:#313244}html.theme--catppuccin-mocha .panel.is-primary .panel-heading,html.theme--catppuccin-mocha .docstring>section>a.panel.docs-sourcelink .panel-heading{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .panel.is-primary .panel-tabs a.is-active,html.theme--catppuccin-mocha .docstring>section>a.panel.docs-sourcelink .panel-tabs a.is-active{border-bottom-color:#89b4fa}html.theme--catppuccin-mocha .panel.is-primary .panel-block.is-active .panel-icon,html.theme--catppuccin-mocha .docstring>section>a.panel.docs-sourcelink .panel-block.is-active .panel-icon{color:#89b4fa}html.theme--catppuccin-mocha .panel.is-link .panel-heading{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .panel.is-link .panel-tabs a.is-active{border-bottom-color:#89b4fa}html.theme--catppuccin-mocha .panel.is-link .panel-block.is-active .panel-icon{color:#89b4fa}html.theme--catppuccin-mocha .panel.is-info .panel-heading{background-color:#94e2d5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .panel.is-info .panel-tabs a.is-active{border-bottom-color:#94e2d5}html.theme--catppuccin-mocha .panel.is-info .panel-block.is-active .panel-icon{color:#94e2d5}html.theme--catppuccin-mocha .panel.is-success .panel-heading{background-color:#a6e3a1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .panel.is-success .panel-tabs a.is-active{border-bottom-color:#a6e3a1}html.theme--catppuccin-mocha .panel.is-success .panel-block.is-active .panel-icon{color:#a6e3a1}html.theme--catppuccin-mocha .panel.is-warning .panel-heading{background-color:#f9e2af;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .panel.is-warning .panel-tabs a.is-active{border-bottom-color:#f9e2af}html.theme--catppuccin-mocha .panel.is-warning .panel-block.is-active .panel-icon{color:#f9e2af}html.theme--catppuccin-mocha .panel.is-danger .panel-heading{background-color:#f38ba8;color:#fff}html.theme--catppuccin-mocha .panel.is-danger .panel-tabs a.is-active{border-bottom-color:#f38ba8}html.theme--catppuccin-mocha .panel.is-danger .panel-block.is-active .panel-icon{color:#f38ba8}html.theme--catppuccin-mocha .panel-tabs:not(:last-child),html.theme--catppuccin-mocha .panel-block:not(:last-child){border-bottom:1px solid #ededed}html.theme--catppuccin-mocha .panel-heading{background-color:#45475a;border-radius:8px 8px 0 0;color:#b8c5ef;font-size:1.25em;font-weight:700;line-height:1.25;padding:0.75em 1em}html.theme--catppuccin-mocha .panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}html.theme--catppuccin-mocha .panel-tabs a{border-bottom:1px solid #585b70;margin-bottom:-1px;padding:0.5em}html.theme--catppuccin-mocha .panel-tabs a.is-active{border-bottom-color:#45475a;color:#71a4f9}html.theme--catppuccin-mocha .panel-list a{color:#cdd6f4}html.theme--catppuccin-mocha .panel-list a:hover{color:#89b4fa}html.theme--catppuccin-mocha .panel-block{align-items:center;color:#b8c5ef;display:flex;justify-content:flex-start;padding:0.5em 0.75em}html.theme--catppuccin-mocha .panel-block input[type="checkbox"]{margin-right:.75em}html.theme--catppuccin-mocha .panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}html.theme--catppuccin-mocha .panel-block.is-wrapped{flex-wrap:wrap}html.theme--catppuccin-mocha .panel-block.is-active{border-left-color:#89b4fa;color:#71a4f9}html.theme--catppuccin-mocha .panel-block.is-active .panel-icon{color:#89b4fa}html.theme--catppuccin-mocha .panel-block:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}html.theme--catppuccin-mocha a.panel-block,html.theme--catppuccin-mocha label.panel-block{cursor:pointer}html.theme--catppuccin-mocha a.panel-block:hover,html.theme--catppuccin-mocha label.panel-block:hover{background-color:#181825}html.theme--catppuccin-mocha .panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#f7f8fd;margin-right:.75em}html.theme--catppuccin-mocha .panel-icon .fa{font-size:inherit;line-height:inherit}html.theme--catppuccin-mocha .tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:1rem;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}html.theme--catppuccin-mocha .tabs a{align-items:center;border-bottom-color:#585b70;border-bottom-style:solid;border-bottom-width:1px;color:#cdd6f4;display:flex;justify-content:center;margin-bottom:-1px;padding:0.5em 1em;vertical-align:top}html.theme--catppuccin-mocha .tabs a:hover{border-bottom-color:#b8c5ef;color:#b8c5ef}html.theme--catppuccin-mocha .tabs li{display:block}html.theme--catppuccin-mocha .tabs li.is-active a{border-bottom-color:#89b4fa;color:#89b4fa}html.theme--catppuccin-mocha .tabs ul{align-items:center;border-bottom-color:#585b70;border-bottom-style:solid;border-bottom-width:1px;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}html.theme--catppuccin-mocha .tabs ul.is-left{padding-right:0.75em}html.theme--catppuccin-mocha .tabs ul.is-center{flex:none;justify-content:center;padding-left:0.75em;padding-right:0.75em}html.theme--catppuccin-mocha .tabs ul.is-right{justify-content:flex-end;padding-left:0.75em}html.theme--catppuccin-mocha .tabs .icon:first-child{margin-right:.5em}html.theme--catppuccin-mocha .tabs .icon:last-child{margin-left:.5em}html.theme--catppuccin-mocha .tabs.is-centered ul{justify-content:center}html.theme--catppuccin-mocha .tabs.is-right ul{justify-content:flex-end}html.theme--catppuccin-mocha .tabs.is-boxed a{border:1px solid transparent;border-radius:.4em .4em 0 0}html.theme--catppuccin-mocha .tabs.is-boxed a:hover{background-color:#181825;border-bottom-color:#585b70}html.theme--catppuccin-mocha .tabs.is-boxed li.is-active a{background-color:#fff;border-color:#585b70;border-bottom-color:rgba(0,0,0,0) !important}html.theme--catppuccin-mocha .tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}html.theme--catppuccin-mocha .tabs.is-toggle a{border-color:#585b70;border-style:solid;border-width:1px;margin-bottom:0;position:relative}html.theme--catppuccin-mocha .tabs.is-toggle a:hover{background-color:#181825;border-color:#6c7086;z-index:2}html.theme--catppuccin-mocha .tabs.is-toggle li+li{margin-left:-1px}html.theme--catppuccin-mocha .tabs.is-toggle li:first-child a{border-top-left-radius:.4em;border-bottom-left-radius:.4em}html.theme--catppuccin-mocha .tabs.is-toggle li:last-child a{border-top-right-radius:.4em;border-bottom-right-radius:.4em}html.theme--catppuccin-mocha .tabs.is-toggle li.is-active a{background-color:#89b4fa;border-color:#89b4fa;color:#fff;z-index:1}html.theme--catppuccin-mocha .tabs.is-toggle ul{border-bottom:none}html.theme--catppuccin-mocha .tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:9999px;border-top-left-radius:9999px;padding-left:1.25em}html.theme--catppuccin-mocha .tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:9999px;border-top-right-radius:9999px;padding-right:1.25em}html.theme--catppuccin-mocha .tabs.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.tabs{font-size:.75rem}html.theme--catppuccin-mocha .tabs.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .tabs.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-narrow{flex:none;width:unset}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-full{flex:none;width:100%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-half{flex:none;width:50%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-half{margin-left:50%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-0{flex:none;width:0%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-0{margin-left:0%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-1{flex:none;width:8.33333337%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-1{margin-left:8.33333337%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-2{flex:none;width:16.66666674%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-2{margin-left:16.66666674%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-3{flex:none;width:25%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-3{margin-left:25%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-4{flex:none;width:33.33333337%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-4{margin-left:33.33333337%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-5{flex:none;width:41.66666674%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-5{margin-left:41.66666674%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-6{flex:none;width:50%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-6{margin-left:50%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-7{flex:none;width:58.33333337%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-7{margin-left:58.33333337%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-8{flex:none;width:66.66666674%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-8{margin-left:66.66666674%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-9{flex:none;width:75%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-9{margin-left:75%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-10{flex:none;width:83.33333337%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-10{margin-left:83.33333337%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-11{flex:none;width:91.66666674%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-11{margin-left:91.66666674%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-12{flex:none;width:100%}.columns.is-mobile>html.theme--catppuccin-mocha .column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .column.is-narrow-mobile{flex:none;width:unset}html.theme--catppuccin-mocha .column.is-full-mobile{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-three-quarters-mobile{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-two-thirds-mobile{flex:none;width:66.6666%}html.theme--catppuccin-mocha .column.is-half-mobile{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-one-third-mobile{flex:none;width:33.3333%}html.theme--catppuccin-mocha .column.is-one-quarter-mobile{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-one-fifth-mobile{flex:none;width:20%}html.theme--catppuccin-mocha .column.is-two-fifths-mobile{flex:none;width:40%}html.theme--catppuccin-mocha .column.is-three-fifths-mobile{flex:none;width:60%}html.theme--catppuccin-mocha .column.is-four-fifths-mobile{flex:none;width:80%}html.theme--catppuccin-mocha .column.is-offset-three-quarters-mobile{margin-left:75%}html.theme--catppuccin-mocha .column.is-offset-two-thirds-mobile{margin-left:66.6666%}html.theme--catppuccin-mocha .column.is-offset-half-mobile{margin-left:50%}html.theme--catppuccin-mocha .column.is-offset-one-third-mobile{margin-left:33.3333%}html.theme--catppuccin-mocha .column.is-offset-one-quarter-mobile{margin-left:25%}html.theme--catppuccin-mocha .column.is-offset-one-fifth-mobile{margin-left:20%}html.theme--catppuccin-mocha .column.is-offset-two-fifths-mobile{margin-left:40%}html.theme--catppuccin-mocha .column.is-offset-three-fifths-mobile{margin-left:60%}html.theme--catppuccin-mocha .column.is-offset-four-fifths-mobile{margin-left:80%}html.theme--catppuccin-mocha .column.is-0-mobile{flex:none;width:0%}html.theme--catppuccin-mocha .column.is-offset-0-mobile{margin-left:0%}html.theme--catppuccin-mocha .column.is-1-mobile{flex:none;width:8.33333337%}html.theme--catppuccin-mocha .column.is-offset-1-mobile{margin-left:8.33333337%}html.theme--catppuccin-mocha .column.is-2-mobile{flex:none;width:16.66666674%}html.theme--catppuccin-mocha .column.is-offset-2-mobile{margin-left:16.66666674%}html.theme--catppuccin-mocha .column.is-3-mobile{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-offset-3-mobile{margin-left:25%}html.theme--catppuccin-mocha .column.is-4-mobile{flex:none;width:33.33333337%}html.theme--catppuccin-mocha .column.is-offset-4-mobile{margin-left:33.33333337%}html.theme--catppuccin-mocha .column.is-5-mobile{flex:none;width:41.66666674%}html.theme--catppuccin-mocha .column.is-offset-5-mobile{margin-left:41.66666674%}html.theme--catppuccin-mocha .column.is-6-mobile{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-offset-6-mobile{margin-left:50%}html.theme--catppuccin-mocha .column.is-7-mobile{flex:none;width:58.33333337%}html.theme--catppuccin-mocha .column.is-offset-7-mobile{margin-left:58.33333337%}html.theme--catppuccin-mocha .column.is-8-mobile{flex:none;width:66.66666674%}html.theme--catppuccin-mocha .column.is-offset-8-mobile{margin-left:66.66666674%}html.theme--catppuccin-mocha .column.is-9-mobile{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-offset-9-mobile{margin-left:75%}html.theme--catppuccin-mocha .column.is-10-mobile{flex:none;width:83.33333337%}html.theme--catppuccin-mocha .column.is-offset-10-mobile{margin-left:83.33333337%}html.theme--catppuccin-mocha .column.is-11-mobile{flex:none;width:91.66666674%}html.theme--catppuccin-mocha .column.is-offset-11-mobile{margin-left:91.66666674%}html.theme--catppuccin-mocha .column.is-12-mobile{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .column.is-narrow,html.theme--catppuccin-mocha .column.is-narrow-tablet{flex:none;width:unset}html.theme--catppuccin-mocha .column.is-full,html.theme--catppuccin-mocha .column.is-full-tablet{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-three-quarters,html.theme--catppuccin-mocha .column.is-three-quarters-tablet{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-two-thirds,html.theme--catppuccin-mocha .column.is-two-thirds-tablet{flex:none;width:66.6666%}html.theme--catppuccin-mocha .column.is-half,html.theme--catppuccin-mocha .column.is-half-tablet{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-one-third,html.theme--catppuccin-mocha .column.is-one-third-tablet{flex:none;width:33.3333%}html.theme--catppuccin-mocha .column.is-one-quarter,html.theme--catppuccin-mocha .column.is-one-quarter-tablet{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-one-fifth,html.theme--catppuccin-mocha .column.is-one-fifth-tablet{flex:none;width:20%}html.theme--catppuccin-mocha .column.is-two-fifths,html.theme--catppuccin-mocha .column.is-two-fifths-tablet{flex:none;width:40%}html.theme--catppuccin-mocha .column.is-three-fifths,html.theme--catppuccin-mocha .column.is-three-fifths-tablet{flex:none;width:60%}html.theme--catppuccin-mocha .column.is-four-fifths,html.theme--catppuccin-mocha .column.is-four-fifths-tablet{flex:none;width:80%}html.theme--catppuccin-mocha .column.is-offset-three-quarters,html.theme--catppuccin-mocha .column.is-offset-three-quarters-tablet{margin-left:75%}html.theme--catppuccin-mocha .column.is-offset-two-thirds,html.theme--catppuccin-mocha .column.is-offset-two-thirds-tablet{margin-left:66.6666%}html.theme--catppuccin-mocha .column.is-offset-half,html.theme--catppuccin-mocha .column.is-offset-half-tablet{margin-left:50%}html.theme--catppuccin-mocha .column.is-offset-one-third,html.theme--catppuccin-mocha .column.is-offset-one-third-tablet{margin-left:33.3333%}html.theme--catppuccin-mocha .column.is-offset-one-quarter,html.theme--catppuccin-mocha .column.is-offset-one-quarter-tablet{margin-left:25%}html.theme--catppuccin-mocha .column.is-offset-one-fifth,html.theme--catppuccin-mocha .column.is-offset-one-fifth-tablet{margin-left:20%}html.theme--catppuccin-mocha .column.is-offset-two-fifths,html.theme--catppuccin-mocha .column.is-offset-two-fifths-tablet{margin-left:40%}html.theme--catppuccin-mocha .column.is-offset-three-fifths,html.theme--catppuccin-mocha .column.is-offset-three-fifths-tablet{margin-left:60%}html.theme--catppuccin-mocha .column.is-offset-four-fifths,html.theme--catppuccin-mocha .column.is-offset-four-fifths-tablet{margin-left:80%}html.theme--catppuccin-mocha .column.is-0,html.theme--catppuccin-mocha .column.is-0-tablet{flex:none;width:0%}html.theme--catppuccin-mocha .column.is-offset-0,html.theme--catppuccin-mocha .column.is-offset-0-tablet{margin-left:0%}html.theme--catppuccin-mocha .column.is-1,html.theme--catppuccin-mocha .column.is-1-tablet{flex:none;width:8.33333337%}html.theme--catppuccin-mocha .column.is-offset-1,html.theme--catppuccin-mocha .column.is-offset-1-tablet{margin-left:8.33333337%}html.theme--catppuccin-mocha .column.is-2,html.theme--catppuccin-mocha .column.is-2-tablet{flex:none;width:16.66666674%}html.theme--catppuccin-mocha .column.is-offset-2,html.theme--catppuccin-mocha .column.is-offset-2-tablet{margin-left:16.66666674%}html.theme--catppuccin-mocha .column.is-3,html.theme--catppuccin-mocha .column.is-3-tablet{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-offset-3,html.theme--catppuccin-mocha .column.is-offset-3-tablet{margin-left:25%}html.theme--catppuccin-mocha .column.is-4,html.theme--catppuccin-mocha .column.is-4-tablet{flex:none;width:33.33333337%}html.theme--catppuccin-mocha .column.is-offset-4,html.theme--catppuccin-mocha .column.is-offset-4-tablet{margin-left:33.33333337%}html.theme--catppuccin-mocha .column.is-5,html.theme--catppuccin-mocha .column.is-5-tablet{flex:none;width:41.66666674%}html.theme--catppuccin-mocha .column.is-offset-5,html.theme--catppuccin-mocha .column.is-offset-5-tablet{margin-left:41.66666674%}html.theme--catppuccin-mocha .column.is-6,html.theme--catppuccin-mocha .column.is-6-tablet{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-offset-6,html.theme--catppuccin-mocha .column.is-offset-6-tablet{margin-left:50%}html.theme--catppuccin-mocha .column.is-7,html.theme--catppuccin-mocha .column.is-7-tablet{flex:none;width:58.33333337%}html.theme--catppuccin-mocha .column.is-offset-7,html.theme--catppuccin-mocha .column.is-offset-7-tablet{margin-left:58.33333337%}html.theme--catppuccin-mocha .column.is-8,html.theme--catppuccin-mocha .column.is-8-tablet{flex:none;width:66.66666674%}html.theme--catppuccin-mocha .column.is-offset-8,html.theme--catppuccin-mocha .column.is-offset-8-tablet{margin-left:66.66666674%}html.theme--catppuccin-mocha .column.is-9,html.theme--catppuccin-mocha .column.is-9-tablet{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-offset-9,html.theme--catppuccin-mocha .column.is-offset-9-tablet{margin-left:75%}html.theme--catppuccin-mocha .column.is-10,html.theme--catppuccin-mocha .column.is-10-tablet{flex:none;width:83.33333337%}html.theme--catppuccin-mocha .column.is-offset-10,html.theme--catppuccin-mocha .column.is-offset-10-tablet{margin-left:83.33333337%}html.theme--catppuccin-mocha .column.is-11,html.theme--catppuccin-mocha .column.is-11-tablet{flex:none;width:91.66666674%}html.theme--catppuccin-mocha .column.is-offset-11,html.theme--catppuccin-mocha .column.is-offset-11-tablet{margin-left:91.66666674%}html.theme--catppuccin-mocha .column.is-12,html.theme--catppuccin-mocha .column.is-12-tablet{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-offset-12,html.theme--catppuccin-mocha .column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .column.is-narrow-touch{flex:none;width:unset}html.theme--catppuccin-mocha .column.is-full-touch{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-three-quarters-touch{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-two-thirds-touch{flex:none;width:66.6666%}html.theme--catppuccin-mocha .column.is-half-touch{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-one-third-touch{flex:none;width:33.3333%}html.theme--catppuccin-mocha .column.is-one-quarter-touch{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-one-fifth-touch{flex:none;width:20%}html.theme--catppuccin-mocha .column.is-two-fifths-touch{flex:none;width:40%}html.theme--catppuccin-mocha .column.is-three-fifths-touch{flex:none;width:60%}html.theme--catppuccin-mocha .column.is-four-fifths-touch{flex:none;width:80%}html.theme--catppuccin-mocha .column.is-offset-three-quarters-touch{margin-left:75%}html.theme--catppuccin-mocha .column.is-offset-two-thirds-touch{margin-left:66.6666%}html.theme--catppuccin-mocha .column.is-offset-half-touch{margin-left:50%}html.theme--catppuccin-mocha .column.is-offset-one-third-touch{margin-left:33.3333%}html.theme--catppuccin-mocha .column.is-offset-one-quarter-touch{margin-left:25%}html.theme--catppuccin-mocha .column.is-offset-one-fifth-touch{margin-left:20%}html.theme--catppuccin-mocha .column.is-offset-two-fifths-touch{margin-left:40%}html.theme--catppuccin-mocha .column.is-offset-three-fifths-touch{margin-left:60%}html.theme--catppuccin-mocha .column.is-offset-four-fifths-touch{margin-left:80%}html.theme--catppuccin-mocha .column.is-0-touch{flex:none;width:0%}html.theme--catppuccin-mocha .column.is-offset-0-touch{margin-left:0%}html.theme--catppuccin-mocha .column.is-1-touch{flex:none;width:8.33333337%}html.theme--catppuccin-mocha .column.is-offset-1-touch{margin-left:8.33333337%}html.theme--catppuccin-mocha .column.is-2-touch{flex:none;width:16.66666674%}html.theme--catppuccin-mocha .column.is-offset-2-touch{margin-left:16.66666674%}html.theme--catppuccin-mocha .column.is-3-touch{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-offset-3-touch{margin-left:25%}html.theme--catppuccin-mocha .column.is-4-touch{flex:none;width:33.33333337%}html.theme--catppuccin-mocha .column.is-offset-4-touch{margin-left:33.33333337%}html.theme--catppuccin-mocha .column.is-5-touch{flex:none;width:41.66666674%}html.theme--catppuccin-mocha .column.is-offset-5-touch{margin-left:41.66666674%}html.theme--catppuccin-mocha .column.is-6-touch{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-offset-6-touch{margin-left:50%}html.theme--catppuccin-mocha .column.is-7-touch{flex:none;width:58.33333337%}html.theme--catppuccin-mocha .column.is-offset-7-touch{margin-left:58.33333337%}html.theme--catppuccin-mocha .column.is-8-touch{flex:none;width:66.66666674%}html.theme--catppuccin-mocha .column.is-offset-8-touch{margin-left:66.66666674%}html.theme--catppuccin-mocha .column.is-9-touch{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-offset-9-touch{margin-left:75%}html.theme--catppuccin-mocha .column.is-10-touch{flex:none;width:83.33333337%}html.theme--catppuccin-mocha .column.is-offset-10-touch{margin-left:83.33333337%}html.theme--catppuccin-mocha .column.is-11-touch{flex:none;width:91.66666674%}html.theme--catppuccin-mocha .column.is-offset-11-touch{margin-left:91.66666674%}html.theme--catppuccin-mocha .column.is-12-touch{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .column.is-narrow-desktop{flex:none;width:unset}html.theme--catppuccin-mocha .column.is-full-desktop{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-three-quarters-desktop{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-two-thirds-desktop{flex:none;width:66.6666%}html.theme--catppuccin-mocha .column.is-half-desktop{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-one-third-desktop{flex:none;width:33.3333%}html.theme--catppuccin-mocha .column.is-one-quarter-desktop{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-one-fifth-desktop{flex:none;width:20%}html.theme--catppuccin-mocha .column.is-two-fifths-desktop{flex:none;width:40%}html.theme--catppuccin-mocha .column.is-three-fifths-desktop{flex:none;width:60%}html.theme--catppuccin-mocha .column.is-four-fifths-desktop{flex:none;width:80%}html.theme--catppuccin-mocha .column.is-offset-three-quarters-desktop{margin-left:75%}html.theme--catppuccin-mocha .column.is-offset-two-thirds-desktop{margin-left:66.6666%}html.theme--catppuccin-mocha .column.is-offset-half-desktop{margin-left:50%}html.theme--catppuccin-mocha .column.is-offset-one-third-desktop{margin-left:33.3333%}html.theme--catppuccin-mocha .column.is-offset-one-quarter-desktop{margin-left:25%}html.theme--catppuccin-mocha .column.is-offset-one-fifth-desktop{margin-left:20%}html.theme--catppuccin-mocha .column.is-offset-two-fifths-desktop{margin-left:40%}html.theme--catppuccin-mocha .column.is-offset-three-fifths-desktop{margin-left:60%}html.theme--catppuccin-mocha .column.is-offset-four-fifths-desktop{margin-left:80%}html.theme--catppuccin-mocha .column.is-0-desktop{flex:none;width:0%}html.theme--catppuccin-mocha .column.is-offset-0-desktop{margin-left:0%}html.theme--catppuccin-mocha .column.is-1-desktop{flex:none;width:8.33333337%}html.theme--catppuccin-mocha .column.is-offset-1-desktop{margin-left:8.33333337%}html.theme--catppuccin-mocha .column.is-2-desktop{flex:none;width:16.66666674%}html.theme--catppuccin-mocha .column.is-offset-2-desktop{margin-left:16.66666674%}html.theme--catppuccin-mocha .column.is-3-desktop{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-offset-3-desktop{margin-left:25%}html.theme--catppuccin-mocha .column.is-4-desktop{flex:none;width:33.33333337%}html.theme--catppuccin-mocha .column.is-offset-4-desktop{margin-left:33.33333337%}html.theme--catppuccin-mocha .column.is-5-desktop{flex:none;width:41.66666674%}html.theme--catppuccin-mocha .column.is-offset-5-desktop{margin-left:41.66666674%}html.theme--catppuccin-mocha .column.is-6-desktop{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-offset-6-desktop{margin-left:50%}html.theme--catppuccin-mocha .column.is-7-desktop{flex:none;width:58.33333337%}html.theme--catppuccin-mocha .column.is-offset-7-desktop{margin-left:58.33333337%}html.theme--catppuccin-mocha .column.is-8-desktop{flex:none;width:66.66666674%}html.theme--catppuccin-mocha .column.is-offset-8-desktop{margin-left:66.66666674%}html.theme--catppuccin-mocha .column.is-9-desktop{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-offset-9-desktop{margin-left:75%}html.theme--catppuccin-mocha .column.is-10-desktop{flex:none;width:83.33333337%}html.theme--catppuccin-mocha .column.is-offset-10-desktop{margin-left:83.33333337%}html.theme--catppuccin-mocha .column.is-11-desktop{flex:none;width:91.66666674%}html.theme--catppuccin-mocha .column.is-offset-11-desktop{margin-left:91.66666674%}html.theme--catppuccin-mocha .column.is-12-desktop{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .column.is-narrow-widescreen{flex:none;width:unset}html.theme--catppuccin-mocha .column.is-full-widescreen{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-three-quarters-widescreen{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-two-thirds-widescreen{flex:none;width:66.6666%}html.theme--catppuccin-mocha .column.is-half-widescreen{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-one-third-widescreen{flex:none;width:33.3333%}html.theme--catppuccin-mocha .column.is-one-quarter-widescreen{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-one-fifth-widescreen{flex:none;width:20%}html.theme--catppuccin-mocha .column.is-two-fifths-widescreen{flex:none;width:40%}html.theme--catppuccin-mocha .column.is-three-fifths-widescreen{flex:none;width:60%}html.theme--catppuccin-mocha .column.is-four-fifths-widescreen{flex:none;width:80%}html.theme--catppuccin-mocha .column.is-offset-three-quarters-widescreen{margin-left:75%}html.theme--catppuccin-mocha .column.is-offset-two-thirds-widescreen{margin-left:66.6666%}html.theme--catppuccin-mocha .column.is-offset-half-widescreen{margin-left:50%}html.theme--catppuccin-mocha .column.is-offset-one-third-widescreen{margin-left:33.3333%}html.theme--catppuccin-mocha .column.is-offset-one-quarter-widescreen{margin-left:25%}html.theme--catppuccin-mocha .column.is-offset-one-fifth-widescreen{margin-left:20%}html.theme--catppuccin-mocha .column.is-offset-two-fifths-widescreen{margin-left:40%}html.theme--catppuccin-mocha .column.is-offset-three-fifths-widescreen{margin-left:60%}html.theme--catppuccin-mocha .column.is-offset-four-fifths-widescreen{margin-left:80%}html.theme--catppuccin-mocha .column.is-0-widescreen{flex:none;width:0%}html.theme--catppuccin-mocha .column.is-offset-0-widescreen{margin-left:0%}html.theme--catppuccin-mocha .column.is-1-widescreen{flex:none;width:8.33333337%}html.theme--catppuccin-mocha .column.is-offset-1-widescreen{margin-left:8.33333337%}html.theme--catppuccin-mocha .column.is-2-widescreen{flex:none;width:16.66666674%}html.theme--catppuccin-mocha .column.is-offset-2-widescreen{margin-left:16.66666674%}html.theme--catppuccin-mocha .column.is-3-widescreen{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-offset-3-widescreen{margin-left:25%}html.theme--catppuccin-mocha .column.is-4-widescreen{flex:none;width:33.33333337%}html.theme--catppuccin-mocha .column.is-offset-4-widescreen{margin-left:33.33333337%}html.theme--catppuccin-mocha .column.is-5-widescreen{flex:none;width:41.66666674%}html.theme--catppuccin-mocha .column.is-offset-5-widescreen{margin-left:41.66666674%}html.theme--catppuccin-mocha .column.is-6-widescreen{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-offset-6-widescreen{margin-left:50%}html.theme--catppuccin-mocha .column.is-7-widescreen{flex:none;width:58.33333337%}html.theme--catppuccin-mocha .column.is-offset-7-widescreen{margin-left:58.33333337%}html.theme--catppuccin-mocha .column.is-8-widescreen{flex:none;width:66.66666674%}html.theme--catppuccin-mocha .column.is-offset-8-widescreen{margin-left:66.66666674%}html.theme--catppuccin-mocha .column.is-9-widescreen{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-offset-9-widescreen{margin-left:75%}html.theme--catppuccin-mocha .column.is-10-widescreen{flex:none;width:83.33333337%}html.theme--catppuccin-mocha .column.is-offset-10-widescreen{margin-left:83.33333337%}html.theme--catppuccin-mocha .column.is-11-widescreen{flex:none;width:91.66666674%}html.theme--catppuccin-mocha .column.is-offset-11-widescreen{margin-left:91.66666674%}html.theme--catppuccin-mocha .column.is-12-widescreen{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .column.is-narrow-fullhd{flex:none;width:unset}html.theme--catppuccin-mocha .column.is-full-fullhd{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-three-quarters-fullhd{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-two-thirds-fullhd{flex:none;width:66.6666%}html.theme--catppuccin-mocha .column.is-half-fullhd{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-one-third-fullhd{flex:none;width:33.3333%}html.theme--catppuccin-mocha .column.is-one-quarter-fullhd{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-one-fifth-fullhd{flex:none;width:20%}html.theme--catppuccin-mocha .column.is-two-fifths-fullhd{flex:none;width:40%}html.theme--catppuccin-mocha .column.is-three-fifths-fullhd{flex:none;width:60%}html.theme--catppuccin-mocha .column.is-four-fifths-fullhd{flex:none;width:80%}html.theme--catppuccin-mocha .column.is-offset-three-quarters-fullhd{margin-left:75%}html.theme--catppuccin-mocha .column.is-offset-two-thirds-fullhd{margin-left:66.6666%}html.theme--catppuccin-mocha .column.is-offset-half-fullhd{margin-left:50%}html.theme--catppuccin-mocha .column.is-offset-one-third-fullhd{margin-left:33.3333%}html.theme--catppuccin-mocha .column.is-offset-one-quarter-fullhd{margin-left:25%}html.theme--catppuccin-mocha .column.is-offset-one-fifth-fullhd{margin-left:20%}html.theme--catppuccin-mocha .column.is-offset-two-fifths-fullhd{margin-left:40%}html.theme--catppuccin-mocha .column.is-offset-three-fifths-fullhd{margin-left:60%}html.theme--catppuccin-mocha .column.is-offset-four-fifths-fullhd{margin-left:80%}html.theme--catppuccin-mocha .column.is-0-fullhd{flex:none;width:0%}html.theme--catppuccin-mocha .column.is-offset-0-fullhd{margin-left:0%}html.theme--catppuccin-mocha .column.is-1-fullhd{flex:none;width:8.33333337%}html.theme--catppuccin-mocha .column.is-offset-1-fullhd{margin-left:8.33333337%}html.theme--catppuccin-mocha .column.is-2-fullhd{flex:none;width:16.66666674%}html.theme--catppuccin-mocha .column.is-offset-2-fullhd{margin-left:16.66666674%}html.theme--catppuccin-mocha .column.is-3-fullhd{flex:none;width:25%}html.theme--catppuccin-mocha .column.is-offset-3-fullhd{margin-left:25%}html.theme--catppuccin-mocha .column.is-4-fullhd{flex:none;width:33.33333337%}html.theme--catppuccin-mocha .column.is-offset-4-fullhd{margin-left:33.33333337%}html.theme--catppuccin-mocha .column.is-5-fullhd{flex:none;width:41.66666674%}html.theme--catppuccin-mocha .column.is-offset-5-fullhd{margin-left:41.66666674%}html.theme--catppuccin-mocha .column.is-6-fullhd{flex:none;width:50%}html.theme--catppuccin-mocha .column.is-offset-6-fullhd{margin-left:50%}html.theme--catppuccin-mocha .column.is-7-fullhd{flex:none;width:58.33333337%}html.theme--catppuccin-mocha .column.is-offset-7-fullhd{margin-left:58.33333337%}html.theme--catppuccin-mocha .column.is-8-fullhd{flex:none;width:66.66666674%}html.theme--catppuccin-mocha .column.is-offset-8-fullhd{margin-left:66.66666674%}html.theme--catppuccin-mocha .column.is-9-fullhd{flex:none;width:75%}html.theme--catppuccin-mocha .column.is-offset-9-fullhd{margin-left:75%}html.theme--catppuccin-mocha .column.is-10-fullhd{flex:none;width:83.33333337%}html.theme--catppuccin-mocha .column.is-offset-10-fullhd{margin-left:83.33333337%}html.theme--catppuccin-mocha .column.is-11-fullhd{flex:none;width:91.66666674%}html.theme--catppuccin-mocha .column.is-offset-11-fullhd{margin-left:91.66666674%}html.theme--catppuccin-mocha .column.is-12-fullhd{flex:none;width:100%}html.theme--catppuccin-mocha .column.is-offset-12-fullhd{margin-left:100%}}html.theme--catppuccin-mocha .columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--catppuccin-mocha .columns:last-child{margin-bottom:-.75rem}html.theme--catppuccin-mocha .columns:not(:last-child){margin-bottom:calc(1.5rem - .75rem)}html.theme--catppuccin-mocha .columns.is-centered{justify-content:center}html.theme--catppuccin-mocha .columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}html.theme--catppuccin-mocha .columns.is-gapless>.column{margin:0;padding:0 !important}html.theme--catppuccin-mocha .columns.is-gapless:not(:last-child){margin-bottom:1.5rem}html.theme--catppuccin-mocha .columns.is-gapless:last-child{margin-bottom:0}html.theme--catppuccin-mocha .columns.is-mobile{display:flex}html.theme--catppuccin-mocha .columns.is-multiline{flex-wrap:wrap}html.theme--catppuccin-mocha .columns.is-vcentered{align-items:center}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .columns:not(.is-desktop){display:flex}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .columns.is-desktop{display:flex}}html.theme--catppuccin-mocha .columns.is-variable{--columnGap: 0.75rem;margin-left:calc(-1 * var(--columnGap));margin-right:calc(-1 * var(--columnGap))}html.theme--catppuccin-mocha .columns.is-variable>.column{padding-left:var(--columnGap);padding-right:var(--columnGap)}html.theme--catppuccin-mocha .columns.is-variable.is-0{--columnGap: 0rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .columns.is-variable.is-0-mobile{--columnGap: 0rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .columns.is-variable.is-0-tablet{--columnGap: 0rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-0-tablet-only{--columnGap: 0rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-0-touch{--columnGap: 0rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .columns.is-variable.is-0-desktop{--columnGap: 0rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-mocha .columns.is-variable.is-0-desktop-only{--columnGap: 0rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .columns.is-variable.is-0-widescreen{--columnGap: 0rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-mocha .columns.is-variable.is-0-widescreen-only{--columnGap: 0rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .columns.is-variable.is-0-fullhd{--columnGap: 0rem}}html.theme--catppuccin-mocha .columns.is-variable.is-1{--columnGap: .25rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .columns.is-variable.is-1-mobile{--columnGap: .25rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .columns.is-variable.is-1-tablet{--columnGap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-1-tablet-only{--columnGap: .25rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-1-touch{--columnGap: .25rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .columns.is-variable.is-1-desktop{--columnGap: .25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-mocha .columns.is-variable.is-1-desktop-only{--columnGap: .25rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .columns.is-variable.is-1-widescreen{--columnGap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-mocha .columns.is-variable.is-1-widescreen-only{--columnGap: .25rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .columns.is-variable.is-1-fullhd{--columnGap: .25rem}}html.theme--catppuccin-mocha .columns.is-variable.is-2{--columnGap: .5rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .columns.is-variable.is-2-mobile{--columnGap: .5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .columns.is-variable.is-2-tablet{--columnGap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-2-tablet-only{--columnGap: .5rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-2-touch{--columnGap: .5rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .columns.is-variable.is-2-desktop{--columnGap: .5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-mocha .columns.is-variable.is-2-desktop-only{--columnGap: .5rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .columns.is-variable.is-2-widescreen{--columnGap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-mocha .columns.is-variable.is-2-widescreen-only{--columnGap: .5rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .columns.is-variable.is-2-fullhd{--columnGap: .5rem}}html.theme--catppuccin-mocha .columns.is-variable.is-3{--columnGap: .75rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .columns.is-variable.is-3-mobile{--columnGap: .75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .columns.is-variable.is-3-tablet{--columnGap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-3-tablet-only{--columnGap: .75rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-3-touch{--columnGap: .75rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .columns.is-variable.is-3-desktop{--columnGap: .75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-mocha .columns.is-variable.is-3-desktop-only{--columnGap: .75rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .columns.is-variable.is-3-widescreen{--columnGap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-mocha .columns.is-variable.is-3-widescreen-only{--columnGap: .75rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .columns.is-variable.is-3-fullhd{--columnGap: .75rem}}html.theme--catppuccin-mocha .columns.is-variable.is-4{--columnGap: 1rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .columns.is-variable.is-4-mobile{--columnGap: 1rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .columns.is-variable.is-4-tablet{--columnGap: 1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-4-tablet-only{--columnGap: 1rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-4-touch{--columnGap: 1rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .columns.is-variable.is-4-desktop{--columnGap: 1rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-mocha .columns.is-variable.is-4-desktop-only{--columnGap: 1rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .columns.is-variable.is-4-widescreen{--columnGap: 1rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-mocha .columns.is-variable.is-4-widescreen-only{--columnGap: 1rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .columns.is-variable.is-4-fullhd{--columnGap: 1rem}}html.theme--catppuccin-mocha .columns.is-variable.is-5{--columnGap: 1.25rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .columns.is-variable.is-5-mobile{--columnGap: 1.25rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .columns.is-variable.is-5-tablet{--columnGap: 1.25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-5-tablet-only{--columnGap: 1.25rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-5-touch{--columnGap: 1.25rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .columns.is-variable.is-5-desktop{--columnGap: 1.25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-mocha .columns.is-variable.is-5-desktop-only{--columnGap: 1.25rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .columns.is-variable.is-5-widescreen{--columnGap: 1.25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-mocha .columns.is-variable.is-5-widescreen-only{--columnGap: 1.25rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .columns.is-variable.is-5-fullhd{--columnGap: 1.25rem}}html.theme--catppuccin-mocha .columns.is-variable.is-6{--columnGap: 1.5rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .columns.is-variable.is-6-mobile{--columnGap: 1.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .columns.is-variable.is-6-tablet{--columnGap: 1.5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-6-tablet-only{--columnGap: 1.5rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-6-touch{--columnGap: 1.5rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .columns.is-variable.is-6-desktop{--columnGap: 1.5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-mocha .columns.is-variable.is-6-desktop-only{--columnGap: 1.5rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .columns.is-variable.is-6-widescreen{--columnGap: 1.5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-mocha .columns.is-variable.is-6-widescreen-only{--columnGap: 1.5rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .columns.is-variable.is-6-fullhd{--columnGap: 1.5rem}}html.theme--catppuccin-mocha .columns.is-variable.is-7{--columnGap: 1.75rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .columns.is-variable.is-7-mobile{--columnGap: 1.75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .columns.is-variable.is-7-tablet{--columnGap: 1.75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-7-tablet-only{--columnGap: 1.75rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-7-touch{--columnGap: 1.75rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .columns.is-variable.is-7-desktop{--columnGap: 1.75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-mocha .columns.is-variable.is-7-desktop-only{--columnGap: 1.75rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .columns.is-variable.is-7-widescreen{--columnGap: 1.75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-mocha .columns.is-variable.is-7-widescreen-only{--columnGap: 1.75rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .columns.is-variable.is-7-fullhd{--columnGap: 1.75rem}}html.theme--catppuccin-mocha .columns.is-variable.is-8{--columnGap: 2rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .columns.is-variable.is-8-mobile{--columnGap: 2rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .columns.is-variable.is-8-tablet{--columnGap: 2rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-8-tablet-only{--columnGap: 2rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .columns.is-variable.is-8-touch{--columnGap: 2rem}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .columns.is-variable.is-8-desktop{--columnGap: 2rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--catppuccin-mocha .columns.is-variable.is-8-desktop-only{--columnGap: 2rem}}@media screen and (min-width: 1216px){html.theme--catppuccin-mocha .columns.is-variable.is-8-widescreen{--columnGap: 2rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--catppuccin-mocha .columns.is-variable.is-8-widescreen-only{--columnGap: 2rem}}@media screen and (min-width: 1408px){html.theme--catppuccin-mocha .columns.is-variable.is-8-fullhd{--columnGap: 2rem}}html.theme--catppuccin-mocha .tile{align-items:stretch;display:block;flex-basis:0;flex-grow:1;flex-shrink:1;min-height:min-content}html.theme--catppuccin-mocha .tile.is-ancestor{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--catppuccin-mocha .tile.is-ancestor:last-child{margin-bottom:-.75rem}html.theme--catppuccin-mocha .tile.is-ancestor:not(:last-child){margin-bottom:.75rem}html.theme--catppuccin-mocha .tile.is-child{margin:0 !important}html.theme--catppuccin-mocha .tile.is-parent{padding:.75rem}html.theme--catppuccin-mocha .tile.is-vertical{flex-direction:column}html.theme--catppuccin-mocha .tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem !important}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .tile:not(.is-child){display:flex}html.theme--catppuccin-mocha .tile.is-1{flex:none;width:8.33333337%}html.theme--catppuccin-mocha .tile.is-2{flex:none;width:16.66666674%}html.theme--catppuccin-mocha .tile.is-3{flex:none;width:25%}html.theme--catppuccin-mocha .tile.is-4{flex:none;width:33.33333337%}html.theme--catppuccin-mocha .tile.is-5{flex:none;width:41.66666674%}html.theme--catppuccin-mocha .tile.is-6{flex:none;width:50%}html.theme--catppuccin-mocha .tile.is-7{flex:none;width:58.33333337%}html.theme--catppuccin-mocha .tile.is-8{flex:none;width:66.66666674%}html.theme--catppuccin-mocha .tile.is-9{flex:none;width:75%}html.theme--catppuccin-mocha .tile.is-10{flex:none;width:83.33333337%}html.theme--catppuccin-mocha .tile.is-11{flex:none;width:91.66666674%}html.theme--catppuccin-mocha .tile.is-12{flex:none;width:100%}}html.theme--catppuccin-mocha .hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}html.theme--catppuccin-mocha .hero .navbar{background:none}html.theme--catppuccin-mocha .hero .tabs ul{border-bottom:none}html.theme--catppuccin-mocha .hero.is-white{background-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .hero.is-white strong{color:inherit}html.theme--catppuccin-mocha .hero.is-white .title{color:#0a0a0a}html.theme--catppuccin-mocha .hero.is-white .subtitle{color:rgba(10,10,10,0.9)}html.theme--catppuccin-mocha .hero.is-white .subtitle a:not(.button),html.theme--catppuccin-mocha .hero.is-white .subtitle strong{color:#0a0a0a}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .hero.is-white .navbar-menu{background-color:#fff}}html.theme--catppuccin-mocha .hero.is-white .navbar-item,html.theme--catppuccin-mocha .hero.is-white .navbar-link{color:rgba(10,10,10,0.7)}html.theme--catppuccin-mocha .hero.is-white a.navbar-item:hover,html.theme--catppuccin-mocha .hero.is-white a.navbar-item.is-active,html.theme--catppuccin-mocha .hero.is-white .navbar-link:hover,html.theme--catppuccin-mocha .hero.is-white .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--catppuccin-mocha .hero.is-white .tabs a{color:#0a0a0a;opacity:0.9}html.theme--catppuccin-mocha .hero.is-white .tabs a:hover{opacity:1}html.theme--catppuccin-mocha .hero.is-white .tabs li.is-active a{color:#fff !important;opacity:1}html.theme--catppuccin-mocha .hero.is-white .tabs.is-boxed a,html.theme--catppuccin-mocha .hero.is-white .tabs.is-toggle a{color:#0a0a0a}html.theme--catppuccin-mocha .hero.is-white .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .hero.is-white .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .hero.is-white .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .hero.is-white .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-mocha .hero.is-white .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .hero.is-white .tabs.is-toggle li.is-active a:hover{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .hero.is-white.is-bold{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}}html.theme--catppuccin-mocha .hero.is-black{background-color:#0a0a0a;color:#fff}html.theme--catppuccin-mocha .hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .hero.is-black strong{color:inherit}html.theme--catppuccin-mocha .hero.is-black .title{color:#fff}html.theme--catppuccin-mocha .hero.is-black .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-mocha .hero.is-black .subtitle a:not(.button),html.theme--catppuccin-mocha .hero.is-black .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .hero.is-black .navbar-menu{background-color:#0a0a0a}}html.theme--catppuccin-mocha .hero.is-black .navbar-item,html.theme--catppuccin-mocha .hero.is-black .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-mocha .hero.is-black a.navbar-item:hover,html.theme--catppuccin-mocha .hero.is-black a.navbar-item.is-active,html.theme--catppuccin-mocha .hero.is-black .navbar-link:hover,html.theme--catppuccin-mocha .hero.is-black .navbar-link.is-active{background-color:#000;color:#fff}html.theme--catppuccin-mocha .hero.is-black .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-mocha .hero.is-black .tabs a:hover{opacity:1}html.theme--catppuccin-mocha .hero.is-black .tabs li.is-active a{color:#0a0a0a !important;opacity:1}html.theme--catppuccin-mocha .hero.is-black .tabs.is-boxed a,html.theme--catppuccin-mocha .hero.is-black .tabs.is-toggle a{color:#fff}html.theme--catppuccin-mocha .hero.is-black .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .hero.is-black .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .hero.is-black .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .hero.is-black .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-mocha .hero.is-black .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .hero.is-black .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--catppuccin-mocha .hero.is-black.is-bold{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}}html.theme--catppuccin-mocha .hero.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .hero.is-light strong{color:inherit}html.theme--catppuccin-mocha .hero.is-light .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-light .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-mocha .hero.is-light .subtitle a:not(.button),html.theme--catppuccin-mocha .hero.is-light .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .hero.is-light .navbar-menu{background-color:#f5f5f5}}html.theme--catppuccin-mocha .hero.is-light .navbar-item,html.theme--catppuccin-mocha .hero.is-light .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-light a.navbar-item:hover,html.theme--catppuccin-mocha .hero.is-light a.navbar-item.is-active,html.theme--catppuccin-mocha .hero.is-light .navbar-link:hover,html.theme--catppuccin-mocha .hero.is-light .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-light .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-mocha .hero.is-light .tabs a:hover{opacity:1}html.theme--catppuccin-mocha .hero.is-light .tabs li.is-active a{color:#f5f5f5 !important;opacity:1}html.theme--catppuccin-mocha .hero.is-light .tabs.is-boxed a,html.theme--catppuccin-mocha .hero.is-light .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-light .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .hero.is-light .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .hero.is-light .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-mocha .hero.is-light .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);color:#f5f5f5}html.theme--catppuccin-mocha .hero.is-light.is-bold{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}}html.theme--catppuccin-mocha .hero.is-dark,html.theme--catppuccin-mocha .content kbd.hero{background-color:#313244;color:#fff}html.theme--catppuccin-mocha .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .hero.is-dark strong,html.theme--catppuccin-mocha .content kbd.hero strong{color:inherit}html.theme--catppuccin-mocha .hero.is-dark .title,html.theme--catppuccin-mocha .content kbd.hero .title{color:#fff}html.theme--catppuccin-mocha .hero.is-dark .subtitle,html.theme--catppuccin-mocha .content kbd.hero .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-mocha .hero.is-dark .subtitle a:not(.button),html.theme--catppuccin-mocha .content kbd.hero .subtitle a:not(.button),html.theme--catppuccin-mocha .hero.is-dark .subtitle strong,html.theme--catppuccin-mocha .content kbd.hero .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .hero.is-dark .navbar-menu,html.theme--catppuccin-mocha .content kbd.hero .navbar-menu{background-color:#313244}}html.theme--catppuccin-mocha .hero.is-dark .navbar-item,html.theme--catppuccin-mocha .content kbd.hero .navbar-item,html.theme--catppuccin-mocha .hero.is-dark .navbar-link,html.theme--catppuccin-mocha .content kbd.hero .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-mocha .hero.is-dark a.navbar-item:hover,html.theme--catppuccin-mocha .content kbd.hero a.navbar-item:hover,html.theme--catppuccin-mocha .hero.is-dark a.navbar-item.is-active,html.theme--catppuccin-mocha .content kbd.hero a.navbar-item.is-active,html.theme--catppuccin-mocha .hero.is-dark .navbar-link:hover,html.theme--catppuccin-mocha .content kbd.hero .navbar-link:hover,html.theme--catppuccin-mocha .hero.is-dark .navbar-link.is-active,html.theme--catppuccin-mocha .content kbd.hero .navbar-link.is-active{background-color:#262735;color:#fff}html.theme--catppuccin-mocha .hero.is-dark .tabs a,html.theme--catppuccin-mocha .content kbd.hero .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-mocha .hero.is-dark .tabs a:hover,html.theme--catppuccin-mocha .content kbd.hero .tabs a:hover{opacity:1}html.theme--catppuccin-mocha .hero.is-dark .tabs li.is-active a,html.theme--catppuccin-mocha .content kbd.hero .tabs li.is-active a{color:#313244 !important;opacity:1}html.theme--catppuccin-mocha .hero.is-dark .tabs.is-boxed a,html.theme--catppuccin-mocha .content kbd.hero .tabs.is-boxed a,html.theme--catppuccin-mocha .hero.is-dark .tabs.is-toggle a,html.theme--catppuccin-mocha .content kbd.hero .tabs.is-toggle a{color:#fff}html.theme--catppuccin-mocha .hero.is-dark .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .content kbd.hero .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .hero.is-dark .tabs.is-toggle a:hover,html.theme--catppuccin-mocha .content kbd.hero .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .hero.is-dark .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .content kbd.hero .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .hero.is-dark .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-mocha .hero.is-dark .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .content kbd.hero .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .hero.is-dark .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#313244}html.theme--catppuccin-mocha .hero.is-dark.is-bold,html.theme--catppuccin-mocha .content kbd.hero.is-bold{background-image:linear-gradient(141deg, #181c2a 0%, #313244 71%, #3c3856 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero.is-dark.is-bold .navbar-menu,html.theme--catppuccin-mocha .content kbd.hero.is-bold .navbar-menu{background-image:linear-gradient(141deg, #181c2a 0%, #313244 71%, #3c3856 100%)}}html.theme--catppuccin-mocha .hero.is-primary,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .hero.is-primary strong,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink strong{color:inherit}html.theme--catppuccin-mocha .hero.is-primary .title,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .title{color:#fff}html.theme--catppuccin-mocha .hero.is-primary .subtitle,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-mocha .hero.is-primary .subtitle a:not(.button),html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .subtitle a:not(.button),html.theme--catppuccin-mocha .hero.is-primary .subtitle strong,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .hero.is-primary .navbar-menu,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .navbar-menu{background-color:#89b4fa}}html.theme--catppuccin-mocha .hero.is-primary .navbar-item,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .navbar-item,html.theme--catppuccin-mocha .hero.is-primary .navbar-link,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-mocha .hero.is-primary a.navbar-item:hover,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink a.navbar-item:hover,html.theme--catppuccin-mocha .hero.is-primary a.navbar-item.is-active,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink a.navbar-item.is-active,html.theme--catppuccin-mocha .hero.is-primary .navbar-link:hover,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .navbar-link:hover,html.theme--catppuccin-mocha .hero.is-primary .navbar-link.is-active,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .navbar-link.is-active{background-color:#71a4f9;color:#fff}html.theme--catppuccin-mocha .hero.is-primary .tabs a,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-mocha .hero.is-primary .tabs a:hover,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .tabs a:hover{opacity:1}html.theme--catppuccin-mocha .hero.is-primary .tabs li.is-active a,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .tabs li.is-active a{color:#89b4fa !important;opacity:1}html.theme--catppuccin-mocha .hero.is-primary .tabs.is-boxed a,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a,html.theme--catppuccin-mocha .hero.is-primary .tabs.is-toggle a,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a{color:#fff}html.theme--catppuccin-mocha .hero.is-primary .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .hero.is-primary .tabs.is-toggle a:hover,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .hero.is-primary .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .hero.is-primary .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-mocha .hero.is-primary .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#89b4fa}html.theme--catppuccin-mocha .hero.is-primary.is-bold,html.theme--catppuccin-mocha .docstring>section>a.hero.is-bold.docs-sourcelink{background-image:linear-gradient(141deg, #51b0ff 0%, #89b4fa 71%, #9fb3fd 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero.is-primary.is-bold .navbar-menu,html.theme--catppuccin-mocha .docstring>section>a.hero.is-bold.docs-sourcelink .navbar-menu{background-image:linear-gradient(141deg, #51b0ff 0%, #89b4fa 71%, #9fb3fd 100%)}}html.theme--catppuccin-mocha .hero.is-link{background-color:#89b4fa;color:#fff}html.theme--catppuccin-mocha .hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .hero.is-link strong{color:inherit}html.theme--catppuccin-mocha .hero.is-link .title{color:#fff}html.theme--catppuccin-mocha .hero.is-link .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-mocha .hero.is-link .subtitle a:not(.button),html.theme--catppuccin-mocha .hero.is-link .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .hero.is-link .navbar-menu{background-color:#89b4fa}}html.theme--catppuccin-mocha .hero.is-link .navbar-item,html.theme--catppuccin-mocha .hero.is-link .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-mocha .hero.is-link a.navbar-item:hover,html.theme--catppuccin-mocha .hero.is-link a.navbar-item.is-active,html.theme--catppuccin-mocha .hero.is-link .navbar-link:hover,html.theme--catppuccin-mocha .hero.is-link .navbar-link.is-active{background-color:#71a4f9;color:#fff}html.theme--catppuccin-mocha .hero.is-link .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-mocha .hero.is-link .tabs a:hover{opacity:1}html.theme--catppuccin-mocha .hero.is-link .tabs li.is-active a{color:#89b4fa !important;opacity:1}html.theme--catppuccin-mocha .hero.is-link .tabs.is-boxed a,html.theme--catppuccin-mocha .hero.is-link .tabs.is-toggle a{color:#fff}html.theme--catppuccin-mocha .hero.is-link .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .hero.is-link .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .hero.is-link .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-mocha .hero.is-link .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#89b4fa}html.theme--catppuccin-mocha .hero.is-link.is-bold{background-image:linear-gradient(141deg, #51b0ff 0%, #89b4fa 71%, #9fb3fd 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg, #51b0ff 0%, #89b4fa 71%, #9fb3fd 100%)}}html.theme--catppuccin-mocha .hero.is-info{background-color:#94e2d5;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-info a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .hero.is-info strong{color:inherit}html.theme--catppuccin-mocha .hero.is-info .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-info .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-mocha .hero.is-info .subtitle a:not(.button),html.theme--catppuccin-mocha .hero.is-info .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .hero.is-info .navbar-menu{background-color:#94e2d5}}html.theme--catppuccin-mocha .hero.is-info .navbar-item,html.theme--catppuccin-mocha .hero.is-info .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-info a.navbar-item:hover,html.theme--catppuccin-mocha .hero.is-info a.navbar-item.is-active,html.theme--catppuccin-mocha .hero.is-info .navbar-link:hover,html.theme--catppuccin-mocha .hero.is-info .navbar-link.is-active{background-color:#80ddcd;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-info .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-mocha .hero.is-info .tabs a:hover{opacity:1}html.theme--catppuccin-mocha .hero.is-info .tabs li.is-active a{color:#94e2d5 !important;opacity:1}html.theme--catppuccin-mocha .hero.is-info .tabs.is-boxed a,html.theme--catppuccin-mocha .hero.is-info .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-info .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .hero.is-info .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .hero.is-info .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-mocha .hero.is-info .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .hero.is-info .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:#94e2d5}html.theme--catppuccin-mocha .hero.is-info.is-bold{background-image:linear-gradient(141deg, #63e0b6 0%, #94e2d5 71%, #a5eaea 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg, #63e0b6 0%, #94e2d5 71%, #a5eaea 100%)}}html.theme--catppuccin-mocha .hero.is-success{background-color:#a6e3a1;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-success a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .hero.is-success strong{color:inherit}html.theme--catppuccin-mocha .hero.is-success .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-success .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-mocha .hero.is-success .subtitle a:not(.button),html.theme--catppuccin-mocha .hero.is-success .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .hero.is-success .navbar-menu{background-color:#a6e3a1}}html.theme--catppuccin-mocha .hero.is-success .navbar-item,html.theme--catppuccin-mocha .hero.is-success .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-success a.navbar-item:hover,html.theme--catppuccin-mocha .hero.is-success a.navbar-item.is-active,html.theme--catppuccin-mocha .hero.is-success .navbar-link:hover,html.theme--catppuccin-mocha .hero.is-success .navbar-link.is-active{background-color:#93dd8d;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-success .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-mocha .hero.is-success .tabs a:hover{opacity:1}html.theme--catppuccin-mocha .hero.is-success .tabs li.is-active a{color:#a6e3a1 !important;opacity:1}html.theme--catppuccin-mocha .hero.is-success .tabs.is-boxed a,html.theme--catppuccin-mocha .hero.is-success .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-success .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .hero.is-success .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .hero.is-success .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-mocha .hero.is-success .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .hero.is-success .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:#a6e3a1}html.theme--catppuccin-mocha .hero.is-success.is-bold{background-image:linear-gradient(141deg, #8ce071 0%, #a6e3a1 71%, #b2ebb7 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg, #8ce071 0%, #a6e3a1 71%, #b2ebb7 100%)}}html.theme--catppuccin-mocha .hero.is-warning{background-color:#f9e2af;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-warning a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .hero.is-warning strong{color:inherit}html.theme--catppuccin-mocha .hero.is-warning .title{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-warning .subtitle{color:rgba(0,0,0,0.9)}html.theme--catppuccin-mocha .hero.is-warning .subtitle a:not(.button),html.theme--catppuccin-mocha .hero.is-warning .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .hero.is-warning .navbar-menu{background-color:#f9e2af}}html.theme--catppuccin-mocha .hero.is-warning .navbar-item,html.theme--catppuccin-mocha .hero.is-warning .navbar-link{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-warning a.navbar-item:hover,html.theme--catppuccin-mocha .hero.is-warning a.navbar-item.is-active,html.theme--catppuccin-mocha .hero.is-warning .navbar-link:hover,html.theme--catppuccin-mocha .hero.is-warning .navbar-link.is-active{background-color:#f7d997;color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-warning .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--catppuccin-mocha .hero.is-warning .tabs a:hover{opacity:1}html.theme--catppuccin-mocha .hero.is-warning .tabs li.is-active a{color:#f9e2af !important;opacity:1}html.theme--catppuccin-mocha .hero.is-warning .tabs.is-boxed a,html.theme--catppuccin-mocha .hero.is-warning .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--catppuccin-mocha .hero.is-warning .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .hero.is-warning .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .hero.is-warning .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .hero.is-warning .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-mocha .hero.is-warning .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .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:#f9e2af}html.theme--catppuccin-mocha .hero.is-warning.is-bold{background-image:linear-gradient(141deg, #fcbd79 0%, #f9e2af 71%, #fcf4c5 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg, #fcbd79 0%, #f9e2af 71%, #fcf4c5 100%)}}html.theme--catppuccin-mocha .hero.is-danger{background-color:#f38ba8;color:#fff}html.theme--catppuccin-mocha .hero.is-danger a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--catppuccin-mocha .hero.is-danger strong{color:inherit}html.theme--catppuccin-mocha .hero.is-danger .title{color:#fff}html.theme--catppuccin-mocha .hero.is-danger .subtitle{color:rgba(255,255,255,0.9)}html.theme--catppuccin-mocha .hero.is-danger .subtitle a:not(.button),html.theme--catppuccin-mocha .hero.is-danger .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .hero.is-danger .navbar-menu{background-color:#f38ba8}}html.theme--catppuccin-mocha .hero.is-danger .navbar-item,html.theme--catppuccin-mocha .hero.is-danger .navbar-link{color:rgba(255,255,255,0.7)}html.theme--catppuccin-mocha .hero.is-danger a.navbar-item:hover,html.theme--catppuccin-mocha .hero.is-danger a.navbar-item.is-active,html.theme--catppuccin-mocha .hero.is-danger .navbar-link:hover,html.theme--catppuccin-mocha .hero.is-danger .navbar-link.is-active{background-color:#f17497;color:#fff}html.theme--catppuccin-mocha .hero.is-danger .tabs a{color:#fff;opacity:0.9}html.theme--catppuccin-mocha .hero.is-danger .tabs a:hover{opacity:1}html.theme--catppuccin-mocha .hero.is-danger .tabs li.is-active a{color:#f38ba8 !important;opacity:1}html.theme--catppuccin-mocha .hero.is-danger .tabs.is-boxed a,html.theme--catppuccin-mocha .hero.is-danger .tabs.is-toggle a{color:#fff}html.theme--catppuccin-mocha .hero.is-danger .tabs.is-boxed a:hover,html.theme--catppuccin-mocha .hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--catppuccin-mocha .hero.is-danger .tabs.is-boxed li.is-active a,html.theme--catppuccin-mocha .hero.is-danger .tabs.is-boxed li.is-active a:hover,html.theme--catppuccin-mocha .hero.is-danger .tabs.is-toggle li.is-active a,html.theme--catppuccin-mocha .hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#f38ba8}html.theme--catppuccin-mocha .hero.is-danger.is-bold{background-image:linear-gradient(141deg, #f7549d 0%, #f38ba8 71%, #f8a0a9 100%)}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg, #f7549d 0%, #f38ba8 71%, #f8a0a9 100%)}}html.theme--catppuccin-mocha .hero.is-small .hero-body,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.hero .hero-body{padding:1.5rem}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .hero.is-medium .hero-body{padding:9rem 4.5rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .hero.is-large .hero-body{padding:18rem 6rem}}html.theme--catppuccin-mocha .hero.is-halfheight .hero-body,html.theme--catppuccin-mocha .hero.is-fullheight .hero-body,html.theme--catppuccin-mocha .hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}html.theme--catppuccin-mocha .hero.is-halfheight .hero-body>.container,html.theme--catppuccin-mocha .hero.is-fullheight .hero-body>.container,html.theme--catppuccin-mocha .hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}html.theme--catppuccin-mocha .hero.is-halfheight{min-height:50vh}html.theme--catppuccin-mocha .hero.is-fullheight{min-height:100vh}html.theme--catppuccin-mocha .hero-video{overflow:hidden}html.theme--catppuccin-mocha .hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%, -50%, 0)}html.theme--catppuccin-mocha .hero-video.is-transparent{opacity:0.3}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero-video{display:none}}html.theme--catppuccin-mocha .hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){html.theme--catppuccin-mocha .hero-buttons .button{display:flex}html.theme--catppuccin-mocha .hero-buttons .button:not(:last-child){margin-bottom:0.75rem}}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .hero-buttons{display:flex;justify-content:center}html.theme--catppuccin-mocha .hero-buttons .button:not(:last-child){margin-right:1.5rem}}html.theme--catppuccin-mocha .hero-head,html.theme--catppuccin-mocha .hero-foot{flex-grow:0;flex-shrink:0}html.theme--catppuccin-mocha .hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}@media screen and (min-width: 769px),print{html.theme--catppuccin-mocha .hero-body{padding:3rem 3rem}}html.theme--catppuccin-mocha .section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha .section{padding:3rem 3rem}html.theme--catppuccin-mocha .section.is-medium{padding:9rem 4.5rem}html.theme--catppuccin-mocha .section.is-large{padding:18rem 6rem}}html.theme--catppuccin-mocha .footer{background-color:#181825;padding:3rem 1.5rem 6rem}html.theme--catppuccin-mocha h1 .docs-heading-anchor,html.theme--catppuccin-mocha h1 .docs-heading-anchor:hover,html.theme--catppuccin-mocha h1 .docs-heading-anchor:visited,html.theme--catppuccin-mocha h2 .docs-heading-anchor,html.theme--catppuccin-mocha h2 .docs-heading-anchor:hover,html.theme--catppuccin-mocha h2 .docs-heading-anchor:visited,html.theme--catppuccin-mocha h3 .docs-heading-anchor,html.theme--catppuccin-mocha h3 .docs-heading-anchor:hover,html.theme--catppuccin-mocha h3 .docs-heading-anchor:visited,html.theme--catppuccin-mocha h4 .docs-heading-anchor,html.theme--catppuccin-mocha h4 .docs-heading-anchor:hover,html.theme--catppuccin-mocha h4 .docs-heading-anchor:visited,html.theme--catppuccin-mocha h5 .docs-heading-anchor,html.theme--catppuccin-mocha h5 .docs-heading-anchor:hover,html.theme--catppuccin-mocha h5 .docs-heading-anchor:visited,html.theme--catppuccin-mocha h6 .docs-heading-anchor,html.theme--catppuccin-mocha h6 .docs-heading-anchor:hover,html.theme--catppuccin-mocha h6 .docs-heading-anchor:visited{color:#cdd6f4}html.theme--catppuccin-mocha h1 .docs-heading-anchor-permalink,html.theme--catppuccin-mocha h2 .docs-heading-anchor-permalink,html.theme--catppuccin-mocha h3 .docs-heading-anchor-permalink,html.theme--catppuccin-mocha h4 .docs-heading-anchor-permalink,html.theme--catppuccin-mocha h5 .docs-heading-anchor-permalink,html.theme--catppuccin-mocha h6 .docs-heading-anchor-permalink{visibility:hidden;vertical-align:middle;margin-left:0.5em;font-size:0.7rem}html.theme--catppuccin-mocha h1 .docs-heading-anchor-permalink::before,html.theme--catppuccin-mocha h2 .docs-heading-anchor-permalink::before,html.theme--catppuccin-mocha h3 .docs-heading-anchor-permalink::before,html.theme--catppuccin-mocha h4 .docs-heading-anchor-permalink::before,html.theme--catppuccin-mocha h5 .docs-heading-anchor-permalink::before,html.theme--catppuccin-mocha h6 .docs-heading-anchor-permalink::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f0c1"}html.theme--catppuccin-mocha h1:hover .docs-heading-anchor-permalink,html.theme--catppuccin-mocha h2:hover .docs-heading-anchor-permalink,html.theme--catppuccin-mocha h3:hover .docs-heading-anchor-permalink,html.theme--catppuccin-mocha h4:hover .docs-heading-anchor-permalink,html.theme--catppuccin-mocha h5:hover .docs-heading-anchor-permalink,html.theme--catppuccin-mocha h6:hover .docs-heading-anchor-permalink{visibility:visible}html.theme--catppuccin-mocha .docs-light-only{display:none !important}html.theme--catppuccin-mocha pre{position:relative;overflow:hidden}html.theme--catppuccin-mocha pre code,html.theme--catppuccin-mocha pre code.hljs{padding:0 .75rem !important;overflow:auto;display:block}html.theme--catppuccin-mocha pre code:first-of-type,html.theme--catppuccin-mocha pre code.hljs:first-of-type{padding-top:0.5rem !important}html.theme--catppuccin-mocha pre code:last-of-type,html.theme--catppuccin-mocha pre code.hljs:last-of-type{padding-bottom:0.5rem !important}html.theme--catppuccin-mocha pre .copy-button{opacity:0.2;transition:opacity 0.2s;position:absolute;right:0em;top:0em;padding:0.5em;width:2.5em;height:2.5em;background:transparent;border:none;font-family:"Font Awesome 6 Free";color:#cdd6f4;cursor:pointer;text-align:center}html.theme--catppuccin-mocha pre .copy-button:focus,html.theme--catppuccin-mocha pre .copy-button:hover{opacity:1;background:rgba(205,214,244,0.1);color:#89b4fa}html.theme--catppuccin-mocha pre .copy-button.success{color:#a6e3a1;opacity:1}html.theme--catppuccin-mocha pre .copy-button.error{color:#f38ba8;opacity:1}html.theme--catppuccin-mocha pre:hover .copy-button{opacity:1}html.theme--catppuccin-mocha .admonition{background-color:#181825;border-style:solid;border-width:2px;border-color:#bac2de;border-radius:4px;font-size:1rem}html.theme--catppuccin-mocha .admonition strong{color:currentColor}html.theme--catppuccin-mocha .admonition.is-small,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input.admonition{font-size:.75rem}html.theme--catppuccin-mocha .admonition.is-medium{font-size:1.25rem}html.theme--catppuccin-mocha .admonition.is-large{font-size:1.5rem}html.theme--catppuccin-mocha .admonition.is-default{background-color:#181825;border-color:#bac2de}html.theme--catppuccin-mocha .admonition.is-default>.admonition-header{background-color:rgba(0,0,0,0);color:#bac2de}html.theme--catppuccin-mocha .admonition.is-default>.admonition-body{color:#cdd6f4}html.theme--catppuccin-mocha .admonition.is-info{background-color:#181825;border-color:#94e2d5}html.theme--catppuccin-mocha .admonition.is-info>.admonition-header{background-color:rgba(0,0,0,0);color:#94e2d5}html.theme--catppuccin-mocha .admonition.is-info>.admonition-body{color:#cdd6f4}html.theme--catppuccin-mocha .admonition.is-success{background-color:#181825;border-color:#a6e3a1}html.theme--catppuccin-mocha .admonition.is-success>.admonition-header{background-color:rgba(0,0,0,0);color:#a6e3a1}html.theme--catppuccin-mocha .admonition.is-success>.admonition-body{color:#cdd6f4}html.theme--catppuccin-mocha .admonition.is-warning{background-color:#181825;border-color:#f9e2af}html.theme--catppuccin-mocha .admonition.is-warning>.admonition-header{background-color:rgba(0,0,0,0);color:#f9e2af}html.theme--catppuccin-mocha .admonition.is-warning>.admonition-body{color:#cdd6f4}html.theme--catppuccin-mocha .admonition.is-danger{background-color:#181825;border-color:#f38ba8}html.theme--catppuccin-mocha .admonition.is-danger>.admonition-header{background-color:rgba(0,0,0,0);color:#f38ba8}html.theme--catppuccin-mocha .admonition.is-danger>.admonition-body{color:#cdd6f4}html.theme--catppuccin-mocha .admonition.is-compat{background-color:#181825;border-color:#89dceb}html.theme--catppuccin-mocha .admonition.is-compat>.admonition-header{background-color:rgba(0,0,0,0);color:#89dceb}html.theme--catppuccin-mocha .admonition.is-compat>.admonition-body{color:#cdd6f4}html.theme--catppuccin-mocha .admonition.is-todo{background-color:#181825;border-color:#cba6f7}html.theme--catppuccin-mocha .admonition.is-todo>.admonition-header{background-color:rgba(0,0,0,0);color:#cba6f7}html.theme--catppuccin-mocha .admonition.is-todo>.admonition-body{color:#cdd6f4}html.theme--catppuccin-mocha .admonition-header{color:#bac2de;background-color:rgba(0,0,0,0);align-items:center;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.5rem .75rem;position:relative}html.theme--catppuccin-mocha .admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}html.theme--catppuccin-mocha details.admonition.is-details>.admonition-header{list-style:none}html.theme--catppuccin-mocha details.admonition.is-details>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f055"}html.theme--catppuccin-mocha details.admonition.is-details[open]>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f056"}html.theme--catppuccin-mocha .admonition-body{color:#cdd6f4;padding:0.5rem .75rem}html.theme--catppuccin-mocha .admonition-body pre{background-color:#181825}html.theme--catppuccin-mocha .admonition-body code{background-color:#181825}html.theme--catppuccin-mocha .docstring{margin-bottom:1em;background-color:rgba(0,0,0,0);border:2px solid #585b70;border-radius:4px;box-shadow:none;max-width:100%}html.theme--catppuccin-mocha .docstring>header{cursor:pointer;display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#181825;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #585b70;overflow:auto}html.theme--catppuccin-mocha .docstring>header code{background-color:transparent}html.theme--catppuccin-mocha .docstring>header .docstring-article-toggle-button{min-width:1.1rem;padding:0.2rem 0.2rem 0.2rem 0}html.theme--catppuccin-mocha .docstring>header .docstring-binding{margin-right:0.3em}html.theme--catppuccin-mocha .docstring>header .docstring-category{margin-left:0.3em}html.theme--catppuccin-mocha .docstring>section{position:relative;padding:.75rem .75rem;border-bottom:1px solid #585b70}html.theme--catppuccin-mocha .docstring>section:last-child{border-bottom:none}html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink{transition:opacity 0.3s;opacity:0;position:absolute;right:.375rem;bottom:.375rem}html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink:focus{opacity:1 !important}html.theme--catppuccin-mocha .docstring:hover>section>a.docs-sourcelink{opacity:0.2}html.theme--catppuccin-mocha .docstring:focus-within>section>a.docs-sourcelink{opacity:0.2}html.theme--catppuccin-mocha .docstring>section:hover a.docs-sourcelink{opacity:1}html.theme--catppuccin-mocha .documenter-example-output{background-color:#1e1e2e}html.theme--catppuccin-mocha .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:#181825;color:#cdd6f4;border-bottom:3px solid rgba(0,0,0,0);padding:10px 35px;text-align:center;font-size:15px}html.theme--catppuccin-mocha .outdated-warning-overlay .outdated-warning-closer{position:absolute;top:calc(50% - 10px);right:18px;cursor:pointer;width:12px}html.theme--catppuccin-mocha .outdated-warning-overlay a{color:#89b4fa}html.theme--catppuccin-mocha .outdated-warning-overlay a:hover{color:#89dceb}html.theme--catppuccin-mocha .content pre{border:2px solid #585b70;border-radius:4px}html.theme--catppuccin-mocha .content code{font-weight:inherit}html.theme--catppuccin-mocha .content a code{color:#89b4fa}html.theme--catppuccin-mocha .content a:hover code{color:#89dceb}html.theme--catppuccin-mocha .content h1 code,html.theme--catppuccin-mocha .content h2 code,html.theme--catppuccin-mocha .content h3 code,html.theme--catppuccin-mocha .content h4 code,html.theme--catppuccin-mocha .content h5 code,html.theme--catppuccin-mocha .content h6 code{color:#cdd6f4}html.theme--catppuccin-mocha .content table{display:block;width:initial;max-width:100%;overflow-x:auto}html.theme--catppuccin-mocha .content blockquote>ul:first-child,html.theme--catppuccin-mocha .content blockquote>ol:first-child,html.theme--catppuccin-mocha .content .admonition-body>ul:first-child,html.theme--catppuccin-mocha .content .admonition-body>ol:first-child{margin-top:0}html.theme--catppuccin-mocha pre,html.theme--catppuccin-mocha code{font-variant-ligatures:no-contextual}html.theme--catppuccin-mocha .breadcrumb a.is-disabled{cursor:default;pointer-events:none}html.theme--catppuccin-mocha .breadcrumb a.is-disabled,html.theme--catppuccin-mocha .breadcrumb a.is-disabled:hover{color:#b8c5ef}html.theme--catppuccin-mocha .hljs{background:initial !important}html.theme--catppuccin-mocha .katex .katex-mathml{top:0;right:0}html.theme--catppuccin-mocha .katex-display,html.theme--catppuccin-mocha mjx-container,html.theme--catppuccin-mocha .MathJax_Display{margin:0.5em 0 !important}html.theme--catppuccin-mocha html{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto}html.theme--catppuccin-mocha li.no-marker{list-style:none}html.theme--catppuccin-mocha #documenter .docs-main>article{overflow-wrap:break-word}html.theme--catppuccin-mocha #documenter .docs-main>article .math-container{overflow-x:auto;overflow-y:hidden}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha #documenter .docs-main{max-width:52rem;margin-left:20rem;padding-right:1rem}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha #documenter .docs-main{width:100%}html.theme--catppuccin-mocha #documenter .docs-main>article{max-width:52rem;margin-left:auto;margin-right:auto;margin-bottom:1rem;padding:0 1rem}html.theme--catppuccin-mocha #documenter .docs-main>header,html.theme--catppuccin-mocha #documenter .docs-main>nav{max-width:100%;width:100%;margin:0}}html.theme--catppuccin-mocha #documenter .docs-main header.docs-navbar{background-color:#1e1e2e;border-bottom:1px solid #585b70;z-index:2;min-height:4rem;margin-bottom:1rem;display:flex}html.theme--catppuccin-mocha #documenter .docs-main header.docs-navbar .breadcrumb{flex-grow:1;overflow-x:hidden}html.theme--catppuccin-mocha #documenter .docs-main header.docs-navbar .docs-sidebar-button{display:block;font-size:1.5rem;padding-bottom:0.1rem;margin-right:1rem}html.theme--catppuccin-mocha #documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap;gap:1rem;align-items:center}html.theme--catppuccin-mocha #documenter .docs-main header.docs-navbar .docs-right .docs-icon,html.theme--catppuccin-mocha #documenter .docs-main header.docs-navbar .docs-right .docs-label{display:inline-block}html.theme--catppuccin-mocha #documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha #documenter .docs-main header.docs-navbar .docs-right .docs-navbar-link{margin-left:0.4rem;margin-right:0.4rem}}html.theme--catppuccin-mocha #documenter .docs-main header.docs-navbar>*{margin:auto 0}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha #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--catppuccin-mocha #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--catppuccin-mocha #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--catppuccin-mocha #documenter .docs-main section.footnotes{border-top:1px solid #585b70}html.theme--catppuccin-mocha #documenter .docs-main section.footnotes li .tag:first-child,html.theme--catppuccin-mocha #documenter .docs-main section.footnotes li .docstring>section>a.docs-sourcelink:first-child,html.theme--catppuccin-mocha #documenter .docs-main section.footnotes li .content kbd:first-child,html.theme--catppuccin-mocha .content #documenter .docs-main section.footnotes li kbd:first-child{margin-right:1em;margin-bottom:0.4em}html.theme--catppuccin-mocha #documenter .docs-main .docs-footer{display:flex;flex-wrap:wrap;margin-left:0;margin-right:0;border-top:1px solid #585b70;padding-top:1rem;padding-bottom:1rem}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha #documenter .docs-main .docs-footer{padding-left:1rem;padding-right:1rem}}html.theme--catppuccin-mocha #documenter .docs-main .docs-footer .docs-footer-nextpage,html.theme--catppuccin-mocha #documenter .docs-main .docs-footer .docs-footer-prevpage{flex-grow:1}html.theme--catppuccin-mocha #documenter .docs-main .docs-footer .docs-footer-nextpage{text-align:right}html.theme--catppuccin-mocha #documenter .docs-main .docs-footer .flexbox-break{flex-basis:100%;height:0}html.theme--catppuccin-mocha #documenter .docs-main .docs-footer .footer-message{font-size:0.8em;margin:0.5em auto 0 auto;text-align:center}html.theme--catppuccin-mocha #documenter .docs-sidebar{display:flex;flex-direction:column;color:#cdd6f4;background-color:#181825;border-right:1px solid #585b70;padding:0;flex:0 0 18rem;z-index:5;font-size:1rem;position:fixed;left:-18rem;width:18rem;height:100%;transition:left 0.3s}html.theme--catppuccin-mocha #documenter .docs-sidebar.visible{left:0;box-shadow:.4rem 0rem .8rem #171717}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha #documenter .docs-sidebar.visible{box-shadow:none}}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha #documenter .docs-sidebar{left:0;top:0}}html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo{margin-top:1rem;padding:0 1rem}html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-logo>img{max-height:6rem;margin:auto}html.theme--catppuccin-mocha #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--catppuccin-mocha #documenter .docs-sidebar .docs-package-name .docs-autofit{max-width:16.2rem}html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-package-name a,html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-package-name a:hover{color:#cdd6f4}html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-version-selector{border-top:1px solid #585b70;display:none;padding:0.5rem}html.theme--catppuccin-mocha #documenter .docs-sidebar .docs-version-selector.visible{display:flex}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu{flex-grow:1;user-select:none;border-top:1px solid #585b70;padding-bottom:1.5rem}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu>li>.tocitem{font-weight:bold}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu>li li{font-size:.95rem;margin-left:1em;border-left:1px solid #585b70}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu input.collapse-toggle{display:none}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu ul.collapsed{display:none}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu input:checked~ul.collapsed{display:block}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu label.tocitem{display:flex}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label{flex-grow:2}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron{display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;font-size:.75rem;margin-left:1rem;margin-top:auto;margin-bottom:auto}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f054"}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu input:checked~label.tocitem .docs-chevron::before{content:"\f078"}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu .tocitem{display:block;padding:0.5rem 0.5rem}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu .tocitem,html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu .tocitem:hover{color:#cdd6f4;background:#181825}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu a.tocitem:hover,html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu label.tocitem:hover{color:#cdd6f4;background-color:#202031}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu li.is-active{border-top:1px solid #585b70;border-bottom:1px solid #585b70;background-color:#11111b}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem,html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover{background-color:#11111b;color:#cdd6f4}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover{background-color:#202031;color:#cdd6f4}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu>li.is-active:first-child{border-top:none}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu ul.internal{margin:0 0.5rem 0.5rem;border-top:1px solid #585b70}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu ul.internal li{font-size:.85rem;border-left:none;margin-left:0;margin-top:0.5rem}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem{width:100%;padding:0}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before{content:"⚬";margin-right:0.4em}html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search{margin:auto;margin-top:0.5rem;margin-bottom:0.5rem}html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input{width:14.4rem}html.theme--catppuccin-mocha #documenter .docs-sidebar #documenter-search-query{color:#868c98;width:14.4rem;box-shadow:inset 0 1px 2px rgba(10,10,10,0.1)}@media screen and (min-width: 1056px){html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar{width:.3rem;background:none}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#28283e}html.theme--catppuccin-mocha #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover{background:#383856}}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha #documenter .docs-sidebar{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--catppuccin-mocha #documenter .docs-sidebar::-webkit-scrollbar{width:.3rem;background:none}html.theme--catppuccin-mocha #documenter .docs-sidebar::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#28283e}html.theme--catppuccin-mocha #documenter .docs-sidebar::-webkit-scrollbar-thumb:hover{background:#383856}}html.theme--catppuccin-mocha kbd.search-modal-key-hints{border-radius:0.25rem;border:1px solid rgba(245,245,245,0.6);box-shadow:0 2px 0 1px rgba(245,245,245,0.6);cursor:default;font-size:0.9rem;line-height:1.5;min-width:0.75rem;text-align:center;padding:0.1rem 0.3rem;position:relative;top:-1px}html.theme--catppuccin-mocha .search-min-width-50{min-width:50%}html.theme--catppuccin-mocha .search-min-height-100{min-height:100%}html.theme--catppuccin-mocha .search-modal-card-body{max-height:calc(100vh - 15rem)}html.theme--catppuccin-mocha .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--catppuccin-mocha .search-result-link:hover,html.theme--catppuccin-mocha .search-result-link:focus{background-color:rgba(0,128,128,0.1)}html.theme--catppuccin-mocha .search-result-link .property-search-result-badge,html.theme--catppuccin-mocha .search-result-link .search-filter{transition:all 300ms}html.theme--catppuccin-mocha .property-search-result-badge,html.theme--catppuccin-mocha .search-filter{padding:0.15em 0.5em;font-size:0.8em;font-style:italic;text-transform:none !important;line-height:1.5;color:#f5f5f5;background-color:rgba(51,65,85,0.501961);border-radius:0.6rem}html.theme--catppuccin-mocha .search-result-link:hover .property-search-result-badge,html.theme--catppuccin-mocha .search-result-link:hover .search-filter,html.theme--catppuccin-mocha .search-result-link:focus .property-search-result-badge,html.theme--catppuccin-mocha .search-result-link:focus .search-filter{color:#333;background-color:#f1f5f9}html.theme--catppuccin-mocha .search-filter{color:#333;background-color:#f5f5f5;transition:all 300ms}html.theme--catppuccin-mocha .search-filter:hover,html.theme--catppuccin-mocha .search-filter:focus{color:#333}html.theme--catppuccin-mocha .search-filter-selected{color:#313244;background-color:#b4befe}html.theme--catppuccin-mocha .search-filter-selected:hover,html.theme--catppuccin-mocha .search-filter-selected:focus{color:#313244}html.theme--catppuccin-mocha .search-result-highlight{background-color:#ffdd57;color:black}html.theme--catppuccin-mocha .search-divider{border-bottom:1px solid #585b70}html.theme--catppuccin-mocha .search-result-title{width:85%;color:#f5f5f5}html.theme--catppuccin-mocha .search-result-code-title{font-size:0.875rem;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}html.theme--catppuccin-mocha #search-modal .modal-card-body::-webkit-scrollbar,html.theme--catppuccin-mocha #search-modal .filter-tabs::-webkit-scrollbar{height:10px;width:10px;background-color:transparent}html.theme--catppuccin-mocha #search-modal .modal-card-body::-webkit-scrollbar-thumb,html.theme--catppuccin-mocha #search-modal .filter-tabs::-webkit-scrollbar-thumb{background-color:gray;border-radius:1rem}html.theme--catppuccin-mocha #search-modal .modal-card-body::-webkit-scrollbar-track,html.theme--catppuccin-mocha #search-modal .filter-tabs::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.6);background-color:transparent}html.theme--catppuccin-mocha .w-100{width:100%}html.theme--catppuccin-mocha .gap-2{gap:0.5rem}html.theme--catppuccin-mocha .gap-4{gap:1rem}html.theme--catppuccin-mocha .gap-8{gap:2rem}html.theme--catppuccin-mocha{background-color:#1e1e2e;font-size:16px;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}html.theme--catppuccin-mocha a{transition:all 200ms ease}html.theme--catppuccin-mocha .label{color:#cdd6f4}html.theme--catppuccin-mocha .button,html.theme--catppuccin-mocha .control.has-icons-left .icon,html.theme--catppuccin-mocha .control.has-icons-right .icon,html.theme--catppuccin-mocha .input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-mocha .pagination-ellipsis,html.theme--catppuccin-mocha .pagination-link,html.theme--catppuccin-mocha .pagination-next,html.theme--catppuccin-mocha .pagination-previous,html.theme--catppuccin-mocha .select,html.theme--catppuccin-mocha .select select,html.theme--catppuccin-mocha .textarea{height:2.5em;color:#cdd6f4}html.theme--catppuccin-mocha .input,html.theme--catppuccin-mocha #documenter .docs-sidebar form.docs-search>input,html.theme--catppuccin-mocha .textarea{transition:all 200ms ease;box-shadow:none;border-width:1px;padding-left:1em;padding-right:1em;color:#cdd6f4}html.theme--catppuccin-mocha .select:after,html.theme--catppuccin-mocha .select select{border-width:1px}html.theme--catppuccin-mocha .menu-list a{transition:all 300ms ease}html.theme--catppuccin-mocha .modal-card-foot,html.theme--catppuccin-mocha .modal-card-head{border-color:#585b70}html.theme--catppuccin-mocha .navbar{border-radius:.4em}html.theme--catppuccin-mocha .navbar.is-transparent{background:none}html.theme--catppuccin-mocha .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--catppuccin-mocha .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#89b4fa}@media screen and (max-width: 1055px){html.theme--catppuccin-mocha .navbar .navbar-menu{background-color:#89b4fa;border-radius:0 0 .4em .4em}}html.theme--catppuccin-mocha .docstring>section>a.docs-sourcelink:not(body){color:#313244}html.theme--catppuccin-mocha .tag.is-link:not(body),html.theme--catppuccin-mocha .docstring>section>a.is-link.docs-sourcelink:not(body),html.theme--catppuccin-mocha .content kbd.is-link:not(body){color:#313244}html.theme--catppuccin-mocha .ansi span.sgr1{font-weight:bolder}html.theme--catppuccin-mocha .ansi span.sgr2{font-weight:lighter}html.theme--catppuccin-mocha .ansi span.sgr3{font-style:italic}html.theme--catppuccin-mocha .ansi span.sgr4{text-decoration:underline}html.theme--catppuccin-mocha .ansi span.sgr7{color:#1e1e2e;background-color:#cdd6f4}html.theme--catppuccin-mocha .ansi span.sgr8{color:transparent}html.theme--catppuccin-mocha .ansi span.sgr8 span{color:transparent}html.theme--catppuccin-mocha .ansi span.sgr9{text-decoration:line-through}html.theme--catppuccin-mocha .ansi span.sgr30{color:#45475a}html.theme--catppuccin-mocha .ansi span.sgr31{color:#f38ba8}html.theme--catppuccin-mocha .ansi span.sgr32{color:#a6e3a1}html.theme--catppuccin-mocha .ansi span.sgr33{color:#f9e2af}html.theme--catppuccin-mocha .ansi span.sgr34{color:#89b4fa}html.theme--catppuccin-mocha .ansi span.sgr35{color:#f5c2e7}html.theme--catppuccin-mocha .ansi span.sgr36{color:#94e2d5}html.theme--catppuccin-mocha .ansi span.sgr37{color:#bac2de}html.theme--catppuccin-mocha .ansi span.sgr40{background-color:#45475a}html.theme--catppuccin-mocha .ansi span.sgr41{background-color:#f38ba8}html.theme--catppuccin-mocha .ansi span.sgr42{background-color:#a6e3a1}html.theme--catppuccin-mocha .ansi span.sgr43{background-color:#f9e2af}html.theme--catppuccin-mocha .ansi span.sgr44{background-color:#89b4fa}html.theme--catppuccin-mocha .ansi span.sgr45{background-color:#f5c2e7}html.theme--catppuccin-mocha .ansi span.sgr46{background-color:#94e2d5}html.theme--catppuccin-mocha .ansi span.sgr47{background-color:#bac2de}html.theme--catppuccin-mocha .ansi span.sgr90{color:#585b70}html.theme--catppuccin-mocha .ansi span.sgr91{color:#f38ba8}html.theme--catppuccin-mocha .ansi span.sgr92{color:#a6e3a1}html.theme--catppuccin-mocha .ansi span.sgr93{color:#f9e2af}html.theme--catppuccin-mocha .ansi span.sgr94{color:#89b4fa}html.theme--catppuccin-mocha .ansi span.sgr95{color:#f5c2e7}html.theme--catppuccin-mocha .ansi span.sgr96{color:#94e2d5}html.theme--catppuccin-mocha .ansi span.sgr97{color:#a6adc8}html.theme--catppuccin-mocha .ansi span.sgr100{background-color:#585b70}html.theme--catppuccin-mocha .ansi span.sgr101{background-color:#f38ba8}html.theme--catppuccin-mocha .ansi span.sgr102{background-color:#a6e3a1}html.theme--catppuccin-mocha .ansi span.sgr103{background-color:#f9e2af}html.theme--catppuccin-mocha .ansi span.sgr104{background-color:#89b4fa}html.theme--catppuccin-mocha .ansi span.sgr105{background-color:#f5c2e7}html.theme--catppuccin-mocha .ansi span.sgr106{background-color:#94e2d5}html.theme--catppuccin-mocha .ansi span.sgr107{background-color:#a6adc8}html.theme--catppuccin-mocha code.language-julia-repl>span.hljs-meta{color:#a6e3a1;font-weight:bolder}html.theme--catppuccin-mocha code .hljs{color:#cdd6f4;background:#1e1e2e}html.theme--catppuccin-mocha code .hljs-keyword{color:#cba6f7}html.theme--catppuccin-mocha code .hljs-built_in{color:#f38ba8}html.theme--catppuccin-mocha code .hljs-type{color:#f9e2af}html.theme--catppuccin-mocha code .hljs-literal{color:#fab387}html.theme--catppuccin-mocha code .hljs-number{color:#fab387}html.theme--catppuccin-mocha code .hljs-operator{color:#94e2d5}html.theme--catppuccin-mocha code .hljs-punctuation{color:#bac2de}html.theme--catppuccin-mocha code .hljs-property{color:#94e2d5}html.theme--catppuccin-mocha code .hljs-regexp{color:#f5c2e7}html.theme--catppuccin-mocha code .hljs-string{color:#a6e3a1}html.theme--catppuccin-mocha code .hljs-char.escape_{color:#a6e3a1}html.theme--catppuccin-mocha code .hljs-subst{color:#a6adc8}html.theme--catppuccin-mocha code .hljs-symbol{color:#f2cdcd}html.theme--catppuccin-mocha code .hljs-variable{color:#cba6f7}html.theme--catppuccin-mocha code .hljs-variable.language_{color:#cba6f7}html.theme--catppuccin-mocha code .hljs-variable.constant_{color:#fab387}html.theme--catppuccin-mocha code .hljs-title{color:#89b4fa}html.theme--catppuccin-mocha code .hljs-title.class_{color:#f9e2af}html.theme--catppuccin-mocha code .hljs-title.function_{color:#89b4fa}html.theme--catppuccin-mocha code .hljs-params{color:#cdd6f4}html.theme--catppuccin-mocha code .hljs-comment{color:#585b70}html.theme--catppuccin-mocha code .hljs-doctag{color:#f38ba8}html.theme--catppuccin-mocha code .hljs-meta{color:#fab387}html.theme--catppuccin-mocha code .hljs-section{color:#89b4fa}html.theme--catppuccin-mocha code .hljs-tag{color:#a6adc8}html.theme--catppuccin-mocha code .hljs-name{color:#cba6f7}html.theme--catppuccin-mocha code .hljs-attr{color:#89b4fa}html.theme--catppuccin-mocha code .hljs-attribute{color:#a6e3a1}html.theme--catppuccin-mocha code .hljs-bullet{color:#94e2d5}html.theme--catppuccin-mocha code .hljs-code{color:#a6e3a1}html.theme--catppuccin-mocha code .hljs-emphasis{color:#f38ba8;font-style:italic}html.theme--catppuccin-mocha code .hljs-strong{color:#f38ba8;font-weight:bold}html.theme--catppuccin-mocha code .hljs-formula{color:#94e2d5}html.theme--catppuccin-mocha code .hljs-link{color:#74c7ec;font-style:italic}html.theme--catppuccin-mocha code .hljs-quote{color:#a6e3a1;font-style:italic}html.theme--catppuccin-mocha code .hljs-selector-tag{color:#f9e2af}html.theme--catppuccin-mocha code .hljs-selector-id{color:#89b4fa}html.theme--catppuccin-mocha code .hljs-selector-class{color:#94e2d5}html.theme--catppuccin-mocha code .hljs-selector-attr{color:#cba6f7}html.theme--catppuccin-mocha code .hljs-selector-pseudo{color:#94e2d5}html.theme--catppuccin-mocha code .hljs-template-tag{color:#f2cdcd}html.theme--catppuccin-mocha code .hljs-template-variable{color:#f2cdcd}html.theme--catppuccin-mocha code .hljs-addition{color:#a6e3a1;background:rgba(166,227,161,0.15)}html.theme--catppuccin-mocha code .hljs-deletion{color:#f38ba8;background:rgba(243,139,168,0.15)}html.theme--catppuccin-mocha .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--catppuccin-mocha .search-result-link:hover,html.theme--catppuccin-mocha .search-result-link:focus{background-color:#313244}html.theme--catppuccin-mocha .search-result-link .property-search-result-badge,html.theme--catppuccin-mocha .search-result-link .search-filter{transition:all 300ms}html.theme--catppuccin-mocha .search-result-link:hover .property-search-result-badge,html.theme--catppuccin-mocha .search-result-link:hover .search-filter,html.theme--catppuccin-mocha .search-result-link:focus .property-search-result-badge,html.theme--catppuccin-mocha .search-result-link:focus .search-filter{color:#313244 !important;background-color:#b4befe !important}html.theme--catppuccin-mocha .search-result-title{color:#cdd6f4}html.theme--catppuccin-mocha .search-result-highlight{background-color:#f38ba8;color:#181825}html.theme--catppuccin-mocha .search-divider{border-bottom:1px solid #5e6d6f50}html.theme--catppuccin-mocha .w-100{width:100%}html.theme--catppuccin-mocha .gap-2{gap:0.5rem}html.theme--catppuccin-mocha .gap-4{gap:1rem} diff --git a/v0.9.12/assets/themes/documenter-dark.css b/v0.9.12/assets/themes/documenter-dark.css new file mode 100644 index 000000000..c41c82f25 --- /dev/null +++ b/v0.9.12/assets/themes/documenter-dark.css @@ -0,0 +1,7 @@ +html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark .file-cta,html.theme--documenter-dark .file-name,html.theme--documenter-dark .select select,html.theme--documenter-dark .textarea,html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark .button{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:.4em;box-shadow:none;display:inline-flex;font-size:1rem;height:2.5em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.5em - 1px);padding-left:calc(0.75em - 1px);padding-right:calc(0.75em - 1px);padding-top:calc(0.5em - 1px);position:relative;vertical-align:top}html.theme--documenter-dark .pagination-previous:focus,html.theme--documenter-dark .pagination-next:focus,html.theme--documenter-dark .pagination-link:focus,html.theme--documenter-dark .pagination-ellipsis:focus,html.theme--documenter-dark .file-cta:focus,html.theme--documenter-dark .file-name:focus,html.theme--documenter-dark .select select:focus,html.theme--documenter-dark .textarea:focus,html.theme--documenter-dark .input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:focus,html.theme--documenter-dark .button:focus,html.theme--documenter-dark .is-focused.pagination-previous,html.theme--documenter-dark .is-focused.pagination-next,html.theme--documenter-dark .is-focused.pagination-link,html.theme--documenter-dark .is-focused.pagination-ellipsis,html.theme--documenter-dark .is-focused.file-cta,html.theme--documenter-dark .is-focused.file-name,html.theme--documenter-dark .select select.is-focused,html.theme--documenter-dark .is-focused.textarea,html.theme--documenter-dark .is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-focused.button,html.theme--documenter-dark .pagination-previous:active,html.theme--documenter-dark .pagination-next:active,html.theme--documenter-dark .pagination-link:active,html.theme--documenter-dark .pagination-ellipsis:active,html.theme--documenter-dark .file-cta:active,html.theme--documenter-dark .file-name:active,html.theme--documenter-dark .select select:active,html.theme--documenter-dark .textarea:active,html.theme--documenter-dark .input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:active,html.theme--documenter-dark .button:active,html.theme--documenter-dark .is-active.pagination-previous,html.theme--documenter-dark .is-active.pagination-next,html.theme--documenter-dark .is-active.pagination-link,html.theme--documenter-dark .is-active.pagination-ellipsis,html.theme--documenter-dark .is-active.file-cta,html.theme--documenter-dark .is-active.file-name,html.theme--documenter-dark .select select.is-active,html.theme--documenter-dark .is-active.textarea,html.theme--documenter-dark .is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--documenter-dark .is-active.button{outline:none}html.theme--documenter-dark .pagination-previous[disabled],html.theme--documenter-dark .pagination-next[disabled],html.theme--documenter-dark .pagination-link[disabled],html.theme--documenter-dark .pagination-ellipsis[disabled],html.theme--documenter-dark .file-cta[disabled],html.theme--documenter-dark .file-name[disabled],html.theme--documenter-dark .select select[disabled],html.theme--documenter-dark .textarea[disabled],html.theme--documenter-dark .input[disabled],html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled],html.theme--documenter-dark .button[disabled],fieldset[disabled] html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark fieldset[disabled] .pagination-previous,fieldset[disabled] html.theme--documenter-dark .pagination-next,html.theme--documenter-dark fieldset[disabled] .pagination-next,fieldset[disabled] html.theme--documenter-dark .pagination-link,html.theme--documenter-dark fieldset[disabled] .pagination-link,fieldset[disabled] html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark fieldset[disabled] .pagination-ellipsis,fieldset[disabled] html.theme--documenter-dark .file-cta,html.theme--documenter-dark fieldset[disabled] .file-cta,fieldset[disabled] html.theme--documenter-dark .file-name,html.theme--documenter-dark fieldset[disabled] .file-name,fieldset[disabled] html.theme--documenter-dark .select select,fieldset[disabled] html.theme--documenter-dark .textarea,fieldset[disabled] html.theme--documenter-dark .input,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark fieldset[disabled] .select select,html.theme--documenter-dark .select fieldset[disabled] select,html.theme--documenter-dark fieldset[disabled] .textarea,html.theme--documenter-dark fieldset[disabled] .input,html.theme--documenter-dark fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar fieldset[disabled] form.docs-search>input,fieldset[disabled] html.theme--documenter-dark .button,html.theme--documenter-dark fieldset[disabled] .button{cursor:not-allowed}html.theme--documenter-dark .tabs,html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark .breadcrumb,html.theme--documenter-dark .file,html.theme--documenter-dark .button,.is-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}html.theme--documenter-dark .navbar-link:not(.is-arrowless)::after,html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading)::after{border:3px solid rgba(0,0,0,0);border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:0.625em;margin-top:-0.4375em;pointer-events:none;position:absolute;top:50%;transform:rotate(-45deg);transform-origin:center;width:0.625em}html.theme--documenter-dark .admonition:not(:last-child),html.theme--documenter-dark .tabs:not(:last-child),html.theme--documenter-dark .pagination:not(:last-child),html.theme--documenter-dark .message:not(:last-child),html.theme--documenter-dark .level:not(:last-child),html.theme--documenter-dark .breadcrumb:not(:last-child),html.theme--documenter-dark .block:not(:last-child),html.theme--documenter-dark .title:not(:last-child),html.theme--documenter-dark .subtitle:not(:last-child),html.theme--documenter-dark .table-container:not(:last-child),html.theme--documenter-dark .table:not(:last-child),html.theme--documenter-dark .progress:not(:last-child),html.theme--documenter-dark .notification:not(:last-child),html.theme--documenter-dark .content:not(:last-child),html.theme--documenter-dark .box:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .modal-close,html.theme--documenter-dark .delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:9999px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:none;position:relative;vertical-align:top;width:20px}html.theme--documenter-dark .modal-close::before,html.theme--documenter-dark .delete::before,html.theme--documenter-dark .modal-close::after,html.theme--documenter-dark .delete::after{background-color:#fff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}html.theme--documenter-dark .modal-close::before,html.theme--documenter-dark .delete::before{height:2px;width:50%}html.theme--documenter-dark .modal-close::after,html.theme--documenter-dark .delete::after{height:50%;width:2px}html.theme--documenter-dark .modal-close:hover,html.theme--documenter-dark .delete:hover,html.theme--documenter-dark .modal-close:focus,html.theme--documenter-dark .delete:focus{background-color:rgba(10,10,10,0.3)}html.theme--documenter-dark .modal-close:active,html.theme--documenter-dark .delete:active{background-color:rgba(10,10,10,0.4)}html.theme--documenter-dark .is-small.modal-close,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.modal-close,html.theme--documenter-dark .is-small.delete,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.delete{height:16px;max-height:16px;max-width:16px;min-height:16px;min-width:16px;width:16px}html.theme--documenter-dark .is-medium.modal-close,html.theme--documenter-dark .is-medium.delete{height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;width:24px}html.theme--documenter-dark .is-large.modal-close,html.theme--documenter-dark .is-large.delete{height:32px;max-height:32px;max-width:32px;min-height:32px;min-width:32px;width:32px}html.theme--documenter-dark .control.is-loading::after,html.theme--documenter-dark .select.is-loading::after,html.theme--documenter-dark .loader,html.theme--documenter-dark .button.is-loading::after{animation:spinAround 500ms infinite linear;border:2px solid #dbdee0;border-radius:9999px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}html.theme--documenter-dark .hero-video,html.theme--documenter-dark .modal-background,html.theme--documenter-dark .modal,html.theme--documenter-dark .image.is-square img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--documenter-dark .image.is-square .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--documenter-dark .image.is-1by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--documenter-dark .image.is-1by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--documenter-dark .image.is-5by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--documenter-dark .image.is-5by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--documenter-dark .image.is-4by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--documenter-dark .image.is-4by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--documenter-dark .image.is-3by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--documenter-dark .image.is-3by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--documenter-dark .image.is-5by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--documenter-dark .image.is-5by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--documenter-dark .image.is-16by9 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--documenter-dark .image.is-16by9 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--documenter-dark .image.is-2by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--documenter-dark .image.is-2by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--documenter-dark .image.is-3by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--documenter-dark .image.is-3by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--documenter-dark .image.is-4by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--documenter-dark .image.is-4by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--documenter-dark .image.is-3by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--documenter-dark .image.is-3by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--documenter-dark .image.is-2by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--documenter-dark .image.is-2by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--documenter-dark .image.is-3by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--documenter-dark .image.is-3by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--documenter-dark .image.is-9by16 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--documenter-dark .image.is-9by16 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--documenter-dark .image.is-1by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--documenter-dark .image.is-1by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--documenter-dark .image.is-1by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--documenter-dark .image.is-1by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio,.is-overlay{bottom:0;left:0;position:absolute;right:0;top:0}html.theme--documenter-dark .navbar-burger{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0}/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:inherit}.has-text-white{color:#fff !important}a.has-text-white:hover,a.has-text-white:focus{color:#e6e6e6 !important}.has-background-white{background-color:#fff !important}.has-text-black{color:#0a0a0a !important}a.has-text-black:hover,a.has-text-black:focus{color:#000 !important}.has-background-black{background-color:#0a0a0a !important}.has-text-light{color:#ecf0f1 !important}a.has-text-light:hover,a.has-text-light:focus{color:#cfd9db !important}.has-background-light{background-color:#ecf0f1 !important}.has-text-dark{color:#282f2f !important}a.has-text-dark:hover,a.has-text-dark:focus{color:#111414 !important}.has-background-dark{background-color:#282f2f !important}.has-text-primary{color:#375a7f !important}a.has-text-primary:hover,a.has-text-primary:focus{color:#28415b !important}.has-background-primary{background-color:#375a7f !important}.has-text-primary-light{color:#f1f5f9 !important}a.has-text-primary-light:hover,a.has-text-primary-light:focus{color:#cddbe9 !important}.has-background-primary-light{background-color:#f1f5f9 !important}.has-text-primary-dark{color:#4d7eb2 !important}a.has-text-primary-dark:hover,a.has-text-primary-dark:focus{color:#7198c1 !important}.has-background-primary-dark{background-color:#4d7eb2 !important}.has-text-link{color:#1abc9c !important}a.has-text-link:hover,a.has-text-link:focus{color:#148f77 !important}.has-background-link{background-color:#1abc9c !important}.has-text-link-light{color:#edfdf9 !important}a.has-text-link-light:hover,a.has-text-link-light:focus{color:#c0f6ec !important}.has-background-link-light{background-color:#edfdf9 !important}.has-text-link-dark{color:#15987e !important}a.has-text-link-dark:hover,a.has-text-link-dark:focus{color:#1bc5a4 !important}.has-background-link-dark{background-color:#15987e !important}.has-text-info{color:#3c5dcd !important}a.has-text-info:hover,a.has-text-info:focus{color:#2c48aa !important}.has-background-info{background-color:#3c5dcd !important}.has-text-info-light{color:#eff2fb !important}a.has-text-info-light:hover,a.has-text-info-light:focus{color:#c6d0f0 !important}.has-background-info-light{background-color:#eff2fb !important}.has-text-info-dark{color:#3253c3 !important}a.has-text-info-dark:hover,a.has-text-info-dark:focus{color:#5571d3 !important}.has-background-info-dark{background-color:#3253c3 !important}.has-text-success{color:#259a12 !important}a.has-text-success:hover,a.has-text-success:focus{color:#1a6c0d !important}.has-background-success{background-color:#259a12 !important}.has-text-success-light{color:#effded !important}a.has-text-success-light:hover,a.has-text-success-light:focus{color:#c7f8bf !important}.has-background-success-light{background-color:#effded !important}.has-text-success-dark{color:#2ec016 !important}a.has-text-success-dark:hover,a.has-text-success-dark:focus{color:#3fe524 !important}.has-background-success-dark{background-color:#2ec016 !important}.has-text-warning{color:#f4c72f !important}a.has-text-warning:hover,a.has-text-warning:focus{color:#e4b30c !important}.has-background-warning{background-color:#f4c72f !important}.has-text-warning-light{color:#fefaec !important}a.has-text-warning-light:hover,a.has-text-warning-light:focus{color:#fbedbb !important}.has-background-warning-light{background-color:#fefaec !important}.has-text-warning-dark{color:#8c6e07 !important}a.has-text-warning-dark:hover,a.has-text-warning-dark:focus{color:#bd940a !important}.has-background-warning-dark{background-color:#8c6e07 !important}.has-text-danger{color:#cb3c33 !important}a.has-text-danger:hover,a.has-text-danger:focus{color:#a23029 !important}.has-background-danger{background-color:#cb3c33 !important}.has-text-danger-light{color:#fbefef !important}a.has-text-danger-light:hover,a.has-text-danger-light:focus{color:#f1c8c6 !important}.has-background-danger-light{background-color:#fbefef !important}.has-text-danger-dark{color:#c03930 !important}a.has-text-danger-dark:hover,a.has-text-danger-dark:focus{color:#d35850 !important}.has-background-danger-dark{background-color:#c03930 !important}.has-text-black-bis{color:#121212 !important}.has-background-black-bis{background-color:#121212 !important}.has-text-black-ter{color:#242424 !important}.has-background-black-ter{background-color:#242424 !important}.has-text-grey-darker{color:#282f2f !important}.has-background-grey-darker{background-color:#282f2f !important}.has-text-grey-dark{color:#343c3d !important}.has-background-grey-dark{background-color:#343c3d !important}.has-text-grey{color:#5e6d6f !important}.has-background-grey{background-color:#5e6d6f !important}.has-text-grey-light{color:#8c9b9d !important}.has-background-grey-light{background-color:#8c9b9d !important}.has-text-grey-lighter{color:#dbdee0 !important}.has-background-grey-lighter{background-color:#dbdee0 !important}.has-text-white-ter{color:#ecf0f1 !important}.has-background-white-ter{background-color:#ecf0f1 !important}.has-text-white-bis{color:#fafafa !important}.has-background-white-bis{background-color:#fafafa !important}.is-flex-direction-row{flex-direction:row !important}.is-flex-direction-row-reverse{flex-direction:row-reverse !important}.is-flex-direction-column{flex-direction:column !important}.is-flex-direction-column-reverse{flex-direction:column-reverse !important}.is-flex-wrap-nowrap{flex-wrap:nowrap !important}.is-flex-wrap-wrap{flex-wrap:wrap !important}.is-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse !important}.is-justify-content-flex-start{justify-content:flex-start !important}.is-justify-content-flex-end{justify-content:flex-end !important}.is-justify-content-center{justify-content:center !important}.is-justify-content-space-between{justify-content:space-between !important}.is-justify-content-space-around{justify-content:space-around !important}.is-justify-content-space-evenly{justify-content:space-evenly !important}.is-justify-content-start{justify-content:start !important}.is-justify-content-end{justify-content:end !important}.is-justify-content-left{justify-content:left !important}.is-justify-content-right{justify-content:right !important}.is-align-content-flex-start{align-content:flex-start !important}.is-align-content-flex-end{align-content:flex-end !important}.is-align-content-center{align-content:center !important}.is-align-content-space-between{align-content:space-between !important}.is-align-content-space-around{align-content:space-around !important}.is-align-content-space-evenly{align-content:space-evenly !important}.is-align-content-stretch{align-content:stretch !important}.is-align-content-start{align-content:start !important}.is-align-content-end{align-content:end !important}.is-align-content-baseline{align-content:baseline !important}.is-align-items-stretch{align-items:stretch !important}.is-align-items-flex-start{align-items:flex-start !important}.is-align-items-flex-end{align-items:flex-end !important}.is-align-items-center{align-items:center !important}.is-align-items-baseline{align-items:baseline !important}.is-align-items-start{align-items:start !important}.is-align-items-end{align-items:end !important}.is-align-items-self-start{align-items:self-start !important}.is-align-items-self-end{align-items:self-end !important}.is-align-self-auto{align-self:auto !important}.is-align-self-flex-start{align-self:flex-start !important}.is-align-self-flex-end{align-self:flex-end !important}.is-align-self-center{align-self:center !important}.is-align-self-baseline{align-self:baseline !important}.is-align-self-stretch{align-self:stretch !important}.is-flex-grow-0{flex-grow:0 !important}.is-flex-grow-1{flex-grow:1 !important}.is-flex-grow-2{flex-grow:2 !important}.is-flex-grow-3{flex-grow:3 !important}.is-flex-grow-4{flex-grow:4 !important}.is-flex-grow-5{flex-grow:5 !important}.is-flex-shrink-0{flex-shrink:0 !important}.is-flex-shrink-1{flex-shrink:1 !important}.is-flex-shrink-2{flex-shrink:2 !important}.is-flex-shrink-3{flex-shrink:3 !important}.is-flex-shrink-4{flex-shrink:4 !important}.is-flex-shrink-5{flex-shrink:5 !important}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-clickable{cursor:pointer !important;pointer-events:all !important}.is-clipped{overflow:hidden !important}.is-relative{position:relative !important}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.m-0{margin:0 !important}.mt-0{margin-top:0 !important}.mr-0{margin-right:0 !important}.mb-0{margin-bottom:0 !important}.ml-0{margin-left:0 !important}.mx-0{margin-left:0 !important;margin-right:0 !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.m-1{margin:.25rem !important}.mt-1{margin-top:.25rem !important}.mr-1{margin-right:.25rem !important}.mb-1{margin-bottom:.25rem !important}.ml-1{margin-left:.25rem !important}.mx-1{margin-left:.25rem !important;margin-right:.25rem !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-2{margin:.5rem !important}.mt-2{margin-top:.5rem !important}.mr-2{margin-right:.5rem !important}.mb-2{margin-bottom:.5rem !important}.ml-2{margin-left:.5rem !important}.mx-2{margin-left:.5rem !important;margin-right:.5rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-3{margin:.75rem !important}.mt-3{margin-top:.75rem !important}.mr-3{margin-right:.75rem !important}.mb-3{margin-bottom:.75rem !important}.ml-3{margin-left:.75rem !important}.mx-3{margin-left:.75rem !important;margin-right:.75rem !important}.my-3{margin-top:.75rem !important;margin-bottom:.75rem !important}.m-4{margin:1rem !important}.mt-4{margin-top:1rem !important}.mr-4{margin-right:1rem !important}.mb-4{margin-bottom:1rem !important}.ml-4{margin-left:1rem !important}.mx-4{margin-left:1rem !important;margin-right:1rem !important}.my-4{margin-top:1rem !important;margin-bottom:1rem !important}.m-5{margin:1.5rem !important}.mt-5{margin-top:1.5rem !important}.mr-5{margin-right:1.5rem !important}.mb-5{margin-bottom:1.5rem !important}.ml-5{margin-left:1.5rem !important}.mx-5{margin-left:1.5rem !important;margin-right:1.5rem !important}.my-5{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-6{margin:3rem !important}.mt-6{margin-top:3rem !important}.mr-6{margin-right:3rem !important}.mb-6{margin-bottom:3rem !important}.ml-6{margin-left:3rem !important}.mx-6{margin-left:3rem !important;margin-right:3rem !important}.my-6{margin-top:3rem !important;margin-bottom:3rem !important}.m-auto{margin:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-right:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-left:auto !important}.mx-auto{margin-left:auto !important;margin-right:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.p-0{padding:0 !important}.pt-0{padding-top:0 !important}.pr-0{padding-right:0 !important}.pb-0{padding-bottom:0 !important}.pl-0{padding-left:0 !important}.px-0{padding-left:0 !important;padding-right:0 !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.p-1{padding:.25rem !important}.pt-1{padding-top:.25rem !important}.pr-1{padding-right:.25rem !important}.pb-1{padding-bottom:.25rem !important}.pl-1{padding-left:.25rem !important}.px-1{padding-left:.25rem !important;padding-right:.25rem !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-2{padding:.5rem !important}.pt-2{padding-top:.5rem !important}.pr-2{padding-right:.5rem !important}.pb-2{padding-bottom:.5rem !important}.pl-2{padding-left:.5rem !important}.px-2{padding-left:.5rem !important;padding-right:.5rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-3{padding:.75rem !important}.pt-3{padding-top:.75rem !important}.pr-3{padding-right:.75rem !important}.pb-3{padding-bottom:.75rem !important}.pl-3{padding-left:.75rem !important}.px-3{padding-left:.75rem !important;padding-right:.75rem !important}.py-3{padding-top:.75rem !important;padding-bottom:.75rem !important}.p-4{padding:1rem !important}.pt-4{padding-top:1rem !important}.pr-4{padding-right:1rem !important}.pb-4{padding-bottom:1rem !important}.pl-4{padding-left:1rem !important}.px-4{padding-left:1rem !important;padding-right:1rem !important}.py-4{padding-top:1rem !important;padding-bottom:1rem !important}.p-5{padding:1.5rem !important}.pt-5{padding-top:1.5rem !important}.pr-5{padding-right:1.5rem !important}.pb-5{padding-bottom:1.5rem !important}.pl-5{padding-left:1.5rem !important}.px-5{padding-left:1.5rem !important;padding-right:1.5rem !important}.py-5{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-6{padding:3rem !important}.pt-6{padding-top:3rem !important}.pr-6{padding-right:3rem !important}.pb-6{padding-bottom:3rem !important}.pl-6{padding-left:3rem !important}.px-6{padding-left:3rem !important;padding-right:3rem !important}.py-6{padding-top:3rem !important;padding-bottom:3rem !important}.p-auto{padding:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-right:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-left:auto !important}.px-auto{padding-left:auto !important;padding-right:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !important}.is-size-1{font-size:3rem !important}.is-size-2{font-size:2.5rem !important}.is-size-3{font-size:2rem !important}.is-size-4{font-size:1.5rem !important}.is-size-5{font-size:1.25rem !important}.is-size-6{font-size:1rem !important}.is-size-7,html.theme--documenter-dark .docstring>section>a.docs-sourcelink{font-size:.75rem !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:1rem !important}.is-size-7-mobile{font-size:.75rem !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:1rem !important}.is-size-7-tablet{font-size:.75rem !important}}@media screen and (max-width: 1055px){.is-size-1-touch{font-size:3rem !important}.is-size-2-touch{font-size:2.5rem !important}.is-size-3-touch{font-size:2rem !important}.is-size-4-touch{font-size:1.5rem !important}.is-size-5-touch{font-size:1.25rem !important}.is-size-6-touch{font-size:1rem !important}.is-size-7-touch{font-size:.75rem !important}}@media screen and (min-width: 1056px){.is-size-1-desktop{font-size:3rem !important}.is-size-2-desktop{font-size:2.5rem !important}.is-size-3-desktop{font-size:2rem !important}.is-size-4-desktop{font-size:1.5rem !important}.is-size-5-desktop{font-size:1.25rem !important}.is-size-6-desktop{font-size:1rem !important}.is-size-7-desktop{font-size:.75rem !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:1rem !important}.is-size-7-widescreen{font-size:.75rem !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:1rem !important}.is-size-7-fullhd{font-size:.75rem !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-centered-tablet-only{text-align:center !important}}@media screen and (max-width: 1055px){.has-text-centered-touch{text-align:center !important}}@media screen and (min-width: 1056px){.has-text-centered-desktop{text-align:center !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-centered-desktop-only{text-align:center !important}}@media screen and (min-width: 1216px){.has-text-centered-widescreen{text-align:center !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-centered-widescreen-only{text-align:center !important}}@media screen and (min-width: 1408px){.has-text-centered-fullhd{text-align:center !important}}@media screen and (max-width: 768px){.has-text-justified-mobile{text-align:justify !important}}@media screen and (min-width: 769px),print{.has-text-justified-tablet{text-align:justify !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-justified-tablet-only{text-align:justify !important}}@media screen and (max-width: 1055px){.has-text-justified-touch{text-align:justify !important}}@media screen and (min-width: 1056px){.has-text-justified-desktop{text-align:justify !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-justified-desktop-only{text-align:justify !important}}@media screen and (min-width: 1216px){.has-text-justified-widescreen{text-align:justify !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-justified-widescreen-only{text-align:justify !important}}@media screen and (min-width: 1408px){.has-text-justified-fullhd{text-align:justify !important}}@media screen and (max-width: 768px){.has-text-left-mobile{text-align:left !important}}@media screen and (min-width: 769px),print{.has-text-left-tablet{text-align:left !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-left-tablet-only{text-align:left !important}}@media screen and (max-width: 1055px){.has-text-left-touch{text-align:left !important}}@media screen and (min-width: 1056px){.has-text-left-desktop{text-align:left !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-left-desktop-only{text-align:left !important}}@media screen and (min-width: 1216px){.has-text-left-widescreen{text-align:left !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-left-widescreen-only{text-align:left !important}}@media screen and (min-width: 1408px){.has-text-left-fullhd{text-align:left !important}}@media screen and (max-width: 768px){.has-text-right-mobile{text-align:right !important}}@media screen and (min-width: 769px),print{.has-text-right-tablet{text-align:right !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-right-tablet-only{text-align:right !important}}@media screen and (max-width: 1055px){.has-text-right-touch{text-align:right !important}}@media screen and (min-width: 1056px){.has-text-right-desktop{text-align:right !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-right-desktop-only{text-align:right !important}}@media screen and (min-width: 1216px){.has-text-right-widescreen{text-align:right !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-right-widescreen-only{text-align:right !important}}@media screen and (min-width: 1408px){.has-text-right-fullhd{text-align:right !important}}.is-capitalized{text-transform:capitalize !important}.is-lowercase{text-transform:lowercase !important}.is-uppercase{text-transform:uppercase !important}.is-italic{font-style:italic !important}.is-underlined{text-decoration:underline !important}.has-text-weight-light{font-weight:300 !important}.has-text-weight-normal{font-weight:400 !important}.has-text-weight-medium{font-weight:500 !important}.has-text-weight-semibold{font-weight:600 !important}.has-text-weight-bold{font-weight:700 !important}.is-family-primary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-secondary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-sans-serif{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-monospace{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-family-code{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-block{display:block !important}@media screen and (max-width: 768px){.is-block-mobile{display:block !important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-block-tablet-only{display:block !important}}@media screen and (max-width: 1055px){.is-block-touch{display:block !important}}@media screen and (min-width: 1056px){.is-block-desktop{display:block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-block-desktop-only{display:block !important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block !important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block !important}}.is-flex{display:flex !important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex !important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-flex-tablet-only{display:flex !important}}@media screen and (max-width: 1055px){.is-flex-touch{display:flex !important}}@media screen and (min-width: 1056px){.is-flex-desktop{display:flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-flex-desktop-only{display:flex !important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex !important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex !important}}.is-inline{display:inline !important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline !important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-tablet-only{display:inline !important}}@media screen and (max-width: 1055px){.is-inline-touch{display:inline !important}}@media screen and (min-width: 1056px){.is-inline-desktop{display:inline !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-desktop-only{display:inline !important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline !important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline !important}}.is-inline-block{display:inline-block !important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block !important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-block-tablet-only{display:inline-block !important}}@media screen and (max-width: 1055px){.is-inline-block-touch{display:inline-block !important}}@media screen and (min-width: 1056px){.is-inline-block-desktop{display:inline-block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block !important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block !important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block !important}}.is-inline-flex{display:inline-flex !important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex !important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-flex-tablet-only{display:inline-flex !important}}@media screen and (max-width: 1055px){.is-inline-flex-touch{display:inline-flex !important}}@media screen and (min-width: 1056px){.is-inline-flex-desktop{display:inline-flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex !important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex !important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex !important}}.is-hidden{display:none !important}.is-sr-only{border:none !important;clip:rect(0, 0, 0, 0) !important;height:0.01em !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:0.01em !important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none !important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-hidden-tablet-only{display:none !important}}@media screen and (max-width: 1055px){.is-hidden-touch{display:none !important}}@media screen and (min-width: 1056px){.is-hidden-desktop{display:none !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-hidden-desktop-only{display:none !important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none !important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none !important}}.is-invisible{visibility:hidden !important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden !important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-invisible-tablet-only{visibility:hidden !important}}@media screen and (max-width: 1055px){.is-invisible-touch{visibility:hidden !important}}@media screen and (min-width: 1056px){.is-invisible-desktop{visibility:hidden !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden !important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden !important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden !important}}html.theme--documenter-dark{/*! + Theme: a11y-dark + Author: @ericwbailey + Maintainer: @ericwbailey + + Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css +*/}html.theme--documenter-dark html{background-color:#1f2424;font-size:16px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}html.theme--documenter-dark article,html.theme--documenter-dark aside,html.theme--documenter-dark figure,html.theme--documenter-dark footer,html.theme--documenter-dark header,html.theme--documenter-dark hgroup,html.theme--documenter-dark section{display:block}html.theme--documenter-dark body,html.theme--documenter-dark button,html.theme--documenter-dark input,html.theme--documenter-dark optgroup,html.theme--documenter-dark select,html.theme--documenter-dark textarea{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif}html.theme--documenter-dark code,html.theme--documenter-dark pre{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}html.theme--documenter-dark body{color:#fff;font-size:1em;font-weight:400;line-height:1.5}html.theme--documenter-dark a{color:#1abc9c;cursor:pointer;text-decoration:none}html.theme--documenter-dark a strong{color:currentColor}html.theme--documenter-dark a:hover{color:#1dd2af}html.theme--documenter-dark code{background-color:rgba(255,255,255,0.05);color:#ececec;font-size:.875em;font-weight:normal;padding:.1em}html.theme--documenter-dark hr{background-color:#282f2f;border:none;display:block;height:2px;margin:1.5rem 0}html.theme--documenter-dark img{height:auto;max-width:100%}html.theme--documenter-dark input[type="checkbox"],html.theme--documenter-dark input[type="radio"]{vertical-align:baseline}html.theme--documenter-dark small{font-size:.875em}html.theme--documenter-dark span{font-style:inherit;font-weight:inherit}html.theme--documenter-dark strong{color:#f2f2f2;font-weight:700}html.theme--documenter-dark fieldset{border:none}html.theme--documenter-dark pre{-webkit-overflow-scrolling:touch;background-color:#282f2f;color:#fff;font-size:.875em;overflow-x:auto;padding:1.25rem 1.5rem;white-space:pre;word-wrap:normal}html.theme--documenter-dark pre code{background-color:transparent;color:currentColor;font-size:1em;padding:0}html.theme--documenter-dark table td,html.theme--documenter-dark table th{vertical-align:top}html.theme--documenter-dark table td:not([align]),html.theme--documenter-dark table th:not([align]){text-align:inherit}html.theme--documenter-dark table th{color:#f2f2f2}html.theme--documenter-dark .box{background-color:#343c3d;border-radius:8px;box-shadow:none;color:#fff;display:block;padding:1.25rem}html.theme--documenter-dark a.box:hover,html.theme--documenter-dark a.box:focus{box-shadow:0 0.5em 1em -0.125em rgba(10,10,10,0.1),0 0 0 1px #1abc9c}html.theme--documenter-dark a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2),0 0 0 1px #1abc9c}html.theme--documenter-dark .button{background-color:#282f2f;border-color:#4c5759;border-width:1px;color:#375a7f;cursor:pointer;justify-content:center;padding-bottom:calc(0.5em - 1px);padding-left:1em;padding-right:1em;padding-top:calc(0.5em - 1px);text-align:center;white-space:nowrap}html.theme--documenter-dark .button strong{color:inherit}html.theme--documenter-dark .button .icon,html.theme--documenter-dark .button .icon.is-small,html.theme--documenter-dark .button #documenter .docs-sidebar form.docs-search>input.icon,html.theme--documenter-dark #documenter .docs-sidebar .button form.docs-search>input.icon,html.theme--documenter-dark .button .icon.is-medium,html.theme--documenter-dark .button .icon.is-large{height:1.5em;width:1.5em}html.theme--documenter-dark .button .icon:first-child:not(:last-child){margin-left:calc(-0.5em - 1px);margin-right:.25em}html.theme--documenter-dark .button .icon:last-child:not(:first-child){margin-left:.25em;margin-right:calc(-0.5em - 1px)}html.theme--documenter-dark .button .icon:first-child:last-child{margin-left:calc(-0.5em - 1px);margin-right:calc(-0.5em - 1px)}html.theme--documenter-dark .button:hover,html.theme--documenter-dark .button.is-hovered{border-color:#8c9b9d;color:#f2f2f2}html.theme--documenter-dark .button:focus,html.theme--documenter-dark .button.is-focused{border-color:#8c9b9d;color:#17a689}html.theme--documenter-dark .button:focus:not(:active),html.theme--documenter-dark .button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .button:active,html.theme--documenter-dark .button.is-active{border-color:#343c3d;color:#f2f2f2}html.theme--documenter-dark .button.is-text{background-color:transparent;border-color:transparent;color:#fff;text-decoration:underline}html.theme--documenter-dark .button.is-text:hover,html.theme--documenter-dark .button.is-text.is-hovered,html.theme--documenter-dark .button.is-text:focus,html.theme--documenter-dark .button.is-text.is-focused{background-color:#282f2f;color:#f2f2f2}html.theme--documenter-dark .button.is-text:active,html.theme--documenter-dark .button.is-text.is-active{background-color:#1d2122;color:#f2f2f2}html.theme--documenter-dark .button.is-text[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}html.theme--documenter-dark .button.is-ghost{background:none;border-color:rgba(0,0,0,0);color:#1abc9c;text-decoration:none}html.theme--documenter-dark .button.is-ghost:hover,html.theme--documenter-dark .button.is-ghost.is-hovered{color:#1abc9c;text-decoration:underline}html.theme--documenter-dark .button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .button.is-white:hover,html.theme--documenter-dark .button.is-white.is-hovered{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .button.is-white:focus,html.theme--documenter-dark .button.is-white.is-focused{border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .button.is-white:focus:not(:active),html.theme--documenter-dark .button.is-white.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--documenter-dark .button.is-white:active,html.theme--documenter-dark .button.is-white.is-active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .button.is-white[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-white{background-color:#fff;border-color:#fff;box-shadow:none}html.theme--documenter-dark .button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .button.is-white.is-inverted:hover,html.theme--documenter-dark .button.is-white.is-inverted.is-hovered{background-color:#000}html.theme--documenter-dark .button.is-white.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-white.is-inverted{background-color:#0a0a0a;border-color:transparent;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-white.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--documenter-dark .button.is-white.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-white.is-outlined:hover,html.theme--documenter-dark .button.is-white.is-outlined.is-hovered,html.theme--documenter-dark .button.is-white.is-outlined:focus,html.theme--documenter-dark .button.is-white.is-outlined.is-focused{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--documenter-dark .button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-white.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-white.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-white.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-white.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--documenter-dark .button.is-white.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-white.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--documenter-dark .button.is-white.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-focused{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-white.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--documenter-dark .button.is-black{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-black:hover,html.theme--documenter-dark .button.is-black.is-hovered{background-color:#040404;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-black:focus,html.theme--documenter-dark .button.is-black.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-black:focus:not(:active),html.theme--documenter-dark .button.is-black.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--documenter-dark .button.is-black:active,html.theme--documenter-dark .button.is-black.is-active{background-color:#000;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-black[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-black{background-color:#0a0a0a;border-color:#0a0a0a;box-shadow:none}html.theme--documenter-dark .button.is-black.is-inverted{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-inverted:hover,html.theme--documenter-dark .button.is-black.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-black.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-black.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-outlined:hover,html.theme--documenter-dark .button.is-black.is-outlined.is-hovered,html.theme--documenter-dark .button.is-black.is-outlined:focus,html.theme--documenter-dark .button.is-black.is-outlined.is-focused{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--documenter-dark .button.is-black.is-outlined.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--documenter-dark .button.is-black.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-black.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-black.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-black.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-black.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-black.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-focused{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-black.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}html.theme--documenter-dark .button.is-black.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-light{background-color:#ecf0f1;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light:hover,html.theme--documenter-dark .button.is-light.is-hovered{background-color:#e5eaec;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light:focus,html.theme--documenter-dark .button.is-light.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light:focus:not(:active),html.theme--documenter-dark .button.is-light.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(236,240,241,0.25)}html.theme--documenter-dark .button.is-light:active,html.theme--documenter-dark .button.is-light.is-active{background-color:#dde4e6;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light{background-color:#ecf0f1;border-color:#ecf0f1;box-shadow:none}html.theme--documenter-dark .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-inverted:hover,html.theme--documenter-dark .button.is-light.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--documenter-dark .button.is-light.is-outlined{background-color:transparent;border-color:#ecf0f1;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-outlined:hover,html.theme--documenter-dark .button.is-light.is-outlined.is-hovered,html.theme--documenter-dark .button.is-light.is-outlined:focus,html.theme--documenter-dark .button.is-light.is-outlined.is-focused{background-color:#ecf0f1;border-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #ecf0f1 #ecf0f1 !important}html.theme--documenter-dark .button.is-light.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-light.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-light.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-light.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--documenter-dark .button.is-light.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light.is-outlined{background-color:transparent;border-color:#ecf0f1;box-shadow:none;color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#ecf0f1}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-light.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #ecf0f1 #ecf0f1 !important}html.theme--documenter-dark .button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-dark,html.theme--documenter-dark .content kbd.button{background-color:#282f2f;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-dark:hover,html.theme--documenter-dark .content kbd.button:hover,html.theme--documenter-dark .button.is-dark.is-hovered,html.theme--documenter-dark .content kbd.button.is-hovered{background-color:#232829;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-dark:focus,html.theme--documenter-dark .content kbd.button:focus,html.theme--documenter-dark .button.is-dark.is-focused,html.theme--documenter-dark .content kbd.button.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-dark:focus:not(:active),html.theme--documenter-dark .content kbd.button:focus:not(:active),html.theme--documenter-dark .button.is-dark.is-focused:not(:active),html.theme--documenter-dark .content kbd.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(40,47,47,0.25)}html.theme--documenter-dark .button.is-dark:active,html.theme--documenter-dark .content kbd.button:active,html.theme--documenter-dark .button.is-dark.is-active,html.theme--documenter-dark .content kbd.button.is-active{background-color:#1d2122;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-dark[disabled],html.theme--documenter-dark .content kbd.button[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark,fieldset[disabled] html.theme--documenter-dark .content kbd.button{background-color:#282f2f;border-color:#282f2f;box-shadow:none}html.theme--documenter-dark .button.is-dark.is-inverted,html.theme--documenter-dark .content kbd.button.is-inverted{background-color:#fff;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-inverted:hover,html.theme--documenter-dark .content kbd.button.is-inverted:hover,html.theme--documenter-dark .button.is-dark.is-inverted.is-hovered,html.theme--documenter-dark .content kbd.button.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-dark.is-inverted[disabled],html.theme--documenter-dark .content kbd.button.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-inverted,fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-loading::after,html.theme--documenter-dark .content kbd.button.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-dark.is-outlined,html.theme--documenter-dark .content kbd.button.is-outlined{background-color:transparent;border-color:#282f2f;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-outlined:hover,html.theme--documenter-dark .content kbd.button.is-outlined:hover,html.theme--documenter-dark .button.is-dark.is-outlined.is-hovered,html.theme--documenter-dark .content kbd.button.is-outlined.is-hovered,html.theme--documenter-dark .button.is-dark.is-outlined:focus,html.theme--documenter-dark .content kbd.button.is-outlined:focus,html.theme--documenter-dark .button.is-dark.is-outlined.is-focused,html.theme--documenter-dark .content kbd.button.is-outlined.is-focused{background-color:#282f2f;border-color:#282f2f;color:#fff}html.theme--documenter-dark .button.is-dark.is-outlined.is-loading::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading::after{border-color:transparent transparent #282f2f #282f2f !important}html.theme--documenter-dark .button.is-dark.is-outlined.is-loading:hover::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-dark.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-dark.is-outlined.is-loading:focus::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-dark.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .content kbd.button.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-dark.is-outlined[disabled],html.theme--documenter-dark .content kbd.button.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-outlined,fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-outlined{background-color:transparent;border-color:#282f2f;box-shadow:none;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined:hover,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined:focus,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-focused,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-focused{background-color:#fff;color:#282f2f}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #282f2f #282f2f !important}html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined[disabled],html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-dark.is-inverted.is-outlined,fieldset[disabled] html.theme--documenter-dark .content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-primary,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink{background-color:#375a7f;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary:hover,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-hovered.docs-sourcelink{background-color:#335476;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary:focus,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:focus,html.theme--documenter-dark .button.is-primary.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-focused.docs-sourcelink{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary:focus:not(:active),html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:focus:not(:active),html.theme--documenter-dark .button.is-primary.is-focused:not(:active),html.theme--documenter-dark .docstring>section>a.button.is-focused.docs-sourcelink:not(:active){box-shadow:0 0 0 0.125em rgba(55,90,127,0.25)}html.theme--documenter-dark .button.is-primary:active,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:active,html.theme--documenter-dark .button.is-primary.is-active,html.theme--documenter-dark .docstring>section>a.button.is-active.docs-sourcelink{background-color:#2f4d6d;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-primary[disabled],html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink{background-color:#375a7f;border-color:#375a7f;box-shadow:none}html.theme--documenter-dark .button.is-primary.is-inverted,html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-inverted:hover,html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-inverted.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-hovered.docs-sourcelink{background-color:#f2f2f2}html.theme--documenter-dark .button.is-primary.is-inverted[disabled],html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-inverted,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;border-color:transparent;box-shadow:none;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-loading::after,html.theme--documenter-dark .docstring>section>a.button.is-loading.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-primary.is-outlined,html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#375a7f;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-outlined:hover,html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-outlined.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-hovered.docs-sourcelink,html.theme--documenter-dark .button.is-primary.is-outlined:focus,html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink:focus,html.theme--documenter-dark .button.is-primary.is-outlined.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-focused.docs-sourcelink{background-color:#375a7f;border-color:#375a7f;color:#fff}html.theme--documenter-dark .button.is-primary.is-outlined.is-loading::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink::after{border-color:transparent transparent #375a7f #375a7f !important}html.theme--documenter-dark .button.is-primary.is-outlined.is-loading:hover::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--documenter-dark .button.is-primary.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--documenter-dark .button.is-primary.is-outlined.is-loading:focus::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--documenter-dark .button.is-primary.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .docstring>section>a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-primary.is-outlined[disabled],html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-outlined,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#375a7f;box-shadow:none;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined:hover,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined:focus,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:focus,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-focused.docs-sourcelink{background-color:#fff;color:#375a7f}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after,html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #375a7f #375a7f !important}html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined[disabled],html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-primary.is-inverted.is-outlined,fieldset[disabled] html.theme--documenter-dark .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-primary.is-light,html.theme--documenter-dark .docstring>section>a.button.is-light.docs-sourcelink{background-color:#f1f5f9;color:#4d7eb2}html.theme--documenter-dark .button.is-primary.is-light:hover,html.theme--documenter-dark .docstring>section>a.button.is-light.docs-sourcelink:hover,html.theme--documenter-dark .button.is-primary.is-light.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-light.is-hovered.docs-sourcelink{background-color:#e8eef5;border-color:transparent;color:#4d7eb2}html.theme--documenter-dark .button.is-primary.is-light:active,html.theme--documenter-dark .docstring>section>a.button.is-light.docs-sourcelink:active,html.theme--documenter-dark .button.is-primary.is-light.is-active,html.theme--documenter-dark .docstring>section>a.button.is-light.is-active.docs-sourcelink{background-color:#dfe8f1;border-color:transparent;color:#4d7eb2}html.theme--documenter-dark .button.is-link{background-color:#1abc9c;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link:hover,html.theme--documenter-dark .button.is-link.is-hovered{background-color:#18b193;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link:focus,html.theme--documenter-dark .button.is-link.is-focused{border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link:focus:not(:active),html.theme--documenter-dark .button.is-link.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .button.is-link:active,html.theme--documenter-dark .button.is-link.is-active{background-color:#17a689;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-link[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link{background-color:#1abc9c;border-color:#1abc9c;box-shadow:none}html.theme--documenter-dark .button.is-link.is-inverted{background-color:#fff;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-inverted:hover,html.theme--documenter-dark .button.is-link.is-inverted.is-hovered{background-color:#f2f2f2}html.theme--documenter-dark .button.is-link.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-loading::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-link.is-outlined{background-color:transparent;border-color:#1abc9c;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-outlined:hover,html.theme--documenter-dark .button.is-link.is-outlined.is-hovered,html.theme--documenter-dark .button.is-link.is-outlined:focus,html.theme--documenter-dark .button.is-link.is-outlined.is-focused{background-color:#1abc9c;border-color:#1abc9c;color:#fff}html.theme--documenter-dark .button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #1abc9c #1abc9c !important}html.theme--documenter-dark .button.is-link.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-link.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-link.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-link.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}html.theme--documenter-dark .button.is-link.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link.is-outlined{background-color:transparent;border-color:#1abc9c;box-shadow:none;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined:hover,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-hovered,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined:focus,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-focused{background-color:#fff;color:#1abc9c}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading:hover::after,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading:focus::after,html.theme--documenter-dark .button.is-link.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #1abc9c #1abc9c !important}html.theme--documenter-dark .button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-link.is-light{background-color:#edfdf9;color:#15987e}html.theme--documenter-dark .button.is-link.is-light:hover,html.theme--documenter-dark .button.is-link.is-light.is-hovered{background-color:#e2fbf6;border-color:transparent;color:#15987e}html.theme--documenter-dark .button.is-link.is-light:active,html.theme--documenter-dark .button.is-link.is-light.is-active{background-color:#d7f9f3;border-color:transparent;color:#15987e}html.theme--documenter-dark .button.is-info{background-color:#3c5dcd;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-info:hover,html.theme--documenter-dark .button.is-info.is-hovered{background-color:#3355c9;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(60,93,205,0.25)}html.theme--documenter-dark .button.is-info:active,html.theme--documenter-dark .button.is-info.is-active{background-color:#3151bf;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-info[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-info{background-color:#3c5dcd;border-color:#3c5dcd;box-shadow:none}html.theme--documenter-dark .button.is-info.is-inverted{background-color:#fff;color:#3c5dcd}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:#3c5dcd}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:#3c5dcd;color:#3c5dcd}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:#3c5dcd;border-color:#3c5dcd;color:#fff}html.theme--documenter-dark .button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #3c5dcd #3c5dcd !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:#3c5dcd;box-shadow:none;color:#3c5dcd}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:#3c5dcd}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 #3c5dcd #3c5dcd !important}html.theme--documenter-dark .button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-info.is-light{background-color:#eff2fb;color:#3253c3}html.theme--documenter-dark .button.is-info.is-light:hover,html.theme--documenter-dark .button.is-info.is-light.is-hovered{background-color:#e5e9f8;border-color:transparent;color:#3253c3}html.theme--documenter-dark .button.is-info.is-light:active,html.theme--documenter-dark .button.is-info.is-light.is-active{background-color:#dae1f6;border-color:transparent;color:#3253c3}html.theme--documenter-dark .button.is-success{background-color:#259a12;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-success:hover,html.theme--documenter-dark .button.is-success.is-hovered{background-color:#228f11;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(37,154,18,0.25)}html.theme--documenter-dark .button.is-success:active,html.theme--documenter-dark .button.is-success.is-active{background-color:#20830f;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-success[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-success{background-color:#259a12;border-color:#259a12;box-shadow:none}html.theme--documenter-dark .button.is-success.is-inverted{background-color:#fff;color:#259a12}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:#259a12}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:#259a12;color:#259a12}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:#259a12;border-color:#259a12;color:#fff}html.theme--documenter-dark .button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #259a12 #259a12 !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:#259a12;box-shadow:none;color:#259a12}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:#259a12}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 #259a12 #259a12 !important}html.theme--documenter-dark .button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-success.is-light{background-color:#effded;color:#2ec016}html.theme--documenter-dark .button.is-success.is-light:hover,html.theme--documenter-dark .button.is-success.is-light.is-hovered{background-color:#e5fce1;border-color:transparent;color:#2ec016}html.theme--documenter-dark .button.is-success.is-light:active,html.theme--documenter-dark .button.is-success.is-light.is-active{background-color:#dbfad6;border-color:transparent;color:#2ec016}html.theme--documenter-dark .button.is-warning{background-color:#f4c72f;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-warning:hover,html.theme--documenter-dark .button.is-warning.is-hovered{background-color:#f3c423;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-warning:focus,html.theme--documenter-dark .button.is-warning.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}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(244,199,47,0.25)}html.theme--documenter-dark .button.is-warning:active,html.theme--documenter-dark .button.is-warning.is-active{background-color:#f3c017;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-warning[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-warning{background-color:#f4c72f;border-color:#f4c72f;box-shadow:none}html.theme--documenter-dark .button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);color:#f4c72f}html.theme--documenter-dark .button.is-warning.is-inverted:hover,html.theme--documenter-dark .button.is-warning.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-warning.is-inverted[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-warning.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#f4c72f}html.theme--documenter-dark .button.is-warning.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}html.theme--documenter-dark .button.is-warning.is-outlined{background-color:transparent;border-color:#f4c72f;color:#f4c72f}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:#f4c72f;border-color:#f4c72f;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #f4c72f #f4c72f !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 rgba(0,0,0,0.7) rgba(0,0,0,0.7) !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:#f4c72f;box-shadow:none;color:#f4c72f}html.theme--documenter-dark .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)}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:rgba(0,0,0,0.7);color:#f4c72f}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 #f4c72f #f4c72f !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:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .button.is-warning.is-light{background-color:#fefaec;color:#8c6e07}html.theme--documenter-dark .button.is-warning.is-light:hover,html.theme--documenter-dark .button.is-warning.is-light.is-hovered{background-color:#fdf7e0;border-color:transparent;color:#8c6e07}html.theme--documenter-dark .button.is-warning.is-light:active,html.theme--documenter-dark .button.is-warning.is-light.is-active{background-color:#fdf3d3;border-color:transparent;color:#8c6e07}html.theme--documenter-dark .button.is-danger{background-color:#cb3c33;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-danger:hover,html.theme--documenter-dark .button.is-danger.is-hovered{background-color:#c13930;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(203,60,51,0.25)}html.theme--documenter-dark .button.is-danger:active,html.theme--documenter-dark .button.is-danger.is-active{background-color:#b7362e;border-color:transparent;color:#fff}html.theme--documenter-dark .button.is-danger[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-danger{background-color:#cb3c33;border-color:#cb3c33;box-shadow:none}html.theme--documenter-dark .button.is-danger.is-inverted{background-color:#fff;color:#cb3c33}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:#cb3c33}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:#cb3c33;color:#cb3c33}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:#cb3c33;border-color:#cb3c33;color:#fff}html.theme--documenter-dark .button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #cb3c33 #cb3c33 !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:#cb3c33;box-shadow:none;color:#cb3c33}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:#cb3c33}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 #cb3c33 #cb3c33 !important}html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] html.theme--documenter-dark .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}html.theme--documenter-dark .button.is-danger.is-light{background-color:#fbefef;color:#c03930}html.theme--documenter-dark .button.is-danger.is-light:hover,html.theme--documenter-dark .button.is-danger.is-light.is-hovered{background-color:#f8e6e5;border-color:transparent;color:#c03930}html.theme--documenter-dark .button.is-danger.is-light:active,html.theme--documenter-dark .button.is-danger.is-light.is-active{background-color:#f6dcda;border-color:transparent;color:#c03930}html.theme--documenter-dark .button.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.button{font-size:.75rem}html.theme--documenter-dark .button.is-small:not(.is-rounded),html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.button:not(.is-rounded){border-radius:3px}html.theme--documenter-dark .button.is-normal{font-size:1rem}html.theme--documenter-dark .button.is-medium{font-size:1.25rem}html.theme--documenter-dark .button.is-large{font-size:1.5rem}html.theme--documenter-dark .button[disabled],fieldset[disabled] html.theme--documenter-dark .button{background-color:#8c9b9d;border-color:#5e6d6f;box-shadow:none;opacity:.5}html.theme--documenter-dark .button.is-fullwidth{display:flex;width:100%}html.theme--documenter-dark .button.is-loading{color:transparent !important;pointer-events:none}html.theme--documenter-dark .button.is-loading::after{position:absolute;left:calc(50% - (1em * 0.5));top:calc(50% - (1em * 0.5));position:absolute !important}html.theme--documenter-dark .button.is-static{background-color:#282f2f;border-color:#5e6d6f;color:#dbdee0;box-shadow:none;pointer-events:none}html.theme--documenter-dark .button.is-rounded,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.button{border-radius:9999px;padding-left:calc(1em + 0.25em);padding-right:calc(1em + 0.25em)}html.theme--documenter-dark .buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--documenter-dark .buttons .button{margin-bottom:0.5rem}html.theme--documenter-dark .buttons .button:not(:last-child):not(.is-fullwidth){margin-right:.5rem}html.theme--documenter-dark .buttons:last-child{margin-bottom:-0.5rem}html.theme--documenter-dark .buttons:not(:last-child){margin-bottom:1rem}html.theme--documenter-dark .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){font-size:.75rem}html.theme--documenter-dark .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large):not(.is-rounded){border-radius:3px}html.theme--documenter-dark .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}html.theme--documenter-dark .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}html.theme--documenter-dark .buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}html.theme--documenter-dark .buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}html.theme--documenter-dark .buttons.has-addons .button:last-child{margin-right:0}html.theme--documenter-dark .buttons.has-addons .button:hover,html.theme--documenter-dark .buttons.has-addons .button.is-hovered{z-index:2}html.theme--documenter-dark .buttons.has-addons .button:focus,html.theme--documenter-dark .buttons.has-addons .button.is-focused,html.theme--documenter-dark .buttons.has-addons .button:active,html.theme--documenter-dark .buttons.has-addons .button.is-active,html.theme--documenter-dark .buttons.has-addons .button.is-selected{z-index:3}html.theme--documenter-dark .buttons.has-addons .button:focus:hover,html.theme--documenter-dark .buttons.has-addons .button.is-focused:hover,html.theme--documenter-dark .buttons.has-addons .button:active:hover,html.theme--documenter-dark .buttons.has-addons .button.is-active:hover,html.theme--documenter-dark .buttons.has-addons .button.is-selected:hover{z-index:4}html.theme--documenter-dark .buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .buttons.is-centered{justify-content:center}html.theme--documenter-dark .buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}html.theme--documenter-dark .buttons.is-right{justify-content:flex-end}html.theme--documenter-dark .buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}@media screen and (max-width: 768px){html.theme--documenter-dark .button.is-responsive.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.5625rem}html.theme--documenter-dark .button.is-responsive,html.theme--documenter-dark .button.is-responsive.is-normal{font-size:.65625rem}html.theme--documenter-dark .button.is-responsive.is-medium{font-size:.75rem}html.theme--documenter-dark .button.is-responsive.is-large{font-size:1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .button.is-responsive.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.65625rem}html.theme--documenter-dark .button.is-responsive,html.theme--documenter-dark .button.is-responsive.is-normal{font-size:.75rem}html.theme--documenter-dark .button.is-responsive.is-medium{font-size:1rem}html.theme--documenter-dark .button.is-responsive.is-large{font-size:1.25rem}}html.theme--documenter-dark .container{flex-grow:1;margin:0 auto;position:relative;width:auto}html.theme--documenter-dark .container.is-fluid{max-width:none !important;padding-left:32px;padding-right:32px;width:100%}@media screen and (min-width: 1056px){html.theme--documenter-dark .container{max-width:992px}}@media screen and (max-width: 1215px){html.theme--documenter-dark .container.is-widescreen:not(.is-max-desktop){max-width:1152px}}@media screen and (max-width: 1407px){html.theme--documenter-dark .container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}@media screen and (min-width: 1216px){html.theme--documenter-dark .container:not(.is-max-desktop){max-width:1152px}}@media screen and (min-width: 1408px){html.theme--documenter-dark .container:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}html.theme--documenter-dark .content li+li{margin-top:0.25em}html.theme--documenter-dark .content p:not(:last-child),html.theme--documenter-dark .content dl:not(:last-child),html.theme--documenter-dark .content ol:not(:last-child),html.theme--documenter-dark .content ul:not(:last-child),html.theme--documenter-dark .content blockquote:not(:last-child),html.theme--documenter-dark .content pre:not(:last-child),html.theme--documenter-dark .content table:not(:last-child){margin-bottom:1em}html.theme--documenter-dark .content h1,html.theme--documenter-dark .content h2,html.theme--documenter-dark .content h3,html.theme--documenter-dark .content h4,html.theme--documenter-dark .content h5,html.theme--documenter-dark .content h6{color:#f2f2f2;font-weight:600;line-height:1.125}html.theme--documenter-dark .content h1{font-size:2em;margin-bottom:0.5em}html.theme--documenter-dark .content h1:not(:first-child){margin-top:1em}html.theme--documenter-dark .content h2{font-size:1.75em;margin-bottom:0.5714em}html.theme--documenter-dark .content h2:not(:first-child){margin-top:1.1428em}html.theme--documenter-dark .content h3{font-size:1.5em;margin-bottom:0.6666em}html.theme--documenter-dark .content h3:not(:first-child){margin-top:1.3333em}html.theme--documenter-dark .content h4{font-size:1.25em;margin-bottom:0.8em}html.theme--documenter-dark .content h5{font-size:1.125em;margin-bottom:0.8888em}html.theme--documenter-dark .content h6{font-size:1em;margin-bottom:1em}html.theme--documenter-dark .content blockquote{background-color:#282f2f;border-left:5px solid #5e6d6f;padding:1.25em 1.5em}html.theme--documenter-dark .content ol{list-style-position:outside;margin-left:2em;margin-top:1em}html.theme--documenter-dark .content ol:not([type]){list-style-type:decimal}html.theme--documenter-dark .content ol.is-lower-alpha:not([type]){list-style-type:lower-alpha}html.theme--documenter-dark .content ol.is-lower-roman:not([type]){list-style-type:lower-roman}html.theme--documenter-dark .content ol.is-upper-alpha:not([type]){list-style-type:upper-alpha}html.theme--documenter-dark .content ol.is-upper-roman:not([type]){list-style-type:upper-roman}html.theme--documenter-dark .content ul{list-style:disc outside;margin-left:2em;margin-top:1em}html.theme--documenter-dark .content ul ul{list-style-type:circle;margin-top:0.5em}html.theme--documenter-dark .content ul ul ul{list-style-type:square}html.theme--documenter-dark .content dd{margin-left:2em}html.theme--documenter-dark .content figure{margin-left:2em;margin-right:2em;text-align:center}html.theme--documenter-dark .content figure:not(:first-child){margin-top:2em}html.theme--documenter-dark .content figure:not(:last-child){margin-bottom:2em}html.theme--documenter-dark .content figure img{display:inline-block}html.theme--documenter-dark .content figure figcaption{font-style:italic}html.theme--documenter-dark .content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:0;white-space:pre;word-wrap:normal}html.theme--documenter-dark .content sup,html.theme--documenter-dark .content sub{font-size:75%}html.theme--documenter-dark .content table{width:100%}html.theme--documenter-dark .content table td,html.theme--documenter-dark .content table th{border:1px solid #5e6d6f;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--documenter-dark .content table th{color:#f2f2f2}html.theme--documenter-dark .content table th:not([align]){text-align:inherit}html.theme--documenter-dark .content table thead td,html.theme--documenter-dark .content table thead th{border-width:0 0 2px;color:#f2f2f2}html.theme--documenter-dark .content table tfoot td,html.theme--documenter-dark .content table tfoot th{border-width:2px 0 0;color:#f2f2f2}html.theme--documenter-dark .content table tbody tr:last-child td,html.theme--documenter-dark .content table tbody tr:last-child th{border-bottom-width:0}html.theme--documenter-dark .content .tabs li+li{margin-top:0}html.theme--documenter-dark .content.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.content{font-size:.75rem}html.theme--documenter-dark .content.is-normal{font-size:1rem}html.theme--documenter-dark .content.is-medium{font-size:1.25rem}html.theme--documenter-dark .content.is-large{font-size:1.5rem}html.theme--documenter-dark .icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}html.theme--documenter-dark .icon.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.icon{height:1rem;width:1rem}html.theme--documenter-dark .icon.is-medium{height:2rem;width:2rem}html.theme--documenter-dark .icon.is-large{height:3rem;width:3rem}html.theme--documenter-dark .icon-text{align-items:flex-start;color:inherit;display:inline-flex;flex-wrap:wrap;line-height:1.5rem;vertical-align:top}html.theme--documenter-dark .icon-text .icon{flex-grow:0;flex-shrink:0}html.theme--documenter-dark .icon-text .icon:not(:last-child){margin-right:.25em}html.theme--documenter-dark .icon-text .icon:not(:first-child){margin-left:.25em}html.theme--documenter-dark div.icon-text{display:flex}html.theme--documenter-dark .image,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img{display:block;position:relative}html.theme--documenter-dark .image img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img img{display:block;height:auto;width:100%}html.theme--documenter-dark .image img.is-rounded,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img img.is-rounded{border-radius:9999px}html.theme--documenter-dark .image.is-fullwidth,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-fullwidth{width:100%}html.theme--documenter-dark .image.is-square img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square img,html.theme--documenter-dark .image.is-square .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,html.theme--documenter-dark .image.is-1by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 img,html.theme--documenter-dark .image.is-1by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,html.theme--documenter-dark .image.is-5by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 img,html.theme--documenter-dark .image.is-5by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,html.theme--documenter-dark .image.is-4by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 img,html.theme--documenter-dark .image.is-4by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,html.theme--documenter-dark .image.is-3by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 img,html.theme--documenter-dark .image.is-3by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,html.theme--documenter-dark .image.is-5by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 img,html.theme--documenter-dark .image.is-5by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,html.theme--documenter-dark .image.is-16by9 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 img,html.theme--documenter-dark .image.is-16by9 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,html.theme--documenter-dark .image.is-2by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 img,html.theme--documenter-dark .image.is-2by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,html.theme--documenter-dark .image.is-3by1 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 img,html.theme--documenter-dark .image.is-3by1 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,html.theme--documenter-dark .image.is-4by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 img,html.theme--documenter-dark .image.is-4by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,html.theme--documenter-dark .image.is-3by4 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 img,html.theme--documenter-dark .image.is-3by4 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,html.theme--documenter-dark .image.is-2by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 img,html.theme--documenter-dark .image.is-2by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,html.theme--documenter-dark .image.is-3by5 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 img,html.theme--documenter-dark .image.is-3by5 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,html.theme--documenter-dark .image.is-9by16 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 img,html.theme--documenter-dark .image.is-9by16 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,html.theme--documenter-dark .image.is-1by2 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 img,html.theme--documenter-dark .image.is-1by2 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,html.theme--documenter-dark .image.is-1by3 img,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 img,html.theme--documenter-dark .image.is-1by3 .has-ratio,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio{height:100%;width:100%}html.theme--documenter-dark .image.is-square,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-square,html.theme--documenter-dark .image.is-1by1,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by1{padding-top:100%}html.theme--documenter-dark .image.is-5by4,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by4{padding-top:80%}html.theme--documenter-dark .image.is-4by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by3{padding-top:75%}html.theme--documenter-dark .image.is-3by2,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by2{padding-top:66.6666%}html.theme--documenter-dark .image.is-5by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-5by3{padding-top:60%}html.theme--documenter-dark .image.is-16by9,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16by9{padding-top:56.25%}html.theme--documenter-dark .image.is-2by1,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by1{padding-top:50%}html.theme--documenter-dark .image.is-3by1,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by1{padding-top:33.3333%}html.theme--documenter-dark .image.is-4by5,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-4by5{padding-top:125%}html.theme--documenter-dark .image.is-3by4,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by4{padding-top:133.3333%}html.theme--documenter-dark .image.is-2by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-2by3{padding-top:150%}html.theme--documenter-dark .image.is-3by5,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-3by5{padding-top:166.6666%}html.theme--documenter-dark .image.is-9by16,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-9by16{padding-top:177.7777%}html.theme--documenter-dark .image.is-1by2,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by2{padding-top:200%}html.theme--documenter-dark .image.is-1by3,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-1by3{padding-top:300%}html.theme--documenter-dark .image.is-16x16,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-16x16{height:16px;width:16px}html.theme--documenter-dark .image.is-24x24,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-24x24{height:24px;width:24px}html.theme--documenter-dark .image.is-32x32,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-32x32{height:32px;width:32px}html.theme--documenter-dark .image.is-48x48,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-48x48{height:48px;width:48px}html.theme--documenter-dark .image.is-64x64,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-64x64{height:64px;width:64px}html.theme--documenter-dark .image.is-96x96,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-96x96{height:96px;width:96px}html.theme--documenter-dark .image.is-128x128,html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img.is-128x128{height:128px;width:128px}html.theme--documenter-dark .notification{background-color:#282f2f;border-radius:.4em;position:relative;padding:1.25rem 2.5rem 1.25rem 1.5rem}html.theme--documenter-dark .notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--documenter-dark .notification strong{color:currentColor}html.theme--documenter-dark .notification code,html.theme--documenter-dark .notification pre{background:#fff}html.theme--documenter-dark .notification pre code{background:transparent}html.theme--documenter-dark .notification>.delete{right:.5rem;position:absolute;top:0.5rem}html.theme--documenter-dark .notification .title,html.theme--documenter-dark .notification .subtitle,html.theme--documenter-dark .notification .content{color:currentColor}html.theme--documenter-dark .notification.is-white{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .notification.is-black{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .notification.is-light{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .notification.is-dark,html.theme--documenter-dark .content kbd.notification{background-color:#282f2f;color:#fff}html.theme--documenter-dark .notification.is-primary,html.theme--documenter-dark .docstring>section>a.notification.docs-sourcelink{background-color:#375a7f;color:#fff}html.theme--documenter-dark .notification.is-primary.is-light,html.theme--documenter-dark .docstring>section>a.notification.is-light.docs-sourcelink{background-color:#f1f5f9;color:#4d7eb2}html.theme--documenter-dark .notification.is-link{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .notification.is-link.is-light{background-color:#edfdf9;color:#15987e}html.theme--documenter-dark .notification.is-info{background-color:#3c5dcd;color:#fff}html.theme--documenter-dark .notification.is-info.is-light{background-color:#eff2fb;color:#3253c3}html.theme--documenter-dark .notification.is-success{background-color:#259a12;color:#fff}html.theme--documenter-dark .notification.is-success.is-light{background-color:#effded;color:#2ec016}html.theme--documenter-dark .notification.is-warning{background-color:#f4c72f;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .notification.is-warning.is-light{background-color:#fefaec;color:#8c6e07}html.theme--documenter-dark .notification.is-danger{background-color:#cb3c33;color:#fff}html.theme--documenter-dark .notification.is-danger.is-light{background-color:#fbefef;color:#c03930}html.theme--documenter-dark .progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:9999px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}html.theme--documenter-dark .progress::-webkit-progress-bar{background-color:#343c3d}html.theme--documenter-dark .progress::-webkit-progress-value{background-color:#dbdee0}html.theme--documenter-dark .progress::-moz-progress-bar{background-color:#dbdee0}html.theme--documenter-dark .progress::-ms-fill{background-color:#dbdee0;border:none}html.theme--documenter-dark .progress.is-white::-webkit-progress-value{background-color:#fff}html.theme--documenter-dark .progress.is-white::-moz-progress-bar{background-color:#fff}html.theme--documenter-dark .progress.is-white::-ms-fill{background-color:#fff}html.theme--documenter-dark .progress.is-white:indeterminate{background-image:linear-gradient(to right, #fff 30%, #343c3d 30%)}html.theme--documenter-dark .progress.is-black::-webkit-progress-value{background-color:#0a0a0a}html.theme--documenter-dark .progress.is-black::-moz-progress-bar{background-color:#0a0a0a}html.theme--documenter-dark .progress.is-black::-ms-fill{background-color:#0a0a0a}html.theme--documenter-dark .progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #343c3d 30%)}html.theme--documenter-dark .progress.is-light::-webkit-progress-value{background-color:#ecf0f1}html.theme--documenter-dark .progress.is-light::-moz-progress-bar{background-color:#ecf0f1}html.theme--documenter-dark .progress.is-light::-ms-fill{background-color:#ecf0f1}html.theme--documenter-dark .progress.is-light:indeterminate{background-image:linear-gradient(to right, #ecf0f1 30%, #343c3d 30%)}html.theme--documenter-dark .progress.is-dark::-webkit-progress-value,html.theme--documenter-dark .content kbd.progress::-webkit-progress-value{background-color:#282f2f}html.theme--documenter-dark .progress.is-dark::-moz-progress-bar,html.theme--documenter-dark .content kbd.progress::-moz-progress-bar{background-color:#282f2f}html.theme--documenter-dark .progress.is-dark::-ms-fill,html.theme--documenter-dark .content kbd.progress::-ms-fill{background-color:#282f2f}html.theme--documenter-dark .progress.is-dark:indeterminate,html.theme--documenter-dark .content kbd.progress:indeterminate{background-image:linear-gradient(to right, #282f2f 30%, #343c3d 30%)}html.theme--documenter-dark .progress.is-primary::-webkit-progress-value,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink::-webkit-progress-value{background-color:#375a7f}html.theme--documenter-dark .progress.is-primary::-moz-progress-bar,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink::-moz-progress-bar{background-color:#375a7f}html.theme--documenter-dark .progress.is-primary::-ms-fill,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink::-ms-fill{background-color:#375a7f}html.theme--documenter-dark .progress.is-primary:indeterminate,html.theme--documenter-dark .docstring>section>a.progress.docs-sourcelink:indeterminate{background-image:linear-gradient(to right, #375a7f 30%, #343c3d 30%)}html.theme--documenter-dark .progress.is-link::-webkit-progress-value{background-color:#1abc9c}html.theme--documenter-dark .progress.is-link::-moz-progress-bar{background-color:#1abc9c}html.theme--documenter-dark .progress.is-link::-ms-fill{background-color:#1abc9c}html.theme--documenter-dark .progress.is-link:indeterminate{background-image:linear-gradient(to right, #1abc9c 30%, #343c3d 30%)}html.theme--documenter-dark .progress.is-info::-webkit-progress-value{background-color:#3c5dcd}html.theme--documenter-dark .progress.is-info::-moz-progress-bar{background-color:#3c5dcd}html.theme--documenter-dark .progress.is-info::-ms-fill{background-color:#3c5dcd}html.theme--documenter-dark .progress.is-info:indeterminate{background-image:linear-gradient(to right, #3c5dcd 30%, #343c3d 30%)}html.theme--documenter-dark .progress.is-success::-webkit-progress-value{background-color:#259a12}html.theme--documenter-dark .progress.is-success::-moz-progress-bar{background-color:#259a12}html.theme--documenter-dark .progress.is-success::-ms-fill{background-color:#259a12}html.theme--documenter-dark .progress.is-success:indeterminate{background-image:linear-gradient(to right, #259a12 30%, #343c3d 30%)}html.theme--documenter-dark .progress.is-warning::-webkit-progress-value{background-color:#f4c72f}html.theme--documenter-dark .progress.is-warning::-moz-progress-bar{background-color:#f4c72f}html.theme--documenter-dark .progress.is-warning::-ms-fill{background-color:#f4c72f}html.theme--documenter-dark .progress.is-warning:indeterminate{background-image:linear-gradient(to right, #f4c72f 30%, #343c3d 30%)}html.theme--documenter-dark .progress.is-danger::-webkit-progress-value{background-color:#cb3c33}html.theme--documenter-dark .progress.is-danger::-moz-progress-bar{background-color:#cb3c33}html.theme--documenter-dark .progress.is-danger::-ms-fill{background-color:#cb3c33}html.theme--documenter-dark .progress.is-danger:indeterminate{background-image:linear-gradient(to right, #cb3c33 30%, #343c3d 30%)}html.theme--documenter-dark .progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#343c3d;background-image:linear-gradient(to right, #fff 30%, #343c3d 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}html.theme--documenter-dark .progress:indeterminate::-webkit-progress-bar{background-color:transparent}html.theme--documenter-dark .progress:indeterminate::-moz-progress-bar{background-color:transparent}html.theme--documenter-dark .progress:indeterminate::-ms-fill{animation-name:none}html.theme--documenter-dark .progress.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.progress{height:.75rem}html.theme--documenter-dark .progress.is-medium{height:1.25rem}html.theme--documenter-dark .progress.is-large{height:1.5rem}@keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}html.theme--documenter-dark .table{background-color:#343c3d;color:#fff}html.theme--documenter-dark .table td,html.theme--documenter-dark .table th{border:1px solid #5e6d6f;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}html.theme--documenter-dark .table td.is-white,html.theme--documenter-dark .table th.is-white{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--documenter-dark .table td.is-black,html.theme--documenter-dark .table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--documenter-dark .table td.is-light,html.theme--documenter-dark .table th.is-light{background-color:#ecf0f1;border-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .table td.is-dark,html.theme--documenter-dark .table th.is-dark{background-color:#282f2f;border-color:#282f2f;color:#fff}html.theme--documenter-dark .table td.is-primary,html.theme--documenter-dark .table th.is-primary{background-color:#375a7f;border-color:#375a7f;color:#fff}html.theme--documenter-dark .table td.is-link,html.theme--documenter-dark .table th.is-link{background-color:#1abc9c;border-color:#1abc9c;color:#fff}html.theme--documenter-dark .table td.is-info,html.theme--documenter-dark .table th.is-info{background-color:#3c5dcd;border-color:#3c5dcd;color:#fff}html.theme--documenter-dark .table td.is-success,html.theme--documenter-dark .table th.is-success{background-color:#259a12;border-color:#259a12;color:#fff}html.theme--documenter-dark .table td.is-warning,html.theme--documenter-dark .table th.is-warning{background-color:#f4c72f;border-color:#f4c72f;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .table td.is-danger,html.theme--documenter-dark .table th.is-danger{background-color:#cb3c33;border-color:#cb3c33;color:#fff}html.theme--documenter-dark .table td.is-narrow,html.theme--documenter-dark .table th.is-narrow{white-space:nowrap;width:1%}html.theme--documenter-dark .table td.is-selected,html.theme--documenter-dark .table th.is-selected{background-color:#375a7f;color:#fff}html.theme--documenter-dark .table td.is-selected a,html.theme--documenter-dark .table td.is-selected strong,html.theme--documenter-dark .table th.is-selected a,html.theme--documenter-dark .table th.is-selected strong{color:currentColor}html.theme--documenter-dark .table td.is-vcentered,html.theme--documenter-dark .table th.is-vcentered{vertical-align:middle}html.theme--documenter-dark .table th{color:#f2f2f2}html.theme--documenter-dark .table th:not([align]){text-align:left}html.theme--documenter-dark .table tr.is-selected{background-color:#375a7f;color:#fff}html.theme--documenter-dark .table tr.is-selected a,html.theme--documenter-dark .table tr.is-selected strong{color:currentColor}html.theme--documenter-dark .table tr.is-selected td,html.theme--documenter-dark .table tr.is-selected th{border-color:#fff;color:currentColor}html.theme--documenter-dark .table thead{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .table thead td,html.theme--documenter-dark .table thead th{border-width:0 0 2px;color:#f2f2f2}html.theme--documenter-dark .table tfoot{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .table tfoot td,html.theme--documenter-dark .table tfoot th{border-width:2px 0 0;color:#f2f2f2}html.theme--documenter-dark .table tbody{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .table tbody tr:last-child td,html.theme--documenter-dark .table tbody tr:last-child th{border-bottom-width:0}html.theme--documenter-dark .table.is-bordered td,html.theme--documenter-dark .table.is-bordered th{border-width:1px}html.theme--documenter-dark .table.is-bordered tr:last-child td,html.theme--documenter-dark .table.is-bordered tr:last-child th{border-bottom-width:1px}html.theme--documenter-dark .table.is-fullwidth{width:100%}html.theme--documenter-dark .table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#282f2f}html.theme--documenter-dark .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#282f2f}html.theme--documenter-dark .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:#2d3435}html.theme--documenter-dark .table.is-narrow td,html.theme--documenter-dark .table.is-narrow th{padding:0.25em 0.5em}html.theme--documenter-dark .table.is-striped tbody tr:not(.is-selected):nth-child(even){background-color:#282f2f}html.theme--documenter-dark .table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}html.theme--documenter-dark .tags{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--documenter-dark .tags .tag,html.theme--documenter-dark .tags .content kbd,html.theme--documenter-dark .content .tags kbd,html.theme--documenter-dark .tags .docstring>section>a.docs-sourcelink{margin-bottom:0.5rem}html.theme--documenter-dark .tags .tag:not(:last-child),html.theme--documenter-dark .tags .content kbd:not(:last-child),html.theme--documenter-dark .content .tags kbd:not(:last-child),html.theme--documenter-dark .tags .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:.5rem}html.theme--documenter-dark .tags:last-child{margin-bottom:-0.5rem}html.theme--documenter-dark .tags:not(:last-child){margin-bottom:1rem}html.theme--documenter-dark .tags.are-medium .tag:not(.is-normal):not(.is-large),html.theme--documenter-dark .tags.are-medium .content kbd:not(.is-normal):not(.is-large),html.theme--documenter-dark .content .tags.are-medium kbd:not(.is-normal):not(.is-large),html.theme--documenter-dark .tags.are-medium .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-large){font-size:1rem}html.theme--documenter-dark .tags.are-large .tag:not(.is-normal):not(.is-medium),html.theme--documenter-dark .tags.are-large .content kbd:not(.is-normal):not(.is-medium),html.theme--documenter-dark .content .tags.are-large kbd:not(.is-normal):not(.is-medium),html.theme--documenter-dark .tags.are-large .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-medium){font-size:1.25rem}html.theme--documenter-dark .tags.is-centered{justify-content:center}html.theme--documenter-dark .tags.is-centered .tag,html.theme--documenter-dark .tags.is-centered .content kbd,html.theme--documenter-dark .content .tags.is-centered kbd,html.theme--documenter-dark .tags.is-centered .docstring>section>a.docs-sourcelink{margin-right:0.25rem;margin-left:0.25rem}html.theme--documenter-dark .tags.is-right{justify-content:flex-end}html.theme--documenter-dark .tags.is-right .tag:not(:first-child),html.theme--documenter-dark .tags.is-right .content kbd:not(:first-child),html.theme--documenter-dark .content .tags.is-right kbd:not(:first-child),html.theme--documenter-dark .tags.is-right .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0.5rem}html.theme--documenter-dark .tags.is-right .tag:not(:last-child),html.theme--documenter-dark .tags.is-right .content kbd:not(:last-child),html.theme--documenter-dark .content .tags.is-right kbd:not(:last-child),html.theme--documenter-dark .tags.is-right .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0}html.theme--documenter-dark .tags.has-addons .tag,html.theme--documenter-dark .tags.has-addons .content kbd,html.theme--documenter-dark .content .tags.has-addons kbd,html.theme--documenter-dark .tags.has-addons .docstring>section>a.docs-sourcelink{margin-right:0}html.theme--documenter-dark .tags.has-addons .tag:not(:first-child),html.theme--documenter-dark .tags.has-addons .content kbd:not(:first-child),html.theme--documenter-dark .content .tags.has-addons kbd:not(:first-child),html.theme--documenter-dark .tags.has-addons .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}html.theme--documenter-dark .tags.has-addons .tag:not(:last-child),html.theme--documenter-dark .tags.has-addons .content kbd:not(:last-child),html.theme--documenter-dark .content .tags.has-addons kbd:not(:last-child),html.theme--documenter-dark .tags.has-addons .docstring>section>a.docs-sourcelink:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}html.theme--documenter-dark .tag:not(body),html.theme--documenter-dark .content kbd:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#282f2f;border-radius:.4em;color:#fff;display:inline-flex;font-size:.75rem;height:2em;justify-content:center;line-height:1.5;padding-left:0.75em;padding-right:0.75em;white-space:nowrap}html.theme--documenter-dark .tag:not(body) .delete,html.theme--documenter-dark .content kbd:not(body) .delete,html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .delete{margin-left:.25rem;margin-right:-.375rem}html.theme--documenter-dark .tag.is-white:not(body),html.theme--documenter-dark .content kbd.is-white:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .tag.is-black:not(body),html.theme--documenter-dark .content kbd.is-black:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-black:not(body){background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .tag.is-light:not(body),html.theme--documenter-dark .content kbd.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .tag.is-dark:not(body),html.theme--documenter-dark .content kbd:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-dark:not(body),html.theme--documenter-dark .content .docstring>section>kbd:not(body){background-color:#282f2f;color:#fff}html.theme--documenter-dark .tag.is-primary:not(body),html.theme--documenter-dark .content kbd.is-primary:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body){background-color:#375a7f;color:#fff}html.theme--documenter-dark .tag.is-primary.is-light:not(body),html.theme--documenter-dark .content kbd.is-primary.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#f1f5f9;color:#4d7eb2}html.theme--documenter-dark .tag.is-link:not(body),html.theme--documenter-dark .content kbd.is-link:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-link:not(body){background-color:#1abc9c;color:#fff}html.theme--documenter-dark .tag.is-link.is-light:not(body),html.theme--documenter-dark .content kbd.is-link.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-link.is-light:not(body){background-color:#edfdf9;color:#15987e}html.theme--documenter-dark .tag.is-info:not(body),html.theme--documenter-dark .content kbd.is-info:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-info:not(body){background-color:#3c5dcd;color:#fff}html.theme--documenter-dark .tag.is-info.is-light:not(body),html.theme--documenter-dark .content kbd.is-info.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-info.is-light:not(body){background-color:#eff2fb;color:#3253c3}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:#259a12;color:#fff}html.theme--documenter-dark .tag.is-success.is-light:not(body),html.theme--documenter-dark .content kbd.is-success.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-success.is-light:not(body){background-color:#effded;color:#2ec016}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:#f4c72f;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .tag.is-warning.is-light:not(body),html.theme--documenter-dark .content kbd.is-warning.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-warning.is-light:not(body){background-color:#fefaec;color:#8c6e07}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:#cb3c33;color:#fff}html.theme--documenter-dark .tag.is-danger.is-light:not(body),html.theme--documenter-dark .content kbd.is-danger.is-light:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-danger.is-light:not(body){background-color:#fbefef;color:#c03930}html.theme--documenter-dark .tag.is-normal:not(body),html.theme--documenter-dark .content kbd.is-normal:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.75rem}html.theme--documenter-dark .tag.is-medium:not(body),html.theme--documenter-dark .content kbd.is-medium:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-medium:not(body){font-size:1rem}html.theme--documenter-dark .tag.is-large:not(body),html.theme--documenter-dark .content kbd.is-large:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-large:not(body){font-size:1.25rem}html.theme--documenter-dark .tag:not(body) .icon:first-child:not(:last-child),html.theme--documenter-dark .content kbd:not(body) .icon:first-child:not(:last-child),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:not(:last-child){margin-left:-.375em;margin-right:.1875em}html.theme--documenter-dark .tag:not(body) .icon:last-child:not(:first-child),html.theme--documenter-dark .content kbd:not(body) .icon:last-child:not(:first-child),html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .icon:last-child:not(:first-child){margin-left:.1875em;margin-right:-.375em}html.theme--documenter-dark .tag:not(body) .icon:first-child:last-child,html.theme--documenter-dark .content kbd:not(body) .icon:first-child:last-child,html.theme--documenter-dark .docstring>section>a.docs-sourcelink:not(body) .icon:first-child:last-child{margin-left:-.375em;margin-right:-.375em}html.theme--documenter-dark .tag.is-delete:not(body),html.theme--documenter-dark .content kbd.is-delete:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body){margin-left:1px;padding:0;position:relative;width:2em}html.theme--documenter-dark .tag.is-delete:not(body)::before,html.theme--documenter-dark .content kbd.is-delete:not(body)::before,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::before,html.theme--documenter-dark .tag.is-delete:not(body)::after,html.theme--documenter-dark .content kbd.is-delete:not(body)::after,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::after{background-color:currentColor;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}html.theme--documenter-dark .tag.is-delete:not(body)::before,html.theme--documenter-dark .content kbd.is-delete:not(body)::before,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::before{height:1px;width:50%}html.theme--documenter-dark .tag.is-delete:not(body)::after,html.theme--documenter-dark .content kbd.is-delete:not(body)::after,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body)::after{height:50%;width:1px}html.theme--documenter-dark .tag.is-delete:not(body):hover,html.theme--documenter-dark .content kbd.is-delete:not(body):hover,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body):hover,html.theme--documenter-dark .tag.is-delete:not(body):focus,html.theme--documenter-dark .content kbd.is-delete:not(body):focus,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body):focus{background-color:#1d2122}html.theme--documenter-dark .tag.is-delete:not(body):active,html.theme--documenter-dark .content kbd.is-delete:not(body):active,html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-delete:not(body):active{background-color:#111414}html.theme--documenter-dark .tag.is-rounded:not(body),html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:not(body),html.theme--documenter-dark .content kbd.is-rounded:not(body),html.theme--documenter-dark #documenter .docs-sidebar .content form.docs-search>input:not(body),html.theme--documenter-dark .docstring>section>a.docs-sourcelink.is-rounded:not(body){border-radius:9999px}html.theme--documenter-dark a.tag:hover,html.theme--documenter-dark .docstring>section>a.docs-sourcelink:hover{text-decoration:underline}html.theme--documenter-dark .title,html.theme--documenter-dark .subtitle{word-break:break-word}html.theme--documenter-dark .title em,html.theme--documenter-dark .title span,html.theme--documenter-dark .subtitle em,html.theme--documenter-dark .subtitle span{font-weight:inherit}html.theme--documenter-dark .title sub,html.theme--documenter-dark .subtitle sub{font-size:.75em}html.theme--documenter-dark .title sup,html.theme--documenter-dark .subtitle sup{font-size:.75em}html.theme--documenter-dark .title .tag,html.theme--documenter-dark .title .content kbd,html.theme--documenter-dark .content .title kbd,html.theme--documenter-dark .title .docstring>section>a.docs-sourcelink,html.theme--documenter-dark .subtitle .tag,html.theme--documenter-dark .subtitle .content kbd,html.theme--documenter-dark .content .subtitle kbd,html.theme--documenter-dark .subtitle .docstring>section>a.docs-sourcelink{vertical-align:middle}html.theme--documenter-dark .title{color:#fff;font-size:2rem;font-weight:500;line-height:1.125}html.theme--documenter-dark .title strong{color:inherit;font-weight:inherit}html.theme--documenter-dark .title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}html.theme--documenter-dark .title.is-1{font-size:3rem}html.theme--documenter-dark .title.is-2{font-size:2.5rem}html.theme--documenter-dark .title.is-3{font-size:2rem}html.theme--documenter-dark .title.is-4{font-size:1.5rem}html.theme--documenter-dark .title.is-5{font-size:1.25rem}html.theme--documenter-dark .title.is-6{font-size:1rem}html.theme--documenter-dark .title.is-7{font-size:.75rem}html.theme--documenter-dark .subtitle{color:#8c9b9d;font-size:1.25rem;font-weight:400;line-height:1.25}html.theme--documenter-dark .subtitle strong{color:#8c9b9d;font-weight:600}html.theme--documenter-dark .subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}html.theme--documenter-dark .subtitle.is-1{font-size:3rem}html.theme--documenter-dark .subtitle.is-2{font-size:2.5rem}html.theme--documenter-dark .subtitle.is-3{font-size:2rem}html.theme--documenter-dark .subtitle.is-4{font-size:1.5rem}html.theme--documenter-dark .subtitle.is-5{font-size:1.25rem}html.theme--documenter-dark .subtitle.is-6{font-size:1rem}html.theme--documenter-dark .subtitle.is-7{font-size:.75rem}html.theme--documenter-dark .heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}html.theme--documenter-dark .number{align-items:center;background-color:#282f2f;border-radius:9999px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:0.25rem 0.5rem;text-align:center;vertical-align:top}html.theme--documenter-dark .select select,html.theme--documenter-dark .textarea,html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{background-color:#1f2424;border-color:#5e6d6f;border-radius:.4em;color:#dbdee0}html.theme--documenter-dark .select select::-moz-placeholder,html.theme--documenter-dark .textarea::-moz-placeholder,html.theme--documenter-dark .input::-moz-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:#868c98}html.theme--documenter-dark .select select::-webkit-input-placeholder,html.theme--documenter-dark .textarea::-webkit-input-placeholder,html.theme--documenter-dark .input::-webkit-input-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:#868c98}html.theme--documenter-dark .select select:-moz-placeholder,html.theme--documenter-dark .textarea:-moz-placeholder,html.theme--documenter-dark .input:-moz-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:#868c98}html.theme--documenter-dark .select select:-ms-input-placeholder,html.theme--documenter-dark .textarea:-ms-input-placeholder,html.theme--documenter-dark .input:-ms-input-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:#868c98}html.theme--documenter-dark .select select:hover,html.theme--documenter-dark .textarea:hover,html.theme--documenter-dark .input:hover,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:hover,html.theme--documenter-dark .select select.is-hovered,html.theme--documenter-dark .is-hovered.textarea,html.theme--documenter-dark .is-hovered.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-hovered{border-color:#8c9b9d}html.theme--documenter-dark .select select:focus,html.theme--documenter-dark .textarea:focus,html.theme--documenter-dark .input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:focus,html.theme--documenter-dark .select select.is-focused,html.theme--documenter-dark .is-focused.textarea,html.theme--documenter-dark .is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .select select:active,html.theme--documenter-dark .textarea:active,html.theme--documenter-dark .input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:active,html.theme--documenter-dark .select select.is-active,html.theme--documenter-dark .is-active.textarea,html.theme--documenter-dark .is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{border-color:#1abc9c;box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .select select[disabled],html.theme--documenter-dark .textarea[disabled],html.theme--documenter-dark .input[disabled],html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled],fieldset[disabled] html.theme--documenter-dark .select select,fieldset[disabled] html.theme--documenter-dark .textarea,fieldset[disabled] html.theme--documenter-dark .input,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{background-color:#8c9b9d;border-color:#282f2f;box-shadow:none;color:#fff}html.theme--documenter-dark .select select[disabled]::-moz-placeholder,html.theme--documenter-dark .textarea[disabled]::-moz-placeholder,html.theme--documenter-dark .input[disabled]::-moz-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled]::-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .select select::-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .textarea::-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .input::-moz-placeholder,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:rgba(255,255,255,0.3)}html.theme--documenter-dark .select select[disabled]::-webkit-input-placeholder,html.theme--documenter-dark .textarea[disabled]::-webkit-input-placeholder,html.theme--documenter-dark .input[disabled]::-webkit-input-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled]::-webkit-input-placeholder,fieldset[disabled] html.theme--documenter-dark .select select::-webkit-input-placeholder,fieldset[disabled] html.theme--documenter-dark .textarea::-webkit-input-placeholder,fieldset[disabled] html.theme--documenter-dark .input::-webkit-input-placeholder,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:rgba(255,255,255,0.3)}html.theme--documenter-dark .select select[disabled]:-moz-placeholder,html.theme--documenter-dark .textarea[disabled]:-moz-placeholder,html.theme--documenter-dark .input[disabled]:-moz-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled]:-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .select select:-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .textarea:-moz-placeholder,fieldset[disabled] html.theme--documenter-dark .input:-moz-placeholder,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:rgba(255,255,255,0.3)}html.theme--documenter-dark .select select[disabled]:-ms-input-placeholder,html.theme--documenter-dark .textarea[disabled]:-ms-input-placeholder,html.theme--documenter-dark .input[disabled]:-ms-input-placeholder,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[disabled]:-ms-input-placeholder,fieldset[disabled] html.theme--documenter-dark .select select:-ms-input-placeholder,fieldset[disabled] html.theme--documenter-dark .textarea:-ms-input-placeholder,fieldset[disabled] html.theme--documenter-dark .input:-ms-input-placeholder,fieldset[disabled] html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:rgba(255,255,255,0.3)}html.theme--documenter-dark .textarea,html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{box-shadow:inset 0 0.0625em 0.125em rgba(10,10,10,0.05);max-width:100%;width:100%}html.theme--documenter-dark .textarea[readonly],html.theme--documenter-dark .input[readonly],html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input[readonly]{box-shadow:none}html.theme--documenter-dark .is-white.textarea,html.theme--documenter-dark .is-white.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-white{border-color:#fff}html.theme--documenter-dark .is-white.textarea:focus,html.theme--documenter-dark .is-white.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-white:focus,html.theme--documenter-dark .is-white.is-focused.textarea,html.theme--documenter-dark .is-white.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-white.textarea:active,html.theme--documenter-dark .is-white.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-white:active,html.theme--documenter-dark .is-white.is-active.textarea,html.theme--documenter-dark .is-white.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--documenter-dark .is-black.textarea,html.theme--documenter-dark .is-black.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-black{border-color:#0a0a0a}html.theme--documenter-dark .is-black.textarea:focus,html.theme--documenter-dark .is-black.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-black:focus,html.theme--documenter-dark .is-black.is-focused.textarea,html.theme--documenter-dark .is-black.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-black.textarea:active,html.theme--documenter-dark .is-black.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-black:active,html.theme--documenter-dark .is-black.is-active.textarea,html.theme--documenter-dark .is-black.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--documenter-dark .is-light.textarea,html.theme--documenter-dark .is-light.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-light{border-color:#ecf0f1}html.theme--documenter-dark .is-light.textarea:focus,html.theme--documenter-dark .is-light.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-light:focus,html.theme--documenter-dark .is-light.is-focused.textarea,html.theme--documenter-dark .is-light.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-light.textarea:active,html.theme--documenter-dark .is-light.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-light:active,html.theme--documenter-dark .is-light.is-active.textarea,html.theme--documenter-dark .is-light.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(236,240,241,0.25)}html.theme--documenter-dark .is-dark.textarea,html.theme--documenter-dark .content kbd.textarea,html.theme--documenter-dark .is-dark.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-dark,html.theme--documenter-dark .content kbd.input{border-color:#282f2f}html.theme--documenter-dark .is-dark.textarea:focus,html.theme--documenter-dark .content kbd.textarea:focus,html.theme--documenter-dark .is-dark.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-dark:focus,html.theme--documenter-dark .content kbd.input:focus,html.theme--documenter-dark .is-dark.is-focused.textarea,html.theme--documenter-dark .content kbd.is-focused.textarea,html.theme--documenter-dark .is-dark.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .content kbd.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar .content form.docs-search>input.is-focused,html.theme--documenter-dark .is-dark.textarea:active,html.theme--documenter-dark .content kbd.textarea:active,html.theme--documenter-dark .is-dark.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-dark:active,html.theme--documenter-dark .content kbd.input:active,html.theme--documenter-dark .is-dark.is-active.textarea,html.theme--documenter-dark .content kbd.is-active.textarea,html.theme--documenter-dark .is-dark.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--documenter-dark .content kbd.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar .content form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(40,47,47,0.25)}html.theme--documenter-dark .is-primary.textarea,html.theme--documenter-dark .docstring>section>a.textarea.docs-sourcelink,html.theme--documenter-dark .is-primary.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-primary,html.theme--documenter-dark .docstring>section>a.input.docs-sourcelink{border-color:#375a7f}html.theme--documenter-dark .is-primary.textarea:focus,html.theme--documenter-dark .docstring>section>a.textarea.docs-sourcelink:focus,html.theme--documenter-dark .is-primary.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-primary:focus,html.theme--documenter-dark .docstring>section>a.input.docs-sourcelink:focus,html.theme--documenter-dark .is-primary.is-focused.textarea,html.theme--documenter-dark .docstring>section>a.is-focused.textarea.docs-sourcelink,html.theme--documenter-dark .is-primary.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .docstring>section>a.is-focused.input.docs-sourcelink,html.theme--documenter-dark .is-primary.textarea:active,html.theme--documenter-dark .docstring>section>a.textarea.docs-sourcelink:active,html.theme--documenter-dark .is-primary.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-primary:active,html.theme--documenter-dark .docstring>section>a.input.docs-sourcelink:active,html.theme--documenter-dark .is-primary.is-active.textarea,html.theme--documenter-dark .docstring>section>a.is-active.textarea.docs-sourcelink,html.theme--documenter-dark .is-primary.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active,html.theme--documenter-dark .docstring>section>a.is-active.input.docs-sourcelink{box-shadow:0 0 0 0.125em rgba(55,90,127,0.25)}html.theme--documenter-dark .is-link.textarea,html.theme--documenter-dark .is-link.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-link{border-color:#1abc9c}html.theme--documenter-dark .is-link.textarea:focus,html.theme--documenter-dark .is-link.input:focus,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-link:focus,html.theme--documenter-dark .is-link.is-focused.textarea,html.theme--documenter-dark .is-link.is-focused.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-focused,html.theme--documenter-dark .is-link.textarea:active,html.theme--documenter-dark .is-link.input:active,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-link:active,html.theme--documenter-dark .is-link.is-active.textarea,html.theme--documenter-dark .is-link.is-active.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .is-info.textarea,html.theme--documenter-dark .is-info.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-info{border-color:#3c5dcd}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(60,93,205,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:#259a12}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(37,154,18,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:#f4c72f}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(244,199,47,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:#cb3c33}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(203,60,51,0.25)}html.theme--documenter-dark .is-small.textarea,html.theme--documenter-dark .is-small.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{border-radius:3px;font-size:.75rem}html.theme--documenter-dark .is-medium.textarea,html.theme--documenter-dark .is-medium.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-medium{font-size:1.25rem}html.theme--documenter-dark .is-large.textarea,html.theme--documenter-dark .is-large.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-large{font-size:1.5rem}html.theme--documenter-dark .is-fullwidth.textarea,html.theme--documenter-dark .is-fullwidth.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-fullwidth{display:block;width:100%}html.theme--documenter-dark .is-inline.textarea,html.theme--documenter-dark .is-inline.input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-inline{display:inline;width:auto}html.theme--documenter-dark .input.is-rounded,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{border-radius:9999px;padding-left:calc(calc(0.75em - 1px) + 0.375em);padding-right:calc(calc(0.75em - 1px) + 0.375em)}html.theme--documenter-dark .input.is-static,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-static{background-color:transparent;border-color:transparent;box-shadow:none;padding-left:0;padding-right:0}html.theme--documenter-dark .textarea{display:block;max-width:100%;min-width:100%;padding:calc(0.75em - 1px);resize:vertical}html.theme--documenter-dark .textarea:not([rows]){max-height:40em;min-height:8em}html.theme--documenter-dark .textarea[rows]{height:initial}html.theme--documenter-dark .textarea.has-fixed-size{resize:none}html.theme--documenter-dark .radio,html.theme--documenter-dark .checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}html.theme--documenter-dark .radio input,html.theme--documenter-dark .checkbox input{cursor:pointer}html.theme--documenter-dark .radio:hover,html.theme--documenter-dark .checkbox:hover{color:#8c9b9d}html.theme--documenter-dark .radio[disabled],html.theme--documenter-dark .checkbox[disabled],fieldset[disabled] html.theme--documenter-dark .radio,fieldset[disabled] html.theme--documenter-dark .checkbox,html.theme--documenter-dark .radio input[disabled],html.theme--documenter-dark .checkbox input[disabled]{color:#fff;cursor:not-allowed}html.theme--documenter-dark .radio+.radio{margin-left:.5em}html.theme--documenter-dark .select{display:inline-block;max-width:100%;position:relative;vertical-align:top}html.theme--documenter-dark .select:not(.is-multiple){height:2.5em}html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading)::after{border-color:#1abc9c;right:1.125em;z-index:4}html.theme--documenter-dark .select.is-rounded select,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.select select{border-radius:9999px;padding-left:1em}html.theme--documenter-dark .select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}html.theme--documenter-dark .select select::-ms-expand{display:none}html.theme--documenter-dark .select select[disabled]:hover,fieldset[disabled] html.theme--documenter-dark .select select:hover{border-color:#282f2f}html.theme--documenter-dark .select select:not([multiple]){padding-right:2.5em}html.theme--documenter-dark .select select[multiple]{height:auto;padding:0}html.theme--documenter-dark .select select[multiple] option{padding:0.5em 1em}html.theme--documenter-dark .select:not(.is-multiple):not(.is-loading):hover::after{border-color:#8c9b9d}html.theme--documenter-dark .select.is-white:not(:hover)::after{border-color:#fff}html.theme--documenter-dark .select.is-white select{border-color:#fff}html.theme--documenter-dark .select.is-white select:hover,html.theme--documenter-dark .select.is-white select.is-hovered{border-color:#f2f2f2}html.theme--documenter-dark .select.is-white select:focus,html.theme--documenter-dark .select.is-white select.is-focused,html.theme--documenter-dark .select.is-white select:active,html.theme--documenter-dark .select.is-white select.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}html.theme--documenter-dark .select.is-black:not(:hover)::after{border-color:#0a0a0a}html.theme--documenter-dark .select.is-black select{border-color:#0a0a0a}html.theme--documenter-dark .select.is-black select:hover,html.theme--documenter-dark .select.is-black select.is-hovered{border-color:#000}html.theme--documenter-dark .select.is-black select:focus,html.theme--documenter-dark .select.is-black select.is-focused,html.theme--documenter-dark .select.is-black select:active,html.theme--documenter-dark .select.is-black select.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}html.theme--documenter-dark .select.is-light:not(:hover)::after{border-color:#ecf0f1}html.theme--documenter-dark .select.is-light select{border-color:#ecf0f1}html.theme--documenter-dark .select.is-light select:hover,html.theme--documenter-dark .select.is-light select.is-hovered{border-color:#dde4e6}html.theme--documenter-dark .select.is-light select:focus,html.theme--documenter-dark .select.is-light select.is-focused,html.theme--documenter-dark .select.is-light select:active,html.theme--documenter-dark .select.is-light select.is-active{box-shadow:0 0 0 0.125em rgba(236,240,241,0.25)}html.theme--documenter-dark .select.is-dark:not(:hover)::after,html.theme--documenter-dark .content kbd.select:not(:hover)::after{border-color:#282f2f}html.theme--documenter-dark .select.is-dark select,html.theme--documenter-dark .content kbd.select select{border-color:#282f2f}html.theme--documenter-dark .select.is-dark select:hover,html.theme--documenter-dark .content kbd.select select:hover,html.theme--documenter-dark .select.is-dark select.is-hovered,html.theme--documenter-dark .content kbd.select select.is-hovered{border-color:#1d2122}html.theme--documenter-dark .select.is-dark select:focus,html.theme--documenter-dark .content kbd.select select:focus,html.theme--documenter-dark .select.is-dark select.is-focused,html.theme--documenter-dark .content kbd.select select.is-focused,html.theme--documenter-dark .select.is-dark select:active,html.theme--documenter-dark .content kbd.select select:active,html.theme--documenter-dark .select.is-dark select.is-active,html.theme--documenter-dark .content kbd.select select.is-active{box-shadow:0 0 0 0.125em rgba(40,47,47,0.25)}html.theme--documenter-dark .select.is-primary:not(:hover)::after,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink:not(:hover)::after{border-color:#375a7f}html.theme--documenter-dark .select.is-primary select,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select{border-color:#375a7f}html.theme--documenter-dark .select.is-primary select:hover,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select:hover,html.theme--documenter-dark .select.is-primary select.is-hovered,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select.is-hovered{border-color:#2f4d6d}html.theme--documenter-dark .select.is-primary select:focus,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select:focus,html.theme--documenter-dark .select.is-primary select.is-focused,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select.is-focused,html.theme--documenter-dark .select.is-primary select:active,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select:active,html.theme--documenter-dark .select.is-primary select.is-active,html.theme--documenter-dark .docstring>section>a.select.docs-sourcelink select.is-active{box-shadow:0 0 0 0.125em rgba(55,90,127,0.25)}html.theme--documenter-dark .select.is-link:not(:hover)::after{border-color:#1abc9c}html.theme--documenter-dark .select.is-link select{border-color:#1abc9c}html.theme--documenter-dark .select.is-link select:hover,html.theme--documenter-dark .select.is-link select.is-hovered{border-color:#17a689}html.theme--documenter-dark .select.is-link select:focus,html.theme--documenter-dark .select.is-link select.is-focused,html.theme--documenter-dark .select.is-link select:active,html.theme--documenter-dark .select.is-link select.is-active{box-shadow:0 0 0 0.125em rgba(26,188,156,0.25)}html.theme--documenter-dark .select.is-info:not(:hover)::after{border-color:#3c5dcd}html.theme--documenter-dark .select.is-info select{border-color:#3c5dcd}html.theme--documenter-dark .select.is-info select:hover,html.theme--documenter-dark .select.is-info select.is-hovered{border-color:#3151bf}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(60,93,205,0.25)}html.theme--documenter-dark .select.is-success:not(:hover)::after{border-color:#259a12}html.theme--documenter-dark .select.is-success select{border-color:#259a12}html.theme--documenter-dark .select.is-success select:hover,html.theme--documenter-dark .select.is-success select.is-hovered{border-color:#20830f}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(37,154,18,0.25)}html.theme--documenter-dark .select.is-warning:not(:hover)::after{border-color:#f4c72f}html.theme--documenter-dark .select.is-warning select{border-color:#f4c72f}html.theme--documenter-dark .select.is-warning select:hover,html.theme--documenter-dark .select.is-warning select.is-hovered{border-color:#f3c017}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(244,199,47,0.25)}html.theme--documenter-dark .select.is-danger:not(:hover)::after{border-color:#cb3c33}html.theme--documenter-dark .select.is-danger select{border-color:#cb3c33}html.theme--documenter-dark .select.is-danger select:hover,html.theme--documenter-dark .select.is-danger select.is-hovered{border-color:#b7362e}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(203,60,51,0.25)}html.theme--documenter-dark .select.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.select{border-radius:3px;font-size:.75rem}html.theme--documenter-dark .select.is-medium{font-size:1.25rem}html.theme--documenter-dark .select.is-large{font-size:1.5rem}html.theme--documenter-dark .select.is-disabled::after{border-color:#fff !important;opacity:0.5}html.theme--documenter-dark .select.is-fullwidth{width:100%}html.theme--documenter-dark .select.is-fullwidth select{width:100%}html.theme--documenter-dark .select.is-loading::after{margin-top:0;position:absolute;right:.625em;top:0.625em;transform:none}html.theme--documenter-dark .select.is-loading.is-small:after,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}html.theme--documenter-dark .select.is-loading.is-medium:after{font-size:1.25rem}html.theme--documenter-dark .select.is-loading.is-large:after{font-size:1.5rem}html.theme--documenter-dark .file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}html.theme--documenter-dark .file.is-white .file-cta{background-color:#fff;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .file.is-white:hover .file-cta,html.theme--documenter-dark .file.is-white.is-hovered .file-cta{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .file.is-white:focus .file-cta,html.theme--documenter-dark .file.is-white.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(255,255,255,0.25);color:#0a0a0a}html.theme--documenter-dark .file.is-white:active .file-cta,html.theme--documenter-dark .file.is-white.is-active .file-cta{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}html.theme--documenter-dark .file.is-black .file-cta{background-color:#0a0a0a;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-black:hover .file-cta,html.theme--documenter-dark .file.is-black.is-hovered .file-cta{background-color:#040404;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-black:focus .file-cta,html.theme--documenter-dark .file.is-black.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(10,10,10,0.25);color:#fff}html.theme--documenter-dark .file.is-black:active .file-cta,html.theme--documenter-dark .file.is-black.is-active .file-cta{background-color:#000;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-light .file-cta{background-color:#ecf0f1;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .file.is-light:hover .file-cta,html.theme--documenter-dark .file.is-light.is-hovered .file-cta{background-color:#e5eaec;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .file.is-light:focus .file-cta,html.theme--documenter-dark .file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(236,240,241,0.25);color:rgba(0,0,0,0.7)}html.theme--documenter-dark .file.is-light:active .file-cta,html.theme--documenter-dark .file.is-light.is-active .file-cta{background-color:#dde4e6;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .file.is-dark .file-cta,html.theme--documenter-dark .content kbd.file .file-cta{background-color:#282f2f;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-dark:hover .file-cta,html.theme--documenter-dark .content kbd.file:hover .file-cta,html.theme--documenter-dark .file.is-dark.is-hovered .file-cta,html.theme--documenter-dark .content kbd.file.is-hovered .file-cta{background-color:#232829;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-dark:focus .file-cta,html.theme--documenter-dark .content kbd.file:focus .file-cta,html.theme--documenter-dark .file.is-dark.is-focused .file-cta,html.theme--documenter-dark .content kbd.file.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(40,47,47,0.25);color:#fff}html.theme--documenter-dark .file.is-dark:active .file-cta,html.theme--documenter-dark .content kbd.file:active .file-cta,html.theme--documenter-dark .file.is-dark.is-active .file-cta,html.theme--documenter-dark .content kbd.file.is-active .file-cta{background-color:#1d2122;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-primary .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink .file-cta{background-color:#375a7f;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-primary:hover .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink:hover .file-cta,html.theme--documenter-dark .file.is-primary.is-hovered .file-cta,html.theme--documenter-dark .docstring>section>a.file.is-hovered.docs-sourcelink .file-cta{background-color:#335476;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-primary:focus .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink:focus .file-cta,html.theme--documenter-dark .file.is-primary.is-focused .file-cta,html.theme--documenter-dark .docstring>section>a.file.is-focused.docs-sourcelink .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(55,90,127,0.25);color:#fff}html.theme--documenter-dark .file.is-primary:active .file-cta,html.theme--documenter-dark .docstring>section>a.file.docs-sourcelink:active .file-cta,html.theme--documenter-dark .file.is-primary.is-active .file-cta,html.theme--documenter-dark .docstring>section>a.file.is-active.docs-sourcelink .file-cta{background-color:#2f4d6d;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-link .file-cta{background-color:#1abc9c;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-link:hover .file-cta,html.theme--documenter-dark .file.is-link.is-hovered .file-cta{background-color:#18b193;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-link:focus .file-cta,html.theme--documenter-dark .file.is-link.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(26,188,156,0.25);color:#fff}html.theme--documenter-dark .file.is-link:active .file-cta,html.theme--documenter-dark .file.is-link.is-active .file-cta{background-color:#17a689;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-info .file-cta{background-color:#3c5dcd;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:#3355c9;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(60,93,205,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:#3151bf;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-success .file-cta{background-color:#259a12;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:#228f11;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(37,154,18,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:#20830f;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-warning .file-cta{background-color:#f4c72f;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .file.is-warning:hover .file-cta,html.theme--documenter-dark .file.is-warning.is-hovered .file-cta{background-color:#f3c423;border-color:transparent;color:rgba(0,0,0,0.7)}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(244,199,47,0.25);color:rgba(0,0,0,0.7)}html.theme--documenter-dark .file.is-warning:active .file-cta,html.theme--documenter-dark .file.is-warning.is-active .file-cta{background-color:#f3c017;border-color:transparent;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .file.is-danger .file-cta{background-color:#cb3c33;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:#c13930;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(203,60,51,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:#b7362e;border-color:transparent;color:#fff}html.theme--documenter-dark .file.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.file{font-size:.75rem}html.theme--documenter-dark .file.is-normal{font-size:1rem}html.theme--documenter-dark .file.is-medium{font-size:1.25rem}html.theme--documenter-dark .file.is-medium .file-icon .fa{font-size:21px}html.theme--documenter-dark .file.is-large{font-size:1.5rem}html.theme--documenter-dark .file.is-large .file-icon .fa{font-size:28px}html.theme--documenter-dark .file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--documenter-dark .file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--documenter-dark .file.has-name.is-empty .file-cta{border-radius:.4em}html.theme--documenter-dark .file.has-name.is-empty .file-name{display:none}html.theme--documenter-dark .file.is-boxed .file-label{flex-direction:column}html.theme--documenter-dark .file.is-boxed .file-cta{flex-direction:column;height:auto;padding:1em 3em}html.theme--documenter-dark .file.is-boxed .file-name{border-width:0 1px 1px}html.theme--documenter-dark .file.is-boxed .file-icon{height:1.5em;width:1.5em}html.theme--documenter-dark .file.is-boxed .file-icon .fa{font-size:21px}html.theme--documenter-dark .file.is-boxed.is-small .file-icon .fa,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-boxed .file-icon .fa{font-size:14px}html.theme--documenter-dark .file.is-boxed.is-medium .file-icon .fa{font-size:28px}html.theme--documenter-dark .file.is-boxed.is-large .file-icon .fa{font-size:35px}html.theme--documenter-dark .file.is-boxed.has-name .file-cta{border-radius:.4em .4em 0 0}html.theme--documenter-dark .file.is-boxed.has-name .file-name{border-radius:0 0 .4em .4em;border-width:0 1px 1px}html.theme--documenter-dark .file.is-centered{justify-content:center}html.theme--documenter-dark .file.is-fullwidth .file-label{width:100%}html.theme--documenter-dark .file.is-fullwidth .file-name{flex-grow:1;max-width:none}html.theme--documenter-dark .file.is-right{justify-content:flex-end}html.theme--documenter-dark .file.is-right .file-cta{border-radius:0 .4em .4em 0}html.theme--documenter-dark .file.is-right .file-name{border-radius:.4em 0 0 .4em;border-width:1px 0 1px 1px;order:-1}html.theme--documenter-dark .file-label{align-items:stretch;display:flex;cursor:pointer;justify-content:flex-start;overflow:hidden;position:relative}html.theme--documenter-dark .file-label:hover .file-cta{background-color:#232829;color:#f2f2f2}html.theme--documenter-dark .file-label:hover .file-name{border-color:#596668}html.theme--documenter-dark .file-label:active .file-cta{background-color:#1d2122;color:#f2f2f2}html.theme--documenter-dark .file-label:active .file-name{border-color:#535f61}html.theme--documenter-dark .file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}html.theme--documenter-dark .file-cta,html.theme--documenter-dark .file-name{border-color:#5e6d6f;border-radius:.4em;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}html.theme--documenter-dark .file-cta{background-color:#282f2f;color:#fff}html.theme--documenter-dark .file-name{border-color:#5e6d6f;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:inherit;text-overflow:ellipsis}html.theme--documenter-dark .file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:.5em;width:1em}html.theme--documenter-dark .file-icon .fa{font-size:14px}html.theme--documenter-dark .label{color:#f2f2f2;display:block;font-size:1rem;font-weight:700}html.theme--documenter-dark .label:not(:last-child){margin-bottom:0.5em}html.theme--documenter-dark .label.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.label{font-size:.75rem}html.theme--documenter-dark .label.is-medium{font-size:1.25rem}html.theme--documenter-dark .label.is-large{font-size:1.5rem}html.theme--documenter-dark .help{display:block;font-size:.75rem;margin-top:0.25rem}html.theme--documenter-dark .help.is-white{color:#fff}html.theme--documenter-dark .help.is-black{color:#0a0a0a}html.theme--documenter-dark .help.is-light{color:#ecf0f1}html.theme--documenter-dark .help.is-dark,html.theme--documenter-dark .content kbd.help{color:#282f2f}html.theme--documenter-dark .help.is-primary,html.theme--documenter-dark .docstring>section>a.help.docs-sourcelink{color:#375a7f}html.theme--documenter-dark .help.is-link{color:#1abc9c}html.theme--documenter-dark .help.is-info{color:#3c5dcd}html.theme--documenter-dark .help.is-success{color:#259a12}html.theme--documenter-dark .help.is-warning{color:#f4c72f}html.theme--documenter-dark .help.is-danger{color:#cb3c33}html.theme--documenter-dark .field:not(:last-child){margin-bottom:0.75rem}html.theme--documenter-dark .field.has-addons{display:flex;justify-content:flex-start}html.theme--documenter-dark .field.has-addons .control:not(:last-child){margin-right:-1px}html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) .button,html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) .input,html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control:not(:first-child):not(:last-child) form.docs-search>input,html.theme--documenter-dark .field.has-addons .control:not(:first-child):not(:last-child) .select select{border-radius:0}html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) .button,html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) .input,html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control:first-child:not(:only-child) form.docs-search>input,html.theme--documenter-dark .field.has-addons .control:first-child:not(:only-child) .select select{border-bottom-right-radius:0;border-top-right-radius:0}html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) .button,html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) .input,html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control:last-child:not(:only-child) form.docs-search>input,html.theme--documenter-dark .field.has-addons .control:last-child:not(:only-child) .select select{border-bottom-left-radius:0;border-top-left-radius:0}html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .button.is-hovered:not([disabled]),html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):hover,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .input.is-hovered:not([disabled]),html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-hovered:not([disabled]),html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-hovered:not([disabled]),html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .select select.is-hovered:not([disabled]){z-index:2}html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):focus,html.theme--documenter-dark .field.has-addons .control .button.is-focused:not([disabled]),html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):active,html.theme--documenter-dark .field.has-addons .control .button.is-active:not([disabled]),html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):focus,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus,html.theme--documenter-dark .field.has-addons .control .input.is-focused:not([disabled]),html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]),html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]),html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):active,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active,html.theme--documenter-dark .field.has-addons .control .input.is-active:not([disabled]),html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]),html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]),html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):focus,html.theme--documenter-dark .field.has-addons .control .select select.is-focused:not([disabled]),html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):active,html.theme--documenter-dark .field.has-addons .control .select select.is-active:not([disabled]){z-index:3}html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):focus:hover,html.theme--documenter-dark .field.has-addons .control .button.is-focused:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .button:not([disabled]):active:hover,html.theme--documenter-dark .field.has-addons .control .button.is-active:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):focus:hover,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus:hover,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus:hover,html.theme--documenter-dark .field.has-addons .control .input.is-focused:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]):hover,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .input:not([disabled]):active:hover,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active:hover,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active:hover,html.theme--documenter-dark .field.has-addons .control .input.is-active:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]):hover,html.theme--documenter-dark #documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):focus:hover,html.theme--documenter-dark .field.has-addons .control .select select.is-focused:not([disabled]):hover,html.theme--documenter-dark .field.has-addons .control .select select:not([disabled]):active:hover,html.theme--documenter-dark .field.has-addons .control .select select.is-active:not([disabled]):hover{z-index:4}html.theme--documenter-dark .field.has-addons .control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .field.has-addons.has-addons-centered{justify-content:center}html.theme--documenter-dark .field.has-addons.has-addons-right{justify-content:flex-end}html.theme--documenter-dark .field.has-addons.has-addons-fullwidth .control{flex-grow:1;flex-shrink:0}html.theme--documenter-dark .field.is-grouped{display:flex;justify-content:flex-start}html.theme--documenter-dark .field.is-grouped>.control{flex-shrink:0}html.theme--documenter-dark .field.is-grouped>.control:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--documenter-dark .field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .field.is-grouped.is-grouped-centered{justify-content:center}html.theme--documenter-dark .field.is-grouped.is-grouped-right{justify-content:flex-end}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline{flex-wrap:wrap}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline>.control:last-child,html.theme--documenter-dark .field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:0.75rem}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-0.75rem}html.theme--documenter-dark .field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--documenter-dark .field.is-horizontal{display:flex}}html.theme--documenter-dark .field-label .label{font-size:inherit}@media screen and (max-width: 768px){html.theme--documenter-dark .field-label{margin-bottom:0.5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}html.theme--documenter-dark .field-label.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.field-label{font-size:.75rem;padding-top:0.375em}html.theme--documenter-dark .field-label.is-normal{padding-top:0.375em}html.theme--documenter-dark .field-label.is-medium{font-size:1.25rem;padding-top:0.375em}html.theme--documenter-dark .field-label.is-large{font-size:1.5rem;padding-top:0.375em}}html.theme--documenter-dark .field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{html.theme--documenter-dark .field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}html.theme--documenter-dark .field-body .field{margin-bottom:0}html.theme--documenter-dark .field-body>.field{flex-shrink:1}html.theme--documenter-dark .field-body>.field:not(.is-narrow){flex-grow:1}html.theme--documenter-dark .field-body>.field:not(:last-child){margin-right:.75rem}}html.theme--documenter-dark .control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:inherit}html.theme--documenter-dark .control.has-icons-left .input:focus~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input:focus~.icon,html.theme--documenter-dark .control.has-icons-left .select:focus~.icon,html.theme--documenter-dark .control.has-icons-right .input:focus~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input:focus~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input:focus~.icon,html.theme--documenter-dark .control.has-icons-right .select:focus~.icon{color:#282f2f}html.theme--documenter-dark .control.has-icons-left .input.is-small~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input~.icon,html.theme--documenter-dark .control.has-icons-left .select.is-small~.icon,html.theme--documenter-dark .control.has-icons-right .input.is-small~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input~.icon,html.theme--documenter-dark .control.has-icons-right .select.is-small~.icon{font-size:.75rem}html.theme--documenter-dark .control.has-icons-left .input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-left .select.is-medium~.icon,html.theme--documenter-dark .control.has-icons-right .input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-medium~.icon,html.theme--documenter-dark .control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}html.theme--documenter-dark .control.has-icons-left .input.is-large~.icon,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-large~.icon,html.theme--documenter-dark .control.has-icons-left .select.is-large~.icon,html.theme--documenter-dark .control.has-icons-right .input.is-large~.icon,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-large~.icon,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-large~.icon,html.theme--documenter-dark .control.has-icons-right .select.is-large~.icon{font-size:1.5rem}html.theme--documenter-dark .control.has-icons-left .icon,html.theme--documenter-dark .control.has-icons-right .icon{color:#5e6d6f;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}html.theme--documenter-dark .control.has-icons-left .input,html.theme--documenter-dark .control.has-icons-left #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-left form.docs-search>input,html.theme--documenter-dark .control.has-icons-left .select select{padding-left:2.5em}html.theme--documenter-dark .control.has-icons-left .icon.is-left{left:0}html.theme--documenter-dark .control.has-icons-right .input,html.theme--documenter-dark .control.has-icons-right #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .control.has-icons-right form.docs-search>input,html.theme--documenter-dark .control.has-icons-right .select select{padding-right:2.5em}html.theme--documenter-dark .control.has-icons-right .icon.is-right{right:0}html.theme--documenter-dark .control.is-loading::after{position:absolute !important;right:.625em;top:0.625em;z-index:4}html.theme--documenter-dark .control.is-loading.is-small:after,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}html.theme--documenter-dark .control.is-loading.is-medium:after{font-size:1.25rem}html.theme--documenter-dark .control.is-loading.is-large:after{font-size:1.5rem}html.theme--documenter-dark .breadcrumb{font-size:1rem;white-space:nowrap}html.theme--documenter-dark .breadcrumb a{align-items:center;color:#1abc9c;display:flex;justify-content:center;padding:0 .75em}html.theme--documenter-dark .breadcrumb a:hover{color:#1dd2af}html.theme--documenter-dark .breadcrumb li{align-items:center;display:flex}html.theme--documenter-dark .breadcrumb li:first-child a{padding-left:0}html.theme--documenter-dark .breadcrumb li.is-active a{color:#f2f2f2;cursor:default;pointer-events:none}html.theme--documenter-dark .breadcrumb li+li::before{color:#8c9b9d;content:"\0002f"}html.theme--documenter-dark .breadcrumb ul,html.theme--documenter-dark .breadcrumb ol{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}html.theme--documenter-dark .breadcrumb .icon:first-child{margin-right:.5em}html.theme--documenter-dark .breadcrumb .icon:last-child{margin-left:.5em}html.theme--documenter-dark .breadcrumb.is-centered ol,html.theme--documenter-dark .breadcrumb.is-centered ul{justify-content:center}html.theme--documenter-dark .breadcrumb.is-right ol,html.theme--documenter-dark .breadcrumb.is-right ul{justify-content:flex-end}html.theme--documenter-dark .breadcrumb.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.75rem}html.theme--documenter-dark .breadcrumb.is-medium{font-size:1.25rem}html.theme--documenter-dark .breadcrumb.is-large{font-size:1.5rem}html.theme--documenter-dark .breadcrumb.has-arrow-separator li+li::before{content:"\02192"}html.theme--documenter-dark .breadcrumb.has-bullet-separator li+li::before{content:"\02022"}html.theme--documenter-dark .breadcrumb.has-dot-separator li+li::before{content:"\000b7"}html.theme--documenter-dark .breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}html.theme--documenter-dark .card{background-color:#fff;border-radius:.25rem;box-shadow:#171717;color:#fff;max-width:100%;position:relative}html.theme--documenter-dark .card-footer:first-child,html.theme--documenter-dark .card-content:first-child,html.theme--documenter-dark .card-header:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--documenter-dark .card-footer:last-child,html.theme--documenter-dark .card-content:last-child,html.theme--documenter-dark .card-header:last-child{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--documenter-dark .card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);display:flex}html.theme--documenter-dark .card-header-title{align-items:center;color:#f2f2f2;display:flex;flex-grow:1;font-weight:700;padding:0.75rem 1rem}html.theme--documenter-dark .card-header-title.is-centered{justify-content:center}html.theme--documenter-dark .card-header-icon{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0;align-items:center;cursor:pointer;display:flex;justify-content:center;padding:0.75rem 1rem}html.theme--documenter-dark .card-image{display:block;position:relative}html.theme--documenter-dark .card-image:first-child img{border-top-left-radius:.25rem;border-top-right-radius:.25rem}html.theme--documenter-dark .card-image:last-child img{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}html.theme--documenter-dark .card-content{background-color:rgba(0,0,0,0);padding:1.5rem}html.theme--documenter-dark .card-footer{background-color:rgba(0,0,0,0);border-top:1px solid #ededed;align-items:stretch;display:flex}html.theme--documenter-dark .card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}html.theme--documenter-dark .card-footer-item:not(:last-child){border-right:1px solid #ededed}html.theme--documenter-dark .card .media:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .dropdown{display:inline-flex;position:relative;vertical-align:top}html.theme--documenter-dark .dropdown.is-active .dropdown-menu,html.theme--documenter-dark .dropdown.is-hoverable:hover .dropdown-menu{display:block}html.theme--documenter-dark .dropdown.is-right .dropdown-menu{left:auto;right:0}html.theme--documenter-dark .dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}html.theme--documenter-dark .dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}html.theme--documenter-dark .dropdown-content{background-color:#282f2f;border-radius:.4em;box-shadow:#171717;padding-bottom:.5rem;padding-top:.5rem}html.theme--documenter-dark .dropdown-item{color:#fff;display:block;font-size:0.875rem;line-height:1.5;padding:0.375rem 1rem;position:relative}html.theme--documenter-dark a.dropdown-item,html.theme--documenter-dark button.dropdown-item{padding-right:3rem;text-align:inherit;white-space:nowrap;width:100%}html.theme--documenter-dark a.dropdown-item:hover,html.theme--documenter-dark button.dropdown-item:hover{background-color:#282f2f;color:#0a0a0a}html.theme--documenter-dark a.dropdown-item.is-active,html.theme--documenter-dark button.dropdown-item.is-active{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .dropdown-divider{background-color:#ededed;border:none;display:block;height:1px;margin:0.5rem 0}html.theme--documenter-dark .level{align-items:center;justify-content:space-between}html.theme--documenter-dark .level code{border-radius:.4em}html.theme--documenter-dark .level img{display:inline-block;vertical-align:top}html.theme--documenter-dark .level.is-mobile{display:flex}html.theme--documenter-dark .level.is-mobile .level-left,html.theme--documenter-dark .level.is-mobile .level-right{display:flex}html.theme--documenter-dark .level.is-mobile .level-left+.level-right{margin-top:0}html.theme--documenter-dark .level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:.75rem}html.theme--documenter-dark .level.is-mobile .level-item:not(.is-narrow){flex-grow:1}@media screen and (min-width: 769px),print{html.theme--documenter-dark .level{display:flex}html.theme--documenter-dark .level>.level-item:not(.is-narrow){flex-grow:1}}html.theme--documenter-dark .level-item{align-items:center;display:flex;flex-basis:auto;flex-grow:0;flex-shrink:0;justify-content:center}html.theme--documenter-dark .level-item .title,html.theme--documenter-dark .level-item .subtitle{margin-bottom:0}@media screen and (max-width: 768px){html.theme--documenter-dark .level-item:not(:last-child){margin-bottom:.75rem}}html.theme--documenter-dark .level-left,html.theme--documenter-dark .level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--documenter-dark .level-left .level-item.is-flexible,html.theme--documenter-dark .level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width: 769px),print{html.theme--documenter-dark .level-left .level-item:not(:last-child),html.theme--documenter-dark .level-right .level-item:not(:last-child){margin-right:.75rem}}html.theme--documenter-dark .level-left{align-items:center;justify-content:flex-start}@media screen and (max-width: 768px){html.theme--documenter-dark .level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .level-left{display:flex}}html.theme--documenter-dark .level-right{align-items:center;justify-content:flex-end}@media screen and (min-width: 769px),print{html.theme--documenter-dark .level-right{display:flex}}html.theme--documenter-dark .media{align-items:flex-start;display:flex;text-align:inherit}html.theme--documenter-dark .media .content:not(:last-child){margin-bottom:.75rem}html.theme--documenter-dark .media .media{border-top:1px solid rgba(94,109,111,0.5);display:flex;padding-top:.75rem}html.theme--documenter-dark .media .media .content:not(:last-child),html.theme--documenter-dark .media .media .control:not(:last-child){margin-bottom:.5rem}html.theme--documenter-dark .media .media .media{padding-top:.5rem}html.theme--documenter-dark .media .media .media+.media{margin-top:.5rem}html.theme--documenter-dark .media+.media{border-top:1px solid rgba(94,109,111,0.5);margin-top:1rem;padding-top:1rem}html.theme--documenter-dark .media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}html.theme--documenter-dark .media-left,html.theme--documenter-dark .media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}html.theme--documenter-dark .media-left{margin-right:1rem}html.theme--documenter-dark .media-right{margin-left:1rem}html.theme--documenter-dark .media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:inherit}@media screen and (max-width: 768px){html.theme--documenter-dark .media-content{overflow-x:auto}}html.theme--documenter-dark .menu{font-size:1rem}html.theme--documenter-dark .menu.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.menu{font-size:.75rem}html.theme--documenter-dark .menu.is-medium{font-size:1.25rem}html.theme--documenter-dark .menu.is-large{font-size:1.5rem}html.theme--documenter-dark .menu-list{line-height:1.25}html.theme--documenter-dark .menu-list a{border-radius:3px;color:#fff;display:block;padding:0.5em 0.75em}html.theme--documenter-dark .menu-list a:hover{background-color:#282f2f;color:#f2f2f2}html.theme--documenter-dark .menu-list a.is-active{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .menu-list li ul{border-left:1px solid #5e6d6f;margin:.75em;padding-left:.75em}html.theme--documenter-dark .menu-label{color:#fff;font-size:.75em;letter-spacing:.1em;text-transform:uppercase}html.theme--documenter-dark .menu-label:not(:first-child){margin-top:1em}html.theme--documenter-dark .menu-label:not(:last-child){margin-bottom:1em}html.theme--documenter-dark .message{background-color:#282f2f;border-radius:.4em;font-size:1rem}html.theme--documenter-dark .message strong{color:currentColor}html.theme--documenter-dark .message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}html.theme--documenter-dark .message.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.message{font-size:.75rem}html.theme--documenter-dark .message.is-medium{font-size:1.25rem}html.theme--documenter-dark .message.is-large{font-size:1.5rem}html.theme--documenter-dark .message.is-white{background-color:#fff}html.theme--documenter-dark .message.is-white .message-header{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .message.is-white .message-body{border-color:#fff}html.theme--documenter-dark .message.is-black{background-color:#fafafa}html.theme--documenter-dark .message.is-black .message-header{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .message.is-black .message-body{border-color:#0a0a0a}html.theme--documenter-dark .message.is-light{background-color:#f9fafb}html.theme--documenter-dark .message.is-light .message-header{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .message.is-light .message-body{border-color:#ecf0f1}html.theme--documenter-dark .message.is-dark,html.theme--documenter-dark .content kbd.message{background-color:#f9fafa}html.theme--documenter-dark .message.is-dark .message-header,html.theme--documenter-dark .content kbd.message .message-header{background-color:#282f2f;color:#fff}html.theme--documenter-dark .message.is-dark .message-body,html.theme--documenter-dark .content kbd.message .message-body{border-color:#282f2f}html.theme--documenter-dark .message.is-primary,html.theme--documenter-dark .docstring>section>a.message.docs-sourcelink{background-color:#f1f5f9}html.theme--documenter-dark .message.is-primary .message-header,html.theme--documenter-dark .docstring>section>a.message.docs-sourcelink .message-header{background-color:#375a7f;color:#fff}html.theme--documenter-dark .message.is-primary .message-body,html.theme--documenter-dark .docstring>section>a.message.docs-sourcelink .message-body{border-color:#375a7f;color:#4d7eb2}html.theme--documenter-dark .message.is-link{background-color:#edfdf9}html.theme--documenter-dark .message.is-link .message-header{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .message.is-link .message-body{border-color:#1abc9c;color:#15987e}html.theme--documenter-dark .message.is-info{background-color:#eff2fb}html.theme--documenter-dark .message.is-info .message-header{background-color:#3c5dcd;color:#fff}html.theme--documenter-dark .message.is-info .message-body{border-color:#3c5dcd;color:#3253c3}html.theme--documenter-dark .message.is-success{background-color:#effded}html.theme--documenter-dark .message.is-success .message-header{background-color:#259a12;color:#fff}html.theme--documenter-dark .message.is-success .message-body{border-color:#259a12;color:#2ec016}html.theme--documenter-dark .message.is-warning{background-color:#fefaec}html.theme--documenter-dark .message.is-warning .message-header{background-color:#f4c72f;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .message.is-warning .message-body{border-color:#f4c72f;color:#8c6e07}html.theme--documenter-dark .message.is-danger{background-color:#fbefef}html.theme--documenter-dark .message.is-danger .message-header{background-color:#cb3c33;color:#fff}html.theme--documenter-dark .message.is-danger .message-body{border-color:#cb3c33;color:#c03930}html.theme--documenter-dark .message-header{align-items:center;background-color:#fff;border-radius:.4em .4em 0 0;color:rgba(0,0,0,0.7);display:flex;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.75em 1em;position:relative}html.theme--documenter-dark .message-header .delete{flex-grow:0;flex-shrink:0;margin-left:.75em}html.theme--documenter-dark .message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}html.theme--documenter-dark .message-body{border-color:#5e6d6f;border-radius:.4em;border-style:solid;border-width:0 0 0 4px;color:#fff;padding:1.25em 1.5em}html.theme--documenter-dark .message-body code,html.theme--documenter-dark .message-body pre{background-color:#fff}html.theme--documenter-dark .message-body pre code{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .modal{align-items:center;display:none;flex-direction:column;justify-content:center;overflow:hidden;position:fixed;z-index:40}html.theme--documenter-dark .modal.is-active{display:flex}html.theme--documenter-dark .modal-background{background-color:rgba(10,10,10,0.86)}html.theme--documenter-dark .modal-content,html.theme--documenter-dark .modal-card{margin:0 20px;max-height:calc(100vh - 160px);overflow:auto;position:relative;width:100%}@media screen and (min-width: 769px){html.theme--documenter-dark .modal-content,html.theme--documenter-dark .modal-card{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}html.theme--documenter-dark .modal-close{background:none;height:40px;position:fixed;right:20px;top:20px;width:40px}html.theme--documenter-dark .modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}html.theme--documenter-dark .modal-card-head,html.theme--documenter-dark .modal-card-foot{align-items:center;background-color:#282f2f;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}html.theme--documenter-dark .modal-card-head{border-bottom:1px solid #5e6d6f;border-top-left-radius:8px;border-top-right-radius:8px}html.theme--documenter-dark .modal-card-title{color:#f2f2f2;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}html.theme--documenter-dark .modal-card-foot{border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top:1px solid #5e6d6f}html.theme--documenter-dark .modal-card-foot .button:not(:last-child){margin-right:.5em}html.theme--documenter-dark .modal-card-body{-webkit-overflow-scrolling:touch;background-color:#fff;flex-grow:1;flex-shrink:1;overflow:auto;padding:20px}html.theme--documenter-dark .navbar{background-color:#375a7f;min-height:4rem;position:relative;z-index:30}html.theme--documenter-dark .navbar.is-white{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link{color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-white .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-white .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-brand .navbar-link::after{border-color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-burger{color:#0a0a0a}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-white .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-white .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link{color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-white .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-white .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-white .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-white .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-white .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-white .navbar-end .navbar-link::after{border-color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link{background-color:#f2f2f2;color:#0a0a0a}html.theme--documenter-dark .navbar.is-white .navbar-dropdown a.navbar-item.is-active{background-color:#fff;color:#0a0a0a}}html.theme--documenter-dark .navbar.is-black{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-black .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-black .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link.is-active{background-color:#000;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-black .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-black .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-black .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-black .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-black .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-black .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-black .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link.is-active{background-color:#000;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-black .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link{background-color:#000;color:#fff}html.theme--documenter-dark .navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}html.theme--documenter-dark .navbar.is-light{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-light .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-light .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link.is-active{background-color:#dde4e6;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-light .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-light .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-light .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-light .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-light .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-light .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-light .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link.is-active{background-color:#dde4e6;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-light .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{background-color:#dde4e6;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}}html.theme--documenter-dark .navbar.is-dark,html.theme--documenter-dark .content kbd.navbar{background-color:#282f2f;color:#fff}html.theme--documenter-dark .navbar.is-dark .navbar-brand>.navbar-item,html.theme--documenter-dark .content kbd.navbar .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-dark .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .content kbd.navbar .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-dark .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .content kbd.navbar .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-dark .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link:focus,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link:hover,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link.is-active{background-color:#1d2122;color:#fff}html.theme--documenter-dark .navbar.is-dark .navbar-brand .navbar-link::after,html.theme--documenter-dark .content kbd.navbar .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-dark .navbar-burger,html.theme--documenter-dark .content kbd.navbar .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-dark .navbar-start>.navbar-item,html.theme--documenter-dark .content kbd.navbar .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-dark .navbar-end>.navbar-item,html.theme--documenter-dark .content kbd.navbar .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-dark .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .content kbd.navbar .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-dark .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .content kbd.navbar .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-dark .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link:focus,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link:hover,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .content kbd.navbar .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-dark .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .content kbd.navbar .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-dark .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link:focus,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link:hover,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link.is-active{background-color:#1d2122;color:#fff}html.theme--documenter-dark .navbar.is-dark .navbar-start .navbar-link::after,html.theme--documenter-dark .content kbd.navbar .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-dark .navbar-end .navbar-link::after,html.theme--documenter-dark .content kbd.navbar .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link,html.theme--documenter-dark .content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link{background-color:#1d2122;color:#fff}html.theme--documenter-dark .navbar.is-dark .navbar-dropdown a.navbar-item.is-active,html.theme--documenter-dark .content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#282f2f;color:#fff}}html.theme--documenter-dark .navbar.is-primary,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink{background-color:#375a7f;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-brand>.navbar-item,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-primary .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-primary .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-brand .navbar-link::after,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-burger,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-primary .navbar-start>.navbar-item,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-primary .navbar-end>.navbar-item,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-primary .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-primary .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-primary .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-primary .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link:focus,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-start .navbar-link::after,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-primary .navbar-end .navbar-link::after,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#375a7f;color:#fff}}html.theme--documenter-dark .navbar.is-link{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-brand>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-link .navbar-brand>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-link .navbar-brand>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link:focus,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link:hover,html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link.is-active{background-color:#17a689;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-brand .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-burger{color:#fff}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar.is-link .navbar-start>.navbar-item,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link,html.theme--documenter-dark .navbar.is-link .navbar-end>.navbar-item,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link{color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-start>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-link .navbar-start>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-link .navbar-start>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link:focus,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link:hover,html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link.is-active,html.theme--documenter-dark .navbar.is-link .navbar-end>a.navbar-item:focus,html.theme--documenter-dark .navbar.is-link .navbar-end>a.navbar-item:hover,html.theme--documenter-dark .navbar.is-link .navbar-end>a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link:focus,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link:hover,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link.is-active{background-color:#17a689;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-start .navbar-link::after,html.theme--documenter-dark .navbar.is-link .navbar-end .navbar-link::after{border-color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link{background-color:#17a689;color:#fff}html.theme--documenter-dark .navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:#1abc9c;color:#fff}}html.theme--documenter-dark .navbar.is-info{background-color:#3c5dcd;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:#3151bf;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:#3151bf;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:#3151bf;color:#fff}html.theme--documenter-dark .navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:#3c5dcd;color:#fff}}html.theme--documenter-dark .navbar.is-success{background-color:#259a12;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:#20830f;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:#20830f;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:#20830f;color:#fff}html.theme--documenter-dark .navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:#259a12;color:#fff}}html.theme--documenter-dark .navbar.is-warning{background-color:#f4c72f;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-warning .navbar-brand>.navbar-item,html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}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:#f3c017;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-warning .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-warning .navbar-burger{color:rgba(0,0,0,0.7)}@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:rgba(0,0,0,0.7)}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:#f3c017;color:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}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:#f3c017;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:#f4c72f;color:rgba(0,0,0,0.7)}}html.theme--documenter-dark .navbar.is-danger{background-color:#cb3c33;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:#b7362e;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:#b7362e;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:#b7362e;color:#fff}html.theme--documenter-dark .navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:#cb3c33;color:#fff}}html.theme--documenter-dark .navbar>.container{align-items:stretch;display:flex;min-height:4rem;width:100%}html.theme--documenter-dark .navbar.has-shadow{box-shadow:0 2px 0 0 #282f2f}html.theme--documenter-dark .navbar.is-fixed-bottom,html.theme--documenter-dark .navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}html.theme--documenter-dark .navbar.is-fixed-bottom{bottom:0}html.theme--documenter-dark .navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #282f2f}html.theme--documenter-dark .navbar.is-fixed-top{top:0}html.theme--documenter-dark html.has-navbar-fixed-top,html.theme--documenter-dark body.has-navbar-fixed-top{padding-top:4rem}html.theme--documenter-dark html.has-navbar-fixed-bottom,html.theme--documenter-dark body.has-navbar-fixed-bottom{padding-bottom:4rem}html.theme--documenter-dark .navbar-brand,html.theme--documenter-dark .navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:4rem}html.theme--documenter-dark .navbar-brand a.navbar-item:focus,html.theme--documenter-dark .navbar-brand a.navbar-item:hover{background-color:transparent}html.theme--documenter-dark .navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}html.theme--documenter-dark .navbar-burger{color:#fff;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:block;height:4rem;position:relative;width:4rem;margin-left:auto}html.theme--documenter-dark .navbar-burger span{background-color:currentColor;display:block;height:1px;left:calc(50% - 8px);position:absolute;transform-origin:center;transition-duration:86ms;transition-property:background-color, opacity, transform;transition-timing-function:ease-out;width:16px}html.theme--documenter-dark .navbar-burger span:nth-child(1){top:calc(50% - 6px)}html.theme--documenter-dark .navbar-burger span:nth-child(2){top:calc(50% - 1px)}html.theme--documenter-dark .navbar-burger span:nth-child(3){top:calc(50% + 4px)}html.theme--documenter-dark .navbar-burger:hover{background-color:rgba(0,0,0,0.05)}html.theme--documenter-dark .navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}html.theme--documenter-dark .navbar-burger.is-active span:nth-child(2){opacity:0}html.theme--documenter-dark .navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}html.theme--documenter-dark .navbar-menu{display:none}html.theme--documenter-dark .navbar-item,html.theme--documenter-dark .navbar-link{color:#fff;display:block;line-height:1.5;padding:0.5rem 0.75rem;position:relative}html.theme--documenter-dark .navbar-item .icon:only-child,html.theme--documenter-dark .navbar-link .icon:only-child{margin-left:-0.25rem;margin-right:-0.25rem}html.theme--documenter-dark a.navbar-item,html.theme--documenter-dark .navbar-link{cursor:pointer}html.theme--documenter-dark a.navbar-item:focus,html.theme--documenter-dark a.navbar-item:focus-within,html.theme--documenter-dark a.navbar-item:hover,html.theme--documenter-dark a.navbar-item.is-active,html.theme--documenter-dark .navbar-link:focus,html.theme--documenter-dark .navbar-link:focus-within,html.theme--documenter-dark .navbar-link:hover,html.theme--documenter-dark .navbar-link.is-active{background-color:rgba(0,0,0,0);color:#1abc9c}html.theme--documenter-dark .navbar-item{flex-grow:0;flex-shrink:0}html.theme--documenter-dark .navbar-item img{max-height:1.75rem}html.theme--documenter-dark .navbar-item.has-dropdown{padding:0}html.theme--documenter-dark .navbar-item.is-expanded{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .navbar-item.is-tab{border-bottom:1px solid transparent;min-height:4rem;padding-bottom:calc(0.5rem - 1px)}html.theme--documenter-dark .navbar-item.is-tab:focus,html.theme--documenter-dark .navbar-item.is-tab:hover{background-color:rgba(0,0,0,0);border-bottom-color:#1abc9c}html.theme--documenter-dark .navbar-item.is-tab.is-active{background-color:rgba(0,0,0,0);border-bottom-color:#1abc9c;border-bottom-style:solid;border-bottom-width:3px;color:#1abc9c;padding-bottom:calc(0.5rem - 3px)}html.theme--documenter-dark .navbar-content{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .navbar-link:not(.is-arrowless){padding-right:2.5em}html.theme--documenter-dark .navbar-link:not(.is-arrowless)::after{border-color:#fff;margin-top:-0.375em;right:1.125em}html.theme--documenter-dark .navbar-dropdown{font-size:0.875rem;padding-bottom:0.5rem;padding-top:0.5rem}html.theme--documenter-dark .navbar-dropdown .navbar-item{padding-left:1.5rem;padding-right:1.5rem}html.theme--documenter-dark .navbar-divider{background-color:rgba(0,0,0,0.2);border:none;display:none;height:2px;margin:0.5rem 0}@media screen and (max-width: 1055px){html.theme--documenter-dark .navbar>.container{display:block}html.theme--documenter-dark .navbar-brand .navbar-item,html.theme--documenter-dark .navbar-tabs .navbar-item{align-items:center;display:flex}html.theme--documenter-dark .navbar-link::after{display:none}html.theme--documenter-dark .navbar-menu{background-color:#375a7f;box-shadow:0 8px 16px rgba(10,10,10,0.1);padding:0.5rem 0}html.theme--documenter-dark .navbar-menu.is-active{display:block}html.theme--documenter-dark .navbar.is-fixed-bottom-touch,html.theme--documenter-dark .navbar.is-fixed-top-touch{left:0;position:fixed;right:0;z-index:30}html.theme--documenter-dark .navbar.is-fixed-bottom-touch{bottom:0}html.theme--documenter-dark .navbar.is-fixed-bottom-touch.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--documenter-dark .navbar.is-fixed-top-touch{top:0}html.theme--documenter-dark .navbar.is-fixed-top .navbar-menu,html.theme--documenter-dark .navbar.is-fixed-top-touch .navbar-menu{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 4rem);overflow:auto}html.theme--documenter-dark html.has-navbar-fixed-top-touch,html.theme--documenter-dark body.has-navbar-fixed-top-touch{padding-top:4rem}html.theme--documenter-dark html.has-navbar-fixed-bottom-touch,html.theme--documenter-dark body.has-navbar-fixed-bottom-touch{padding-bottom:4rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .navbar,html.theme--documenter-dark .navbar-menu,html.theme--documenter-dark .navbar-start,html.theme--documenter-dark .navbar-end{align-items:stretch;display:flex}html.theme--documenter-dark .navbar{min-height:4rem}html.theme--documenter-dark .navbar.is-spaced{padding:1rem 2rem}html.theme--documenter-dark .navbar.is-spaced .navbar-start,html.theme--documenter-dark .navbar.is-spaced .navbar-end{align-items:center}html.theme--documenter-dark .navbar.is-spaced a.navbar-item,html.theme--documenter-dark .navbar.is-spaced .navbar-link{border-radius:.4em}html.theme--documenter-dark .navbar.is-transparent a.navbar-item:focus,html.theme--documenter-dark .navbar.is-transparent a.navbar-item:hover,html.theme--documenter-dark .navbar.is-transparent a.navbar-item.is-active,html.theme--documenter-dark .navbar.is-transparent .navbar-link:focus,html.theme--documenter-dark .navbar.is-transparent .navbar-link:hover,html.theme--documenter-dark .navbar.is-transparent .navbar-link.is-active{background-color:transparent !important}html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link,html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link,html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link,html.theme--documenter-dark .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link{background-color:transparent !important}html.theme--documenter-dark .navbar.is-transparent .navbar-dropdown a.navbar-item:focus,html.theme--documenter-dark .navbar.is-transparent .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#dbdee0}html.theme--documenter-dark .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#1abc9c}html.theme--documenter-dark .navbar-burger{display:none}html.theme--documenter-dark .navbar-item,html.theme--documenter-dark .navbar-link{align-items:center;display:flex}html.theme--documenter-dark .navbar-item.has-dropdown{align-items:stretch}html.theme--documenter-dark .navbar-item.has-dropdown-up .navbar-link::after{transform:rotate(135deg) translate(0.25em, -0.25em)}html.theme--documenter-dark .navbar-item.has-dropdown-up .navbar-dropdown{border-bottom:1px solid rgba(0,0,0,0.2);border-radius:8px 8px 0 0;border-top:none;bottom:100%;box-shadow:0 -8px 8px rgba(10,10,10,0.1);top:auto}html.theme--documenter-dark .navbar-item.is-active .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:hover .navbar-dropdown{display:block}.navbar.is-spaced html.theme--documenter-dark .navbar-item.is-active .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-active .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--documenter-dark .navbar-item.is-hoverable:focus .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--documenter-dark .navbar-item.is-hoverable:focus-within .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,.navbar.is-spaced html.theme--documenter-dark .navbar-item.is-hoverable:hover .navbar-dropdown,html.theme--documenter-dark .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed{opacity:1;pointer-events:auto;transform:translateY(0)}html.theme--documenter-dark .navbar-menu{flex-grow:1;flex-shrink:0}html.theme--documenter-dark .navbar-start{justify-content:flex-start;margin-right:auto}html.theme--documenter-dark .navbar-end{justify-content:flex-end;margin-left:auto}html.theme--documenter-dark .navbar-dropdown{background-color:#375a7f;border-bottom-left-radius:8px;border-bottom-right-radius:8px;border-top:1px solid rgba(0,0,0,0.2);box-shadow:0 8px 8px rgba(10,10,10,0.1);display:none;font-size:0.875rem;left:0;min-width:100%;position:absolute;top:100%;z-index:20}html.theme--documenter-dark .navbar-dropdown .navbar-item{padding:0.375rem 1rem;white-space:nowrap}html.theme--documenter-dark .navbar-dropdown a.navbar-item{padding-right:3rem}html.theme--documenter-dark .navbar-dropdown a.navbar-item:focus,html.theme--documenter-dark .navbar-dropdown a.navbar-item:hover{background-color:rgba(0,0,0,0);color:#dbdee0}html.theme--documenter-dark .navbar-dropdown a.navbar-item.is-active{background-color:rgba(0,0,0,0);color:#1abc9c}.navbar.is-spaced html.theme--documenter-dark .navbar-dropdown,html.theme--documenter-dark .navbar-dropdown.is-boxed{border-radius:8px;border-top:none;box-shadow:0 8px 8px rgba(10,10,10,0.1), 0 0 0 1px rgba(10,10,10,0.1);display:block;opacity:0;pointer-events:none;top:calc(100% + (-4px));transform:translateY(-5px);transition-duration:86ms;transition-property:opacity, transform}html.theme--documenter-dark .navbar-dropdown.is-right{left:auto;right:0}html.theme--documenter-dark .navbar-divider{display:block}html.theme--documenter-dark .navbar>.container .navbar-brand,html.theme--documenter-dark .container>.navbar .navbar-brand{margin-left:-.75rem}html.theme--documenter-dark .navbar>.container .navbar-menu,html.theme--documenter-dark .container>.navbar .navbar-menu{margin-right:-.75rem}html.theme--documenter-dark .navbar.is-fixed-bottom-desktop,html.theme--documenter-dark .navbar.is-fixed-top-desktop{left:0;position:fixed;right:0;z-index:30}html.theme--documenter-dark .navbar.is-fixed-bottom-desktop{bottom:0}html.theme--documenter-dark .navbar.is-fixed-bottom-desktop.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}html.theme--documenter-dark .navbar.is-fixed-top-desktop{top:0}html.theme--documenter-dark html.has-navbar-fixed-top-desktop,html.theme--documenter-dark body.has-navbar-fixed-top-desktop{padding-top:4rem}html.theme--documenter-dark html.has-navbar-fixed-bottom-desktop,html.theme--documenter-dark body.has-navbar-fixed-bottom-desktop{padding-bottom:4rem}html.theme--documenter-dark html.has-spaced-navbar-fixed-top,html.theme--documenter-dark body.has-spaced-navbar-fixed-top{padding-top:6rem}html.theme--documenter-dark html.has-spaced-navbar-fixed-bottom,html.theme--documenter-dark body.has-spaced-navbar-fixed-bottom{padding-bottom:6rem}html.theme--documenter-dark a.navbar-item.is-active,html.theme--documenter-dark .navbar-link.is-active{color:#1abc9c}html.theme--documenter-dark a.navbar-item.is-active:not(:focus):not(:hover),html.theme--documenter-dark .navbar-link.is-active:not(:focus):not(:hover){background-color:rgba(0,0,0,0)}html.theme--documenter-dark .navbar-item.has-dropdown:focus .navbar-link,html.theme--documenter-dark .navbar-item.has-dropdown:hover .navbar-link,html.theme--documenter-dark .navbar-item.has-dropdown.is-active .navbar-link{background-color:rgba(0,0,0,0)}}html.theme--documenter-dark .hero.is-fullheight-with-navbar{min-height:calc(100vh - 4rem)}html.theme--documenter-dark .pagination{font-size:1rem;margin:-.25rem}html.theme--documenter-dark .pagination.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination{font-size:.75rem}html.theme--documenter-dark .pagination.is-medium{font-size:1.25rem}html.theme--documenter-dark .pagination.is-large{font-size:1.5rem}html.theme--documenter-dark .pagination.is-rounded .pagination-previous,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination .pagination-previous,html.theme--documenter-dark .pagination.is-rounded .pagination-next,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination .pagination-next{padding-left:1em;padding-right:1em;border-radius:9999px}html.theme--documenter-dark .pagination.is-rounded .pagination-link,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:9999px}html.theme--documenter-dark .pagination,html.theme--documenter-dark .pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis{font-size:1em;justify-content:center;margin:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link{border-color:#5e6d6f;color:#1abc9c;min-width:2.5em}html.theme--documenter-dark .pagination-previous:hover,html.theme--documenter-dark .pagination-next:hover,html.theme--documenter-dark .pagination-link:hover{border-color:#8c9b9d;color:#1dd2af}html.theme--documenter-dark .pagination-previous:focus,html.theme--documenter-dark .pagination-next:focus,html.theme--documenter-dark .pagination-link:focus{border-color:#8c9b9d}html.theme--documenter-dark .pagination-previous:active,html.theme--documenter-dark .pagination-next:active,html.theme--documenter-dark .pagination-link:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2)}html.theme--documenter-dark .pagination-previous[disabled],html.theme--documenter-dark .pagination-previous.is-disabled,html.theme--documenter-dark .pagination-next[disabled],html.theme--documenter-dark .pagination-next.is-disabled,html.theme--documenter-dark .pagination-link[disabled],html.theme--documenter-dark .pagination-link.is-disabled{background-color:#5e6d6f;border-color:#5e6d6f;box-shadow:none;color:#fff;opacity:0.5}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next{padding-left:.75em;padding-right:.75em;white-space:nowrap}html.theme--documenter-dark .pagination-link.is-current{background-color:#1abc9c;border-color:#1abc9c;color:#fff}html.theme--documenter-dark .pagination-ellipsis{color:#8c9b9d;pointer-events:none}html.theme--documenter-dark .pagination-list{flex-wrap:wrap}html.theme--documenter-dark .pagination-list li{list-style:none}@media screen and (max-width: 768px){html.theme--documenter-dark .pagination{flex-wrap:wrap}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-ellipsis{margin-bottom:0;margin-top:0}html.theme--documenter-dark .pagination-previous{order:2}html.theme--documenter-dark .pagination-next{order:3}html.theme--documenter-dark .pagination{justify-content:space-between;margin-bottom:0;margin-top:0}html.theme--documenter-dark .pagination.is-centered .pagination-previous{order:1}html.theme--documenter-dark .pagination.is-centered .pagination-list{justify-content:center;order:2}html.theme--documenter-dark .pagination.is-centered .pagination-next{order:3}html.theme--documenter-dark .pagination.is-right .pagination-previous{order:1}html.theme--documenter-dark .pagination.is-right .pagination-next{order:2}html.theme--documenter-dark .pagination.is-right .pagination-list{justify-content:flex-end;order:3}}html.theme--documenter-dark .panel{border-radius:8px;box-shadow:#171717;font-size:1rem}html.theme--documenter-dark .panel:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .panel.is-white .panel-heading{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .panel.is-white .panel-tabs a.is-active{border-bottom-color:#fff}html.theme--documenter-dark .panel.is-white .panel-block.is-active .panel-icon{color:#fff}html.theme--documenter-dark .panel.is-black .panel-heading{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .panel.is-black .panel-tabs a.is-active{border-bottom-color:#0a0a0a}html.theme--documenter-dark .panel.is-black .panel-block.is-active .panel-icon{color:#0a0a0a}html.theme--documenter-dark .panel.is-light .panel-heading{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .panel.is-light .panel-tabs a.is-active{border-bottom-color:#ecf0f1}html.theme--documenter-dark .panel.is-light .panel-block.is-active .panel-icon{color:#ecf0f1}html.theme--documenter-dark .panel.is-dark .panel-heading,html.theme--documenter-dark .content kbd.panel .panel-heading{background-color:#282f2f;color:#fff}html.theme--documenter-dark .panel.is-dark .panel-tabs a.is-active,html.theme--documenter-dark .content kbd.panel .panel-tabs a.is-active{border-bottom-color:#282f2f}html.theme--documenter-dark .panel.is-dark .panel-block.is-active .panel-icon,html.theme--documenter-dark .content kbd.panel .panel-block.is-active .panel-icon{color:#282f2f}html.theme--documenter-dark .panel.is-primary .panel-heading,html.theme--documenter-dark .docstring>section>a.panel.docs-sourcelink .panel-heading{background-color:#375a7f;color:#fff}html.theme--documenter-dark .panel.is-primary .panel-tabs a.is-active,html.theme--documenter-dark .docstring>section>a.panel.docs-sourcelink .panel-tabs a.is-active{border-bottom-color:#375a7f}html.theme--documenter-dark .panel.is-primary .panel-block.is-active .panel-icon,html.theme--documenter-dark .docstring>section>a.panel.docs-sourcelink .panel-block.is-active .panel-icon{color:#375a7f}html.theme--documenter-dark .panel.is-link .panel-heading{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .panel.is-link .panel-tabs a.is-active{border-bottom-color:#1abc9c}html.theme--documenter-dark .panel.is-link .panel-block.is-active .panel-icon{color:#1abc9c}html.theme--documenter-dark .panel.is-info .panel-heading{background-color:#3c5dcd;color:#fff}html.theme--documenter-dark .panel.is-info .panel-tabs a.is-active{border-bottom-color:#3c5dcd}html.theme--documenter-dark .panel.is-info .panel-block.is-active .panel-icon{color:#3c5dcd}html.theme--documenter-dark .panel.is-success .panel-heading{background-color:#259a12;color:#fff}html.theme--documenter-dark .panel.is-success .panel-tabs a.is-active{border-bottom-color:#259a12}html.theme--documenter-dark .panel.is-success .panel-block.is-active .panel-icon{color:#259a12}html.theme--documenter-dark .panel.is-warning .panel-heading{background-color:#f4c72f;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .panel.is-warning .panel-tabs a.is-active{border-bottom-color:#f4c72f}html.theme--documenter-dark .panel.is-warning .panel-block.is-active .panel-icon{color:#f4c72f}html.theme--documenter-dark .panel.is-danger .panel-heading{background-color:#cb3c33;color:#fff}html.theme--documenter-dark .panel.is-danger .panel-tabs a.is-active{border-bottom-color:#cb3c33}html.theme--documenter-dark .panel.is-danger .panel-block.is-active .panel-icon{color:#cb3c33}html.theme--documenter-dark .panel-tabs:not(:last-child),html.theme--documenter-dark .panel-block:not(:last-child){border-bottom:1px solid #ededed}html.theme--documenter-dark .panel-heading{background-color:#343c3d;border-radius:8px 8px 0 0;color:#f2f2f2;font-size:1.25em;font-weight:700;line-height:1.25;padding:0.75em 1em}html.theme--documenter-dark .panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}html.theme--documenter-dark .panel-tabs a{border-bottom:1px solid #5e6d6f;margin-bottom:-1px;padding:0.5em}html.theme--documenter-dark .panel-tabs a.is-active{border-bottom-color:#343c3d;color:#17a689}html.theme--documenter-dark .panel-list a{color:#fff}html.theme--documenter-dark .panel-list a:hover{color:#1abc9c}html.theme--documenter-dark .panel-block{align-items:center;color:#f2f2f2;display:flex;justify-content:flex-start;padding:0.5em 0.75em}html.theme--documenter-dark .panel-block input[type="checkbox"]{margin-right:.75em}html.theme--documenter-dark .panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}html.theme--documenter-dark .panel-block.is-wrapped{flex-wrap:wrap}html.theme--documenter-dark .panel-block.is-active{border-left-color:#1abc9c;color:#17a689}html.theme--documenter-dark .panel-block.is-active .panel-icon{color:#1abc9c}html.theme--documenter-dark .panel-block:last-child{border-bottom-left-radius:8px;border-bottom-right-radius:8px}html.theme--documenter-dark a.panel-block,html.theme--documenter-dark label.panel-block{cursor:pointer}html.theme--documenter-dark a.panel-block:hover,html.theme--documenter-dark label.panel-block:hover{background-color:#282f2f}html.theme--documenter-dark .panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#fff;margin-right:.75em}html.theme--documenter-dark .panel-icon .fa{font-size:inherit;line-height:inherit}html.theme--documenter-dark .tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:1rem;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}html.theme--documenter-dark .tabs a{align-items:center;border-bottom-color:#5e6d6f;border-bottom-style:solid;border-bottom-width:1px;color:#fff;display:flex;justify-content:center;margin-bottom:-1px;padding:0.5em 1em;vertical-align:top}html.theme--documenter-dark .tabs a:hover{border-bottom-color:#f2f2f2;color:#f2f2f2}html.theme--documenter-dark .tabs li{display:block}html.theme--documenter-dark .tabs li.is-active a{border-bottom-color:#1abc9c;color:#1abc9c}html.theme--documenter-dark .tabs ul{align-items:center;border-bottom-color:#5e6d6f;border-bottom-style:solid;border-bottom-width:1px;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}html.theme--documenter-dark .tabs ul.is-left{padding-right:0.75em}html.theme--documenter-dark .tabs ul.is-center{flex:none;justify-content:center;padding-left:0.75em;padding-right:0.75em}html.theme--documenter-dark .tabs ul.is-right{justify-content:flex-end;padding-left:0.75em}html.theme--documenter-dark .tabs .icon:first-child{margin-right:.5em}html.theme--documenter-dark .tabs .icon:last-child{margin-left:.5em}html.theme--documenter-dark .tabs.is-centered ul{justify-content:center}html.theme--documenter-dark .tabs.is-right ul{justify-content:flex-end}html.theme--documenter-dark .tabs.is-boxed a{border:1px solid transparent;border-radius:.4em .4em 0 0}html.theme--documenter-dark .tabs.is-boxed a:hover{background-color:#282f2f;border-bottom-color:#5e6d6f}html.theme--documenter-dark .tabs.is-boxed li.is-active a{background-color:#fff;border-color:#5e6d6f;border-bottom-color:rgba(0,0,0,0) !important}html.theme--documenter-dark .tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}html.theme--documenter-dark .tabs.is-toggle a{border-color:#5e6d6f;border-style:solid;border-width:1px;margin-bottom:0;position:relative}html.theme--documenter-dark .tabs.is-toggle a:hover{background-color:#282f2f;border-color:#8c9b9d;z-index:2}html.theme--documenter-dark .tabs.is-toggle li+li{margin-left:-1px}html.theme--documenter-dark .tabs.is-toggle li:first-child a{border-top-left-radius:.4em;border-bottom-left-radius:.4em}html.theme--documenter-dark .tabs.is-toggle li:last-child a{border-top-right-radius:.4em;border-bottom-right-radius:.4em}html.theme--documenter-dark .tabs.is-toggle li.is-active a{background-color:#1abc9c;border-color:#1abc9c;color:#fff;z-index:1}html.theme--documenter-dark .tabs.is-toggle ul{border-bottom:none}html.theme--documenter-dark .tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:9999px;border-top-left-radius:9999px;padding-left:1.25em}html.theme--documenter-dark .tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:9999px;border-top-right-radius:9999px;padding-right:1.25em}html.theme--documenter-dark .tabs.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.tabs{font-size:.75rem}html.theme--documenter-dark .tabs.is-medium{font-size:1.25rem}html.theme--documenter-dark .tabs.is-large{font-size:1.5rem}html.theme--documenter-dark .column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>html.theme--documenter-dark .column.is-narrow{flex:none;width:unset}.columns.is-mobile>html.theme--documenter-dark .column.is-full{flex:none;width:100%}.columns.is-mobile>html.theme--documenter-dark .column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>html.theme--documenter-dark .column.is-half{flex:none;width:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>html.theme--documenter-dark .column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>html.theme--documenter-dark .column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>html.theme--documenter-dark .column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>html.theme--documenter-dark .column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-half{margin-left:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>html.theme--documenter-dark .column.is-0{flex:none;width:0%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-0{margin-left:0%}.columns.is-mobile>html.theme--documenter-dark .column.is-1{flex:none;width:8.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-1{margin-left:8.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-2{flex:none;width:16.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-2{margin-left:16.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-3{flex:none;width:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-3{margin-left:25%}.columns.is-mobile>html.theme--documenter-dark .column.is-4{flex:none;width:33.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-4{margin-left:33.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-5{flex:none;width:41.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-5{margin-left:41.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-6{flex:none;width:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-6{margin-left:50%}.columns.is-mobile>html.theme--documenter-dark .column.is-7{flex:none;width:58.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-7{margin-left:58.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-8{flex:none;width:66.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-8{margin-left:66.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-9{flex:none;width:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-9{margin-left:75%}.columns.is-mobile>html.theme--documenter-dark .column.is-10{flex:none;width:83.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-10{margin-left:83.33333337%}.columns.is-mobile>html.theme--documenter-dark .column.is-11{flex:none;width:91.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-11{margin-left:91.66666674%}.columns.is-mobile>html.theme--documenter-dark .column.is-12{flex:none;width:100%}.columns.is-mobile>html.theme--documenter-dark .column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){html.theme--documenter-dark .column.is-narrow-mobile{flex:none;width:unset}html.theme--documenter-dark .column.is-full-mobile{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-mobile{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-mobile{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-mobile{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-mobile{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-mobile{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-mobile{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-mobile{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-mobile{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-mobile{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-mobile{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-mobile{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-mobile{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-mobile{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-mobile{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-mobile{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-mobile{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-mobile{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-mobile{margin-left:80%}html.theme--documenter-dark .column.is-0-mobile{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-mobile{margin-left:0%}html.theme--documenter-dark .column.is-1-mobile{flex:none;width:8.33333337%}html.theme--documenter-dark .column.is-offset-1-mobile{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2-mobile{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2-mobile{margin-left:16.66666674%}html.theme--documenter-dark .column.is-3-mobile{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-mobile{margin-left:25%}html.theme--documenter-dark .column.is-4-mobile{flex:none;width:33.33333337%}html.theme--documenter-dark .column.is-offset-4-mobile{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5-mobile{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5-mobile{margin-left:41.66666674%}html.theme--documenter-dark .column.is-6-mobile{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-mobile{margin-left:50%}html.theme--documenter-dark .column.is-7-mobile{flex:none;width:58.33333337%}html.theme--documenter-dark .column.is-offset-7-mobile{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8-mobile{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8-mobile{margin-left:66.66666674%}html.theme--documenter-dark .column.is-9-mobile{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-mobile{margin-left:75%}html.theme--documenter-dark .column.is-10-mobile{flex:none;width:83.33333337%}html.theme--documenter-dark .column.is-offset-10-mobile{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11-mobile{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11-mobile{margin-left:91.66666674%}html.theme--documenter-dark .column.is-12-mobile{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .column.is-narrow,html.theme--documenter-dark .column.is-narrow-tablet{flex:none;width:unset}html.theme--documenter-dark .column.is-full,html.theme--documenter-dark .column.is-full-tablet{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters,html.theme--documenter-dark .column.is-three-quarters-tablet{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds,html.theme--documenter-dark .column.is-two-thirds-tablet{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half,html.theme--documenter-dark .column.is-half-tablet{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third,html.theme--documenter-dark .column.is-one-third-tablet{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter,html.theme--documenter-dark .column.is-one-quarter-tablet{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth,html.theme--documenter-dark .column.is-one-fifth-tablet{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths,html.theme--documenter-dark .column.is-two-fifths-tablet{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths,html.theme--documenter-dark .column.is-three-fifths-tablet{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths,html.theme--documenter-dark .column.is-four-fifths-tablet{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters,html.theme--documenter-dark .column.is-offset-three-quarters-tablet{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds,html.theme--documenter-dark .column.is-offset-two-thirds-tablet{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half,html.theme--documenter-dark .column.is-offset-half-tablet{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third,html.theme--documenter-dark .column.is-offset-one-third-tablet{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter,html.theme--documenter-dark .column.is-offset-one-quarter-tablet{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth,html.theme--documenter-dark .column.is-offset-one-fifth-tablet{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths,html.theme--documenter-dark .column.is-offset-two-fifths-tablet{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths,html.theme--documenter-dark .column.is-offset-three-fifths-tablet{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths,html.theme--documenter-dark .column.is-offset-four-fifths-tablet{margin-left:80%}html.theme--documenter-dark .column.is-0,html.theme--documenter-dark .column.is-0-tablet{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0,html.theme--documenter-dark .column.is-offset-0-tablet{margin-left:0%}html.theme--documenter-dark .column.is-1,html.theme--documenter-dark .column.is-1-tablet{flex:none;width:8.33333337%}html.theme--documenter-dark .column.is-offset-1,html.theme--documenter-dark .column.is-offset-1-tablet{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2,html.theme--documenter-dark .column.is-2-tablet{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2,html.theme--documenter-dark .column.is-offset-2-tablet{margin-left:16.66666674%}html.theme--documenter-dark .column.is-3,html.theme--documenter-dark .column.is-3-tablet{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3,html.theme--documenter-dark .column.is-offset-3-tablet{margin-left:25%}html.theme--documenter-dark .column.is-4,html.theme--documenter-dark .column.is-4-tablet{flex:none;width:33.33333337%}html.theme--documenter-dark .column.is-offset-4,html.theme--documenter-dark .column.is-offset-4-tablet{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5,html.theme--documenter-dark .column.is-5-tablet{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5,html.theme--documenter-dark .column.is-offset-5-tablet{margin-left:41.66666674%}html.theme--documenter-dark .column.is-6,html.theme--documenter-dark .column.is-6-tablet{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6,html.theme--documenter-dark .column.is-offset-6-tablet{margin-left:50%}html.theme--documenter-dark .column.is-7,html.theme--documenter-dark .column.is-7-tablet{flex:none;width:58.33333337%}html.theme--documenter-dark .column.is-offset-7,html.theme--documenter-dark .column.is-offset-7-tablet{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8,html.theme--documenter-dark .column.is-8-tablet{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8,html.theme--documenter-dark .column.is-offset-8-tablet{margin-left:66.66666674%}html.theme--documenter-dark .column.is-9,html.theme--documenter-dark .column.is-9-tablet{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9,html.theme--documenter-dark .column.is-offset-9-tablet{margin-left:75%}html.theme--documenter-dark .column.is-10,html.theme--documenter-dark .column.is-10-tablet{flex:none;width:83.33333337%}html.theme--documenter-dark .column.is-offset-10,html.theme--documenter-dark .column.is-offset-10-tablet{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11,html.theme--documenter-dark .column.is-11-tablet{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11,html.theme--documenter-dark .column.is-offset-11-tablet{margin-left:91.66666674%}html.theme--documenter-dark .column.is-12,html.theme--documenter-dark .column.is-12-tablet{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12,html.theme--documenter-dark .column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1055px){html.theme--documenter-dark .column.is-narrow-touch{flex:none;width:unset}html.theme--documenter-dark .column.is-full-touch{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-touch{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-touch{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-touch{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-touch{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-touch{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-touch{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-touch{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-touch{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-touch{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-touch{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-touch{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-touch{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-touch{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-touch{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-touch{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-touch{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-touch{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-touch{margin-left:80%}html.theme--documenter-dark .column.is-0-touch{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-touch{margin-left:0%}html.theme--documenter-dark .column.is-1-touch{flex:none;width:8.33333337%}html.theme--documenter-dark .column.is-offset-1-touch{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2-touch{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2-touch{margin-left:16.66666674%}html.theme--documenter-dark .column.is-3-touch{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-touch{margin-left:25%}html.theme--documenter-dark .column.is-4-touch{flex:none;width:33.33333337%}html.theme--documenter-dark .column.is-offset-4-touch{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5-touch{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5-touch{margin-left:41.66666674%}html.theme--documenter-dark .column.is-6-touch{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-touch{margin-left:50%}html.theme--documenter-dark .column.is-7-touch{flex:none;width:58.33333337%}html.theme--documenter-dark .column.is-offset-7-touch{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8-touch{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8-touch{margin-left:66.66666674%}html.theme--documenter-dark .column.is-9-touch{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-touch{margin-left:75%}html.theme--documenter-dark .column.is-10-touch{flex:none;width:83.33333337%}html.theme--documenter-dark .column.is-offset-10-touch{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11-touch{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11-touch{margin-left:91.66666674%}html.theme--documenter-dark .column.is-12-touch{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1056px){html.theme--documenter-dark .column.is-narrow-desktop{flex:none;width:unset}html.theme--documenter-dark .column.is-full-desktop{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-desktop{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-desktop{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-desktop{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-desktop{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-desktop{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-desktop{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-desktop{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-desktop{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-desktop{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-desktop{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-desktop{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-desktop{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-desktop{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-desktop{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-desktop{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-desktop{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-desktop{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-desktop{margin-left:80%}html.theme--documenter-dark .column.is-0-desktop{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-desktop{margin-left:0%}html.theme--documenter-dark .column.is-1-desktop{flex:none;width:8.33333337%}html.theme--documenter-dark .column.is-offset-1-desktop{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2-desktop{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2-desktop{margin-left:16.66666674%}html.theme--documenter-dark .column.is-3-desktop{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-desktop{margin-left:25%}html.theme--documenter-dark .column.is-4-desktop{flex:none;width:33.33333337%}html.theme--documenter-dark .column.is-offset-4-desktop{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5-desktop{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5-desktop{margin-left:41.66666674%}html.theme--documenter-dark .column.is-6-desktop{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-desktop{margin-left:50%}html.theme--documenter-dark .column.is-7-desktop{flex:none;width:58.33333337%}html.theme--documenter-dark .column.is-offset-7-desktop{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8-desktop{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8-desktop{margin-left:66.66666674%}html.theme--documenter-dark .column.is-9-desktop{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-desktop{margin-left:75%}html.theme--documenter-dark .column.is-10-desktop{flex:none;width:83.33333337%}html.theme--documenter-dark .column.is-offset-10-desktop{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11-desktop{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11-desktop{margin-left:91.66666674%}html.theme--documenter-dark .column.is-12-desktop{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){html.theme--documenter-dark .column.is-narrow-widescreen{flex:none;width:unset}html.theme--documenter-dark .column.is-full-widescreen{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-widescreen{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-widescreen{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-widescreen{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-widescreen{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-widescreen{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-widescreen{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-widescreen{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-widescreen{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-widescreen{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-widescreen{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-widescreen{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-widescreen{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-widescreen{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-widescreen{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-widescreen{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-widescreen{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-widescreen{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-widescreen{margin-left:80%}html.theme--documenter-dark .column.is-0-widescreen{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-widescreen{margin-left:0%}html.theme--documenter-dark .column.is-1-widescreen{flex:none;width:8.33333337%}html.theme--documenter-dark .column.is-offset-1-widescreen{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2-widescreen{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2-widescreen{margin-left:16.66666674%}html.theme--documenter-dark .column.is-3-widescreen{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-widescreen{margin-left:25%}html.theme--documenter-dark .column.is-4-widescreen{flex:none;width:33.33333337%}html.theme--documenter-dark .column.is-offset-4-widescreen{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5-widescreen{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5-widescreen{margin-left:41.66666674%}html.theme--documenter-dark .column.is-6-widescreen{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-widescreen{margin-left:50%}html.theme--documenter-dark .column.is-7-widescreen{flex:none;width:58.33333337%}html.theme--documenter-dark .column.is-offset-7-widescreen{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8-widescreen{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8-widescreen{margin-left:66.66666674%}html.theme--documenter-dark .column.is-9-widescreen{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-widescreen{margin-left:75%}html.theme--documenter-dark .column.is-10-widescreen{flex:none;width:83.33333337%}html.theme--documenter-dark .column.is-offset-10-widescreen{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11-widescreen{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11-widescreen{margin-left:91.66666674%}html.theme--documenter-dark .column.is-12-widescreen{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){html.theme--documenter-dark .column.is-narrow-fullhd{flex:none;width:unset}html.theme--documenter-dark .column.is-full-fullhd{flex:none;width:100%}html.theme--documenter-dark .column.is-three-quarters-fullhd{flex:none;width:75%}html.theme--documenter-dark .column.is-two-thirds-fullhd{flex:none;width:66.6666%}html.theme--documenter-dark .column.is-half-fullhd{flex:none;width:50%}html.theme--documenter-dark .column.is-one-third-fullhd{flex:none;width:33.3333%}html.theme--documenter-dark .column.is-one-quarter-fullhd{flex:none;width:25%}html.theme--documenter-dark .column.is-one-fifth-fullhd{flex:none;width:20%}html.theme--documenter-dark .column.is-two-fifths-fullhd{flex:none;width:40%}html.theme--documenter-dark .column.is-three-fifths-fullhd{flex:none;width:60%}html.theme--documenter-dark .column.is-four-fifths-fullhd{flex:none;width:80%}html.theme--documenter-dark .column.is-offset-three-quarters-fullhd{margin-left:75%}html.theme--documenter-dark .column.is-offset-two-thirds-fullhd{margin-left:66.6666%}html.theme--documenter-dark .column.is-offset-half-fullhd{margin-left:50%}html.theme--documenter-dark .column.is-offset-one-third-fullhd{margin-left:33.3333%}html.theme--documenter-dark .column.is-offset-one-quarter-fullhd{margin-left:25%}html.theme--documenter-dark .column.is-offset-one-fifth-fullhd{margin-left:20%}html.theme--documenter-dark .column.is-offset-two-fifths-fullhd{margin-left:40%}html.theme--documenter-dark .column.is-offset-three-fifths-fullhd{margin-left:60%}html.theme--documenter-dark .column.is-offset-four-fifths-fullhd{margin-left:80%}html.theme--documenter-dark .column.is-0-fullhd{flex:none;width:0%}html.theme--documenter-dark .column.is-offset-0-fullhd{margin-left:0%}html.theme--documenter-dark .column.is-1-fullhd{flex:none;width:8.33333337%}html.theme--documenter-dark .column.is-offset-1-fullhd{margin-left:8.33333337%}html.theme--documenter-dark .column.is-2-fullhd{flex:none;width:16.66666674%}html.theme--documenter-dark .column.is-offset-2-fullhd{margin-left:16.66666674%}html.theme--documenter-dark .column.is-3-fullhd{flex:none;width:25%}html.theme--documenter-dark .column.is-offset-3-fullhd{margin-left:25%}html.theme--documenter-dark .column.is-4-fullhd{flex:none;width:33.33333337%}html.theme--documenter-dark .column.is-offset-4-fullhd{margin-left:33.33333337%}html.theme--documenter-dark .column.is-5-fullhd{flex:none;width:41.66666674%}html.theme--documenter-dark .column.is-offset-5-fullhd{margin-left:41.66666674%}html.theme--documenter-dark .column.is-6-fullhd{flex:none;width:50%}html.theme--documenter-dark .column.is-offset-6-fullhd{margin-left:50%}html.theme--documenter-dark .column.is-7-fullhd{flex:none;width:58.33333337%}html.theme--documenter-dark .column.is-offset-7-fullhd{margin-left:58.33333337%}html.theme--documenter-dark .column.is-8-fullhd{flex:none;width:66.66666674%}html.theme--documenter-dark .column.is-offset-8-fullhd{margin-left:66.66666674%}html.theme--documenter-dark .column.is-9-fullhd{flex:none;width:75%}html.theme--documenter-dark .column.is-offset-9-fullhd{margin-left:75%}html.theme--documenter-dark .column.is-10-fullhd{flex:none;width:83.33333337%}html.theme--documenter-dark .column.is-offset-10-fullhd{margin-left:83.33333337%}html.theme--documenter-dark .column.is-11-fullhd{flex:none;width:91.66666674%}html.theme--documenter-dark .column.is-offset-11-fullhd{margin-left:91.66666674%}html.theme--documenter-dark .column.is-12-fullhd{flex:none;width:100%}html.theme--documenter-dark .column.is-offset-12-fullhd{margin-left:100%}}html.theme--documenter-dark .columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--documenter-dark .columns:last-child{margin-bottom:-.75rem}html.theme--documenter-dark .columns:not(:last-child){margin-bottom:calc(1.5rem - .75rem)}html.theme--documenter-dark .columns.is-centered{justify-content:center}html.theme--documenter-dark .columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}html.theme--documenter-dark .columns.is-gapless>.column{margin:0;padding:0 !important}html.theme--documenter-dark .columns.is-gapless:not(:last-child){margin-bottom:1.5rem}html.theme--documenter-dark .columns.is-gapless:last-child{margin-bottom:0}html.theme--documenter-dark .columns.is-mobile{display:flex}html.theme--documenter-dark .columns.is-multiline{flex-wrap:wrap}html.theme--documenter-dark .columns.is-vcentered{align-items:center}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns:not(.is-desktop){display:flex}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-desktop{display:flex}}html.theme--documenter-dark .columns.is-variable{--columnGap: 0.75rem;margin-left:calc(-1 * var(--columnGap));margin-right:calc(-1 * var(--columnGap))}html.theme--documenter-dark .columns.is-variable>.column{padding-left:var(--columnGap);padding-right:var(--columnGap)}html.theme--documenter-dark .columns.is-variable.is-0{--columnGap: 0rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-0-mobile{--columnGap: 0rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-0-tablet{--columnGap: 0rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-0-tablet-only{--columnGap: 0rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-0-touch{--columnGap: 0rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-0-desktop{--columnGap: 0rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-0-desktop-only{--columnGap: 0rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-0-widescreen{--columnGap: 0rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-0-widescreen-only{--columnGap: 0rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-0-fullhd{--columnGap: 0rem}}html.theme--documenter-dark .columns.is-variable.is-1{--columnGap: .25rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-1-mobile{--columnGap: .25rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-1-tablet{--columnGap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-1-tablet-only{--columnGap: .25rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-1-touch{--columnGap: .25rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-1-desktop{--columnGap: .25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-1-desktop-only{--columnGap: .25rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-1-widescreen{--columnGap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-1-widescreen-only{--columnGap: .25rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-1-fullhd{--columnGap: .25rem}}html.theme--documenter-dark .columns.is-variable.is-2{--columnGap: .5rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-2-mobile{--columnGap: .5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-2-tablet{--columnGap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-2-tablet-only{--columnGap: .5rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-2-touch{--columnGap: .5rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-2-desktop{--columnGap: .5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-2-desktop-only{--columnGap: .5rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-2-widescreen{--columnGap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-2-widescreen-only{--columnGap: .5rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-2-fullhd{--columnGap: .5rem}}html.theme--documenter-dark .columns.is-variable.is-3{--columnGap: .75rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-3-mobile{--columnGap: .75rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-3-tablet{--columnGap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-3-tablet-only{--columnGap: .75rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-3-touch{--columnGap: .75rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-3-desktop{--columnGap: .75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-3-desktop-only{--columnGap: .75rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-3-widescreen{--columnGap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-3-widescreen-only{--columnGap: .75rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-3-fullhd{--columnGap: .75rem}}html.theme--documenter-dark .columns.is-variable.is-4{--columnGap: 1rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-4-mobile{--columnGap: 1rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-4-tablet{--columnGap: 1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-4-tablet-only{--columnGap: 1rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-4-touch{--columnGap: 1rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-4-desktop{--columnGap: 1rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-4-desktop-only{--columnGap: 1rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-4-widescreen{--columnGap: 1rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-4-widescreen-only{--columnGap: 1rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-4-fullhd{--columnGap: 1rem}}html.theme--documenter-dark .columns.is-variable.is-5{--columnGap: 1.25rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-5-mobile{--columnGap: 1.25rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-5-tablet{--columnGap: 1.25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-5-tablet-only{--columnGap: 1.25rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-5-touch{--columnGap: 1.25rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-5-desktop{--columnGap: 1.25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-5-desktop-only{--columnGap: 1.25rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-5-widescreen{--columnGap: 1.25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-5-widescreen-only{--columnGap: 1.25rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-5-fullhd{--columnGap: 1.25rem}}html.theme--documenter-dark .columns.is-variable.is-6{--columnGap: 1.5rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-6-mobile{--columnGap: 1.5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-6-tablet{--columnGap: 1.5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-6-tablet-only{--columnGap: 1.5rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-6-touch{--columnGap: 1.5rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-6-desktop{--columnGap: 1.5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-6-desktop-only{--columnGap: 1.5rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-6-widescreen{--columnGap: 1.5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-6-widescreen-only{--columnGap: 1.5rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-6-fullhd{--columnGap: 1.5rem}}html.theme--documenter-dark .columns.is-variable.is-7{--columnGap: 1.75rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-7-mobile{--columnGap: 1.75rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-7-tablet{--columnGap: 1.75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-7-tablet-only{--columnGap: 1.75rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-7-touch{--columnGap: 1.75rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-7-desktop{--columnGap: 1.75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-7-desktop-only{--columnGap: 1.75rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-7-widescreen{--columnGap: 1.75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-7-widescreen-only{--columnGap: 1.75rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-7-fullhd{--columnGap: 1.75rem}}html.theme--documenter-dark .columns.is-variable.is-8{--columnGap: 2rem}@media screen and (max-width: 768px){html.theme--documenter-dark .columns.is-variable.is-8-mobile{--columnGap: 2rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .columns.is-variable.is-8-tablet{--columnGap: 2rem}}@media screen and (min-width: 769px) and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-8-tablet-only{--columnGap: 2rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark .columns.is-variable.is-8-touch{--columnGap: 2rem}}@media screen and (min-width: 1056px){html.theme--documenter-dark .columns.is-variable.is-8-desktop{--columnGap: 2rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){html.theme--documenter-dark .columns.is-variable.is-8-desktop-only{--columnGap: 2rem}}@media screen and (min-width: 1216px){html.theme--documenter-dark .columns.is-variable.is-8-widescreen{--columnGap: 2rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){html.theme--documenter-dark .columns.is-variable.is-8-widescreen-only{--columnGap: 2rem}}@media screen and (min-width: 1408px){html.theme--documenter-dark .columns.is-variable.is-8-fullhd{--columnGap: 2rem}}html.theme--documenter-dark .tile{align-items:stretch;display:block;flex-basis:0;flex-grow:1;flex-shrink:1;min-height:min-content}html.theme--documenter-dark .tile.is-ancestor{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}html.theme--documenter-dark .tile.is-ancestor:last-child{margin-bottom:-.75rem}html.theme--documenter-dark .tile.is-ancestor:not(:last-child){margin-bottom:.75rem}html.theme--documenter-dark .tile.is-child{margin:0 !important}html.theme--documenter-dark .tile.is-parent{padding:.75rem}html.theme--documenter-dark .tile.is-vertical{flex-direction:column}html.theme--documenter-dark .tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem !important}@media screen and (min-width: 769px),print{html.theme--documenter-dark .tile:not(.is-child){display:flex}html.theme--documenter-dark .tile.is-1{flex:none;width:8.33333337%}html.theme--documenter-dark .tile.is-2{flex:none;width:16.66666674%}html.theme--documenter-dark .tile.is-3{flex:none;width:25%}html.theme--documenter-dark .tile.is-4{flex:none;width:33.33333337%}html.theme--documenter-dark .tile.is-5{flex:none;width:41.66666674%}html.theme--documenter-dark .tile.is-6{flex:none;width:50%}html.theme--documenter-dark .tile.is-7{flex:none;width:58.33333337%}html.theme--documenter-dark .tile.is-8{flex:none;width:66.66666674%}html.theme--documenter-dark .tile.is-9{flex:none;width:75%}html.theme--documenter-dark .tile.is-10{flex:none;width:83.33333337%}html.theme--documenter-dark .tile.is-11{flex:none;width:91.66666674%}html.theme--documenter-dark .tile.is-12{flex:none;width:100%}}html.theme--documenter-dark .hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}html.theme--documenter-dark .hero .navbar{background:none}html.theme--documenter-dark .hero .tabs ul{border-bottom:none}html.theme--documenter-dark .hero.is-white{background-color:#fff;color:#0a0a0a}html.theme--documenter-dark .hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-white strong{color:inherit}html.theme--documenter-dark .hero.is-white .title{color:#0a0a0a}html.theme--documenter-dark .hero.is-white .subtitle{color:rgba(10,10,10,0.9)}html.theme--documenter-dark .hero.is-white .subtitle a:not(.button),html.theme--documenter-dark .hero.is-white .subtitle strong{color:#0a0a0a}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-white .navbar-menu{background-color:#fff}}html.theme--documenter-dark .hero.is-white .navbar-item,html.theme--documenter-dark .hero.is-white .navbar-link{color:rgba(10,10,10,0.7)}html.theme--documenter-dark .hero.is-white a.navbar-item:hover,html.theme--documenter-dark .hero.is-white a.navbar-item.is-active,html.theme--documenter-dark .hero.is-white .navbar-link:hover,html.theme--documenter-dark .hero.is-white .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}html.theme--documenter-dark .hero.is-white .tabs a{color:#0a0a0a;opacity:0.9}html.theme--documenter-dark .hero.is-white .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-white .tabs li.is-active a{color:#fff !important;opacity:1}html.theme--documenter-dark .hero.is-white .tabs.is-boxed a,html.theme--documenter-dark .hero.is-white .tabs.is-toggle a{color:#0a0a0a}html.theme--documenter-dark .hero.is-white .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-white .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-white .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-white .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-white .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-white .tabs.is-toggle li.is-active a:hover{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}html.theme--documenter-dark .hero.is-white.is-bold{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}}html.theme--documenter-dark .hero.is-black{background-color:#0a0a0a;color:#fff}html.theme--documenter-dark .hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-black strong{color:inherit}html.theme--documenter-dark .hero.is-black .title{color:#fff}html.theme--documenter-dark .hero.is-black .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-black .subtitle a:not(.button),html.theme--documenter-dark .hero.is-black .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-black .navbar-menu{background-color:#0a0a0a}}html.theme--documenter-dark .hero.is-black .navbar-item,html.theme--documenter-dark .hero.is-black .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-black a.navbar-item:hover,html.theme--documenter-dark .hero.is-black a.navbar-item.is-active,html.theme--documenter-dark .hero.is-black .navbar-link:hover,html.theme--documenter-dark .hero.is-black .navbar-link.is-active{background-color:#000;color:#fff}html.theme--documenter-dark .hero.is-black .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-black .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-black .tabs li.is-active a{color:#0a0a0a !important;opacity:1}html.theme--documenter-dark .hero.is-black .tabs.is-boxed a,html.theme--documenter-dark .hero.is-black .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-black .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-black .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-black .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-black .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-black .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-black .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#0a0a0a}html.theme--documenter-dark .hero.is-black.is-bold{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}}html.theme--documenter-dark .hero.is-light{background-color:#ecf0f1;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-light strong{color:inherit}html.theme--documenter-dark .hero.is-light .title{color:rgba(0,0,0,0.7)}html.theme--documenter-dark .hero.is-light .subtitle{color:rgba(0,0,0,0.9)}html.theme--documenter-dark .hero.is-light .subtitle a:not(.button),html.theme--documenter-dark .hero.is-light .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-light .navbar-menu{background-color:#ecf0f1}}html.theme--documenter-dark .hero.is-light .navbar-item,html.theme--documenter-dark .hero.is-light .navbar-link{color:rgba(0,0,0,0.7)}html.theme--documenter-dark .hero.is-light a.navbar-item:hover,html.theme--documenter-dark .hero.is-light a.navbar-item.is-active,html.theme--documenter-dark .hero.is-light .navbar-link:hover,html.theme--documenter-dark .hero.is-light .navbar-link.is-active{background-color:#dde4e6;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .hero.is-light .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--documenter-dark .hero.is-light .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-light .tabs li.is-active a{color:#ecf0f1 !important;opacity:1}html.theme--documenter-dark .hero.is-light .tabs.is-boxed a,html.theme--documenter-dark .hero.is-light .tabs.is-toggle a{color:rgba(0,0,0,0.7)}html.theme--documenter-dark .hero.is-light .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-light .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-light .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-light .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);color:#ecf0f1}html.theme--documenter-dark .hero.is-light.is-bold{background-image:linear-gradient(141deg, #cadfe0 0%, #ecf0f1 71%, #fafbfc 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg, #cadfe0 0%, #ecf0f1 71%, #fafbfc 100%)}}html.theme--documenter-dark .hero.is-dark,html.theme--documenter-dark .content kbd.hero{background-color:#282f2f;color:#fff}html.theme--documenter-dark .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-dark strong,html.theme--documenter-dark .content kbd.hero strong{color:inherit}html.theme--documenter-dark .hero.is-dark .title,html.theme--documenter-dark .content kbd.hero .title{color:#fff}html.theme--documenter-dark .hero.is-dark .subtitle,html.theme--documenter-dark .content kbd.hero .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-dark .subtitle a:not(.button),html.theme--documenter-dark .content kbd.hero .subtitle a:not(.button),html.theme--documenter-dark .hero.is-dark .subtitle strong,html.theme--documenter-dark .content kbd.hero .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-dark .navbar-menu,html.theme--documenter-dark .content kbd.hero .navbar-menu{background-color:#282f2f}}html.theme--documenter-dark .hero.is-dark .navbar-item,html.theme--documenter-dark .content kbd.hero .navbar-item,html.theme--documenter-dark .hero.is-dark .navbar-link,html.theme--documenter-dark .content kbd.hero .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-dark a.navbar-item:hover,html.theme--documenter-dark .content kbd.hero a.navbar-item:hover,html.theme--documenter-dark .hero.is-dark a.navbar-item.is-active,html.theme--documenter-dark .content kbd.hero a.navbar-item.is-active,html.theme--documenter-dark .hero.is-dark .navbar-link:hover,html.theme--documenter-dark .content kbd.hero .navbar-link:hover,html.theme--documenter-dark .hero.is-dark .navbar-link.is-active,html.theme--documenter-dark .content kbd.hero .navbar-link.is-active{background-color:#1d2122;color:#fff}html.theme--documenter-dark .hero.is-dark .tabs a,html.theme--documenter-dark .content kbd.hero .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-dark .tabs a:hover,html.theme--documenter-dark .content kbd.hero .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-dark .tabs li.is-active a,html.theme--documenter-dark .content kbd.hero .tabs li.is-active a{color:#282f2f !important;opacity:1}html.theme--documenter-dark .hero.is-dark .tabs.is-boxed a,html.theme--documenter-dark .content kbd.hero .tabs.is-boxed a,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle a,html.theme--documenter-dark .content kbd.hero .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-dark .tabs.is-boxed a:hover,html.theme--documenter-dark .content kbd.hero .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle a:hover,html.theme--documenter-dark .content kbd.hero .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-dark .tabs.is-boxed li.is-active a,html.theme--documenter-dark .content kbd.hero .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-dark .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle li.is-active a,html.theme--documenter-dark .content kbd.hero .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-dark .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#282f2f}html.theme--documenter-dark .hero.is-dark.is-bold,html.theme--documenter-dark .content kbd.hero.is-bold{background-image:linear-gradient(141deg, #0f1615 0%, #282f2f 71%, #313c40 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-dark.is-bold .navbar-menu,html.theme--documenter-dark .content kbd.hero.is-bold .navbar-menu{background-image:linear-gradient(141deg, #0f1615 0%, #282f2f 71%, #313c40 100%)}}html.theme--documenter-dark .hero.is-primary,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink{background-color:#375a7f;color:#fff}html.theme--documenter-dark .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-primary strong,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink strong{color:inherit}html.theme--documenter-dark .hero.is-primary .title,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .title{color:#fff}html.theme--documenter-dark .hero.is-primary .subtitle,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-primary .subtitle a:not(.button),html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .subtitle a:not(.button),html.theme--documenter-dark .hero.is-primary .subtitle strong,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-primary .navbar-menu,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-menu{background-color:#375a7f}}html.theme--documenter-dark .hero.is-primary .navbar-item,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-item,html.theme--documenter-dark .hero.is-primary .navbar-link,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-primary a.navbar-item:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink a.navbar-item:hover,html.theme--documenter-dark .hero.is-primary a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink a.navbar-item.is-active,html.theme--documenter-dark .hero.is-primary .navbar-link:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-link:hover,html.theme--documenter-dark .hero.is-primary .navbar-link.is-active,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar-link.is-active{background-color:#2f4d6d;color:#fff}html.theme--documenter-dark .hero.is-primary .tabs a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-primary .tabs a:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-primary .tabs li.is-active a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs li.is-active a{color:#375a7f !important;opacity:1}html.theme--documenter-dark .hero.is-primary .tabs.is-boxed a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-primary .tabs.is-boxed a:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle a:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-primary .tabs.is-boxed li.is-active a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-primary .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle li.is-active a,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#375a7f}html.theme--documenter-dark .hero.is-primary.is-bold,html.theme--documenter-dark .docstring>section>a.hero.is-bold.docs-sourcelink{background-image:linear-gradient(141deg, #214b62 0%, #375a7f 71%, #3a5796 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-primary.is-bold .navbar-menu,html.theme--documenter-dark .docstring>section>a.hero.is-bold.docs-sourcelink .navbar-menu{background-image:linear-gradient(141deg, #214b62 0%, #375a7f 71%, #3a5796 100%)}}html.theme--documenter-dark .hero.is-link{background-color:#1abc9c;color:#fff}html.theme--documenter-dark .hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),html.theme--documenter-dark .hero.is-link strong{color:inherit}html.theme--documenter-dark .hero.is-link .title{color:#fff}html.theme--documenter-dark .hero.is-link .subtitle{color:rgba(255,255,255,0.9)}html.theme--documenter-dark .hero.is-link .subtitle a:not(.button),html.theme--documenter-dark .hero.is-link .subtitle strong{color:#fff}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-link .navbar-menu{background-color:#1abc9c}}html.theme--documenter-dark .hero.is-link .navbar-item,html.theme--documenter-dark .hero.is-link .navbar-link{color:rgba(255,255,255,0.7)}html.theme--documenter-dark .hero.is-link a.navbar-item:hover,html.theme--documenter-dark .hero.is-link a.navbar-item.is-active,html.theme--documenter-dark .hero.is-link .navbar-link:hover,html.theme--documenter-dark .hero.is-link .navbar-link.is-active{background-color:#17a689;color:#fff}html.theme--documenter-dark .hero.is-link .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-link .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-link .tabs li.is-active a{color:#1abc9c !important;opacity:1}html.theme--documenter-dark .hero.is-link .tabs.is-boxed a,html.theme--documenter-dark .hero.is-link .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-link .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-link .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-link .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-link .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#1abc9c}html.theme--documenter-dark .hero.is-link.is-bold{background-image:linear-gradient(141deg, #0c9764 0%, #1abc9c 71%, #17d8d2 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg, #0c9764 0%, #1abc9c 71%, #17d8d2 100%)}}html.theme--documenter-dark .hero.is-info{background-color:#3c5dcd;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:#3c5dcd}}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:#3151bf;color:#fff}html.theme--documenter-dark .hero.is-info .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-info .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-info .tabs li.is-active a{color:#3c5dcd !important;opacity:1}html.theme--documenter-dark .hero.is-info .tabs.is-boxed a,html.theme--documenter-dark .hero.is-info .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-info .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-info .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-info .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-info .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-info .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#3c5dcd}html.theme--documenter-dark .hero.is-info.is-bold{background-image:linear-gradient(141deg, #215bb5 0%, #3c5dcd 71%, #4b53d8 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg, #215bb5 0%, #3c5dcd 71%, #4b53d8 100%)}}html.theme--documenter-dark .hero.is-success{background-color:#259a12;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:#259a12}}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:#20830f;color:#fff}html.theme--documenter-dark .hero.is-success .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-success .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-success .tabs li.is-active a{color:#259a12 !important;opacity:1}html.theme--documenter-dark .hero.is-success .tabs.is-boxed a,html.theme--documenter-dark .hero.is-success .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-success .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-success .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-success .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-success .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-success .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#259a12}html.theme--documenter-dark .hero.is-success.is-bold{background-image:linear-gradient(141deg, #287207 0%, #259a12 71%, #10b614 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg, #287207 0%, #259a12 71%, #10b614 100%)}}html.theme--documenter-dark .hero.is-warning{background-color:#f4c72f;color:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7)}html.theme--documenter-dark .hero.is-warning .subtitle{color:rgba(0,0,0,0.9)}html.theme--documenter-dark .hero.is-warning .subtitle a:not(.button),html.theme--documenter-dark .hero.is-warning .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){html.theme--documenter-dark .hero.is-warning .navbar-menu{background-color:#f4c72f}}html.theme--documenter-dark .hero.is-warning .navbar-item,html.theme--documenter-dark .hero.is-warning .navbar-link{color:rgba(0,0,0,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:#f3c017;color:rgba(0,0,0,0.7)}html.theme--documenter-dark .hero.is-warning .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}html.theme--documenter-dark .hero.is-warning .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-warning .tabs li.is-active a{color:#f4c72f !important;opacity:1}html.theme--documenter-dark .hero.is-warning .tabs.is-boxed a,html.theme--documenter-dark .hero.is-warning .tabs.is-toggle a{color:rgba(0,0,0,0.7)}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:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);color:#f4c72f}html.theme--documenter-dark .hero.is-warning.is-bold{background-image:linear-gradient(141deg, #f09100 0%, #f4c72f 71%, #faef42 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg, #f09100 0%, #f4c72f 71%, #faef42 100%)}}html.theme--documenter-dark .hero.is-danger{background-color:#cb3c33;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:#cb3c33}}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:#b7362e;color:#fff}html.theme--documenter-dark .hero.is-danger .tabs a{color:#fff;opacity:0.9}html.theme--documenter-dark .hero.is-danger .tabs a:hover{opacity:1}html.theme--documenter-dark .hero.is-danger .tabs li.is-active a{color:#cb3c33 !important;opacity:1}html.theme--documenter-dark .hero.is-danger .tabs.is-boxed a,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle a{color:#fff}html.theme--documenter-dark .hero.is-danger .tabs.is-boxed a:hover,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}html.theme--documenter-dark .hero.is-danger .tabs.is-boxed li.is-active a,html.theme--documenter-dark .hero.is-danger .tabs.is-boxed li.is-active a:hover,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle li.is-active a,html.theme--documenter-dark .hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#cb3c33}html.theme--documenter-dark .hero.is-danger.is-bold{background-image:linear-gradient(141deg, #ac1f2e 0%, #cb3c33 71%, #d66341 100%)}@media screen and (max-width: 768px){html.theme--documenter-dark .hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg, #ac1f2e 0%, #cb3c33 71%, #d66341 100%)}}html.theme--documenter-dark .hero.is-small .hero-body,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.hero .hero-body{padding:1.5rem}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero.is-medium .hero-body{padding:9rem 4.5rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero.is-large .hero-body{padding:18rem 6rem}}html.theme--documenter-dark .hero.is-halfheight .hero-body,html.theme--documenter-dark .hero.is-fullheight .hero-body,html.theme--documenter-dark .hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}html.theme--documenter-dark .hero.is-halfheight .hero-body>.container,html.theme--documenter-dark .hero.is-fullheight .hero-body>.container,html.theme--documenter-dark .hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}html.theme--documenter-dark .hero.is-halfheight{min-height:50vh}html.theme--documenter-dark .hero.is-fullheight{min-height:100vh}html.theme--documenter-dark .hero-video{overflow:hidden}html.theme--documenter-dark .hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%, -50%, 0)}html.theme--documenter-dark .hero-video.is-transparent{opacity:0.3}@media screen and (max-width: 768px){html.theme--documenter-dark .hero-video{display:none}}html.theme--documenter-dark .hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){html.theme--documenter-dark .hero-buttons .button{display:flex}html.theme--documenter-dark .hero-buttons .button:not(:last-child){margin-bottom:0.75rem}}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero-buttons{display:flex;justify-content:center}html.theme--documenter-dark .hero-buttons .button:not(:last-child){margin-right:1.5rem}}html.theme--documenter-dark .hero-head,html.theme--documenter-dark .hero-foot{flex-grow:0;flex-shrink:0}html.theme--documenter-dark .hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}@media screen and (min-width: 769px),print{html.theme--documenter-dark .hero-body{padding:3rem 3rem}}html.theme--documenter-dark .section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){html.theme--documenter-dark .section{padding:3rem 3rem}html.theme--documenter-dark .section.is-medium{padding:9rem 4.5rem}html.theme--documenter-dark .section.is-large{padding:18rem 6rem}}html.theme--documenter-dark .footer{background-color:#282f2f;padding:3rem 1.5rem 6rem}html.theme--documenter-dark hr{height:1px}html.theme--documenter-dark h6{text-transform:uppercase;letter-spacing:0.5px}html.theme--documenter-dark .hero{background-color:#343c3d}html.theme--documenter-dark a{transition:all 200ms ease}html.theme--documenter-dark .button{transition:all 200ms ease;border-width:1px;color:#fff}html.theme--documenter-dark .button.is-active,html.theme--documenter-dark .button.is-focused,html.theme--documenter-dark .button:active,html.theme--documenter-dark .button:focus{box-shadow:0 0 0 2px rgba(140,155,157,0.5)}html.theme--documenter-dark .button.is-white.is-hovered,html.theme--documenter-dark .button.is-white:hover{background-color:#fff}html.theme--documenter-dark .button.is-white.is-active,html.theme--documenter-dark .button.is-white.is-focused,html.theme--documenter-dark .button.is-white:active,html.theme--documenter-dark .button.is-white:focus{border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,0.5)}html.theme--documenter-dark .button.is-black.is-hovered,html.theme--documenter-dark .button.is-black:hover{background-color:#1d1d1d}html.theme--documenter-dark .button.is-black.is-active,html.theme--documenter-dark .button.is-black.is-focused,html.theme--documenter-dark .button.is-black:active,html.theme--documenter-dark .button.is-black:focus{border-color:#0a0a0a;box-shadow:0 0 0 2px rgba(10,10,10,0.5)}html.theme--documenter-dark .button.is-light.is-hovered,html.theme--documenter-dark .button.is-light:hover{background-color:#fff}html.theme--documenter-dark .button.is-light.is-active,html.theme--documenter-dark .button.is-light.is-focused,html.theme--documenter-dark .button.is-light:active,html.theme--documenter-dark .button.is-light:focus{border-color:#ecf0f1;box-shadow:0 0 0 2px rgba(236,240,241,0.5)}html.theme--documenter-dark .button.is-dark.is-hovered,html.theme--documenter-dark .content kbd.button.is-hovered,html.theme--documenter-dark .button.is-dark:hover,html.theme--documenter-dark .content kbd.button:hover{background-color:#3a4344}html.theme--documenter-dark .button.is-dark.is-active,html.theme--documenter-dark .content kbd.button.is-active,html.theme--documenter-dark .button.is-dark.is-focused,html.theme--documenter-dark .content kbd.button.is-focused,html.theme--documenter-dark .button.is-dark:active,html.theme--documenter-dark .content kbd.button:active,html.theme--documenter-dark .button.is-dark:focus,html.theme--documenter-dark .content kbd.button:focus{border-color:#282f2f;box-shadow:0 0 0 2px rgba(40,47,47,0.5)}html.theme--documenter-dark .button.is-primary.is-hovered,html.theme--documenter-dark .docstring>section>a.button.is-hovered.docs-sourcelink,html.theme--documenter-dark .button.is-primary:hover,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:hover{background-color:#436d9a}html.theme--documenter-dark .button.is-primary.is-active,html.theme--documenter-dark .docstring>section>a.button.is-active.docs-sourcelink,html.theme--documenter-dark .button.is-primary.is-focused,html.theme--documenter-dark .docstring>section>a.button.is-focused.docs-sourcelink,html.theme--documenter-dark .button.is-primary:active,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:active,html.theme--documenter-dark .button.is-primary:focus,html.theme--documenter-dark .docstring>section>a.button.docs-sourcelink:focus{border-color:#375a7f;box-shadow:0 0 0 2px rgba(55,90,127,0.5)}html.theme--documenter-dark .button.is-link.is-hovered,html.theme--documenter-dark .button.is-link:hover{background-color:#1fdeb8}html.theme--documenter-dark .button.is-link.is-active,html.theme--documenter-dark .button.is-link.is-focused,html.theme--documenter-dark .button.is-link:active,html.theme--documenter-dark .button.is-link:focus{border-color:#1abc9c;box-shadow:0 0 0 2px rgba(26,188,156,0.5)}html.theme--documenter-dark .button.is-info.is-hovered,html.theme--documenter-dark .button.is-info:hover{background-color:#5a76d5}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:#3c5dcd;box-shadow:0 0 0 2px rgba(60,93,205,0.5)}html.theme--documenter-dark .button.is-success.is-hovered,html.theme--documenter-dark .button.is-success:hover{background-color:#2dbc16}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:#259a12;box-shadow:0 0 0 2px rgba(37,154,18,0.5)}html.theme--documenter-dark .button.is-warning.is-hovered,html.theme--documenter-dark .button.is-warning:hover{background-color:#f6d153}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:#f4c72f;box-shadow:0 0 0 2px rgba(244,199,47,0.5)}html.theme--documenter-dark .button.is-danger.is-hovered,html.theme--documenter-dark .button.is-danger:hover{background-color:#d35951}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:#cb3c33;box-shadow:0 0 0 2px rgba(203,60,51,0.5)}html.theme--documenter-dark .label{color:#dbdee0}html.theme--documenter-dark .button,html.theme--documenter-dark .control.has-icons-left .icon,html.theme--documenter-dark .control.has-icons-right .icon,html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark .pagination-ellipsis,html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-previous,html.theme--documenter-dark .select,html.theme--documenter-dark .select select,html.theme--documenter-dark .textarea{height:2.5em}html.theme--documenter-dark .input,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark .textarea{transition:all 200ms ease;box-shadow:none;border-width:1px;padding-left:1em;padding-right:1em}html.theme--documenter-dark .select:after,html.theme--documenter-dark .select select{border-width:1px}html.theme--documenter-dark .control.has-addons .button,html.theme--documenter-dark .control.has-addons .input,html.theme--documenter-dark .control.has-addons #documenter .docs-sidebar form.docs-search>input,html.theme--documenter-dark #documenter .docs-sidebar .control.has-addons form.docs-search>input,html.theme--documenter-dark .control.has-addons .select{margin-right:-1px}html.theme--documenter-dark .notification{background-color:#343c3d}html.theme--documenter-dark .card{box-shadow:none;border:1px solid #343c3d;background-color:#282f2f;border-radius:.4em}html.theme--documenter-dark .card .card-image img{border-radius:.4em .4em 0 0}html.theme--documenter-dark .card .card-header{box-shadow:none;background-color:rgba(18,18,18,0.2);border-radius:.4em .4em 0 0}html.theme--documenter-dark .card .card-footer{background-color:rgba(18,18,18,0.2)}html.theme--documenter-dark .card .card-footer,html.theme--documenter-dark .card .card-footer-item{border-width:1px;border-color:#343c3d}html.theme--documenter-dark .notification.is-white a:not(.button){color:#0a0a0a;text-decoration:underline}html.theme--documenter-dark .notification.is-black a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-light a:not(.button){color:rgba(0,0,0,0.7);text-decoration:underline}html.theme--documenter-dark .notification.is-dark a:not(.button),html.theme--documenter-dark .content kbd.notification a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-primary a:not(.button),html.theme--documenter-dark .docstring>section>a.notification.docs-sourcelink a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-link a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-info a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-success a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .notification.is-warning a:not(.button){color:rgba(0,0,0,0.7);text-decoration:underline}html.theme--documenter-dark .notification.is-danger a:not(.button){color:#fff;text-decoration:underline}html.theme--documenter-dark .tag,html.theme--documenter-dark .content kbd,html.theme--documenter-dark .docstring>section>a.docs-sourcelink{border-radius:.4em}html.theme--documenter-dark .menu-list a{transition:all 300ms ease}html.theme--documenter-dark .modal-card-body{background-color:#282f2f}html.theme--documenter-dark .modal-card-foot,html.theme--documenter-dark .modal-card-head{border-color:#343c3d}html.theme--documenter-dark .message-header{font-weight:700;background-color:#343c3d;color:#fff}html.theme--documenter-dark .message-body{border-width:1px;border-color:#343c3d}html.theme--documenter-dark .navbar{border-radius:.4em}html.theme--documenter-dark .navbar.is-transparent{background:none}html.theme--documenter-dark .navbar.is-primary .navbar-dropdown a.navbar-item.is-active,html.theme--documenter-dark .docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#1abc9c}@media screen and (max-width: 1055px){html.theme--documenter-dark .navbar .navbar-menu{background-color:#375a7f;border-radius:0 0 .4em .4em}}html.theme--documenter-dark .hero .navbar,html.theme--documenter-dark body>.navbar{border-radius:0}html.theme--documenter-dark .pagination-link,html.theme--documenter-dark .pagination-next,html.theme--documenter-dark .pagination-previous{border-width:1px}html.theme--documenter-dark .panel-block,html.theme--documenter-dark .panel-heading,html.theme--documenter-dark .panel-tabs{border-width:1px}html.theme--documenter-dark .panel-block:first-child,html.theme--documenter-dark .panel-heading:first-child,html.theme--documenter-dark .panel-tabs:first-child{border-top-width:1px}html.theme--documenter-dark .panel-heading{font-weight:700}html.theme--documenter-dark .panel-tabs a{border-width:1px;margin-bottom:-1px}html.theme--documenter-dark .panel-tabs a.is-active{border-bottom-color:#17a689}html.theme--documenter-dark .panel-block:hover{color:#1dd2af}html.theme--documenter-dark .panel-block:hover .panel-icon{color:#1dd2af}html.theme--documenter-dark .panel-block.is-active .panel-icon{color:#17a689}html.theme--documenter-dark .tabs a{border-bottom-width:1px;margin-bottom:-1px}html.theme--documenter-dark .tabs ul{border-bottom-width:1px}html.theme--documenter-dark .tabs.is-boxed a{border-width:1px}html.theme--documenter-dark .tabs.is-boxed li.is-active a{background-color:#1f2424}html.theme--documenter-dark .tabs.is-toggle li a{border-width:1px;margin-bottom:0}html.theme--documenter-dark .tabs.is-toggle li+li{margin-left:-1px}html.theme--documenter-dark .hero.is-white .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-black .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-light .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-dark .navbar .navbar-dropdown .navbar-item:hover,html.theme--documenter-dark .content kbd.hero .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-primary .navbar .navbar-dropdown .navbar-item:hover,html.theme--documenter-dark .docstring>section>a.hero.docs-sourcelink .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-link .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-info .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-success .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-warning .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark .hero.is-danger .navbar .navbar-dropdown .navbar-item:hover{background-color:rgba(0,0,0,0)}html.theme--documenter-dark h1 .docs-heading-anchor,html.theme--documenter-dark h1 .docs-heading-anchor:hover,html.theme--documenter-dark h1 .docs-heading-anchor:visited,html.theme--documenter-dark h2 .docs-heading-anchor,html.theme--documenter-dark h2 .docs-heading-anchor:hover,html.theme--documenter-dark h2 .docs-heading-anchor:visited,html.theme--documenter-dark h3 .docs-heading-anchor,html.theme--documenter-dark h3 .docs-heading-anchor:hover,html.theme--documenter-dark h3 .docs-heading-anchor:visited,html.theme--documenter-dark h4 .docs-heading-anchor,html.theme--documenter-dark h4 .docs-heading-anchor:hover,html.theme--documenter-dark h4 .docs-heading-anchor:visited,html.theme--documenter-dark h5 .docs-heading-anchor,html.theme--documenter-dark h5 .docs-heading-anchor:hover,html.theme--documenter-dark h5 .docs-heading-anchor:visited,html.theme--documenter-dark h6 .docs-heading-anchor,html.theme--documenter-dark h6 .docs-heading-anchor:hover,html.theme--documenter-dark h6 .docs-heading-anchor:visited{color:#f2f2f2}html.theme--documenter-dark h1 .docs-heading-anchor-permalink,html.theme--documenter-dark h2 .docs-heading-anchor-permalink,html.theme--documenter-dark h3 .docs-heading-anchor-permalink,html.theme--documenter-dark h4 .docs-heading-anchor-permalink,html.theme--documenter-dark h5 .docs-heading-anchor-permalink,html.theme--documenter-dark h6 .docs-heading-anchor-permalink{visibility:hidden;vertical-align:middle;margin-left:0.5em;font-size:0.7rem}html.theme--documenter-dark h1 .docs-heading-anchor-permalink::before,html.theme--documenter-dark h2 .docs-heading-anchor-permalink::before,html.theme--documenter-dark h3 .docs-heading-anchor-permalink::before,html.theme--documenter-dark h4 .docs-heading-anchor-permalink::before,html.theme--documenter-dark h5 .docs-heading-anchor-permalink::before,html.theme--documenter-dark h6 .docs-heading-anchor-permalink::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f0c1"}html.theme--documenter-dark h1:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h2:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h3:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h4:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h5:hover .docs-heading-anchor-permalink,html.theme--documenter-dark h6:hover .docs-heading-anchor-permalink{visibility:visible}html.theme--documenter-dark .docs-light-only{display:none !important}html.theme--documenter-dark pre{position:relative;overflow:hidden}html.theme--documenter-dark pre code,html.theme--documenter-dark pre code.hljs{padding:0 .75rem !important;overflow:auto;display:block}html.theme--documenter-dark pre code:first-of-type,html.theme--documenter-dark pre code.hljs:first-of-type{padding-top:0.5rem !important}html.theme--documenter-dark pre code:last-of-type,html.theme--documenter-dark pre code.hljs:last-of-type{padding-bottom:0.5rem !important}html.theme--documenter-dark pre .copy-button{opacity:0.2;transition:opacity 0.2s;position:absolute;right:0em;top:0em;padding:0.5em;width:2.5em;height:2.5em;background:transparent;border:none;font-family:"Font Awesome 6 Free";color:#fff;cursor:pointer;text-align:center}html.theme--documenter-dark pre .copy-button:focus,html.theme--documenter-dark pre .copy-button:hover{opacity:1;background:rgba(255,255,255,0.1);color:#1abc9c}html.theme--documenter-dark pre .copy-button.success{color:#259a12;opacity:1}html.theme--documenter-dark pre .copy-button.error{color:#cb3c33;opacity:1}html.theme--documenter-dark pre:hover .copy-button{opacity:1}html.theme--documenter-dark .admonition{background-color:#282f2f;border-style:solid;border-width:2px;border-color:#dbdee0;border-radius:4px;font-size:1rem}html.theme--documenter-dark .admonition strong{color:currentColor}html.theme--documenter-dark .admonition.is-small,html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input.admonition{font-size:.75rem}html.theme--documenter-dark .admonition.is-medium{font-size:1.25rem}html.theme--documenter-dark .admonition.is-large{font-size:1.5rem}html.theme--documenter-dark .admonition.is-default{background-color:#282f2f;border-color:#dbdee0}html.theme--documenter-dark .admonition.is-default>.admonition-header{background-color:rgba(0,0,0,0);color:#dbdee0}html.theme--documenter-dark .admonition.is-default>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-info{background-color:#282f2f;border-color:#3c5dcd}html.theme--documenter-dark .admonition.is-info>.admonition-header{background-color:rgba(0,0,0,0);color:#3c5dcd}html.theme--documenter-dark .admonition.is-info>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-success{background-color:#282f2f;border-color:#259a12}html.theme--documenter-dark .admonition.is-success>.admonition-header{background-color:rgba(0,0,0,0);color:#259a12}html.theme--documenter-dark .admonition.is-success>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-warning{background-color:#282f2f;border-color:#f4c72f}html.theme--documenter-dark .admonition.is-warning>.admonition-header{background-color:rgba(0,0,0,0);color:#f4c72f}html.theme--documenter-dark .admonition.is-warning>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-danger{background-color:#282f2f;border-color:#cb3c33}html.theme--documenter-dark .admonition.is-danger>.admonition-header{background-color:rgba(0,0,0,0);color:#cb3c33}html.theme--documenter-dark .admonition.is-danger>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-compat{background-color:#282f2f;border-color:#3489da}html.theme--documenter-dark .admonition.is-compat>.admonition-header{background-color:rgba(0,0,0,0);color:#3489da}html.theme--documenter-dark .admonition.is-compat>.admonition-body{color:#fff}html.theme--documenter-dark .admonition.is-todo{background-color:#282f2f;border-color:#9558b2}html.theme--documenter-dark .admonition.is-todo>.admonition-header{background-color:rgba(0,0,0,0);color:#9558b2}html.theme--documenter-dark .admonition.is-todo>.admonition-body{color:#fff}html.theme--documenter-dark .admonition-header{color:#dbdee0;background-color:rgba(0,0,0,0);align-items:center;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.5rem .75rem;position:relative}html.theme--documenter-dark .admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}html.theme--documenter-dark details.admonition.is-details>.admonition-header{list-style:none}html.theme--documenter-dark details.admonition.is-details>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f055"}html.theme--documenter-dark details.admonition.is-details[open]>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f056"}html.theme--documenter-dark .admonition-body{color:#fff;padding:0.5rem .75rem}html.theme--documenter-dark .admonition-body pre{background-color:#282f2f}html.theme--documenter-dark .admonition-body code{background-color:rgba(255,255,255,0.05)}html.theme--documenter-dark .docstring{margin-bottom:1em;background-color:rgba(0,0,0,0);border:2px solid #5e6d6f;border-radius:4px;box-shadow:none;max-width:100%}html.theme--documenter-dark .docstring>header{cursor:pointer;display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#282f2f;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #5e6d6f;overflow:auto}html.theme--documenter-dark .docstring>header code{background-color:transparent}html.theme--documenter-dark .docstring>header .docstring-article-toggle-button{min-width:1.1rem;padding:0.2rem 0.2rem 0.2rem 0}html.theme--documenter-dark .docstring>header .docstring-binding{margin-right:0.3em}html.theme--documenter-dark .docstring>header .docstring-category{margin-left:0.3em}html.theme--documenter-dark .docstring>section{position:relative;padding:.75rem .75rem;border-bottom:1px solid #5e6d6f}html.theme--documenter-dark .docstring>section:last-child{border-bottom:none}html.theme--documenter-dark .docstring>section>a.docs-sourcelink{transition:opacity 0.3s;opacity:0;position:absolute;right:.375rem;bottom:.375rem}html.theme--documenter-dark .docstring>section>a.docs-sourcelink:focus{opacity:1 !important}html.theme--documenter-dark .docstring:hover>section>a.docs-sourcelink{opacity:0.2}html.theme--documenter-dark .docstring:focus-within>section>a.docs-sourcelink{opacity:0.2}html.theme--documenter-dark .docstring>section:hover a.docs-sourcelink{opacity:1}html.theme--documenter-dark .documenter-example-output{background-color:#1f2424}html.theme--documenter-dark .outdated-warning-overlay{position:fixed;top:0;left:0;right:0;box-shadow:0 0 10px rgba(0,0,0,0.3);z-index:999;background-color:#282f2f;color:#fff;border-bottom:3px solid rgba(0,0,0,0);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:2px solid #5e6d6f;border-radius:4px}html.theme--documenter-dark .content code{font-weight:inherit}html.theme--documenter-dark .content a code{color:#1abc9c}html.theme--documenter-dark .content a:hover code{color:#1dd2af}html.theme--documenter-dark .content h1 code,html.theme--documenter-dark .content h2 code,html.theme--documenter-dark .content h3 code,html.theme--documenter-dark .content h4 code,html.theme--documenter-dark .content h5 code,html.theme--documenter-dark .content h6 code{color:#f2f2f2}html.theme--documenter-dark .content table{display:block;width:initial;max-width:100%;overflow-x:auto}html.theme--documenter-dark .content blockquote>ul:first-child,html.theme--documenter-dark .content blockquote>ol:first-child,html.theme--documenter-dark .content .admonition-body>ul:first-child,html.theme--documenter-dark .content .admonition-body>ol:first-child{margin-top:0}html.theme--documenter-dark pre,html.theme--documenter-dark code{font-variant-ligatures:no-contextual}html.theme--documenter-dark .breadcrumb a.is-disabled{cursor:default;pointer-events:none}html.theme--documenter-dark .breadcrumb a.is-disabled,html.theme--documenter-dark .breadcrumb a.is-disabled:hover{color:#f2f2f2}html.theme--documenter-dark .hljs{background:initial !important}html.theme--documenter-dark .katex .katex-mathml{top:0;right:0}html.theme--documenter-dark .katex-display,html.theme--documenter-dark mjx-container,html.theme--documenter-dark .MathJax_Display{margin:0.5em 0 !important}html.theme--documenter-dark html{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto}html.theme--documenter-dark li.no-marker{list-style:none}html.theme--documenter-dark #documenter .docs-main>article{overflow-wrap:break-word}html.theme--documenter-dark #documenter .docs-main>article .math-container{overflow-x:auto;overflow-y:hidden}@media screen and (min-width: 1056px){html.theme--documenter-dark #documenter .docs-main{max-width:52rem;margin-left:20rem;padding-right:1rem}}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-main{width:100%}html.theme--documenter-dark #documenter .docs-main>article{max-width:52rem;margin-left:auto;margin-right:auto;margin-bottom:1rem;padding:0 1rem}html.theme--documenter-dark #documenter .docs-main>header,html.theme--documenter-dark #documenter .docs-main>nav{max-width:100%;width:100%;margin:0}}html.theme--documenter-dark #documenter .docs-main header.docs-navbar{background-color:#1f2424;border-bottom:1px solid #5e6d6f;z-index:2;min-height:4rem;margin-bottom:1rem;display:flex}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .breadcrumb{flex-grow:1;overflow-x:hidden}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-sidebar-button{display:block;font-size:1.5rem;padding-bottom:0.1rem;margin-right:1rem}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap;gap:1rem;align-items:center}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-icon,html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-label{display:inline-block}html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-main header.docs-navbar .docs-right .docs-navbar-link{margin-left:0.4rem;margin-right:0.4rem}}html.theme--documenter-dark #documenter .docs-main header.docs-navbar>*{margin:auto 0}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-main header.docs-navbar{position:sticky;top:0;padding:0 1rem;transition-property:top, box-shadow;-webkit-transition-property:top, box-shadow;transition-duration:0.3s;-webkit-transition-duration:0.3s}html.theme--documenter-dark #documenter .docs-main header.docs-navbar.headroom--not-top{box-shadow:.2rem 0rem .4rem #171717;transition-duration:0.7s;-webkit-transition-duration:0.7s}html.theme--documenter-dark #documenter .docs-main header.docs-navbar.headroom--unpinned.headroom--not-top.headroom--not-bottom{top:-4.5rem;transition-duration:0.7s;-webkit-transition-duration:0.7s}}html.theme--documenter-dark #documenter .docs-main section.footnotes{border-top:1px solid #5e6d6f}html.theme--documenter-dark #documenter .docs-main section.footnotes li .tag:first-child,html.theme--documenter-dark #documenter .docs-main section.footnotes li .docstring>section>a.docs-sourcelink:first-child,html.theme--documenter-dark #documenter .docs-main section.footnotes li .content kbd:first-child,html.theme--documenter-dark .content #documenter .docs-main section.footnotes li kbd:first-child{margin-right:1em;margin-bottom:0.4em}html.theme--documenter-dark #documenter .docs-main .docs-footer{display:flex;flex-wrap:wrap;margin-left:0;margin-right:0;border-top:1px solid #5e6d6f;padding-top:1rem;padding-bottom:1rem}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-main .docs-footer{padding-left:1rem;padding-right:1rem}}html.theme--documenter-dark #documenter .docs-main .docs-footer .docs-footer-nextpage,html.theme--documenter-dark #documenter .docs-main .docs-footer .docs-footer-prevpage{flex-grow:1}html.theme--documenter-dark #documenter .docs-main .docs-footer .docs-footer-nextpage{text-align:right}html.theme--documenter-dark #documenter .docs-main .docs-footer .flexbox-break{flex-basis:100%;height:0}html.theme--documenter-dark #documenter .docs-main .docs-footer .footer-message{font-size:0.8em;margin:0.5em auto 0 auto;text-align:center}html.theme--documenter-dark #documenter .docs-sidebar{display:flex;flex-direction:column;color:#fff;background-color:#282f2f;border-right:1px solid #5e6d6f;padding:0;flex:0 0 18rem;z-index:5;font-size:1rem;position:fixed;left:-18rem;width:18rem;height:100%;transition:left 0.3s}html.theme--documenter-dark #documenter .docs-sidebar.visible{left:0;box-shadow:.4rem 0rem .8rem #171717}@media screen and (min-width: 1056px){html.theme--documenter-dark #documenter .docs-sidebar.visible{box-shadow:none}}@media screen and (min-width: 1056px){html.theme--documenter-dark #documenter .docs-sidebar{left:0;top:0}}html.theme--documenter-dark #documenter .docs-sidebar .docs-logo{margin-top:1rem;padding:0 1rem}html.theme--documenter-dark #documenter .docs-sidebar .docs-logo>img{max-height:6rem;margin:auto}html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name{flex-shrink:0;font-size:1.5rem;font-weight:700;text-align:center;white-space:nowrap;overflow:hidden;padding:0.5rem 0}html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name .docs-autofit{max-width:16.2rem}html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name a,html.theme--documenter-dark #documenter .docs-sidebar .docs-package-name a:hover{color:#fff}html.theme--documenter-dark #documenter .docs-sidebar .docs-version-selector{border-top:1px solid #5e6d6f;display:none;padding:0.5rem}html.theme--documenter-dark #documenter .docs-sidebar .docs-version-selector.visible{display:flex}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu{flex-grow:1;user-select:none;border-top:1px solid #5e6d6f;padding-bottom:1.5rem}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu>li>.tocitem{font-weight:bold}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu>li li{font-size:.95rem;margin-left:1em;border-left:1px solid #5e6d6f}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input.collapse-toggle{display:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.collapsed{display:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input:checked~ul.collapsed{display:block}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem{display:flex}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label{flex-grow:2}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron{display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;font-size:.75rem;margin-left:1rem;margin-top:auto;margin-bottom:auto}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f054"}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu input:checked~label.tocitem .docs-chevron::before{content:"\f078"}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem{display:block;padding:0.5rem 0.5rem}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem,html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu .tocitem:hover{color:#fff;background:#282f2f}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu a.tocitem:hover,html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu label.tocitem:hover{color:#fff;background-color:#32393a}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active{border-top:1px solid #5e6d6f;border-bottom:1px solid #5e6d6f;background-color:#1f2424}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem,html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover{background-color:#1f2424;color:#fff}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover{background-color:#32393a;color:#fff}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu>li.is-active:first-child{border-top:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal{margin:0 0.5rem 0.5rem;border-top:1px solid #5e6d6f}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal li{font-size:.85rem;border-left:none;margin-left:0;margin-top:0.5rem}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem{width:100%;padding:0}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before{content:"⚬";margin-right:0.4em}html.theme--documenter-dark #documenter .docs-sidebar form.docs-search{margin:auto;margin-top:0.5rem;margin-bottom:0.5rem}html.theme--documenter-dark #documenter .docs-sidebar form.docs-search>input{width:14.4rem}html.theme--documenter-dark #documenter .docs-sidebar #documenter-search-query{color:#868c98;width:14.4rem;box-shadow:inset 0 1px 2px rgba(10,10,10,0.1)}@media screen and (min-width: 1056px){html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar{width:.3rem;background:none}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#3b4445}html.theme--documenter-dark #documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover{background:#4e5a5c}}@media screen and (max-width: 1055px){html.theme--documenter-dark #documenter .docs-sidebar{overflow-y:auto;-webkit-overflow-scroll:touch}html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar{width:.3rem;background:none}html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#3b4445}html.theme--documenter-dark #documenter .docs-sidebar::-webkit-scrollbar-thumb:hover{background:#4e5a5c}}html.theme--documenter-dark kbd.search-modal-key-hints{border-radius:0.25rem;border:1px solid rgba(245,245,245,0.6);box-shadow:0 2px 0 1px rgba(245,245,245,0.6);cursor:default;font-size:0.9rem;line-height:1.5;min-width:0.75rem;text-align:center;padding:0.1rem 0.3rem;position:relative;top:-1px}html.theme--documenter-dark .search-min-width-50{min-width:50%}html.theme--documenter-dark .search-min-height-100{min-height:100%}html.theme--documenter-dark .search-modal-card-body{max-height:calc(100vh - 15rem)}html.theme--documenter-dark .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--documenter-dark .search-result-link:hover,html.theme--documenter-dark .search-result-link:focus{background-color:rgba(0,128,128,0.1)}html.theme--documenter-dark .search-result-link .property-search-result-badge,html.theme--documenter-dark .search-result-link .search-filter{transition:all 300ms}html.theme--documenter-dark .property-search-result-badge,html.theme--documenter-dark .search-filter{padding:0.15em 0.5em;font-size:0.8em;font-style:italic;text-transform:none !important;line-height:1.5;color:#f5f5f5;background-color:rgba(51,65,85,0.501961);border-radius:0.6rem}html.theme--documenter-dark .search-result-link:hover .property-search-result-badge,html.theme--documenter-dark .search-result-link:hover .search-filter,html.theme--documenter-dark .search-result-link:focus .property-search-result-badge,html.theme--documenter-dark .search-result-link:focus .search-filter{color:#333;background-color:#f1f5f9}html.theme--documenter-dark .search-filter{color:#333;background-color:#f5f5f5;transition:all 300ms}html.theme--documenter-dark .search-filter:hover,html.theme--documenter-dark .search-filter:focus{color:#333}html.theme--documenter-dark .search-filter-selected{color:#f5f5f5;background-color:rgba(139,0,139,0.5)}html.theme--documenter-dark .search-filter-selected:hover,html.theme--documenter-dark .search-filter-selected:focus{color:#f5f5f5}html.theme--documenter-dark .search-result-highlight{background-color:#ffdd57;color:black}html.theme--documenter-dark .search-divider{border-bottom:1px solid #5e6d6f}html.theme--documenter-dark .search-result-title{width:85%;color:#f5f5f5}html.theme--documenter-dark .search-result-code-title{font-size:0.875rem;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}html.theme--documenter-dark #search-modal .modal-card-body::-webkit-scrollbar,html.theme--documenter-dark #search-modal .filter-tabs::-webkit-scrollbar{height:10px;width:10px;background-color:transparent}html.theme--documenter-dark #search-modal .modal-card-body::-webkit-scrollbar-thumb,html.theme--documenter-dark #search-modal .filter-tabs::-webkit-scrollbar-thumb{background-color:gray;border-radius:1rem}html.theme--documenter-dark #search-modal .modal-card-body::-webkit-scrollbar-track,html.theme--documenter-dark #search-modal .filter-tabs::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.6);background-color:transparent}html.theme--documenter-dark .w-100{width:100%}html.theme--documenter-dark .gap-2{gap:0.5rem}html.theme--documenter-dark .gap-4{gap:1rem}html.theme--documenter-dark .gap-8{gap:2rem}html.theme--documenter-dark{background-color:#1f2424;font-size:16px;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}html.theme--documenter-dark .ansi span.sgr1{font-weight:bolder}html.theme--documenter-dark .ansi span.sgr2{font-weight:lighter}html.theme--documenter-dark .ansi span.sgr3{font-style:italic}html.theme--documenter-dark .ansi span.sgr4{text-decoration:underline}html.theme--documenter-dark .ansi span.sgr7{color:#1f2424;background-color:#fff}html.theme--documenter-dark .ansi span.sgr8{color:transparent}html.theme--documenter-dark .ansi span.sgr8 span{color:transparent}html.theme--documenter-dark .ansi span.sgr9{text-decoration:line-through}html.theme--documenter-dark .ansi span.sgr30{color:#242424}html.theme--documenter-dark .ansi span.sgr31{color:#f6705f}html.theme--documenter-dark .ansi span.sgr32{color:#4fb43a}html.theme--documenter-dark .ansi span.sgr33{color:#f4c72f}html.theme--documenter-dark .ansi span.sgr34{color:#7587f0}html.theme--documenter-dark .ansi span.sgr35{color:#bc89d3}html.theme--documenter-dark .ansi span.sgr36{color:#49b6ca}html.theme--documenter-dark .ansi span.sgr37{color:#b3bdbe}html.theme--documenter-dark .ansi span.sgr40{background-color:#242424}html.theme--documenter-dark .ansi span.sgr41{background-color:#f6705f}html.theme--documenter-dark .ansi span.sgr42{background-color:#4fb43a}html.theme--documenter-dark .ansi span.sgr43{background-color:#f4c72f}html.theme--documenter-dark .ansi span.sgr44{background-color:#7587f0}html.theme--documenter-dark .ansi span.sgr45{background-color:#bc89d3}html.theme--documenter-dark .ansi span.sgr46{background-color:#49b6ca}html.theme--documenter-dark .ansi span.sgr47{background-color:#b3bdbe}html.theme--documenter-dark .ansi span.sgr90{color:#92a0a2}html.theme--documenter-dark .ansi span.sgr91{color:#ff8674}html.theme--documenter-dark .ansi span.sgr92{color:#79d462}html.theme--documenter-dark .ansi span.sgr93{color:#ffe76b}html.theme--documenter-dark .ansi span.sgr94{color:#8a98ff}html.theme--documenter-dark .ansi span.sgr95{color:#d2a4e6}html.theme--documenter-dark .ansi span.sgr96{color:#6bc8db}html.theme--documenter-dark .ansi span.sgr97{color:#ecf0f1}html.theme--documenter-dark .ansi span.sgr100{background-color:#92a0a2}html.theme--documenter-dark .ansi span.sgr101{background-color:#ff8674}html.theme--documenter-dark .ansi span.sgr102{background-color:#79d462}html.theme--documenter-dark .ansi span.sgr103{background-color:#ffe76b}html.theme--documenter-dark .ansi span.sgr104{background-color:#8a98ff}html.theme--documenter-dark .ansi span.sgr105{background-color:#d2a4e6}html.theme--documenter-dark .ansi span.sgr106{background-color:#6bc8db}html.theme--documenter-dark .ansi span.sgr107{background-color:#ecf0f1}html.theme--documenter-dark code.language-julia-repl>span.hljs-meta{color:#4fb43a;font-weight:bolder}html.theme--documenter-dark .hljs{background:#2b2b2b;color:#f8f8f2}html.theme--documenter-dark .hljs-comment,html.theme--documenter-dark .hljs-quote{color:#d4d0ab}html.theme--documenter-dark .hljs-variable,html.theme--documenter-dark .hljs-template-variable,html.theme--documenter-dark .hljs-tag,html.theme--documenter-dark .hljs-name,html.theme--documenter-dark .hljs-selector-id,html.theme--documenter-dark .hljs-selector-class,html.theme--documenter-dark .hljs-regexp,html.theme--documenter-dark .hljs-deletion{color:#ffa07a}html.theme--documenter-dark .hljs-number,html.theme--documenter-dark .hljs-built_in,html.theme--documenter-dark .hljs-literal,html.theme--documenter-dark .hljs-type,html.theme--documenter-dark .hljs-params,html.theme--documenter-dark .hljs-meta,html.theme--documenter-dark .hljs-link{color:#f5ab35}html.theme--documenter-dark .hljs-attribute{color:#ffd700}html.theme--documenter-dark .hljs-string,html.theme--documenter-dark .hljs-symbol,html.theme--documenter-dark .hljs-bullet,html.theme--documenter-dark .hljs-addition{color:#abe338}html.theme--documenter-dark .hljs-title,html.theme--documenter-dark .hljs-section{color:#00e0e0}html.theme--documenter-dark .hljs-keyword,html.theme--documenter-dark .hljs-selector-tag{color:#dcc6e0}html.theme--documenter-dark .hljs-emphasis{font-style:italic}html.theme--documenter-dark .hljs-strong{font-weight:bold}@media screen and (-ms-high-contrast: active){html.theme--documenter-dark .hljs-addition,html.theme--documenter-dark .hljs-attribute,html.theme--documenter-dark .hljs-built_in,html.theme--documenter-dark .hljs-bullet,html.theme--documenter-dark .hljs-comment,html.theme--documenter-dark .hljs-link,html.theme--documenter-dark .hljs-literal,html.theme--documenter-dark .hljs-meta,html.theme--documenter-dark .hljs-number,html.theme--documenter-dark .hljs-params,html.theme--documenter-dark .hljs-string,html.theme--documenter-dark .hljs-symbol,html.theme--documenter-dark .hljs-type,html.theme--documenter-dark .hljs-quote{color:highlight}html.theme--documenter-dark .hljs-keyword,html.theme--documenter-dark .hljs-selector-tag{font-weight:bold}}html.theme--documenter-dark .hljs-subst{color:#f8f8f2}html.theme--documenter-dark .search-result-link{border-radius:0.7em;transition:all 300ms}html.theme--documenter-dark .search-result-link:hover,html.theme--documenter-dark .search-result-link:focus{background-color:rgba(0,128,128,0.1)}html.theme--documenter-dark .search-result-link .property-search-result-badge,html.theme--documenter-dark .search-result-link .search-filter{transition:all 300ms}html.theme--documenter-dark .search-result-link:hover .property-search-result-badge,html.theme--documenter-dark .search-result-link:hover .search-filter,html.theme--documenter-dark .search-result-link:focus .property-search-result-badge,html.theme--documenter-dark .search-result-link:focus .search-filter{color:#333 !important;background-color:#f1f5f9 !important}html.theme--documenter-dark .search-result-title{color:whitesmoke}html.theme--documenter-dark .search-result-highlight{background-color:greenyellow;color:black}html.theme--documenter-dark .search-divider{border-bottom:1px solid #5e6d6f50}html.theme--documenter-dark .w-100{width:100%}html.theme--documenter-dark .gap-2{gap:0.5rem}html.theme--documenter-dark .gap-4{gap:1rem} diff --git a/v0.9.12/assets/themes/documenter-light.css b/v0.9.12/assets/themes/documenter-light.css new file mode 100644 index 000000000..e000447e6 --- /dev/null +++ b/v0.9.12/assets/themes/documenter-light.css @@ -0,0 +1,9 @@ +.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis,.file-cta,.file-name,.select select,.textarea,.input,#documenter .docs-sidebar form.docs-search>input,.button{-moz-appearance:none;-webkit-appearance:none;align-items:center;border:1px solid transparent;border-radius:4px;box-shadow:none;display:inline-flex;font-size:1rem;height:2.5em;justify-content:flex-start;line-height:1.5;padding-bottom:calc(0.5em - 1px);padding-left:calc(0.75em - 1px);padding-right:calc(0.75em - 1px);padding-top:calc(0.5em - 1px);position:relative;vertical-align:top}.pagination-previous:focus,.pagination-next:focus,.pagination-link:focus,.pagination-ellipsis:focus,.file-cta:focus,.file-name:focus,.select select:focus,.textarea:focus,.input:focus,#documenter .docs-sidebar form.docs-search>input:focus,.button:focus,.is-focused.pagination-previous,.is-focused.pagination-next,.is-focused.pagination-link,.is-focused.pagination-ellipsis,.is-focused.file-cta,.is-focused.file-name,.select select.is-focused,.is-focused.textarea,.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-focused.button,.pagination-previous:active,.pagination-next:active,.pagination-link:active,.pagination-ellipsis:active,.file-cta:active,.file-name:active,.select select:active,.textarea:active,.input:active,#documenter .docs-sidebar form.docs-search>input:active,.button:active,.is-active.pagination-previous,.is-active.pagination-next,.is-active.pagination-link,.is-active.pagination-ellipsis,.is-active.file-cta,.is-active.file-name,.select select.is-active,.is-active.textarea,.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active,.is-active.button{outline:none}.pagination-previous[disabled],.pagination-next[disabled],.pagination-link[disabled],.pagination-ellipsis[disabled],.file-cta[disabled],.file-name[disabled],.select select[disabled],.textarea[disabled],.input[disabled],#documenter .docs-sidebar form.docs-search>input[disabled],.button[disabled],fieldset[disabled] .pagination-previous,fieldset[disabled] .pagination-next,fieldset[disabled] .pagination-link,fieldset[disabled] .pagination-ellipsis,fieldset[disabled] .file-cta,fieldset[disabled] .file-name,fieldset[disabled] .select select,.select fieldset[disabled] select,fieldset[disabled] .textarea,fieldset[disabled] .input,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input,fieldset[disabled] .button{cursor:not-allowed}.tabs,.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis,.breadcrumb,.file,.button,.is-unselectable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.navbar-link:not(.is-arrowless)::after,.select:not(.is-multiple):not(.is-loading)::after{border:3px solid rgba(0,0,0,0);border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:0.625em;margin-top:-0.4375em;pointer-events:none;position:absolute;top:50%;transform:rotate(-45deg);transform-origin:center;width:0.625em}.admonition:not(:last-child),.tabs:not(:last-child),.pagination:not(:last-child),.message:not(:last-child),.level:not(:last-child),.breadcrumb:not(:last-child),.block:not(:last-child),.title:not(:last-child),.subtitle:not(:last-child),.table-container:not(:last-child),.table:not(:last-child),.progress:not(:last-child),.notification:not(:last-child),.content:not(:last-child),.box:not(:last-child){margin-bottom:1.5rem}.modal-close,.delete{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-moz-appearance:none;-webkit-appearance:none;background-color:rgba(10,10,10,0.2);border:none;border-radius:9999px;cursor:pointer;pointer-events:auto;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:20px;max-height:20px;max-width:20px;min-height:20px;min-width:20px;outline:none;position:relative;vertical-align:top;width:20px}.modal-close::before,.delete::before,.modal-close::after,.delete::after{background-color:#fff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.modal-close::before,.delete::before{height:2px;width:50%}.modal-close::after,.delete::after{height:50%;width:2px}.modal-close:hover,.delete:hover,.modal-close:focus,.delete:focus{background-color:rgba(10,10,10,0.3)}.modal-close:active,.delete:active{background-color:rgba(10,10,10,0.4)}.is-small.modal-close,#documenter .docs-sidebar form.docs-search>input.modal-close,.is-small.delete,#documenter .docs-sidebar form.docs-search>input.delete{height:16px;max-height:16px;max-width:16px;min-height:16px;min-width:16px;width:16px}.is-medium.modal-close,.is-medium.delete{height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;width:24px}.is-large.modal-close,.is-large.delete{height:32px;max-height:32px;max-width:32px;min-height:32px;min-width:32px;width:32px}.control.is-loading::after,.select.is-loading::after,.loader,.button.is-loading::after{animation:spinAround 500ms infinite linear;border:2px solid #dbdbdb;border-radius:9999px;border-right-color:transparent;border-top-color:transparent;content:"";display:block;height:1em;position:relative;width:1em}.hero-video,.modal-background,.modal,.image.is-square img,#documenter .docs-sidebar .docs-logo>img.is-square img,.image.is-square .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,.image.is-1by1 img,#documenter .docs-sidebar .docs-logo>img.is-1by1 img,.image.is-1by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,.image.is-5by4 img,#documenter .docs-sidebar .docs-logo>img.is-5by4 img,.image.is-5by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,.image.is-4by3 img,#documenter .docs-sidebar .docs-logo>img.is-4by3 img,.image.is-4by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,.image.is-3by2 img,#documenter .docs-sidebar .docs-logo>img.is-3by2 img,.image.is-3by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,.image.is-5by3 img,#documenter .docs-sidebar .docs-logo>img.is-5by3 img,.image.is-5by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,.image.is-16by9 img,#documenter .docs-sidebar .docs-logo>img.is-16by9 img,.image.is-16by9 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,.image.is-2by1 img,#documenter .docs-sidebar .docs-logo>img.is-2by1 img,.image.is-2by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,.image.is-3by1 img,#documenter .docs-sidebar .docs-logo>img.is-3by1 img,.image.is-3by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,.image.is-4by5 img,#documenter .docs-sidebar .docs-logo>img.is-4by5 img,.image.is-4by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,.image.is-3by4 img,#documenter .docs-sidebar .docs-logo>img.is-3by4 img,.image.is-3by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,.image.is-2by3 img,#documenter .docs-sidebar .docs-logo>img.is-2by3 img,.image.is-2by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,.image.is-3by5 img,#documenter .docs-sidebar .docs-logo>img.is-3by5 img,.image.is-3by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,.image.is-9by16 img,#documenter .docs-sidebar .docs-logo>img.is-9by16 img,.image.is-9by16 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,.image.is-1by2 img,#documenter .docs-sidebar .docs-logo>img.is-1by2 img,.image.is-1by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,.image.is-1by3 img,#documenter .docs-sidebar .docs-logo>img.is-1by3 img,.image.is-1by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio,.is-overlay{bottom:0;left:0;position:absolute;right:0;top:0}.navbar-burger{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0}.has-text-white{color:#fff !important}a.has-text-white:hover,a.has-text-white:focus{color:#e6e6e6 !important}.has-background-white{background-color:#fff !important}.has-text-black{color:#0a0a0a !important}a.has-text-black:hover,a.has-text-black:focus{color:#000 !important}.has-background-black{background-color:#0a0a0a !important}.has-text-light{color:#f5f5f5 !important}a.has-text-light:hover,a.has-text-light:focus{color:#dbdbdb !important}.has-background-light{background-color:#f5f5f5 !important}.has-text-dark{color:#363636 !important}a.has-text-dark:hover,a.has-text-dark:focus{color:#1c1c1c !important}.has-background-dark{background-color:#363636 !important}.has-text-primary{color:#4eb5de !important}a.has-text-primary:hover,a.has-text-primary:focus{color:#27a1d2 !important}.has-background-primary{background-color:#4eb5de !important}.has-text-primary-light{color:#eef8fc !important}a.has-text-primary-light:hover,a.has-text-primary-light:focus{color:#c3e6f4 !important}.has-background-primary-light{background-color:#eef8fc !important}.has-text-primary-dark{color:#1a6d8e !important}a.has-text-primary-dark:hover,a.has-text-primary-dark:focus{color:#228eb9 !important}.has-background-primary-dark{background-color:#1a6d8e !important}.has-text-link{color:#2e63b8 !important}a.has-text-link:hover,a.has-text-link:focus{color:#244d8f !important}.has-background-link{background-color:#2e63b8 !important}.has-text-link-light{color:#eff3fb !important}a.has-text-link-light:hover,a.has-text-link-light:focus{color:#c6d6f1 !important}.has-background-link-light{background-color:#eff3fb !important}.has-text-link-dark{color:#3169c4 !important}a.has-text-link-dark:hover,a.has-text-link-dark:focus{color:#5485d4 !important}.has-background-link-dark{background-color:#3169c4 !important}.has-text-info{color:#3c5dcd !important}a.has-text-info:hover,a.has-text-info:focus{color:#2c48aa !important}.has-background-info{background-color:#3c5dcd !important}.has-text-info-light{color:#eff2fb !important}a.has-text-info-light:hover,a.has-text-info-light:focus{color:#c6d0f0 !important}.has-background-info-light{background-color:#eff2fb !important}.has-text-info-dark{color:#3253c3 !important}a.has-text-info-dark:hover,a.has-text-info-dark:focus{color:#5571d3 !important}.has-background-info-dark{background-color:#3253c3 !important}.has-text-success{color:#259a12 !important}a.has-text-success:hover,a.has-text-success:focus{color:#1a6c0d !important}.has-background-success{background-color:#259a12 !important}.has-text-success-light{color:#effded !important}a.has-text-success-light:hover,a.has-text-success-light:focus{color:#c7f8bf !important}.has-background-success-light{background-color:#effded !important}.has-text-success-dark{color:#2ec016 !important}a.has-text-success-dark:hover,a.has-text-success-dark:focus{color:#3fe524 !important}.has-background-success-dark{background-color:#2ec016 !important}.has-text-warning{color:#a98800 !important}a.has-text-warning:hover,a.has-text-warning:focus{color:#765f00 !important}.has-background-warning{background-color:#a98800 !important}.has-text-warning-light{color:#fffbeb !important}a.has-text-warning-light:hover,a.has-text-warning-light:focus{color:#fff1b8 !important}.has-background-warning-light{background-color:#fffbeb !important}.has-text-warning-dark{color:#cca400 !important}a.has-text-warning-dark:hover,a.has-text-warning-dark:focus{color:#ffcd00 !important}.has-background-warning-dark{background-color:#cca400 !important}.has-text-danger{color:#cb3c33 !important}a.has-text-danger:hover,a.has-text-danger:focus{color:#a23029 !important}.has-background-danger{background-color:#cb3c33 !important}.has-text-danger-light{color:#fbefef !important}a.has-text-danger-light:hover,a.has-text-danger-light:focus{color:#f1c8c6 !important}.has-background-danger-light{background-color:#fbefef !important}.has-text-danger-dark{color:#c03930 !important}a.has-text-danger-dark:hover,a.has-text-danger-dark:focus{color:#d35850 !important}.has-background-danger-dark{background-color:#c03930 !important}.has-text-black-bis{color:#121212 !important}.has-background-black-bis{background-color:#121212 !important}.has-text-black-ter{color:#242424 !important}.has-background-black-ter{background-color:#242424 !important}.has-text-grey-darker{color:#363636 !important}.has-background-grey-darker{background-color:#363636 !important}.has-text-grey-dark{color:#4a4a4a !important}.has-background-grey-dark{background-color:#4a4a4a !important}.has-text-grey{color:#6b6b6b !important}.has-background-grey{background-color:#6b6b6b !important}.has-text-grey-light{color:#b5b5b5 !important}.has-background-grey-light{background-color:#b5b5b5 !important}.has-text-grey-lighter{color:#dbdbdb !important}.has-background-grey-lighter{background-color:#dbdbdb !important}.has-text-white-ter{color:#f5f5f5 !important}.has-background-white-ter{background-color:#f5f5f5 !important}.has-text-white-bis{color:#fafafa !important}.has-background-white-bis{background-color:#fafafa !important}.is-flex-direction-row{flex-direction:row !important}.is-flex-direction-row-reverse{flex-direction:row-reverse !important}.is-flex-direction-column{flex-direction:column !important}.is-flex-direction-column-reverse{flex-direction:column-reverse !important}.is-flex-wrap-nowrap{flex-wrap:nowrap !important}.is-flex-wrap-wrap{flex-wrap:wrap !important}.is-flex-wrap-wrap-reverse{flex-wrap:wrap-reverse !important}.is-justify-content-flex-start{justify-content:flex-start !important}.is-justify-content-flex-end{justify-content:flex-end !important}.is-justify-content-center{justify-content:center !important}.is-justify-content-space-between{justify-content:space-between !important}.is-justify-content-space-around{justify-content:space-around !important}.is-justify-content-space-evenly{justify-content:space-evenly !important}.is-justify-content-start{justify-content:start !important}.is-justify-content-end{justify-content:end !important}.is-justify-content-left{justify-content:left !important}.is-justify-content-right{justify-content:right !important}.is-align-content-flex-start{align-content:flex-start !important}.is-align-content-flex-end{align-content:flex-end !important}.is-align-content-center{align-content:center !important}.is-align-content-space-between{align-content:space-between !important}.is-align-content-space-around{align-content:space-around !important}.is-align-content-space-evenly{align-content:space-evenly !important}.is-align-content-stretch{align-content:stretch !important}.is-align-content-start{align-content:start !important}.is-align-content-end{align-content:end !important}.is-align-content-baseline{align-content:baseline !important}.is-align-items-stretch{align-items:stretch !important}.is-align-items-flex-start{align-items:flex-start !important}.is-align-items-flex-end{align-items:flex-end !important}.is-align-items-center{align-items:center !important}.is-align-items-baseline{align-items:baseline !important}.is-align-items-start{align-items:start !important}.is-align-items-end{align-items:end !important}.is-align-items-self-start{align-items:self-start !important}.is-align-items-self-end{align-items:self-end !important}.is-align-self-auto{align-self:auto !important}.is-align-self-flex-start{align-self:flex-start !important}.is-align-self-flex-end{align-self:flex-end !important}.is-align-self-center{align-self:center !important}.is-align-self-baseline{align-self:baseline !important}.is-align-self-stretch{align-self:stretch !important}.is-flex-grow-0{flex-grow:0 !important}.is-flex-grow-1{flex-grow:1 !important}.is-flex-grow-2{flex-grow:2 !important}.is-flex-grow-3{flex-grow:3 !important}.is-flex-grow-4{flex-grow:4 !important}.is-flex-grow-5{flex-grow:5 !important}.is-flex-shrink-0{flex-shrink:0 !important}.is-flex-shrink-1{flex-shrink:1 !important}.is-flex-shrink-2{flex-shrink:2 !important}.is-flex-shrink-3{flex-shrink:3 !important}.is-flex-shrink-4{flex-shrink:4 !important}.is-flex-shrink-5{flex-shrink:5 !important}.is-clearfix::after{clear:both;content:" ";display:table}.is-pulled-left{float:left !important}.is-pulled-right{float:right !important}.is-radiusless{border-radius:0 !important}.is-shadowless{box-shadow:none !important}.is-clickable{cursor:pointer !important;pointer-events:all !important}.is-clipped{overflow:hidden !important}.is-relative{position:relative !important}.is-marginless{margin:0 !important}.is-paddingless{padding:0 !important}.m-0{margin:0 !important}.mt-0{margin-top:0 !important}.mr-0{margin-right:0 !important}.mb-0{margin-bottom:0 !important}.ml-0{margin-left:0 !important}.mx-0{margin-left:0 !important;margin-right:0 !important}.my-0{margin-top:0 !important;margin-bottom:0 !important}.m-1{margin:.25rem !important}.mt-1{margin-top:.25rem !important}.mr-1{margin-right:.25rem !important}.mb-1{margin-bottom:.25rem !important}.ml-1{margin-left:.25rem !important}.mx-1{margin-left:.25rem !important;margin-right:.25rem !important}.my-1{margin-top:.25rem !important;margin-bottom:.25rem !important}.m-2{margin:.5rem !important}.mt-2{margin-top:.5rem !important}.mr-2{margin-right:.5rem !important}.mb-2{margin-bottom:.5rem !important}.ml-2{margin-left:.5rem !important}.mx-2{margin-left:.5rem !important;margin-right:.5rem !important}.my-2{margin-top:.5rem !important;margin-bottom:.5rem !important}.m-3{margin:.75rem !important}.mt-3{margin-top:.75rem !important}.mr-3{margin-right:.75rem !important}.mb-3{margin-bottom:.75rem !important}.ml-3{margin-left:.75rem !important}.mx-3{margin-left:.75rem !important;margin-right:.75rem !important}.my-3{margin-top:.75rem !important;margin-bottom:.75rem !important}.m-4{margin:1rem !important}.mt-4{margin-top:1rem !important}.mr-4{margin-right:1rem !important}.mb-4{margin-bottom:1rem !important}.ml-4{margin-left:1rem !important}.mx-4{margin-left:1rem !important;margin-right:1rem !important}.my-4{margin-top:1rem !important;margin-bottom:1rem !important}.m-5{margin:1.5rem !important}.mt-5{margin-top:1.5rem !important}.mr-5{margin-right:1.5rem !important}.mb-5{margin-bottom:1.5rem !important}.ml-5{margin-left:1.5rem !important}.mx-5{margin-left:1.5rem !important;margin-right:1.5rem !important}.my-5{margin-top:1.5rem !important;margin-bottom:1.5rem !important}.m-6{margin:3rem !important}.mt-6{margin-top:3rem !important}.mr-6{margin-right:3rem !important}.mb-6{margin-bottom:3rem !important}.ml-6{margin-left:3rem !important}.mx-6{margin-left:3rem !important;margin-right:3rem !important}.my-6{margin-top:3rem !important;margin-bottom:3rem !important}.m-auto{margin:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-right:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-left:auto !important}.mx-auto{margin-left:auto !important;margin-right:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.p-0{padding:0 !important}.pt-0{padding-top:0 !important}.pr-0{padding-right:0 !important}.pb-0{padding-bottom:0 !important}.pl-0{padding-left:0 !important}.px-0{padding-left:0 !important;padding-right:0 !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.p-1{padding:.25rem !important}.pt-1{padding-top:.25rem !important}.pr-1{padding-right:.25rem !important}.pb-1{padding-bottom:.25rem !important}.pl-1{padding-left:.25rem !important}.px-1{padding-left:.25rem !important;padding-right:.25rem !important}.py-1{padding-top:.25rem !important;padding-bottom:.25rem !important}.p-2{padding:.5rem !important}.pt-2{padding-top:.5rem !important}.pr-2{padding-right:.5rem !important}.pb-2{padding-bottom:.5rem !important}.pl-2{padding-left:.5rem !important}.px-2{padding-left:.5rem !important;padding-right:.5rem !important}.py-2{padding-top:.5rem !important;padding-bottom:.5rem !important}.p-3{padding:.75rem !important}.pt-3{padding-top:.75rem !important}.pr-3{padding-right:.75rem !important}.pb-3{padding-bottom:.75rem !important}.pl-3{padding-left:.75rem !important}.px-3{padding-left:.75rem !important;padding-right:.75rem !important}.py-3{padding-top:.75rem !important;padding-bottom:.75rem !important}.p-4{padding:1rem !important}.pt-4{padding-top:1rem !important}.pr-4{padding-right:1rem !important}.pb-4{padding-bottom:1rem !important}.pl-4{padding-left:1rem !important}.px-4{padding-left:1rem !important;padding-right:1rem !important}.py-4{padding-top:1rem !important;padding-bottom:1rem !important}.p-5{padding:1.5rem !important}.pt-5{padding-top:1.5rem !important}.pr-5{padding-right:1.5rem !important}.pb-5{padding-bottom:1.5rem !important}.pl-5{padding-left:1.5rem !important}.px-5{padding-left:1.5rem !important;padding-right:1.5rem !important}.py-5{padding-top:1.5rem !important;padding-bottom:1.5rem !important}.p-6{padding:3rem !important}.pt-6{padding-top:3rem !important}.pr-6{padding-right:3rem !important}.pb-6{padding-bottom:3rem !important}.pl-6{padding-left:3rem !important}.px-6{padding-left:3rem !important;padding-right:3rem !important}.py-6{padding-top:3rem !important;padding-bottom:3rem !important}.p-auto{padding:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-right:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-left:auto !important}.px-auto{padding-left:auto !important;padding-right:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !important}.is-size-1{font-size:3rem !important}.is-size-2{font-size:2.5rem !important}.is-size-3{font-size:2rem !important}.is-size-4{font-size:1.5rem !important}.is-size-5{font-size:1.25rem !important}.is-size-6{font-size:1rem !important}.is-size-7,.docstring>section>a.docs-sourcelink{font-size:.75rem !important}@media screen and (max-width: 768px){.is-size-1-mobile{font-size:3rem !important}.is-size-2-mobile{font-size:2.5rem !important}.is-size-3-mobile{font-size:2rem !important}.is-size-4-mobile{font-size:1.5rem !important}.is-size-5-mobile{font-size:1.25rem !important}.is-size-6-mobile{font-size:1rem !important}.is-size-7-mobile{font-size:.75rem !important}}@media screen and (min-width: 769px),print{.is-size-1-tablet{font-size:3rem !important}.is-size-2-tablet{font-size:2.5rem !important}.is-size-3-tablet{font-size:2rem !important}.is-size-4-tablet{font-size:1.5rem !important}.is-size-5-tablet{font-size:1.25rem !important}.is-size-6-tablet{font-size:1rem !important}.is-size-7-tablet{font-size:.75rem !important}}@media screen and (max-width: 1055px){.is-size-1-touch{font-size:3rem !important}.is-size-2-touch{font-size:2.5rem !important}.is-size-3-touch{font-size:2rem !important}.is-size-4-touch{font-size:1.5rem !important}.is-size-5-touch{font-size:1.25rem !important}.is-size-6-touch{font-size:1rem !important}.is-size-7-touch{font-size:.75rem !important}}@media screen and (min-width: 1056px){.is-size-1-desktop{font-size:3rem !important}.is-size-2-desktop{font-size:2.5rem !important}.is-size-3-desktop{font-size:2rem !important}.is-size-4-desktop{font-size:1.5rem !important}.is-size-5-desktop{font-size:1.25rem !important}.is-size-6-desktop{font-size:1rem !important}.is-size-7-desktop{font-size:.75rem !important}}@media screen and (min-width: 1216px){.is-size-1-widescreen{font-size:3rem !important}.is-size-2-widescreen{font-size:2.5rem !important}.is-size-3-widescreen{font-size:2rem !important}.is-size-4-widescreen{font-size:1.5rem !important}.is-size-5-widescreen{font-size:1.25rem !important}.is-size-6-widescreen{font-size:1rem !important}.is-size-7-widescreen{font-size:.75rem !important}}@media screen and (min-width: 1408px){.is-size-1-fullhd{font-size:3rem !important}.is-size-2-fullhd{font-size:2.5rem !important}.is-size-3-fullhd{font-size:2rem !important}.is-size-4-fullhd{font-size:1.5rem !important}.is-size-5-fullhd{font-size:1.25rem !important}.is-size-6-fullhd{font-size:1rem !important}.is-size-7-fullhd{font-size:.75rem !important}}.has-text-centered{text-align:center !important}.has-text-justified{text-align:justify !important}.has-text-left{text-align:left !important}.has-text-right{text-align:right !important}@media screen and (max-width: 768px){.has-text-centered-mobile{text-align:center !important}}@media screen and (min-width: 769px),print{.has-text-centered-tablet{text-align:center !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-centered-tablet-only{text-align:center !important}}@media screen and (max-width: 1055px){.has-text-centered-touch{text-align:center !important}}@media screen and (min-width: 1056px){.has-text-centered-desktop{text-align:center !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-centered-desktop-only{text-align:center !important}}@media screen and (min-width: 1216px){.has-text-centered-widescreen{text-align:center !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-centered-widescreen-only{text-align:center !important}}@media screen and (min-width: 1408px){.has-text-centered-fullhd{text-align:center !important}}@media screen and (max-width: 768px){.has-text-justified-mobile{text-align:justify !important}}@media screen and (min-width: 769px),print{.has-text-justified-tablet{text-align:justify !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-justified-tablet-only{text-align:justify !important}}@media screen and (max-width: 1055px){.has-text-justified-touch{text-align:justify !important}}@media screen and (min-width: 1056px){.has-text-justified-desktop{text-align:justify !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-justified-desktop-only{text-align:justify !important}}@media screen and (min-width: 1216px){.has-text-justified-widescreen{text-align:justify !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-justified-widescreen-only{text-align:justify !important}}@media screen and (min-width: 1408px){.has-text-justified-fullhd{text-align:justify !important}}@media screen and (max-width: 768px){.has-text-left-mobile{text-align:left !important}}@media screen and (min-width: 769px),print{.has-text-left-tablet{text-align:left !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-left-tablet-only{text-align:left !important}}@media screen and (max-width: 1055px){.has-text-left-touch{text-align:left !important}}@media screen and (min-width: 1056px){.has-text-left-desktop{text-align:left !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-left-desktop-only{text-align:left !important}}@media screen and (min-width: 1216px){.has-text-left-widescreen{text-align:left !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-left-widescreen-only{text-align:left !important}}@media screen and (min-width: 1408px){.has-text-left-fullhd{text-align:left !important}}@media screen and (max-width: 768px){.has-text-right-mobile{text-align:right !important}}@media screen and (min-width: 769px),print{.has-text-right-tablet{text-align:right !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.has-text-right-tablet-only{text-align:right !important}}@media screen and (max-width: 1055px){.has-text-right-touch{text-align:right !important}}@media screen and (min-width: 1056px){.has-text-right-desktop{text-align:right !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.has-text-right-desktop-only{text-align:right !important}}@media screen and (min-width: 1216px){.has-text-right-widescreen{text-align:right !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.has-text-right-widescreen-only{text-align:right !important}}@media screen and (min-width: 1408px){.has-text-right-fullhd{text-align:right !important}}.is-capitalized{text-transform:capitalize !important}.is-lowercase{text-transform:lowercase !important}.is-uppercase{text-transform:uppercase !important}.is-italic{font-style:italic !important}.is-underlined{text-decoration:underline !important}.has-text-weight-light{font-weight:300 !important}.has-text-weight-normal{font-weight:400 !important}.has-text-weight-medium{font-weight:500 !important}.has-text-weight-semibold{font-weight:600 !important}.has-text-weight-bold{font-weight:700 !important}.is-family-primary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-secondary{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-sans-serif{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif !important}.is-family-monospace{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-family-code{font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace !important}.is-block{display:block !important}@media screen and (max-width: 768px){.is-block-mobile{display:block !important}}@media screen and (min-width: 769px),print{.is-block-tablet{display:block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-block-tablet-only{display:block !important}}@media screen and (max-width: 1055px){.is-block-touch{display:block !important}}@media screen and (min-width: 1056px){.is-block-desktop{display:block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-block-desktop-only{display:block !important}}@media screen and (min-width: 1216px){.is-block-widescreen{display:block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-block-widescreen-only{display:block !important}}@media screen and (min-width: 1408px){.is-block-fullhd{display:block !important}}.is-flex{display:flex !important}@media screen and (max-width: 768px){.is-flex-mobile{display:flex !important}}@media screen and (min-width: 769px),print{.is-flex-tablet{display:flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-flex-tablet-only{display:flex !important}}@media screen and (max-width: 1055px){.is-flex-touch{display:flex !important}}@media screen and (min-width: 1056px){.is-flex-desktop{display:flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-flex-desktop-only{display:flex !important}}@media screen and (min-width: 1216px){.is-flex-widescreen{display:flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-flex-widescreen-only{display:flex !important}}@media screen and (min-width: 1408px){.is-flex-fullhd{display:flex !important}}.is-inline{display:inline !important}@media screen and (max-width: 768px){.is-inline-mobile{display:inline !important}}@media screen and (min-width: 769px),print{.is-inline-tablet{display:inline !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-tablet-only{display:inline !important}}@media screen and (max-width: 1055px){.is-inline-touch{display:inline !important}}@media screen and (min-width: 1056px){.is-inline-desktop{display:inline !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-desktop-only{display:inline !important}}@media screen and (min-width: 1216px){.is-inline-widescreen{display:inline !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-widescreen-only{display:inline !important}}@media screen and (min-width: 1408px){.is-inline-fullhd{display:inline !important}}.is-inline-block{display:inline-block !important}@media screen and (max-width: 768px){.is-inline-block-mobile{display:inline-block !important}}@media screen and (min-width: 769px),print{.is-inline-block-tablet{display:inline-block !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-block-tablet-only{display:inline-block !important}}@media screen and (max-width: 1055px){.is-inline-block-touch{display:inline-block !important}}@media screen and (min-width: 1056px){.is-inline-block-desktop{display:inline-block !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-block-desktop-only{display:inline-block !important}}@media screen and (min-width: 1216px){.is-inline-block-widescreen{display:inline-block !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-block-widescreen-only{display:inline-block !important}}@media screen and (min-width: 1408px){.is-inline-block-fullhd{display:inline-block !important}}.is-inline-flex{display:inline-flex !important}@media screen and (max-width: 768px){.is-inline-flex-mobile{display:inline-flex !important}}@media screen and (min-width: 769px),print{.is-inline-flex-tablet{display:inline-flex !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-inline-flex-tablet-only{display:inline-flex !important}}@media screen and (max-width: 1055px){.is-inline-flex-touch{display:inline-flex !important}}@media screen and (min-width: 1056px){.is-inline-flex-desktop{display:inline-flex !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-inline-flex-desktop-only{display:inline-flex !important}}@media screen and (min-width: 1216px){.is-inline-flex-widescreen{display:inline-flex !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-inline-flex-widescreen-only{display:inline-flex !important}}@media screen and (min-width: 1408px){.is-inline-flex-fullhd{display:inline-flex !important}}.is-hidden{display:none !important}.is-sr-only{border:none !important;clip:rect(0, 0, 0, 0) !important;height:0.01em !important;overflow:hidden !important;padding:0 !important;position:absolute !important;white-space:nowrap !important;width:0.01em !important}@media screen and (max-width: 768px){.is-hidden-mobile{display:none !important}}@media screen and (min-width: 769px),print{.is-hidden-tablet{display:none !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-hidden-tablet-only{display:none !important}}@media screen and (max-width: 1055px){.is-hidden-touch{display:none !important}}@media screen and (min-width: 1056px){.is-hidden-desktop{display:none !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-hidden-desktop-only{display:none !important}}@media screen and (min-width: 1216px){.is-hidden-widescreen{display:none !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-hidden-widescreen-only{display:none !important}}@media screen and (min-width: 1408px){.is-hidden-fullhd{display:none !important}}.is-invisible{visibility:hidden !important}@media screen and (max-width: 768px){.is-invisible-mobile{visibility:hidden !important}}@media screen and (min-width: 769px),print{.is-invisible-tablet{visibility:hidden !important}}@media screen and (min-width: 769px) and (max-width: 1055px){.is-invisible-tablet-only{visibility:hidden !important}}@media screen and (max-width: 1055px){.is-invisible-touch{visibility:hidden !important}}@media screen and (min-width: 1056px){.is-invisible-desktop{visibility:hidden !important}}@media screen and (min-width: 1056px) and (max-width: 1215px){.is-invisible-desktop-only{visibility:hidden !important}}@media screen and (min-width: 1216px){.is-invisible-widescreen{visibility:hidden !important}}@media screen and (min-width: 1216px) and (max-width: 1407px){.is-invisible-widescreen-only{visibility:hidden !important}}@media screen and (min-width: 1408px){.is-invisible-fullhd{visibility:hidden !important}}/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select,textarea{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}td:not([align]),th:not([align]){text-align:inherit}html{background-color:#fff;font-size:16px;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;min-width:300px;overflow-x:auto;overflow-y:scroll;text-rendering:optimizeLegibility;text-size-adjust:100%}article,aside,figure,footer,header,hgroup,section{display:block}body,button,input,optgroup,select,textarea{font-family:"Lato Medium",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue","Helvetica","Arial",sans-serif}code,pre{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}body{color:#222;font-size:1em;font-weight:400;line-height:1.5}a{color:#2e63b8;cursor:pointer;text-decoration:none}a strong{color:currentColor}a:hover{color:#363636}code{background-color:rgba(0,0,0,0.05);color:#000;font-size:.875em;font-weight:normal;padding:.1em}hr{background-color:#f5f5f5;border:none;display:block;height:2px;margin:1.5rem 0}img{height:auto;max-width:100%}input[type="checkbox"],input[type="radio"]{vertical-align:baseline}small{font-size:.875em}span{font-style:inherit;font-weight:inherit}strong{color:#222;font-weight:700}fieldset{border:none}pre{-webkit-overflow-scrolling:touch;background-color:#f5f5f5;color:#222;font-size:.875em;overflow-x:auto;padding:1.25rem 1.5rem;white-space:pre;word-wrap:normal}pre code{background-color:transparent;color:currentColor;font-size:1em;padding:0}table td,table th{vertical-align:top}table td:not([align]),table th:not([align]){text-align:inherit}table th{color:#222}@keyframes spinAround{from{transform:rotate(0deg)}to{transform:rotate(359deg)}}.box{background-color:#fff;border-radius:6px;box-shadow:#bbb;color:#222;display:block;padding:1.25rem}a.box:hover,a.box:focus{box-shadow:0 0.5em 1em -0.125em rgba(10,10,10,0.1),0 0 0 1px #2e63b8}a.box:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2),0 0 0 1px #2e63b8}.button{background-color:#fff;border-color:#dbdbdb;border-width:1px;color:#222;cursor:pointer;justify-content:center;padding-bottom:calc(0.5em - 1px);padding-left:1em;padding-right:1em;padding-top:calc(0.5em - 1px);text-align:center;white-space:nowrap}.button strong{color:inherit}.button .icon,.button .icon.is-small,.button #documenter .docs-sidebar form.docs-search>input.icon,#documenter .docs-sidebar .button form.docs-search>input.icon,.button .icon.is-medium,.button .icon.is-large{height:1.5em;width:1.5em}.button .icon:first-child:not(:last-child){margin-left:calc(-0.5em - 1px);margin-right:.25em}.button .icon:last-child:not(:first-child){margin-left:.25em;margin-right:calc(-0.5em - 1px)}.button .icon:first-child:last-child{margin-left:calc(-0.5em - 1px);margin-right:calc(-0.5em - 1px)}.button:hover,.button.is-hovered{border-color:#b5b5b5;color:#363636}.button:focus,.button.is-focused{border-color:#3c5dcd;color:#363636}.button:focus:not(:active),.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.button:active,.button.is-active{border-color:#4a4a4a;color:#363636}.button.is-text{background-color:transparent;border-color:transparent;color:#222;text-decoration:underline}.button.is-text:hover,.button.is-text.is-hovered,.button.is-text:focus,.button.is-text.is-focused{background-color:#f5f5f5;color:#222}.button.is-text:active,.button.is-text.is-active{background-color:#e8e8e8;color:#222}.button.is-text[disabled],fieldset[disabled] .button.is-text{background-color:transparent;border-color:transparent;box-shadow:none}.button.is-ghost{background:none;border-color:rgba(0,0,0,0);color:#2e63b8;text-decoration:none}.button.is-ghost:hover,.button.is-ghost.is-hovered{color:#2e63b8;text-decoration:underline}.button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}.button.is-white:hover,.button.is-white.is-hovered{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.button.is-white:focus,.button.is-white.is-focused{border-color:transparent;color:#0a0a0a}.button.is-white:focus:not(:active),.button.is-white.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}.button.is-white:active,.button.is-white.is-active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.button.is-white[disabled],fieldset[disabled] .button.is-white{background-color:#fff;border-color:#fff;box-shadow:none}.button.is-white.is-inverted{background-color:#0a0a0a;color:#fff}.button.is-white.is-inverted:hover,.button.is-white.is-inverted.is-hovered{background-color:#000}.button.is-white.is-inverted[disabled],fieldset[disabled] .button.is-white.is-inverted{background-color:#0a0a0a;border-color:transparent;box-shadow:none;color:#fff}.button.is-white.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}.button.is-white.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-white.is-outlined:hover,.button.is-white.is-outlined.is-hovered,.button.is-white.is-outlined:focus,.button.is-white.is-outlined.is-focused{background-color:#fff;border-color:#fff;color:#0a0a0a}.button.is-white.is-outlined.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-white.is-outlined.is-loading:hover::after,.button.is-white.is-outlined.is-loading.is-hovered::after,.button.is-white.is-outlined.is-loading:focus::after,.button.is-white.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}.button.is-white.is-outlined[disabled],fieldset[disabled] .button.is-white.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}.button.is-white.is-inverted.is-outlined:hover,.button.is-white.is-inverted.is-outlined.is-hovered,.button.is-white.is-inverted.is-outlined:focus,.button.is-white.is-inverted.is-outlined.is-focused{background-color:#0a0a0a;color:#fff}.button.is-white.is-inverted.is-outlined.is-loading:hover::after,.button.is-white.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-white.is-inverted.is-outlined.is-loading:focus::after,.button.is-white.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-white.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-white.is-inverted.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}.button.is-black{background-color:#0a0a0a;border-color:transparent;color:#fff}.button.is-black:hover,.button.is-black.is-hovered{background-color:#040404;border-color:transparent;color:#fff}.button.is-black:focus,.button.is-black.is-focused{border-color:transparent;color:#fff}.button.is-black:focus:not(:active),.button.is-black.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}.button.is-black:active,.button.is-black.is-active{background-color:#000;border-color:transparent;color:#fff}.button.is-black[disabled],fieldset[disabled] .button.is-black{background-color:#0a0a0a;border-color:#0a0a0a;box-shadow:none}.button.is-black.is-inverted{background-color:#fff;color:#0a0a0a}.button.is-black.is-inverted:hover,.button.is-black.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-black.is-inverted[disabled],fieldset[disabled] .button.is-black.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#0a0a0a}.button.is-black.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;color:#0a0a0a}.button.is-black.is-outlined:hover,.button.is-black.is-outlined.is-hovered,.button.is-black.is-outlined:focus,.button.is-black.is-outlined.is-focused{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}.button.is-black.is-outlined.is-loading::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}.button.is-black.is-outlined.is-loading:hover::after,.button.is-black.is-outlined.is-loading.is-hovered::after,.button.is-black.is-outlined.is-loading:focus::after,.button.is-black.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-black.is-outlined[disabled],fieldset[disabled] .button.is-black.is-outlined{background-color:transparent;border-color:#0a0a0a;box-shadow:none;color:#0a0a0a}.button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-black.is-inverted.is-outlined:hover,.button.is-black.is-inverted.is-outlined.is-hovered,.button.is-black.is-inverted.is-outlined:focus,.button.is-black.is-inverted.is-outlined.is-focused{background-color:#fff;color:#0a0a0a}.button.is-black.is-inverted.is-outlined.is-loading:hover::after,.button.is-black.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-black.is-inverted.is-outlined.is-loading:focus::after,.button.is-black.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #0a0a0a #0a0a0a !important}.button.is-black.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-black.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-light{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-light:hover,.button.is-light.is-hovered{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-light:focus,.button.is-light.is-focused{border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-light:focus:not(:active),.button.is-light.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}.button.is-light:active,.button.is-light.is-active{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}.button.is-light[disabled],fieldset[disabled] .button.is-light{background-color:#f5f5f5;border-color:#f5f5f5;box-shadow:none}.button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);color:#f5f5f5}.button.is-light.is-inverted:hover,.button.is-light.is-inverted.is-hovered{background-color:rgba(0,0,0,0.7)}.button.is-light.is-inverted[disabled],fieldset[disabled] .button.is-light.is-inverted{background-color:rgba(0,0,0,0.7);border-color:transparent;box-shadow:none;color:#f5f5f5}.button.is-light.is-loading::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}.button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;color:#f5f5f5}.button.is-light.is-outlined:hover,.button.is-light.is-outlined.is-hovered,.button.is-light.is-outlined:focus,.button.is-light.is-outlined.is-focused{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}.button.is-light.is-outlined.is-loading::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}.button.is-light.is-outlined.is-loading:hover::after,.button.is-light.is-outlined.is-loading.is-hovered::after,.button.is-light.is-outlined.is-loading:focus::after,.button.is-light.is-outlined.is-loading.is-focused::after{border-color:transparent transparent rgba(0,0,0,0.7) rgba(0,0,0,0.7) !important}.button.is-light.is-outlined[disabled],fieldset[disabled] .button.is-light.is-outlined{background-color:transparent;border-color:#f5f5f5;box-shadow:none;color:#f5f5f5}.button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);color:rgba(0,0,0,0.7)}.button.is-light.is-inverted.is-outlined:hover,.button.is-light.is-inverted.is-outlined.is-hovered,.button.is-light.is-inverted.is-outlined:focus,.button.is-light.is-inverted.is-outlined.is-focused{background-color:rgba(0,0,0,0.7);color:#f5f5f5}.button.is-light.is-inverted.is-outlined.is-loading:hover::after,.button.is-light.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-light.is-inverted.is-outlined.is-loading:focus::after,.button.is-light.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #f5f5f5 #f5f5f5 !important}.button.is-light.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-light.is-inverted.is-outlined{background-color:transparent;border-color:rgba(0,0,0,0.7);box-shadow:none;color:rgba(0,0,0,0.7)}.button.is-dark,.content kbd.button{background-color:#363636;border-color:transparent;color:#fff}.button.is-dark:hover,.content kbd.button:hover,.button.is-dark.is-hovered,.content kbd.button.is-hovered{background-color:#2f2f2f;border-color:transparent;color:#fff}.button.is-dark:focus,.content kbd.button:focus,.button.is-dark.is-focused,.content kbd.button.is-focused{border-color:transparent;color:#fff}.button.is-dark:focus:not(:active),.content kbd.button:focus:not(:active),.button.is-dark.is-focused:not(:active),.content kbd.button.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(54,54,54,0.25)}.button.is-dark:active,.content kbd.button:active,.button.is-dark.is-active,.content kbd.button.is-active{background-color:#292929;border-color:transparent;color:#fff}.button.is-dark[disabled],.content kbd.button[disabled],fieldset[disabled] .button.is-dark,fieldset[disabled] .content kbd.button,.content fieldset[disabled] kbd.button{background-color:#363636;border-color:#363636;box-shadow:none}.button.is-dark.is-inverted,.content kbd.button.is-inverted{background-color:#fff;color:#363636}.button.is-dark.is-inverted:hover,.content kbd.button.is-inverted:hover,.button.is-dark.is-inverted.is-hovered,.content kbd.button.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-dark.is-inverted[disabled],.content kbd.button.is-inverted[disabled],fieldset[disabled] .button.is-dark.is-inverted,fieldset[disabled] .content kbd.button.is-inverted,.content fieldset[disabled] kbd.button.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#363636}.button.is-dark.is-loading::after,.content kbd.button.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-dark.is-outlined,.content kbd.button.is-outlined{background-color:transparent;border-color:#363636;color:#363636}.button.is-dark.is-outlined:hover,.content kbd.button.is-outlined:hover,.button.is-dark.is-outlined.is-hovered,.content kbd.button.is-outlined.is-hovered,.button.is-dark.is-outlined:focus,.content kbd.button.is-outlined:focus,.button.is-dark.is-outlined.is-focused,.content kbd.button.is-outlined.is-focused{background-color:#363636;border-color:#363636;color:#fff}.button.is-dark.is-outlined.is-loading::after,.content kbd.button.is-outlined.is-loading::after{border-color:transparent transparent #363636 #363636 !important}.button.is-dark.is-outlined.is-loading:hover::after,.content kbd.button.is-outlined.is-loading:hover::after,.button.is-dark.is-outlined.is-loading.is-hovered::after,.content kbd.button.is-outlined.is-loading.is-hovered::after,.button.is-dark.is-outlined.is-loading:focus::after,.content kbd.button.is-outlined.is-loading:focus::after,.button.is-dark.is-outlined.is-loading.is-focused::after,.content kbd.button.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-dark.is-outlined[disabled],.content kbd.button.is-outlined[disabled],fieldset[disabled] .button.is-dark.is-outlined,fieldset[disabled] .content kbd.button.is-outlined,.content fieldset[disabled] kbd.button.is-outlined{background-color:transparent;border-color:#363636;box-shadow:none;color:#363636}.button.is-dark.is-inverted.is-outlined,.content kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-dark.is-inverted.is-outlined:hover,.content kbd.button.is-inverted.is-outlined:hover,.button.is-dark.is-inverted.is-outlined.is-hovered,.content kbd.button.is-inverted.is-outlined.is-hovered,.button.is-dark.is-inverted.is-outlined:focus,.content kbd.button.is-inverted.is-outlined:focus,.button.is-dark.is-inverted.is-outlined.is-focused,.content kbd.button.is-inverted.is-outlined.is-focused{background-color:#fff;color:#363636}.button.is-dark.is-inverted.is-outlined.is-loading:hover::after,.content kbd.button.is-inverted.is-outlined.is-loading:hover::after,.button.is-dark.is-inverted.is-outlined.is-loading.is-hovered::after,.content kbd.button.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-dark.is-inverted.is-outlined.is-loading:focus::after,.content kbd.button.is-inverted.is-outlined.is-loading:focus::after,.button.is-dark.is-inverted.is-outlined.is-loading.is-focused::after,.content kbd.button.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #363636 #363636 !important}.button.is-dark.is-inverted.is-outlined[disabled],.content kbd.button.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-dark.is-inverted.is-outlined,fieldset[disabled] .content kbd.button.is-inverted.is-outlined,.content fieldset[disabled] kbd.button.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-primary,.docstring>section>a.button.docs-sourcelink{background-color:#4eb5de;border-color:transparent;color:#fff}.button.is-primary:hover,.docstring>section>a.button.docs-sourcelink:hover,.button.is-primary.is-hovered,.docstring>section>a.button.is-hovered.docs-sourcelink{background-color:#43b1dc;border-color:transparent;color:#fff}.button.is-primary:focus,.docstring>section>a.button.docs-sourcelink:focus,.button.is-primary.is-focused,.docstring>section>a.button.is-focused.docs-sourcelink{border-color:transparent;color:#fff}.button.is-primary:focus:not(:active),.docstring>section>a.button.docs-sourcelink:focus:not(:active),.button.is-primary.is-focused:not(:active),.docstring>section>a.button.is-focused.docs-sourcelink:not(:active){box-shadow:0 0 0 0.125em rgba(78,181,222,0.25)}.button.is-primary:active,.docstring>section>a.button.docs-sourcelink:active,.button.is-primary.is-active,.docstring>section>a.button.is-active.docs-sourcelink{background-color:#39acda;border-color:transparent;color:#fff}.button.is-primary[disabled],.docstring>section>a.button.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary,fieldset[disabled] .docstring>section>a.button.docs-sourcelink{background-color:#4eb5de;border-color:#4eb5de;box-shadow:none}.button.is-primary.is-inverted,.docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;color:#4eb5de}.button.is-primary.is-inverted:hover,.docstring>section>a.button.is-inverted.docs-sourcelink:hover,.button.is-primary.is-inverted.is-hovered,.docstring>section>a.button.is-inverted.is-hovered.docs-sourcelink{background-color:#f2f2f2}.button.is-primary.is-inverted[disabled],.docstring>section>a.button.is-inverted.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary.is-inverted,fieldset[disabled] .docstring>section>a.button.is-inverted.docs-sourcelink{background-color:#fff;border-color:transparent;box-shadow:none;color:#4eb5de}.button.is-primary.is-loading::after,.docstring>section>a.button.is-loading.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}.button.is-primary.is-outlined,.docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#4eb5de;color:#4eb5de}.button.is-primary.is-outlined:hover,.docstring>section>a.button.is-outlined.docs-sourcelink:hover,.button.is-primary.is-outlined.is-hovered,.docstring>section>a.button.is-outlined.is-hovered.docs-sourcelink,.button.is-primary.is-outlined:focus,.docstring>section>a.button.is-outlined.docs-sourcelink:focus,.button.is-primary.is-outlined.is-focused,.docstring>section>a.button.is-outlined.is-focused.docs-sourcelink{background-color:#4eb5de;border-color:#4eb5de;color:#fff}.button.is-primary.is-outlined.is-loading::after,.docstring>section>a.button.is-outlined.is-loading.docs-sourcelink::after{border-color:transparent transparent #4eb5de #4eb5de !important}.button.is-primary.is-outlined.is-loading:hover::after,.docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:hover::after,.button.is-primary.is-outlined.is-loading.is-hovered::after,.docstring>section>a.button.is-outlined.is-loading.is-hovered.docs-sourcelink::after,.button.is-primary.is-outlined.is-loading:focus::after,.docstring>section>a.button.is-outlined.is-loading.docs-sourcelink:focus::after,.button.is-primary.is-outlined.is-loading.is-focused::after,.docstring>section>a.button.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #fff #fff !important}.button.is-primary.is-outlined[disabled],.docstring>section>a.button.is-outlined.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary.is-outlined,fieldset[disabled] .docstring>section>a.button.is-outlined.docs-sourcelink{background-color:transparent;border-color:#4eb5de;box-shadow:none;color:#4eb5de}.button.is-primary.is-inverted.is-outlined,.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;color:#fff}.button.is-primary.is-inverted.is-outlined:hover,.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:hover,.button.is-primary.is-inverted.is-outlined.is-hovered,.docstring>section>a.button.is-inverted.is-outlined.is-hovered.docs-sourcelink,.button.is-primary.is-inverted.is-outlined:focus,.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink:focus,.button.is-primary.is-inverted.is-outlined.is-focused,.docstring>section>a.button.is-inverted.is-outlined.is-focused.docs-sourcelink{background-color:#fff;color:#4eb5de}.button.is-primary.is-inverted.is-outlined.is-loading:hover::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:hover::after,.button.is-primary.is-inverted.is-outlined.is-loading.is-hovered::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.is-hovered.docs-sourcelink::after,.button.is-primary.is-inverted.is-outlined.is-loading:focus::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.docs-sourcelink:focus::after,.button.is-primary.is-inverted.is-outlined.is-loading.is-focused::after,.docstring>section>a.button.is-inverted.is-outlined.is-loading.is-focused.docs-sourcelink::after{border-color:transparent transparent #4eb5de #4eb5de !important}.button.is-primary.is-inverted.is-outlined[disabled],.docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink[disabled],fieldset[disabled] .button.is-primary.is-inverted.is-outlined,fieldset[disabled] .docstring>section>a.button.is-inverted.is-outlined.docs-sourcelink{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-primary.is-light,.docstring>section>a.button.is-light.docs-sourcelink{background-color:#eef8fc;color:#1a6d8e}.button.is-primary.is-light:hover,.docstring>section>a.button.is-light.docs-sourcelink:hover,.button.is-primary.is-light.is-hovered,.docstring>section>a.button.is-light.is-hovered.docs-sourcelink{background-color:#e3f3fa;border-color:transparent;color:#1a6d8e}.button.is-primary.is-light:active,.docstring>section>a.button.is-light.docs-sourcelink:active,.button.is-primary.is-light.is-active,.docstring>section>a.button.is-light.is-active.docs-sourcelink{background-color:#d8eff8;border-color:transparent;color:#1a6d8e}.button.is-link{background-color:#2e63b8;border-color:transparent;color:#fff}.button.is-link:hover,.button.is-link.is-hovered{background-color:#2b5eae;border-color:transparent;color:#fff}.button.is-link:focus,.button.is-link.is-focused{border-color:transparent;color:#fff}.button.is-link:focus:not(:active),.button.is-link.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.button.is-link:active,.button.is-link.is-active{background-color:#2958a4;border-color:transparent;color:#fff}.button.is-link[disabled],fieldset[disabled] .button.is-link{background-color:#2e63b8;border-color:#2e63b8;box-shadow:none}.button.is-link.is-inverted{background-color:#fff;color:#2e63b8}.button.is-link.is-inverted:hover,.button.is-link.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-link.is-inverted[disabled],fieldset[disabled] .button.is-link.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#2e63b8}.button.is-link.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-link.is-outlined{background-color:transparent;border-color:#2e63b8;color:#2e63b8}.button.is-link.is-outlined:hover,.button.is-link.is-outlined.is-hovered,.button.is-link.is-outlined:focus,.button.is-link.is-outlined.is-focused{background-color:#2e63b8;border-color:#2e63b8;color:#fff}.button.is-link.is-outlined.is-loading::after{border-color:transparent transparent #2e63b8 #2e63b8 !important}.button.is-link.is-outlined.is-loading:hover::after,.button.is-link.is-outlined.is-loading.is-hovered::after,.button.is-link.is-outlined.is-loading:focus::after,.button.is-link.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #fff #fff !important}.button.is-link.is-outlined[disabled],fieldset[disabled] .button.is-link.is-outlined{background-color:transparent;border-color:#2e63b8;box-shadow:none;color:#2e63b8}.button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.button.is-link.is-inverted.is-outlined:hover,.button.is-link.is-inverted.is-outlined.is-hovered,.button.is-link.is-inverted.is-outlined:focus,.button.is-link.is-inverted.is-outlined.is-focused{background-color:#fff;color:#2e63b8}.button.is-link.is-inverted.is-outlined.is-loading:hover::after,.button.is-link.is-inverted.is-outlined.is-loading.is-hovered::after,.button.is-link.is-inverted.is-outlined.is-loading:focus::after,.button.is-link.is-inverted.is-outlined.is-loading.is-focused::after{border-color:transparent transparent #2e63b8 #2e63b8 !important}.button.is-link.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-link.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-link.is-light{background-color:#eff3fb;color:#3169c4}.button.is-link.is-light:hover,.button.is-link.is-light.is-hovered{background-color:#e4ecf8;border-color:transparent;color:#3169c4}.button.is-link.is-light:active,.button.is-link.is-light.is-active{background-color:#dae5f6;border-color:transparent;color:#3169c4}.button.is-info{background-color:#3c5dcd;border-color:transparent;color:#fff}.button.is-info:hover,.button.is-info.is-hovered{background-color:#3355c9;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(60,93,205,0.25)}.button.is-info:active,.button.is-info.is-active{background-color:#3151bf;border-color:transparent;color:#fff}.button.is-info[disabled],fieldset[disabled] .button.is-info{background-color:#3c5dcd;border-color:#3c5dcd;box-shadow:none}.button.is-info.is-inverted{background-color:#fff;color:#3c5dcd}.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:#3c5dcd}.button.is-info.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-info.is-outlined{background-color:transparent;border-color:#3c5dcd;color:#3c5dcd}.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:#3c5dcd;border-color:#3c5dcd;color:#fff}.button.is-info.is-outlined.is-loading::after{border-color:transparent transparent #3c5dcd #3c5dcd !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:#3c5dcd;box-shadow:none;color:#3c5dcd}.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:#3c5dcd}.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 #3c5dcd #3c5dcd !important}.button.is-info.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-info.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-info.is-light{background-color:#eff2fb;color:#3253c3}.button.is-info.is-light:hover,.button.is-info.is-light.is-hovered{background-color:#e5e9f8;border-color:transparent;color:#3253c3}.button.is-info.is-light:active,.button.is-info.is-light.is-active{background-color:#dae1f6;border-color:transparent;color:#3253c3}.button.is-success{background-color:#259a12;border-color:transparent;color:#fff}.button.is-success:hover,.button.is-success.is-hovered{background-color:#228f11;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(37,154,18,0.25)}.button.is-success:active,.button.is-success.is-active{background-color:#20830f;border-color:transparent;color:#fff}.button.is-success[disabled],fieldset[disabled] .button.is-success{background-color:#259a12;border-color:#259a12;box-shadow:none}.button.is-success.is-inverted{background-color:#fff;color:#259a12}.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:#259a12}.button.is-success.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-success.is-outlined{background-color:transparent;border-color:#259a12;color:#259a12}.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:#259a12;border-color:#259a12;color:#fff}.button.is-success.is-outlined.is-loading::after{border-color:transparent transparent #259a12 #259a12 !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:#259a12;box-shadow:none;color:#259a12}.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:#259a12}.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 #259a12 #259a12 !important}.button.is-success.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-success.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-success.is-light{background-color:#effded;color:#2ec016}.button.is-success.is-light:hover,.button.is-success.is-light.is-hovered{background-color:#e5fce1;border-color:transparent;color:#2ec016}.button.is-success.is-light:active,.button.is-success.is-light.is-active{background-color:#dbfad6;border-color:transparent;color:#2ec016}.button.is-warning{background-color:#a98800;border-color:transparent;color:#fff}.button.is-warning:hover,.button.is-warning.is-hovered{background-color:#9c7d00;border-color:transparent;color:#fff}.button.is-warning:focus,.button.is-warning.is-focused{border-color:transparent;color:#fff}.button.is-warning:focus:not(:active),.button.is-warning.is-focused:not(:active){box-shadow:0 0 0 0.125em rgba(169,136,0,0.25)}.button.is-warning:active,.button.is-warning.is-active{background-color:#8f7300;border-color:transparent;color:#fff}.button.is-warning[disabled],fieldset[disabled] .button.is-warning{background-color:#a98800;border-color:#a98800;box-shadow:none}.button.is-warning.is-inverted{background-color:#fff;color:#a98800}.button.is-warning.is-inverted:hover,.button.is-warning.is-inverted.is-hovered{background-color:#f2f2f2}.button.is-warning.is-inverted[disabled],fieldset[disabled] .button.is-warning.is-inverted{background-color:#fff;border-color:transparent;box-shadow:none;color:#a98800}.button.is-warning.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-warning.is-outlined{background-color:transparent;border-color:#a98800;color:#a98800}.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:#a98800;border-color:#a98800;color:#fff}.button.is-warning.is-outlined.is-loading::after{border-color:transparent transparent #a98800 #a98800 !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 #fff #fff !important}.button.is-warning.is-outlined[disabled],fieldset[disabled] .button.is-warning.is-outlined{background-color:transparent;border-color:#a98800;box-shadow:none;color:#a98800}.button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:#fff;color:#fff}.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:#fff;color:#a98800}.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 #a98800 #a98800 !important}.button.is-warning.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-warning.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-warning.is-light{background-color:#fffbeb;color:#cca400}.button.is-warning.is-light:hover,.button.is-warning.is-light.is-hovered{background-color:#fff9de;border-color:transparent;color:#cca400}.button.is-warning.is-light:active,.button.is-warning.is-light.is-active{background-color:#fff6d1;border-color:transparent;color:#cca400}.button.is-danger{background-color:#cb3c33;border-color:transparent;color:#fff}.button.is-danger:hover,.button.is-danger.is-hovered{background-color:#c13930;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(203,60,51,0.25)}.button.is-danger:active,.button.is-danger.is-active{background-color:#b7362e;border-color:transparent;color:#fff}.button.is-danger[disabled],fieldset[disabled] .button.is-danger{background-color:#cb3c33;border-color:#cb3c33;box-shadow:none}.button.is-danger.is-inverted{background-color:#fff;color:#cb3c33}.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:#cb3c33}.button.is-danger.is-loading::after{border-color:transparent transparent #fff #fff !important}.button.is-danger.is-outlined{background-color:transparent;border-color:#cb3c33;color:#cb3c33}.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:#cb3c33;border-color:#cb3c33;color:#fff}.button.is-danger.is-outlined.is-loading::after{border-color:transparent transparent #cb3c33 #cb3c33 !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:#cb3c33;box-shadow:none;color:#cb3c33}.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:#cb3c33}.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 #cb3c33 #cb3c33 !important}.button.is-danger.is-inverted.is-outlined[disabled],fieldset[disabled] .button.is-danger.is-inverted.is-outlined{background-color:transparent;border-color:#fff;box-shadow:none;color:#fff}.button.is-danger.is-light{background-color:#fbefef;color:#c03930}.button.is-danger.is-light:hover,.button.is-danger.is-light.is-hovered{background-color:#f8e6e5;border-color:transparent;color:#c03930}.button.is-danger.is-light:active,.button.is-danger.is-light.is-active{background-color:#f6dcda;border-color:transparent;color:#c03930}.button.is-small,#documenter .docs-sidebar form.docs-search>input.button{font-size:.75rem}.button.is-small:not(.is-rounded),#documenter .docs-sidebar form.docs-search>input.button:not(.is-rounded){border-radius:2px}.button.is-normal{font-size:1rem}.button.is-medium{font-size:1.25rem}.button.is-large{font-size:1.5rem}.button[disabled],fieldset[disabled] .button{background-color:#fff;border-color:#dbdbdb;box-shadow:none;opacity:.5}.button.is-fullwidth{display:flex;width:100%}.button.is-loading{color:transparent !important;pointer-events:none}.button.is-loading::after{position:absolute;left:calc(50% - (1em * 0.5));top:calc(50% - (1em * 0.5));position:absolute !important}.button.is-static{background-color:#f5f5f5;border-color:#dbdbdb;color:#6b6b6b;box-shadow:none;pointer-events:none}.button.is-rounded,#documenter .docs-sidebar form.docs-search>input.button{border-radius:9999px;padding-left:calc(1em + 0.25em);padding-right:calc(1em + 0.25em)}.buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.buttons .button{margin-bottom:0.5rem}.buttons .button:not(:last-child):not(.is-fullwidth){margin-right:.5rem}.buttons:last-child{margin-bottom:-0.5rem}.buttons:not(:last-child){margin-bottom:1rem}.buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large){font-size:.75rem}.buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large):not(.is-rounded){border-radius:2px}.buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large){font-size:1.25rem}.buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium){font-size:1.5rem}.buttons.has-addons .button:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.buttons.has-addons .button:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;margin-right:-1px}.buttons.has-addons .button:last-child{margin-right:0}.buttons.has-addons .button:hover,.buttons.has-addons .button.is-hovered{z-index:2}.buttons.has-addons .button:focus,.buttons.has-addons .button.is-focused,.buttons.has-addons .button:active,.buttons.has-addons .button.is-active,.buttons.has-addons .button.is-selected{z-index:3}.buttons.has-addons .button:focus:hover,.buttons.has-addons .button.is-focused:hover,.buttons.has-addons .button:active:hover,.buttons.has-addons .button.is-active:hover,.buttons.has-addons .button.is-selected:hover{z-index:4}.buttons.has-addons .button.is-expanded{flex-grow:1;flex-shrink:1}.buttons.is-centered{justify-content:center}.buttons.is-centered:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}.buttons.is-right{justify-content:flex-end}.buttons.is-right:not(.has-addons) .button:not(.is-fullwidth){margin-left:0.25rem;margin-right:0.25rem}@media screen and (max-width: 768px){.button.is-responsive.is-small,#documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.5625rem}.button.is-responsive,.button.is-responsive.is-normal{font-size:.65625rem}.button.is-responsive.is-medium{font-size:.75rem}.button.is-responsive.is-large{font-size:1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.button.is-responsive.is-small,#documenter .docs-sidebar form.docs-search>input.is-responsive{font-size:.65625rem}.button.is-responsive,.button.is-responsive.is-normal{font-size:.75rem}.button.is-responsive.is-medium{font-size:1rem}.button.is-responsive.is-large{font-size:1.25rem}}.container{flex-grow:1;margin:0 auto;position:relative;width:auto}.container.is-fluid{max-width:none !important;padding-left:32px;padding-right:32px;width:100%}@media screen and (min-width: 1056px){.container{max-width:992px}}@media screen and (max-width: 1215px){.container.is-widescreen:not(.is-max-desktop){max-width:1152px}}@media screen and (max-width: 1407px){.container.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}@media screen and (min-width: 1216px){.container:not(.is-max-desktop){max-width:1152px}}@media screen and (min-width: 1408px){.container:not(.is-max-desktop):not(.is-max-widescreen){max-width:1344px}}.content li+li{margin-top:0.25em}.content p:not(:last-child),.content dl:not(:last-child),.content ol:not(:last-child),.content ul:not(:last-child),.content blockquote:not(:last-child),.content pre:not(:last-child),.content table:not(:last-child){margin-bottom:1em}.content h1,.content h2,.content h3,.content h4,.content h5,.content h6{color:#222;font-weight:600;line-height:1.125}.content h1{font-size:2em;margin-bottom:0.5em}.content h1:not(:first-child){margin-top:1em}.content h2{font-size:1.75em;margin-bottom:0.5714em}.content h2:not(:first-child){margin-top:1.1428em}.content h3{font-size:1.5em;margin-bottom:0.6666em}.content h3:not(:first-child){margin-top:1.3333em}.content h4{font-size:1.25em;margin-bottom:0.8em}.content h5{font-size:1.125em;margin-bottom:0.8888em}.content h6{font-size:1em;margin-bottom:1em}.content blockquote{background-color:#f5f5f5;border-left:5px solid #dbdbdb;padding:1.25em 1.5em}.content ol{list-style-position:outside;margin-left:2em;margin-top:1em}.content ol:not([type]){list-style-type:decimal}.content ol.is-lower-alpha:not([type]){list-style-type:lower-alpha}.content ol.is-lower-roman:not([type]){list-style-type:lower-roman}.content ol.is-upper-alpha:not([type]){list-style-type:upper-alpha}.content ol.is-upper-roman:not([type]){list-style-type:upper-roman}.content ul{list-style:disc outside;margin-left:2em;margin-top:1em}.content ul ul{list-style-type:circle;margin-top:0.5em}.content ul ul ul{list-style-type:square}.content dd{margin-left:2em}.content figure{margin-left:2em;margin-right:2em;text-align:center}.content figure:not(:first-child){margin-top:2em}.content figure:not(:last-child){margin-bottom:2em}.content figure img{display:inline-block}.content figure figcaption{font-style:italic}.content pre{-webkit-overflow-scrolling:touch;overflow-x:auto;padding:0;white-space:pre;word-wrap:normal}.content sup,.content sub{font-size:75%}.content table{width:100%}.content table td,.content table th{border:1px solid #dbdbdb;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}.content table th{color:#222}.content table th:not([align]){text-align:inherit}.content table thead td,.content table thead th{border-width:0 0 2px;color:#222}.content table tfoot td,.content table tfoot th{border-width:2px 0 0;color:#222}.content table tbody tr:last-child td,.content table tbody tr:last-child th{border-bottom-width:0}.content .tabs li+li{margin-top:0}.content.is-small,#documenter .docs-sidebar form.docs-search>input.content{font-size:.75rem}.content.is-normal{font-size:1rem}.content.is-medium{font-size:1.25rem}.content.is-large{font-size:1.5rem}.icon{align-items:center;display:inline-flex;justify-content:center;height:1.5rem;width:1.5rem}.icon.is-small,#documenter .docs-sidebar form.docs-search>input.icon{height:1rem;width:1rem}.icon.is-medium{height:2rem;width:2rem}.icon.is-large{height:3rem;width:3rem}.icon-text{align-items:flex-start;color:inherit;display:inline-flex;flex-wrap:wrap;line-height:1.5rem;vertical-align:top}.icon-text .icon{flex-grow:0;flex-shrink:0}.icon-text .icon:not(:last-child){margin-right:.25em}.icon-text .icon:not(:first-child){margin-left:.25em}div.icon-text{display:flex}.image,#documenter .docs-sidebar .docs-logo>img{display:block;position:relative}.image img,#documenter .docs-sidebar .docs-logo>img img{display:block;height:auto;width:100%}.image img.is-rounded,#documenter .docs-sidebar .docs-logo>img img.is-rounded{border-radius:9999px}.image.is-fullwidth,#documenter .docs-sidebar .docs-logo>img.is-fullwidth{width:100%}.image.is-square img,#documenter .docs-sidebar .docs-logo>img.is-square img,.image.is-square .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-square .has-ratio,.image.is-1by1 img,#documenter .docs-sidebar .docs-logo>img.is-1by1 img,.image.is-1by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by1 .has-ratio,.image.is-5by4 img,#documenter .docs-sidebar .docs-logo>img.is-5by4 img,.image.is-5by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by4 .has-ratio,.image.is-4by3 img,#documenter .docs-sidebar .docs-logo>img.is-4by3 img,.image.is-4by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by3 .has-ratio,.image.is-3by2 img,#documenter .docs-sidebar .docs-logo>img.is-3by2 img,.image.is-3by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by2 .has-ratio,.image.is-5by3 img,#documenter .docs-sidebar .docs-logo>img.is-5by3 img,.image.is-5by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-5by3 .has-ratio,.image.is-16by9 img,#documenter .docs-sidebar .docs-logo>img.is-16by9 img,.image.is-16by9 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-16by9 .has-ratio,.image.is-2by1 img,#documenter .docs-sidebar .docs-logo>img.is-2by1 img,.image.is-2by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by1 .has-ratio,.image.is-3by1 img,#documenter .docs-sidebar .docs-logo>img.is-3by1 img,.image.is-3by1 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by1 .has-ratio,.image.is-4by5 img,#documenter .docs-sidebar .docs-logo>img.is-4by5 img,.image.is-4by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-4by5 .has-ratio,.image.is-3by4 img,#documenter .docs-sidebar .docs-logo>img.is-3by4 img,.image.is-3by4 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by4 .has-ratio,.image.is-2by3 img,#documenter .docs-sidebar .docs-logo>img.is-2by3 img,.image.is-2by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-2by3 .has-ratio,.image.is-3by5 img,#documenter .docs-sidebar .docs-logo>img.is-3by5 img,.image.is-3by5 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-3by5 .has-ratio,.image.is-9by16 img,#documenter .docs-sidebar .docs-logo>img.is-9by16 img,.image.is-9by16 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-9by16 .has-ratio,.image.is-1by2 img,#documenter .docs-sidebar .docs-logo>img.is-1by2 img,.image.is-1by2 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by2 .has-ratio,.image.is-1by3 img,#documenter .docs-sidebar .docs-logo>img.is-1by3 img,.image.is-1by3 .has-ratio,#documenter .docs-sidebar .docs-logo>img.is-1by3 .has-ratio{height:100%;width:100%}.image.is-square,#documenter .docs-sidebar .docs-logo>img.is-square,.image.is-1by1,#documenter .docs-sidebar .docs-logo>img.is-1by1{padding-top:100%}.image.is-5by4,#documenter .docs-sidebar .docs-logo>img.is-5by4{padding-top:80%}.image.is-4by3,#documenter .docs-sidebar .docs-logo>img.is-4by3{padding-top:75%}.image.is-3by2,#documenter .docs-sidebar .docs-logo>img.is-3by2{padding-top:66.6666%}.image.is-5by3,#documenter .docs-sidebar .docs-logo>img.is-5by3{padding-top:60%}.image.is-16by9,#documenter .docs-sidebar .docs-logo>img.is-16by9{padding-top:56.25%}.image.is-2by1,#documenter .docs-sidebar .docs-logo>img.is-2by1{padding-top:50%}.image.is-3by1,#documenter .docs-sidebar .docs-logo>img.is-3by1{padding-top:33.3333%}.image.is-4by5,#documenter .docs-sidebar .docs-logo>img.is-4by5{padding-top:125%}.image.is-3by4,#documenter .docs-sidebar .docs-logo>img.is-3by4{padding-top:133.3333%}.image.is-2by3,#documenter .docs-sidebar .docs-logo>img.is-2by3{padding-top:150%}.image.is-3by5,#documenter .docs-sidebar .docs-logo>img.is-3by5{padding-top:166.6666%}.image.is-9by16,#documenter .docs-sidebar .docs-logo>img.is-9by16{padding-top:177.7777%}.image.is-1by2,#documenter .docs-sidebar .docs-logo>img.is-1by2{padding-top:200%}.image.is-1by3,#documenter .docs-sidebar .docs-logo>img.is-1by3{padding-top:300%}.image.is-16x16,#documenter .docs-sidebar .docs-logo>img.is-16x16{height:16px;width:16px}.image.is-24x24,#documenter .docs-sidebar .docs-logo>img.is-24x24{height:24px;width:24px}.image.is-32x32,#documenter .docs-sidebar .docs-logo>img.is-32x32{height:32px;width:32px}.image.is-48x48,#documenter .docs-sidebar .docs-logo>img.is-48x48{height:48px;width:48px}.image.is-64x64,#documenter .docs-sidebar .docs-logo>img.is-64x64{height:64px;width:64px}.image.is-96x96,#documenter .docs-sidebar .docs-logo>img.is-96x96{height:96px;width:96px}.image.is-128x128,#documenter .docs-sidebar .docs-logo>img.is-128x128{height:128px;width:128px}.notification{background-color:#f5f5f5;border-radius:4px;position:relative;padding:1.25rem 2.5rem 1.25rem 1.5rem}.notification a:not(.button):not(.dropdown-item){color:currentColor;text-decoration:underline}.notification strong{color:currentColor}.notification code,.notification pre{background:#fff}.notification pre code{background:transparent}.notification>.delete{right:.5rem;position:absolute;top:0.5rem}.notification .title,.notification .subtitle,.notification .content{color:currentColor}.notification.is-white{background-color:#fff;color:#0a0a0a}.notification.is-black{background-color:#0a0a0a;color:#fff}.notification.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.notification.is-dark,.content kbd.notification{background-color:#363636;color:#fff}.notification.is-primary,.docstring>section>a.notification.docs-sourcelink{background-color:#4eb5de;color:#fff}.notification.is-primary.is-light,.docstring>section>a.notification.is-light.docs-sourcelink{background-color:#eef8fc;color:#1a6d8e}.notification.is-link{background-color:#2e63b8;color:#fff}.notification.is-link.is-light{background-color:#eff3fb;color:#3169c4}.notification.is-info{background-color:#3c5dcd;color:#fff}.notification.is-info.is-light{background-color:#eff2fb;color:#3253c3}.notification.is-success{background-color:#259a12;color:#fff}.notification.is-success.is-light{background-color:#effded;color:#2ec016}.notification.is-warning{background-color:#a98800;color:#fff}.notification.is-warning.is-light{background-color:#fffbeb;color:#cca400}.notification.is-danger{background-color:#cb3c33;color:#fff}.notification.is-danger.is-light{background-color:#fbefef;color:#c03930}.progress{-moz-appearance:none;-webkit-appearance:none;border:none;border-radius:9999px;display:block;height:1rem;overflow:hidden;padding:0;width:100%}.progress::-webkit-progress-bar{background-color:#ededed}.progress::-webkit-progress-value{background-color:#222}.progress::-moz-progress-bar{background-color:#222}.progress::-ms-fill{background-color:#222;border:none}.progress.is-white::-webkit-progress-value{background-color:#fff}.progress.is-white::-moz-progress-bar{background-color:#fff}.progress.is-white::-ms-fill{background-color:#fff}.progress.is-white:indeterminate{background-image:linear-gradient(to right, #fff 30%, #ededed 30%)}.progress.is-black::-webkit-progress-value{background-color:#0a0a0a}.progress.is-black::-moz-progress-bar{background-color:#0a0a0a}.progress.is-black::-ms-fill{background-color:#0a0a0a}.progress.is-black:indeterminate{background-image:linear-gradient(to right, #0a0a0a 30%, #ededed 30%)}.progress.is-light::-webkit-progress-value{background-color:#f5f5f5}.progress.is-light::-moz-progress-bar{background-color:#f5f5f5}.progress.is-light::-ms-fill{background-color:#f5f5f5}.progress.is-light:indeterminate{background-image:linear-gradient(to right, #f5f5f5 30%, #ededed 30%)}.progress.is-dark::-webkit-progress-value,.content kbd.progress::-webkit-progress-value{background-color:#363636}.progress.is-dark::-moz-progress-bar,.content kbd.progress::-moz-progress-bar{background-color:#363636}.progress.is-dark::-ms-fill,.content kbd.progress::-ms-fill{background-color:#363636}.progress.is-dark:indeterminate,.content kbd.progress:indeterminate{background-image:linear-gradient(to right, #363636 30%, #ededed 30%)}.progress.is-primary::-webkit-progress-value,.docstring>section>a.progress.docs-sourcelink::-webkit-progress-value{background-color:#4eb5de}.progress.is-primary::-moz-progress-bar,.docstring>section>a.progress.docs-sourcelink::-moz-progress-bar{background-color:#4eb5de}.progress.is-primary::-ms-fill,.docstring>section>a.progress.docs-sourcelink::-ms-fill{background-color:#4eb5de}.progress.is-primary:indeterminate,.docstring>section>a.progress.docs-sourcelink:indeterminate{background-image:linear-gradient(to right, #4eb5de 30%, #ededed 30%)}.progress.is-link::-webkit-progress-value{background-color:#2e63b8}.progress.is-link::-moz-progress-bar{background-color:#2e63b8}.progress.is-link::-ms-fill{background-color:#2e63b8}.progress.is-link:indeterminate{background-image:linear-gradient(to right, #2e63b8 30%, #ededed 30%)}.progress.is-info::-webkit-progress-value{background-color:#3c5dcd}.progress.is-info::-moz-progress-bar{background-color:#3c5dcd}.progress.is-info::-ms-fill{background-color:#3c5dcd}.progress.is-info:indeterminate{background-image:linear-gradient(to right, #3c5dcd 30%, #ededed 30%)}.progress.is-success::-webkit-progress-value{background-color:#259a12}.progress.is-success::-moz-progress-bar{background-color:#259a12}.progress.is-success::-ms-fill{background-color:#259a12}.progress.is-success:indeterminate{background-image:linear-gradient(to right, #259a12 30%, #ededed 30%)}.progress.is-warning::-webkit-progress-value{background-color:#a98800}.progress.is-warning::-moz-progress-bar{background-color:#a98800}.progress.is-warning::-ms-fill{background-color:#a98800}.progress.is-warning:indeterminate{background-image:linear-gradient(to right, #a98800 30%, #ededed 30%)}.progress.is-danger::-webkit-progress-value{background-color:#cb3c33}.progress.is-danger::-moz-progress-bar{background-color:#cb3c33}.progress.is-danger::-ms-fill{background-color:#cb3c33}.progress.is-danger:indeterminate{background-image:linear-gradient(to right, #cb3c33 30%, #ededed 30%)}.progress:indeterminate{animation-duration:1.5s;animation-iteration-count:infinite;animation-name:moveIndeterminate;animation-timing-function:linear;background-color:#ededed;background-image:linear-gradient(to right, #222 30%, #ededed 30%);background-position:top left;background-repeat:no-repeat;background-size:150% 150%}.progress:indeterminate::-webkit-progress-bar{background-color:transparent}.progress:indeterminate::-moz-progress-bar{background-color:transparent}.progress:indeterminate::-ms-fill{animation-name:none}.progress.is-small,#documenter .docs-sidebar form.docs-search>input.progress{height:.75rem}.progress.is-medium{height:1.25rem}.progress.is-large{height:1.5rem}@keyframes moveIndeterminate{from{background-position:200% 0}to{background-position:-200% 0}}.table{background-color:#fff;color:#222}.table td,.table th{border:1px solid #dbdbdb;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}.table td.is-white,.table th.is-white{background-color:#fff;border-color:#fff;color:#0a0a0a}.table td.is-black,.table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}.table td.is-light,.table th.is-light{background-color:#f5f5f5;border-color:#f5f5f5;color:rgba(0,0,0,0.7)}.table td.is-dark,.table th.is-dark{background-color:#363636;border-color:#363636;color:#fff}.table td.is-primary,.table th.is-primary{background-color:#4eb5de;border-color:#4eb5de;color:#fff}.table td.is-link,.table th.is-link{background-color:#2e63b8;border-color:#2e63b8;color:#fff}.table td.is-info,.table th.is-info{background-color:#3c5dcd;border-color:#3c5dcd;color:#fff}.table td.is-success,.table th.is-success{background-color:#259a12;border-color:#259a12;color:#fff}.table td.is-warning,.table th.is-warning{background-color:#a98800;border-color:#a98800;color:#fff}.table td.is-danger,.table th.is-danger{background-color:#cb3c33;border-color:#cb3c33;color:#fff}.table td.is-narrow,.table th.is-narrow{white-space:nowrap;width:1%}.table td.is-selected,.table th.is-selected{background-color:#4eb5de;color:#fff}.table td.is-selected a,.table td.is-selected strong,.table th.is-selected a,.table th.is-selected strong{color:currentColor}.table td.is-vcentered,.table th.is-vcentered{vertical-align:middle}.table th{color:#222}.table th:not([align]){text-align:left}.table tr.is-selected{background-color:#4eb5de;color:#fff}.table tr.is-selected a,.table tr.is-selected strong{color:currentColor}.table tr.is-selected td,.table tr.is-selected th{border-color:#fff;color:currentColor}.table thead{background-color:rgba(0,0,0,0)}.table thead td,.table thead th{border-width:0 0 2px;color:#222}.table tfoot{background-color:rgba(0,0,0,0)}.table tfoot td,.table tfoot th{border-width:2px 0 0;color:#222}.table tbody{background-color:rgba(0,0,0,0)}.table tbody tr:last-child td,.table tbody tr:last-child th{border-bottom-width:0}.table.is-bordered td,.table.is-bordered th{border-width:1px}.table.is-bordered tr:last-child td,.table.is-bordered tr:last-child th{border-bottom-width:1px}.table.is-fullwidth{width:100%}.table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#fafafa}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#fafafa}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:#f5f5f5}.table.is-narrow td,.table.is-narrow th{padding:0.25em 0.5em}.table.is-striped tbody tr:not(.is-selected):nth-child(even){background-color:#fafafa}.table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}.tags{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.tags .tag,.tags .content kbd,.content .tags kbd,.tags .docstring>section>a.docs-sourcelink{margin-bottom:0.5rem}.tags .tag:not(:last-child),.tags .content kbd:not(:last-child),.content .tags kbd:not(:last-child),.tags .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:.5rem}.tags:last-child{margin-bottom:-0.5rem}.tags:not(:last-child){margin-bottom:1rem}.tags.are-medium .tag:not(.is-normal):not(.is-large),.tags.are-medium .content kbd:not(.is-normal):not(.is-large),.content .tags.are-medium kbd:not(.is-normal):not(.is-large),.tags.are-medium .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-large){font-size:1rem}.tags.are-large .tag:not(.is-normal):not(.is-medium),.tags.are-large .content kbd:not(.is-normal):not(.is-medium),.content .tags.are-large kbd:not(.is-normal):not(.is-medium),.tags.are-large .docstring>section>a.docs-sourcelink:not(.is-normal):not(.is-medium){font-size:1.25rem}.tags.is-centered{justify-content:center}.tags.is-centered .tag,.tags.is-centered .content kbd,.content .tags.is-centered kbd,.tags.is-centered .docstring>section>a.docs-sourcelink{margin-right:0.25rem;margin-left:0.25rem}.tags.is-right{justify-content:flex-end}.tags.is-right .tag:not(:first-child),.tags.is-right .content kbd:not(:first-child),.content .tags.is-right kbd:not(:first-child),.tags.is-right .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0.5rem}.tags.is-right .tag:not(:last-child),.tags.is-right .content kbd:not(:last-child),.content .tags.is-right kbd:not(:last-child),.tags.is-right .docstring>section>a.docs-sourcelink:not(:last-child){margin-right:0}.tags.has-addons .tag,.tags.has-addons .content kbd,.content .tags.has-addons kbd,.tags.has-addons .docstring>section>a.docs-sourcelink{margin-right:0}.tags.has-addons .tag:not(:first-child),.tags.has-addons .content kbd:not(:first-child),.content .tags.has-addons kbd:not(:first-child),.tags.has-addons .docstring>section>a.docs-sourcelink:not(:first-child){margin-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.tags.has-addons .tag:not(:last-child),.tags.has-addons .content kbd:not(:last-child),.content .tags.has-addons kbd:not(:last-child),.tags.has-addons .docstring>section>a.docs-sourcelink:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.tag:not(body),.content kbd:not(body),.docstring>section>a.docs-sourcelink:not(body){align-items:center;background-color:#f5f5f5;border-radius:4px;color:#222;display:inline-flex;font-size:.75rem;height:2em;justify-content:center;line-height:1.5;padding-left:0.75em;padding-right:0.75em;white-space:nowrap}.tag:not(body) .delete,.content kbd:not(body) .delete,.docstring>section>a.docs-sourcelink:not(body) .delete{margin-left:.25rem;margin-right:-.375rem}.tag.is-white:not(body),.content kbd.is-white:not(body),.docstring>section>a.docs-sourcelink.is-white:not(body){background-color:#fff;color:#0a0a0a}.tag.is-black:not(body),.content kbd.is-black:not(body),.docstring>section>a.docs-sourcelink.is-black:not(body){background-color:#0a0a0a;color:#fff}.tag.is-light:not(body),.content kbd.is-light:not(body),.docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.tag.is-dark:not(body),.content kbd:not(body),.docstring>section>a.docs-sourcelink.is-dark:not(body),.content .docstring>section>kbd:not(body){background-color:#363636;color:#fff}.tag.is-primary:not(body),.content kbd.is-primary:not(body),.docstring>section>a.docs-sourcelink:not(body){background-color:#4eb5de;color:#fff}.tag.is-primary.is-light:not(body),.content kbd.is-primary.is-light:not(body),.docstring>section>a.docs-sourcelink.is-light:not(body){background-color:#eef8fc;color:#1a6d8e}.tag.is-link:not(body),.content kbd.is-link:not(body),.docstring>section>a.docs-sourcelink.is-link:not(body){background-color:#2e63b8;color:#fff}.tag.is-link.is-light:not(body),.content kbd.is-link.is-light:not(body),.docstring>section>a.docs-sourcelink.is-link.is-light:not(body){background-color:#eff3fb;color:#3169c4}.tag.is-info:not(body),.content kbd.is-info:not(body),.docstring>section>a.docs-sourcelink.is-info:not(body){background-color:#3c5dcd;color:#fff}.tag.is-info.is-light:not(body),.content kbd.is-info.is-light:not(body),.docstring>section>a.docs-sourcelink.is-info.is-light:not(body){background-color:#eff2fb;color:#3253c3}.tag.is-success:not(body),.content kbd.is-success:not(body),.docstring>section>a.docs-sourcelink.is-success:not(body){background-color:#259a12;color:#fff}.tag.is-success.is-light:not(body),.content kbd.is-success.is-light:not(body),.docstring>section>a.docs-sourcelink.is-success.is-light:not(body){background-color:#effded;color:#2ec016}.tag.is-warning:not(body),.content kbd.is-warning:not(body),.docstring>section>a.docs-sourcelink.is-warning:not(body){background-color:#a98800;color:#fff}.tag.is-warning.is-light:not(body),.content kbd.is-warning.is-light:not(body),.docstring>section>a.docs-sourcelink.is-warning.is-light:not(body){background-color:#fffbeb;color:#cca400}.tag.is-danger:not(body),.content kbd.is-danger:not(body),.docstring>section>a.docs-sourcelink.is-danger:not(body){background-color:#cb3c33;color:#fff}.tag.is-danger.is-light:not(body),.content kbd.is-danger.is-light:not(body),.docstring>section>a.docs-sourcelink.is-danger.is-light:not(body){background-color:#fbefef;color:#c03930}.tag.is-normal:not(body),.content kbd.is-normal:not(body),.docstring>section>a.docs-sourcelink.is-normal:not(body){font-size:.75rem}.tag.is-medium:not(body),.content kbd.is-medium:not(body),.docstring>section>a.docs-sourcelink.is-medium:not(body){font-size:1rem}.tag.is-large:not(body),.content kbd.is-large:not(body),.docstring>section>a.docs-sourcelink.is-large:not(body){font-size:1.25rem}.tag:not(body) .icon:first-child:not(:last-child),.content kbd:not(body) .icon:first-child:not(:last-child),.docstring>section>a.docs-sourcelink:not(body) .icon:first-child:not(:last-child){margin-left:-.375em;margin-right:.1875em}.tag:not(body) .icon:last-child:not(:first-child),.content kbd:not(body) .icon:last-child:not(:first-child),.docstring>section>a.docs-sourcelink:not(body) .icon:last-child:not(:first-child){margin-left:.1875em;margin-right:-.375em}.tag:not(body) .icon:first-child:last-child,.content kbd:not(body) .icon:first-child:last-child,.docstring>section>a.docs-sourcelink:not(body) .icon:first-child:last-child{margin-left:-.375em;margin-right:-.375em}.tag.is-delete:not(body),.content kbd.is-delete:not(body),.docstring>section>a.docs-sourcelink.is-delete:not(body){margin-left:1px;padding:0;position:relative;width:2em}.tag.is-delete:not(body)::before,.content kbd.is-delete:not(body)::before,.docstring>section>a.docs-sourcelink.is-delete:not(body)::before,.tag.is-delete:not(body)::after,.content kbd.is-delete:not(body)::after,.docstring>section>a.docs-sourcelink.is-delete:not(body)::after{background-color:currentColor;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.tag.is-delete:not(body)::before,.content kbd.is-delete:not(body)::before,.docstring>section>a.docs-sourcelink.is-delete:not(body)::before{height:1px;width:50%}.tag.is-delete:not(body)::after,.content kbd.is-delete:not(body)::after,.docstring>section>a.docs-sourcelink.is-delete:not(body)::after{height:50%;width:1px}.tag.is-delete:not(body):hover,.content kbd.is-delete:not(body):hover,.docstring>section>a.docs-sourcelink.is-delete:not(body):hover,.tag.is-delete:not(body):focus,.content kbd.is-delete:not(body):focus,.docstring>section>a.docs-sourcelink.is-delete:not(body):focus{background-color:#e8e8e8}.tag.is-delete:not(body):active,.content kbd.is-delete:not(body):active,.docstring>section>a.docs-sourcelink.is-delete:not(body):active{background-color:#dbdbdb}.tag.is-rounded:not(body),#documenter .docs-sidebar form.docs-search>input:not(body),.content kbd.is-rounded:not(body),#documenter .docs-sidebar .content form.docs-search>input:not(body),.docstring>section>a.docs-sourcelink.is-rounded:not(body){border-radius:9999px}a.tag:hover,.docstring>section>a.docs-sourcelink:hover{text-decoration:underline}.title,.subtitle{word-break:break-word}.title em,.title span,.subtitle em,.subtitle span{font-weight:inherit}.title sub,.subtitle sub{font-size:.75em}.title sup,.subtitle sup{font-size:.75em}.title .tag,.title .content kbd,.content .title kbd,.title .docstring>section>a.docs-sourcelink,.subtitle .tag,.subtitle .content kbd,.content .subtitle kbd,.subtitle .docstring>section>a.docs-sourcelink{vertical-align:middle}.title{color:#222;font-size:2rem;font-weight:600;line-height:1.125}.title strong{color:inherit;font-weight:inherit}.title:not(.is-spaced)+.subtitle{margin-top:-1.25rem}.title.is-1{font-size:3rem}.title.is-2{font-size:2.5rem}.title.is-3{font-size:2rem}.title.is-4{font-size:1.5rem}.title.is-5{font-size:1.25rem}.title.is-6{font-size:1rem}.title.is-7{font-size:.75rem}.subtitle{color:#222;font-size:1.25rem;font-weight:400;line-height:1.25}.subtitle strong{color:#222;font-weight:600}.subtitle:not(.is-spaced)+.title{margin-top:-1.25rem}.subtitle.is-1{font-size:3rem}.subtitle.is-2{font-size:2.5rem}.subtitle.is-3{font-size:2rem}.subtitle.is-4{font-size:1.5rem}.subtitle.is-5{font-size:1.25rem}.subtitle.is-6{font-size:1rem}.subtitle.is-7{font-size:.75rem}.heading{display:block;font-size:11px;letter-spacing:1px;margin-bottom:5px;text-transform:uppercase}.number{align-items:center;background-color:#f5f5f5;border-radius:9999px;display:inline-flex;font-size:1.25rem;height:2em;justify-content:center;margin-right:1.5rem;min-width:2.5em;padding:0.25rem 0.5rem;text-align:center;vertical-align:top}.select select,.textarea,.input,#documenter .docs-sidebar form.docs-search>input{background-color:#fff;border-color:#dbdbdb;border-radius:4px;color:#222}.select select::-moz-placeholder,.textarea::-moz-placeholder,.input::-moz-placeholder,#documenter .docs-sidebar form.docs-search>input::-moz-placeholder{color:#707070}.select select::-webkit-input-placeholder,.textarea::-webkit-input-placeholder,.input::-webkit-input-placeholder,#documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder{color:#707070}.select select:-moz-placeholder,.textarea:-moz-placeholder,.input:-moz-placeholder,#documenter .docs-sidebar form.docs-search>input:-moz-placeholder{color:#707070}.select select:-ms-input-placeholder,.textarea:-ms-input-placeholder,.input:-ms-input-placeholder,#documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder{color:#707070}.select select:hover,.textarea:hover,.input:hover,#documenter .docs-sidebar form.docs-search>input:hover,.select select.is-hovered,.is-hovered.textarea,.is-hovered.input,#documenter .docs-sidebar form.docs-search>input.is-hovered{border-color:#b5b5b5}.select select:focus,.textarea:focus,.input:focus,#documenter .docs-sidebar form.docs-search>input:focus,.select select.is-focused,.is-focused.textarea,.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.select select:active,.textarea:active,.input:active,#documenter .docs-sidebar form.docs-search>input:active,.select select.is-active,.is-active.textarea,.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{border-color:#2e63b8;box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.select select[disabled],.textarea[disabled],.input[disabled],#documenter .docs-sidebar form.docs-search>input[disabled],fieldset[disabled] .select select,.select fieldset[disabled] select,fieldset[disabled] .textarea,fieldset[disabled] .input,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input{background-color:#f5f5f5;border-color:#f5f5f5;box-shadow:none;color:#6b6b6b}.select select[disabled]::-moz-placeholder,.textarea[disabled]::-moz-placeholder,.input[disabled]::-moz-placeholder,#documenter .docs-sidebar form.docs-search>input[disabled]::-moz-placeholder,fieldset[disabled] .select select::-moz-placeholder,.select fieldset[disabled] select::-moz-placeholder,fieldset[disabled] .textarea::-moz-placeholder,fieldset[disabled] .input::-moz-placeholder,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input::-moz-placeholder,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input::-moz-placeholder{color:rgba(107,107,107,0.3)}.select select[disabled]::-webkit-input-placeholder,.textarea[disabled]::-webkit-input-placeholder,.input[disabled]::-webkit-input-placeholder,#documenter .docs-sidebar form.docs-search>input[disabled]::-webkit-input-placeholder,fieldset[disabled] .select select::-webkit-input-placeholder,.select fieldset[disabled] select::-webkit-input-placeholder,fieldset[disabled] .textarea::-webkit-input-placeholder,fieldset[disabled] .input::-webkit-input-placeholder,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input::-webkit-input-placeholder,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input::-webkit-input-placeholder{color:rgba(107,107,107,0.3)}.select select[disabled]:-moz-placeholder,.textarea[disabled]:-moz-placeholder,.input[disabled]:-moz-placeholder,#documenter .docs-sidebar form.docs-search>input[disabled]:-moz-placeholder,fieldset[disabled] .select select:-moz-placeholder,.select fieldset[disabled] select:-moz-placeholder,fieldset[disabled] .textarea:-moz-placeholder,fieldset[disabled] .input:-moz-placeholder,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input:-moz-placeholder,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input:-moz-placeholder{color:rgba(107,107,107,0.3)}.select select[disabled]:-ms-input-placeholder,.textarea[disabled]:-ms-input-placeholder,.input[disabled]:-ms-input-placeholder,#documenter .docs-sidebar form.docs-search>input[disabled]:-ms-input-placeholder,fieldset[disabled] .select select:-ms-input-placeholder,.select fieldset[disabled] select:-ms-input-placeholder,fieldset[disabled] .textarea:-ms-input-placeholder,fieldset[disabled] .input:-ms-input-placeholder,fieldset[disabled] #documenter .docs-sidebar form.docs-search>input:-ms-input-placeholder,#documenter .docs-sidebar fieldset[disabled] form.docs-search>input:-ms-input-placeholder{color:rgba(107,107,107,0.3)}.textarea,.input,#documenter .docs-sidebar form.docs-search>input{box-shadow:inset 0 0.0625em 0.125em rgba(10,10,10,0.05);max-width:100%;width:100%}.textarea[readonly],.input[readonly],#documenter .docs-sidebar form.docs-search>input[readonly]{box-shadow:none}.is-white.textarea,.is-white.input,#documenter .docs-sidebar form.docs-search>input.is-white{border-color:#fff}.is-white.textarea:focus,.is-white.input:focus,#documenter .docs-sidebar form.docs-search>input.is-white:focus,.is-white.is-focused.textarea,.is-white.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-white.textarea:active,.is-white.input:active,#documenter .docs-sidebar form.docs-search>input.is-white:active,.is-white.is-active.textarea,.is-white.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}.is-black.textarea,.is-black.input,#documenter .docs-sidebar form.docs-search>input.is-black{border-color:#0a0a0a}.is-black.textarea:focus,.is-black.input:focus,#documenter .docs-sidebar form.docs-search>input.is-black:focus,.is-black.is-focused.textarea,.is-black.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-black.textarea:active,.is-black.input:active,#documenter .docs-sidebar form.docs-search>input.is-black:active,.is-black.is-active.textarea,.is-black.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}.is-light.textarea,.is-light.input,#documenter .docs-sidebar form.docs-search>input.is-light{border-color:#f5f5f5}.is-light.textarea:focus,.is-light.input:focus,#documenter .docs-sidebar form.docs-search>input.is-light:focus,.is-light.is-focused.textarea,.is-light.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-light.textarea:active,.is-light.input:active,#documenter .docs-sidebar form.docs-search>input.is-light:active,.is-light.is-active.textarea,.is-light.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}.is-dark.textarea,.content kbd.textarea,.is-dark.input,#documenter .docs-sidebar form.docs-search>input.is-dark,.content kbd.input{border-color:#363636}.is-dark.textarea:focus,.content kbd.textarea:focus,.is-dark.input:focus,#documenter .docs-sidebar form.docs-search>input.is-dark:focus,.content kbd.input:focus,.is-dark.is-focused.textarea,.content kbd.is-focused.textarea,.is-dark.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.content kbd.is-focused.input,#documenter .docs-sidebar .content form.docs-search>input.is-focused,.is-dark.textarea:active,.content kbd.textarea:active,.is-dark.input:active,#documenter .docs-sidebar form.docs-search>input.is-dark:active,.content kbd.input:active,.is-dark.is-active.textarea,.content kbd.is-active.textarea,.is-dark.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active,.content kbd.is-active.input,#documenter .docs-sidebar .content form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(54,54,54,0.25)}.is-primary.textarea,.docstring>section>a.textarea.docs-sourcelink,.is-primary.input,#documenter .docs-sidebar form.docs-search>input.is-primary,.docstring>section>a.input.docs-sourcelink{border-color:#4eb5de}.is-primary.textarea:focus,.docstring>section>a.textarea.docs-sourcelink:focus,.is-primary.input:focus,#documenter .docs-sidebar form.docs-search>input.is-primary:focus,.docstring>section>a.input.docs-sourcelink:focus,.is-primary.is-focused.textarea,.docstring>section>a.is-focused.textarea.docs-sourcelink,.is-primary.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.docstring>section>a.is-focused.input.docs-sourcelink,.is-primary.textarea:active,.docstring>section>a.textarea.docs-sourcelink:active,.is-primary.input:active,#documenter .docs-sidebar form.docs-search>input.is-primary:active,.docstring>section>a.input.docs-sourcelink:active,.is-primary.is-active.textarea,.docstring>section>a.is-active.textarea.docs-sourcelink,.is-primary.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active,.docstring>section>a.is-active.input.docs-sourcelink{box-shadow:0 0 0 0.125em rgba(78,181,222,0.25)}.is-link.textarea,.is-link.input,#documenter .docs-sidebar form.docs-search>input.is-link{border-color:#2e63b8}.is-link.textarea:focus,.is-link.input:focus,#documenter .docs-sidebar form.docs-search>input.is-link:focus,.is-link.is-focused.textarea,.is-link.is-focused.input,#documenter .docs-sidebar form.docs-search>input.is-focused,.is-link.textarea:active,.is-link.input:active,#documenter .docs-sidebar form.docs-search>input.is-link:active,.is-link.is-active.textarea,.is-link.is-active.input,#documenter .docs-sidebar form.docs-search>input.is-active{box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.is-info.textarea,.is-info.input,#documenter .docs-sidebar form.docs-search>input.is-info{border-color:#3c5dcd}.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(60,93,205,0.25)}.is-success.textarea,.is-success.input,#documenter .docs-sidebar form.docs-search>input.is-success{border-color:#259a12}.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(37,154,18,0.25)}.is-warning.textarea,.is-warning.input,#documenter .docs-sidebar form.docs-search>input.is-warning{border-color:#a98800}.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(169,136,0,0.25)}.is-danger.textarea,.is-danger.input,#documenter .docs-sidebar form.docs-search>input.is-danger{border-color:#cb3c33}.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(203,60,51,0.25)}.is-small.textarea,.is-small.input,#documenter .docs-sidebar form.docs-search>input{border-radius:2px;font-size:.75rem}.is-medium.textarea,.is-medium.input,#documenter .docs-sidebar form.docs-search>input.is-medium{font-size:1.25rem}.is-large.textarea,.is-large.input,#documenter .docs-sidebar form.docs-search>input.is-large{font-size:1.5rem}.is-fullwidth.textarea,.is-fullwidth.input,#documenter .docs-sidebar form.docs-search>input.is-fullwidth{display:block;width:100%}.is-inline.textarea,.is-inline.input,#documenter .docs-sidebar form.docs-search>input.is-inline{display:inline;width:auto}.input.is-rounded,#documenter .docs-sidebar form.docs-search>input{border-radius:9999px;padding-left:calc(calc(0.75em - 1px) + 0.375em);padding-right:calc(calc(0.75em - 1px) + 0.375em)}.input.is-static,#documenter .docs-sidebar form.docs-search>input.is-static{background-color:transparent;border-color:transparent;box-shadow:none;padding-left:0;padding-right:0}.textarea{display:block;max-width:100%;min-width:100%;padding:calc(0.75em - 1px);resize:vertical}.textarea:not([rows]){max-height:40em;min-height:8em}.textarea[rows]{height:initial}.textarea.has-fixed-size{resize:none}.radio,.checkbox{cursor:pointer;display:inline-block;line-height:1.25;position:relative}.radio input,.checkbox input{cursor:pointer}.radio:hover,.checkbox:hover{color:#222}.radio[disabled],.checkbox[disabled],fieldset[disabled] .radio,fieldset[disabled] .checkbox,.radio input[disabled],.checkbox input[disabled]{color:#6b6b6b;cursor:not-allowed}.radio+.radio{margin-left:.5em}.select{display:inline-block;max-width:100%;position:relative;vertical-align:top}.select:not(.is-multiple){height:2.5em}.select:not(.is-multiple):not(.is-loading)::after{border-color:#2e63b8;right:1.125em;z-index:4}.select.is-rounded select,#documenter .docs-sidebar form.docs-search>input.select select{border-radius:9999px;padding-left:1em}.select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:none}.select select::-ms-expand{display:none}.select select[disabled]:hover,fieldset[disabled] .select select:hover{border-color:#f5f5f5}.select select:not([multiple]){padding-right:2.5em}.select select[multiple]{height:auto;padding:0}.select select[multiple] option{padding:0.5em 1em}.select:not(.is-multiple):not(.is-loading):hover::after{border-color:#222}.select.is-white:not(:hover)::after{border-color:#fff}.select.is-white select{border-color:#fff}.select.is-white select:hover,.select.is-white select.is-hovered{border-color:#f2f2f2}.select.is-white select:focus,.select.is-white select.is-focused,.select.is-white select:active,.select.is-white select.is-active{box-shadow:0 0 0 0.125em rgba(255,255,255,0.25)}.select.is-black:not(:hover)::after{border-color:#0a0a0a}.select.is-black select{border-color:#0a0a0a}.select.is-black select:hover,.select.is-black select.is-hovered{border-color:#000}.select.is-black select:focus,.select.is-black select.is-focused,.select.is-black select:active,.select.is-black select.is-active{box-shadow:0 0 0 0.125em rgba(10,10,10,0.25)}.select.is-light:not(:hover)::after{border-color:#f5f5f5}.select.is-light select{border-color:#f5f5f5}.select.is-light select:hover,.select.is-light select.is-hovered{border-color:#e8e8e8}.select.is-light select:focus,.select.is-light select.is-focused,.select.is-light select:active,.select.is-light select.is-active{box-shadow:0 0 0 0.125em rgba(245,245,245,0.25)}.select.is-dark:not(:hover)::after,.content kbd.select:not(:hover)::after{border-color:#363636}.select.is-dark select,.content kbd.select select{border-color:#363636}.select.is-dark select:hover,.content kbd.select select:hover,.select.is-dark select.is-hovered,.content kbd.select select.is-hovered{border-color:#292929}.select.is-dark select:focus,.content kbd.select select:focus,.select.is-dark select.is-focused,.content kbd.select select.is-focused,.select.is-dark select:active,.content kbd.select select:active,.select.is-dark select.is-active,.content kbd.select select.is-active{box-shadow:0 0 0 0.125em rgba(54,54,54,0.25)}.select.is-primary:not(:hover)::after,.docstring>section>a.select.docs-sourcelink:not(:hover)::after{border-color:#4eb5de}.select.is-primary select,.docstring>section>a.select.docs-sourcelink select{border-color:#4eb5de}.select.is-primary select:hover,.docstring>section>a.select.docs-sourcelink select:hover,.select.is-primary select.is-hovered,.docstring>section>a.select.docs-sourcelink select.is-hovered{border-color:#39acda}.select.is-primary select:focus,.docstring>section>a.select.docs-sourcelink select:focus,.select.is-primary select.is-focused,.docstring>section>a.select.docs-sourcelink select.is-focused,.select.is-primary select:active,.docstring>section>a.select.docs-sourcelink select:active,.select.is-primary select.is-active,.docstring>section>a.select.docs-sourcelink select.is-active{box-shadow:0 0 0 0.125em rgba(78,181,222,0.25)}.select.is-link:not(:hover)::after{border-color:#2e63b8}.select.is-link select{border-color:#2e63b8}.select.is-link select:hover,.select.is-link select.is-hovered{border-color:#2958a4}.select.is-link select:focus,.select.is-link select.is-focused,.select.is-link select:active,.select.is-link select.is-active{box-shadow:0 0 0 0.125em rgba(46,99,184,0.25)}.select.is-info:not(:hover)::after{border-color:#3c5dcd}.select.is-info select{border-color:#3c5dcd}.select.is-info select:hover,.select.is-info select.is-hovered{border-color:#3151bf}.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(60,93,205,0.25)}.select.is-success:not(:hover)::after{border-color:#259a12}.select.is-success select{border-color:#259a12}.select.is-success select:hover,.select.is-success select.is-hovered{border-color:#20830f}.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(37,154,18,0.25)}.select.is-warning:not(:hover)::after{border-color:#a98800}.select.is-warning select{border-color:#a98800}.select.is-warning select:hover,.select.is-warning select.is-hovered{border-color:#8f7300}.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(169,136,0,0.25)}.select.is-danger:not(:hover)::after{border-color:#cb3c33}.select.is-danger select{border-color:#cb3c33}.select.is-danger select:hover,.select.is-danger select.is-hovered{border-color:#b7362e}.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(203,60,51,0.25)}.select.is-small,#documenter .docs-sidebar form.docs-search>input.select{border-radius:2px;font-size:.75rem}.select.is-medium{font-size:1.25rem}.select.is-large{font-size:1.5rem}.select.is-disabled::after{border-color:#6b6b6b !important;opacity:0.5}.select.is-fullwidth{width:100%}.select.is-fullwidth select{width:100%}.select.is-loading::after{margin-top:0;position:absolute;right:.625em;top:0.625em;transform:none}.select.is-loading.is-small:after,#documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}.select.is-loading.is-medium:after{font-size:1.25rem}.select.is-loading.is-large:after{font-size:1.5rem}.file{align-items:stretch;display:flex;justify-content:flex-start;position:relative}.file.is-white .file-cta{background-color:#fff;border-color:transparent;color:#0a0a0a}.file.is-white:hover .file-cta,.file.is-white.is-hovered .file-cta{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.file.is-white:focus .file-cta,.file.is-white.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(255,255,255,0.25);color:#0a0a0a}.file.is-white:active .file-cta,.file.is-white.is-active .file-cta{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.file.is-black .file-cta{background-color:#0a0a0a;border-color:transparent;color:#fff}.file.is-black:hover .file-cta,.file.is-black.is-hovered .file-cta{background-color:#040404;border-color:transparent;color:#fff}.file.is-black:focus .file-cta,.file.is-black.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(10,10,10,0.25);color:#fff}.file.is-black:active .file-cta,.file.is-black.is-active .file-cta{background-color:#000;border-color:transparent;color:#fff}.file.is-light .file-cta{background-color:#f5f5f5;border-color:transparent;color:rgba(0,0,0,0.7)}.file.is-light:hover .file-cta,.file.is-light.is-hovered .file-cta{background-color:#eee;border-color:transparent;color:rgba(0,0,0,0.7)}.file.is-light:focus .file-cta,.file.is-light.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(245,245,245,0.25);color:rgba(0,0,0,0.7)}.file.is-light:active .file-cta,.file.is-light.is-active .file-cta{background-color:#e8e8e8;border-color:transparent;color:rgba(0,0,0,0.7)}.file.is-dark .file-cta,.content kbd.file .file-cta{background-color:#363636;border-color:transparent;color:#fff}.file.is-dark:hover .file-cta,.content kbd.file:hover .file-cta,.file.is-dark.is-hovered .file-cta,.content kbd.file.is-hovered .file-cta{background-color:#2f2f2f;border-color:transparent;color:#fff}.file.is-dark:focus .file-cta,.content kbd.file:focus .file-cta,.file.is-dark.is-focused .file-cta,.content kbd.file.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(54,54,54,0.25);color:#fff}.file.is-dark:active .file-cta,.content kbd.file:active .file-cta,.file.is-dark.is-active .file-cta,.content kbd.file.is-active .file-cta{background-color:#292929;border-color:transparent;color:#fff}.file.is-primary .file-cta,.docstring>section>a.file.docs-sourcelink .file-cta{background-color:#4eb5de;border-color:transparent;color:#fff}.file.is-primary:hover .file-cta,.docstring>section>a.file.docs-sourcelink:hover .file-cta,.file.is-primary.is-hovered .file-cta,.docstring>section>a.file.is-hovered.docs-sourcelink .file-cta{background-color:#43b1dc;border-color:transparent;color:#fff}.file.is-primary:focus .file-cta,.docstring>section>a.file.docs-sourcelink:focus .file-cta,.file.is-primary.is-focused .file-cta,.docstring>section>a.file.is-focused.docs-sourcelink .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(78,181,222,0.25);color:#fff}.file.is-primary:active .file-cta,.docstring>section>a.file.docs-sourcelink:active .file-cta,.file.is-primary.is-active .file-cta,.docstring>section>a.file.is-active.docs-sourcelink .file-cta{background-color:#39acda;border-color:transparent;color:#fff}.file.is-link .file-cta{background-color:#2e63b8;border-color:transparent;color:#fff}.file.is-link:hover .file-cta,.file.is-link.is-hovered .file-cta{background-color:#2b5eae;border-color:transparent;color:#fff}.file.is-link:focus .file-cta,.file.is-link.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(46,99,184,0.25);color:#fff}.file.is-link:active .file-cta,.file.is-link.is-active .file-cta{background-color:#2958a4;border-color:transparent;color:#fff}.file.is-info .file-cta{background-color:#3c5dcd;border-color:transparent;color:#fff}.file.is-info:hover .file-cta,.file.is-info.is-hovered .file-cta{background-color:#3355c9;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(60,93,205,0.25);color:#fff}.file.is-info:active .file-cta,.file.is-info.is-active .file-cta{background-color:#3151bf;border-color:transparent;color:#fff}.file.is-success .file-cta{background-color:#259a12;border-color:transparent;color:#fff}.file.is-success:hover .file-cta,.file.is-success.is-hovered .file-cta{background-color:#228f11;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(37,154,18,0.25);color:#fff}.file.is-success:active .file-cta,.file.is-success.is-active .file-cta{background-color:#20830f;border-color:transparent;color:#fff}.file.is-warning .file-cta{background-color:#a98800;border-color:transparent;color:#fff}.file.is-warning:hover .file-cta,.file.is-warning.is-hovered .file-cta{background-color:#9c7d00;border-color:transparent;color:#fff}.file.is-warning:focus .file-cta,.file.is-warning.is-focused .file-cta{border-color:transparent;box-shadow:0 0 0.5em rgba(169,136,0,0.25);color:#fff}.file.is-warning:active .file-cta,.file.is-warning.is-active .file-cta{background-color:#8f7300;border-color:transparent;color:#fff}.file.is-danger .file-cta{background-color:#cb3c33;border-color:transparent;color:#fff}.file.is-danger:hover .file-cta,.file.is-danger.is-hovered .file-cta{background-color:#c13930;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(203,60,51,0.25);color:#fff}.file.is-danger:active .file-cta,.file.is-danger.is-active .file-cta{background-color:#b7362e;border-color:transparent;color:#fff}.file.is-small,#documenter .docs-sidebar form.docs-search>input.file{font-size:.75rem}.file.is-normal{font-size:1rem}.file.is-medium{font-size:1.25rem}.file.is-medium .file-icon .fa{font-size:21px}.file.is-large{font-size:1.5rem}.file.is-large .file-icon .fa{font-size:28px}.file.has-name .file-cta{border-bottom-right-radius:0;border-top-right-radius:0}.file.has-name .file-name{border-bottom-left-radius:0;border-top-left-radius:0}.file.has-name.is-empty .file-cta{border-radius:4px}.file.has-name.is-empty .file-name{display:none}.file.is-boxed .file-label{flex-direction:column}.file.is-boxed .file-cta{flex-direction:column;height:auto;padding:1em 3em}.file.is-boxed .file-name{border-width:0 1px 1px}.file.is-boxed .file-icon{height:1.5em;width:1.5em}.file.is-boxed .file-icon .fa{font-size:21px}.file.is-boxed.is-small .file-icon .fa,#documenter .docs-sidebar form.docs-search>input.is-boxed .file-icon .fa{font-size:14px}.file.is-boxed.is-medium .file-icon .fa{font-size:28px}.file.is-boxed.is-large .file-icon .fa{font-size:35px}.file.is-boxed.has-name .file-cta{border-radius:4px 4px 0 0}.file.is-boxed.has-name .file-name{border-radius:0 0 4px 4px;border-width:0 1px 1px}.file.is-centered{justify-content:center}.file.is-fullwidth .file-label{width:100%}.file.is-fullwidth .file-name{flex-grow:1;max-width:none}.file.is-right{justify-content:flex-end}.file.is-right .file-cta{border-radius:0 4px 4px 0}.file.is-right .file-name{border-radius:4px 0 0 4px;border-width:1px 0 1px 1px;order:-1}.file-label{align-items:stretch;display:flex;cursor:pointer;justify-content:flex-start;overflow:hidden;position:relative}.file-label:hover .file-cta{background-color:#eee;color:#222}.file-label:hover .file-name{border-color:#d5d5d5}.file-label:active .file-cta{background-color:#e8e8e8;color:#222}.file-label:active .file-name{border-color:#cfcfcf}.file-input{height:100%;left:0;opacity:0;outline:none;position:absolute;top:0;width:100%}.file-cta,.file-name{border-color:#dbdbdb;border-radius:4px;font-size:1em;padding-left:1em;padding-right:1em;white-space:nowrap}.file-cta{background-color:#f5f5f5;color:#222}.file-name{border-color:#dbdbdb;border-style:solid;border-width:1px 1px 1px 0;display:block;max-width:16em;overflow:hidden;text-align:inherit;text-overflow:ellipsis}.file-icon{align-items:center;display:flex;height:1em;justify-content:center;margin-right:.5em;width:1em}.file-icon .fa{font-size:14px}.label{color:#222;display:block;font-size:1rem;font-weight:700}.label:not(:last-child){margin-bottom:0.5em}.label.is-small,#documenter .docs-sidebar form.docs-search>input.label{font-size:.75rem}.label.is-medium{font-size:1.25rem}.label.is-large{font-size:1.5rem}.help{display:block;font-size:.75rem;margin-top:0.25rem}.help.is-white{color:#fff}.help.is-black{color:#0a0a0a}.help.is-light{color:#f5f5f5}.help.is-dark,.content kbd.help{color:#363636}.help.is-primary,.docstring>section>a.help.docs-sourcelink{color:#4eb5de}.help.is-link{color:#2e63b8}.help.is-info{color:#3c5dcd}.help.is-success{color:#259a12}.help.is-warning{color:#a98800}.help.is-danger{color:#cb3c33}.field:not(:last-child){margin-bottom:0.75rem}.field.has-addons{display:flex;justify-content:flex-start}.field.has-addons .control:not(:last-child){margin-right:-1px}.field.has-addons .control:not(:first-child):not(:last-child) .button,.field.has-addons .control:not(:first-child):not(:last-child) .input,.field.has-addons .control:not(:first-child):not(:last-child) #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .field.has-addons .control:not(:first-child):not(:last-child) form.docs-search>input,.field.has-addons .control:not(:first-child):not(:last-child) .select select{border-radius:0}.field.has-addons .control:first-child:not(:only-child) .button,.field.has-addons .control:first-child:not(:only-child) .input,.field.has-addons .control:first-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .field.has-addons .control:first-child:not(:only-child) form.docs-search>input,.field.has-addons .control:first-child:not(:only-child) .select select{border-bottom-right-radius:0;border-top-right-radius:0}.field.has-addons .control:last-child:not(:only-child) .button,.field.has-addons .control:last-child:not(:only-child) .input,.field.has-addons .control:last-child:not(:only-child) #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .field.has-addons .control:last-child:not(:only-child) form.docs-search>input,.field.has-addons .control:last-child:not(:only-child) .select select{border-bottom-left-radius:0;border-top-left-radius:0}.field.has-addons .control .button:not([disabled]):hover,.field.has-addons .control .button.is-hovered:not([disabled]),.field.has-addons .control .input:not([disabled]):hover,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):hover,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):hover,.field.has-addons .control .input.is-hovered:not([disabled]),.field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-hovered:not([disabled]),#documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-hovered:not([disabled]),.field.has-addons .control .select select:not([disabled]):hover,.field.has-addons .control .select select.is-hovered:not([disabled]){z-index:2}.field.has-addons .control .button:not([disabled]):focus,.field.has-addons .control .button.is-focused:not([disabled]),.field.has-addons .control .button:not([disabled]):active,.field.has-addons .control .button.is-active:not([disabled]),.field.has-addons .control .input:not([disabled]):focus,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus,.field.has-addons .control .input.is-focused:not([disabled]),.field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]),#documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]),.field.has-addons .control .input:not([disabled]):active,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active,.field.has-addons .control .input.is-active:not([disabled]),.field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]),#documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]),.field.has-addons .control .select select:not([disabled]):focus,.field.has-addons .control .select select.is-focused:not([disabled]),.field.has-addons .control .select select:not([disabled]):active,.field.has-addons .control .select select.is-active:not([disabled]){z-index:3}.field.has-addons .control .button:not([disabled]):focus:hover,.field.has-addons .control .button.is-focused:not([disabled]):hover,.field.has-addons .control .button:not([disabled]):active:hover,.field.has-addons .control .button.is-active:not([disabled]):hover,.field.has-addons .control .input:not([disabled]):focus:hover,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):focus:hover,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):focus:hover,.field.has-addons .control .input.is-focused:not([disabled]):hover,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-focused:not([disabled]):hover,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-focused:not([disabled]):hover,.field.has-addons .control .input:not([disabled]):active:hover,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input:not([disabled]):active:hover,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input:not([disabled]):active:hover,.field.has-addons .control .input.is-active:not([disabled]):hover,.field.has-addons .control #documenter .docs-sidebar form.docs-search>input.is-active:not([disabled]):hover,#documenter .docs-sidebar .field.has-addons .control form.docs-search>input.is-active:not([disabled]):hover,.field.has-addons .control .select select:not([disabled]):focus:hover,.field.has-addons .control .select select.is-focused:not([disabled]):hover,.field.has-addons .control .select select:not([disabled]):active:hover,.field.has-addons .control .select select.is-active:not([disabled]):hover{z-index:4}.field.has-addons .control.is-expanded{flex-grow:1;flex-shrink:1}.field.has-addons.has-addons-centered{justify-content:center}.field.has-addons.has-addons-right{justify-content:flex-end}.field.has-addons.has-addons-fullwidth .control{flex-grow:1;flex-shrink:0}.field.is-grouped{display:flex;justify-content:flex-start}.field.is-grouped>.control{flex-shrink:0}.field.is-grouped>.control:not(:last-child){margin-bottom:0;margin-right:.75rem}.field.is-grouped>.control.is-expanded{flex-grow:1;flex-shrink:1}.field.is-grouped.is-grouped-centered{justify-content:center}.field.is-grouped.is-grouped-right{justify-content:flex-end}.field.is-grouped.is-grouped-multiline{flex-wrap:wrap}.field.is-grouped.is-grouped-multiline>.control:last-child,.field.is-grouped.is-grouped-multiline>.control:not(:last-child){margin-bottom:0.75rem}.field.is-grouped.is-grouped-multiline:last-child{margin-bottom:-0.75rem}.field.is-grouped.is-grouped-multiline:not(:last-child){margin-bottom:0}@media screen and (min-width: 769px),print{.field.is-horizontal{display:flex}}.field-label .label{font-size:inherit}@media screen and (max-width: 768px){.field-label{margin-bottom:0.5rem}}@media screen and (min-width: 769px),print{.field-label{flex-basis:0;flex-grow:1;flex-shrink:0;margin-right:1.5rem;text-align:right}.field-label.is-small,#documenter .docs-sidebar form.docs-search>input.field-label{font-size:.75rem;padding-top:0.375em}.field-label.is-normal{padding-top:0.375em}.field-label.is-medium{font-size:1.25rem;padding-top:0.375em}.field-label.is-large{font-size:1.5rem;padding-top:0.375em}}.field-body .field .field{margin-bottom:0}@media screen and (min-width: 769px),print{.field-body{display:flex;flex-basis:0;flex-grow:5;flex-shrink:1}.field-body .field{margin-bottom:0}.field-body>.field{flex-shrink:1}.field-body>.field:not(.is-narrow){flex-grow:1}.field-body>.field:not(:last-child){margin-right:.75rem}}.control{box-sizing:border-box;clear:both;font-size:1rem;position:relative;text-align:inherit}.control.has-icons-left .input:focus~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input:focus~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input:focus~.icon,.control.has-icons-left .select:focus~.icon,.control.has-icons-right .input:focus~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input:focus~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input:focus~.icon,.control.has-icons-right .select:focus~.icon{color:#222}.control.has-icons-left .input.is-small~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input~.icon,.control.has-icons-left .select.is-small~.icon,.control.has-icons-right .input.is-small~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input~.icon,.control.has-icons-right .select.is-small~.icon{font-size:.75rem}.control.has-icons-left .input.is-medium~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-medium~.icon,.control.has-icons-left .select.is-medium~.icon,.control.has-icons-right .input.is-medium~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-medium~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-medium~.icon,.control.has-icons-right .select.is-medium~.icon{font-size:1.25rem}.control.has-icons-left .input.is-large~.icon,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input.is-large~.icon,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input.is-large~.icon,.control.has-icons-left .select.is-large~.icon,.control.has-icons-right .input.is-large~.icon,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input.is-large~.icon,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input.is-large~.icon,.control.has-icons-right .select.is-large~.icon{font-size:1.5rem}.control.has-icons-left .icon,.control.has-icons-right .icon{color:#dbdbdb;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}.control.has-icons-left .input,.control.has-icons-left #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .control.has-icons-left form.docs-search>input,.control.has-icons-left .select select{padding-left:2.5em}.control.has-icons-left .icon.is-left{left:0}.control.has-icons-right .input,.control.has-icons-right #documenter .docs-sidebar form.docs-search>input,#documenter .docs-sidebar .control.has-icons-right form.docs-search>input,.control.has-icons-right .select select{padding-right:2.5em}.control.has-icons-right .icon.is-right{right:0}.control.is-loading::after{position:absolute !important;right:.625em;top:0.625em;z-index:4}.control.is-loading.is-small:after,#documenter .docs-sidebar form.docs-search>input.is-loading:after{font-size:.75rem}.control.is-loading.is-medium:after{font-size:1.25rem}.control.is-loading.is-large:after{font-size:1.5rem}.breadcrumb{font-size:1rem;white-space:nowrap}.breadcrumb a{align-items:center;color:#2e63b8;display:flex;justify-content:center;padding:0 .75em}.breadcrumb a:hover{color:#363636}.breadcrumb li{align-items:center;display:flex}.breadcrumb li:first-child a{padding-left:0}.breadcrumb li.is-active a{color:#222;cursor:default;pointer-events:none}.breadcrumb li+li::before{color:#b5b5b5;content:"\0002f"}.breadcrumb ul,.breadcrumb ol{align-items:flex-start;display:flex;flex-wrap:wrap;justify-content:flex-start}.breadcrumb .icon:first-child{margin-right:.5em}.breadcrumb .icon:last-child{margin-left:.5em}.breadcrumb.is-centered ol,.breadcrumb.is-centered ul{justify-content:center}.breadcrumb.is-right ol,.breadcrumb.is-right ul{justify-content:flex-end}.breadcrumb.is-small,#documenter .docs-sidebar form.docs-search>input.breadcrumb{font-size:.75rem}.breadcrumb.is-medium{font-size:1.25rem}.breadcrumb.is-large{font-size:1.5rem}.breadcrumb.has-arrow-separator li+li::before{content:"\02192"}.breadcrumb.has-bullet-separator li+li::before{content:"\02022"}.breadcrumb.has-dot-separator li+li::before{content:"\000b7"}.breadcrumb.has-succeeds-separator li+li::before{content:"\0227B"}.card{background-color:#fff;border-radius:.25rem;box-shadow:#bbb;color:#222;max-width:100%;position:relative}.card-footer:first-child,.card-content:first-child,.card-header:first-child{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card-footer:last-child,.card-content:last-child,.card-header:last-child{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.card-header{background-color:rgba(0,0,0,0);align-items:stretch;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);display:flex}.card-header-title{align-items:center;color:#222;display:flex;flex-grow:1;font-weight:700;padding:0.75rem 1rem}.card-header-title.is-centered{justify-content:center}.card-header-icon{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;color:currentColor;font-family:inherit;font-size:1em;margin:0;padding:0;align-items:center;cursor:pointer;display:flex;justify-content:center;padding:0.75rem 1rem}.card-image{display:block;position:relative}.card-image:first-child img{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.card-image:last-child img{border-bottom-left-radius:.25rem;border-bottom-right-radius:.25rem}.card-content{background-color:rgba(0,0,0,0);padding:1.5rem}.card-footer{background-color:rgba(0,0,0,0);border-top:1px solid #ededed;align-items:stretch;display:flex}.card-footer-item{align-items:center;display:flex;flex-basis:0;flex-grow:1;flex-shrink:0;justify-content:center;padding:.75rem}.card-footer-item:not(:last-child){border-right:1px solid #ededed}.card .media:not(:last-child){margin-bottom:1.5rem}.dropdown{display:inline-flex;position:relative;vertical-align:top}.dropdown.is-active .dropdown-menu,.dropdown.is-hoverable:hover .dropdown-menu{display:block}.dropdown.is-right .dropdown-menu{left:auto;right:0}.dropdown.is-up .dropdown-menu{bottom:100%;padding-bottom:4px;padding-top:initial;top:auto}.dropdown-menu{display:none;left:0;min-width:12rem;padding-top:4px;position:absolute;top:100%;z-index:20}.dropdown-content{background-color:#fff;border-radius:4px;box-shadow:#bbb;padding-bottom:.5rem;padding-top:.5rem}.dropdown-item{color:#222;display:block;font-size:0.875rem;line-height:1.5;padding:0.375rem 1rem;position:relative}a.dropdown-item,button.dropdown-item{padding-right:3rem;text-align:inherit;white-space:nowrap;width:100%}a.dropdown-item:hover,button.dropdown-item:hover{background-color:#f5f5f5;color:#0a0a0a}a.dropdown-item.is-active,button.dropdown-item.is-active{background-color:#2e63b8;color:#fff}.dropdown-divider{background-color:#ededed;border:none;display:block;height:1px;margin:0.5rem 0}.level{align-items:center;justify-content:space-between}.level code{border-radius:4px}.level img{display:inline-block;vertical-align:top}.level.is-mobile{display:flex}.level.is-mobile .level-left,.level.is-mobile .level-right{display:flex}.level.is-mobile .level-left+.level-right{margin-top:0}.level.is-mobile .level-item:not(:last-child){margin-bottom:0;margin-right:.75rem}.level.is-mobile .level-item:not(.is-narrow){flex-grow:1}@media screen and (min-width: 769px),print{.level{display:flex}.level>.level-item:not(.is-narrow){flex-grow:1}}.level-item{align-items:center;display:flex;flex-basis:auto;flex-grow:0;flex-shrink:0;justify-content:center}.level-item .title,.level-item .subtitle{margin-bottom:0}@media screen and (max-width: 768px){.level-item:not(:last-child){margin-bottom:.75rem}}.level-left,.level-right{flex-basis:auto;flex-grow:0;flex-shrink:0}.level-left .level-item.is-flexible,.level-right .level-item.is-flexible{flex-grow:1}@media screen and (min-width: 769px),print{.level-left .level-item:not(:last-child),.level-right .level-item:not(:last-child){margin-right:.75rem}}.level-left{align-items:center;justify-content:flex-start}@media screen and (max-width: 768px){.level-left+.level-right{margin-top:1.5rem}}@media screen and (min-width: 769px),print{.level-left{display:flex}}.level-right{align-items:center;justify-content:flex-end}@media screen and (min-width: 769px),print{.level-right{display:flex}}.media{align-items:flex-start;display:flex;text-align:inherit}.media .content:not(:last-child){margin-bottom:.75rem}.media .media{border-top:1px solid rgba(219,219,219,0.5);display:flex;padding-top:.75rem}.media .media .content:not(:last-child),.media .media .control:not(:last-child){margin-bottom:.5rem}.media .media .media{padding-top:.5rem}.media .media .media+.media{margin-top:.5rem}.media+.media{border-top:1px solid rgba(219,219,219,0.5);margin-top:1rem;padding-top:1rem}.media.is-large+.media{margin-top:1.5rem;padding-top:1.5rem}.media-left,.media-right{flex-basis:auto;flex-grow:0;flex-shrink:0}.media-left{margin-right:1rem}.media-right{margin-left:1rem}.media-content{flex-basis:auto;flex-grow:1;flex-shrink:1;text-align:inherit}@media screen and (max-width: 768px){.media-content{overflow-x:auto}}.menu{font-size:1rem}.menu.is-small,#documenter .docs-sidebar form.docs-search>input.menu{font-size:.75rem}.menu.is-medium{font-size:1.25rem}.menu.is-large{font-size:1.5rem}.menu-list{line-height:1.25}.menu-list a{border-radius:2px;color:#222;display:block;padding:0.5em 0.75em}.menu-list a:hover{background-color:#f5f5f5;color:#222}.menu-list a.is-active{background-color:#2e63b8;color:#fff}.menu-list li ul{border-left:1px solid #dbdbdb;margin:.75em;padding-left:.75em}.menu-label{color:#6b6b6b;font-size:.75em;letter-spacing:.1em;text-transform:uppercase}.menu-label:not(:first-child){margin-top:1em}.menu-label:not(:last-child){margin-bottom:1em}.message{background-color:#f5f5f5;border-radius:4px;font-size:1rem}.message strong{color:currentColor}.message a:not(.button):not(.tag):not(.dropdown-item){color:currentColor;text-decoration:underline}.message.is-small,#documenter .docs-sidebar form.docs-search>input.message{font-size:.75rem}.message.is-medium{font-size:1.25rem}.message.is-large{font-size:1.5rem}.message.is-white{background-color:#fff}.message.is-white .message-header{background-color:#fff;color:#0a0a0a}.message.is-white .message-body{border-color:#fff}.message.is-black{background-color:#fafafa}.message.is-black .message-header{background-color:#0a0a0a;color:#fff}.message.is-black .message-body{border-color:#0a0a0a}.message.is-light{background-color:#fafafa}.message.is-light .message-header{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.message.is-light .message-body{border-color:#f5f5f5}.message.is-dark,.content kbd.message{background-color:#fafafa}.message.is-dark .message-header,.content kbd.message .message-header{background-color:#363636;color:#fff}.message.is-dark .message-body,.content kbd.message .message-body{border-color:#363636}.message.is-primary,.docstring>section>a.message.docs-sourcelink{background-color:#eef8fc}.message.is-primary .message-header,.docstring>section>a.message.docs-sourcelink .message-header{background-color:#4eb5de;color:#fff}.message.is-primary .message-body,.docstring>section>a.message.docs-sourcelink .message-body{border-color:#4eb5de;color:#1a6d8e}.message.is-link{background-color:#eff3fb}.message.is-link .message-header{background-color:#2e63b8;color:#fff}.message.is-link .message-body{border-color:#2e63b8;color:#3169c4}.message.is-info{background-color:#eff2fb}.message.is-info .message-header{background-color:#3c5dcd;color:#fff}.message.is-info .message-body{border-color:#3c5dcd;color:#3253c3}.message.is-success{background-color:#effded}.message.is-success .message-header{background-color:#259a12;color:#fff}.message.is-success .message-body{border-color:#259a12;color:#2ec016}.message.is-warning{background-color:#fffbeb}.message.is-warning .message-header{background-color:#a98800;color:#fff}.message.is-warning .message-body{border-color:#a98800;color:#cca400}.message.is-danger{background-color:#fbefef}.message.is-danger .message-header{background-color:#cb3c33;color:#fff}.message.is-danger .message-body{border-color:#cb3c33;color:#c03930}.message-header{align-items:center;background-color:#222;border-radius:4px 4px 0 0;color:#fff;display:flex;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.75em 1em;position:relative}.message-header .delete{flex-grow:0;flex-shrink:0;margin-left:.75em}.message-header+.message-body{border-width:0;border-top-left-radius:0;border-top-right-radius:0}.message-body{border-color:#dbdbdb;border-radius:4px;border-style:solid;border-width:0 0 0 4px;color:#222;padding:1.25em 1.5em}.message-body code,.message-body pre{background-color:#fff}.message-body pre code{background-color:rgba(0,0,0,0)}.modal{align-items:center;display:none;flex-direction:column;justify-content:center;overflow:hidden;position:fixed;z-index:40}.modal.is-active{display:flex}.modal-background{background-color:rgba(10,10,10,0.86)}.modal-content,.modal-card{margin:0 20px;max-height:calc(100vh - 160px);overflow:auto;position:relative;width:100%}@media screen and (min-width: 769px){.modal-content,.modal-card{margin:0 auto;max-height:calc(100vh - 40px);width:640px}}.modal-close{background:none;height:40px;position:fixed;right:20px;top:20px;width:40px}.modal-card{display:flex;flex-direction:column;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible}.modal-card-head,.modal-card-foot{align-items:center;background-color:#f5f5f5;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}.modal-card-head{border-bottom:1px solid #dbdbdb;border-top-left-radius:6px;border-top-right-radius:6px}.modal-card-title{color:#222;flex-grow:1;flex-shrink:0;font-size:1.5rem;line-height:1}.modal-card-foot{border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top:1px solid #dbdbdb}.modal-card-foot .button:not(:last-child){margin-right:.5em}.modal-card-body{-webkit-overflow-scrolling:touch;background-color:#fff;flex-grow:1;flex-shrink:1;overflow:auto;padding:20px}.navbar{background-color:#fff;min-height:3.25rem;position:relative;z-index:30}.navbar.is-white{background-color:#fff;color:#0a0a0a}.navbar.is-white .navbar-brand>.navbar-item,.navbar.is-white .navbar-brand .navbar-link{color:#0a0a0a}.navbar.is-white .navbar-brand>a.navbar-item:focus,.navbar.is-white .navbar-brand>a.navbar-item:hover,.navbar.is-white .navbar-brand>a.navbar-item.is-active,.navbar.is-white .navbar-brand .navbar-link:focus,.navbar.is-white .navbar-brand .navbar-link:hover,.navbar.is-white .navbar-brand .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}.navbar.is-white .navbar-brand .navbar-link::after{border-color:#0a0a0a}.navbar.is-white .navbar-burger{color:#0a0a0a}@media screen and (min-width: 1056px){.navbar.is-white .navbar-start>.navbar-item,.navbar.is-white .navbar-start .navbar-link,.navbar.is-white .navbar-end>.navbar-item,.navbar.is-white .navbar-end .navbar-link{color:#0a0a0a}.navbar.is-white .navbar-start>a.navbar-item:focus,.navbar.is-white .navbar-start>a.navbar-item:hover,.navbar.is-white .navbar-start>a.navbar-item.is-active,.navbar.is-white .navbar-start .navbar-link:focus,.navbar.is-white .navbar-start .navbar-link:hover,.navbar.is-white .navbar-start .navbar-link.is-active,.navbar.is-white .navbar-end>a.navbar-item:focus,.navbar.is-white .navbar-end>a.navbar-item:hover,.navbar.is-white .navbar-end>a.navbar-item.is-active,.navbar.is-white .navbar-end .navbar-link:focus,.navbar.is-white .navbar-end .navbar-link:hover,.navbar.is-white .navbar-end .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}.navbar.is-white .navbar-start .navbar-link::after,.navbar.is-white .navbar-end .navbar-link::after{border-color:#0a0a0a}.navbar.is-white .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link{background-color:#f2f2f2;color:#0a0a0a}.navbar.is-white .navbar-dropdown a.navbar-item.is-active{background-color:#fff;color:#0a0a0a}}.navbar.is-black{background-color:#0a0a0a;color:#fff}.navbar.is-black .navbar-brand>.navbar-item,.navbar.is-black .navbar-brand .navbar-link{color:#fff}.navbar.is-black .navbar-brand>a.navbar-item:focus,.navbar.is-black .navbar-brand>a.navbar-item:hover,.navbar.is-black .navbar-brand>a.navbar-item.is-active,.navbar.is-black .navbar-brand .navbar-link:focus,.navbar.is-black .navbar-brand .navbar-link:hover,.navbar.is-black .navbar-brand .navbar-link.is-active{background-color:#000;color:#fff}.navbar.is-black .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-black .navbar-burger{color:#fff}@media screen and (min-width: 1056px){.navbar.is-black .navbar-start>.navbar-item,.navbar.is-black .navbar-start .navbar-link,.navbar.is-black .navbar-end>.navbar-item,.navbar.is-black .navbar-end .navbar-link{color:#fff}.navbar.is-black .navbar-start>a.navbar-item:focus,.navbar.is-black .navbar-start>a.navbar-item:hover,.navbar.is-black .navbar-start>a.navbar-item.is-active,.navbar.is-black .navbar-start .navbar-link:focus,.navbar.is-black .navbar-start .navbar-link:hover,.navbar.is-black .navbar-start .navbar-link.is-active,.navbar.is-black .navbar-end>a.navbar-item:focus,.navbar.is-black .navbar-end>a.navbar-item:hover,.navbar.is-black .navbar-end>a.navbar-item.is-active,.navbar.is-black .navbar-end .navbar-link:focus,.navbar.is-black .navbar-end .navbar-link:hover,.navbar.is-black .navbar-end .navbar-link.is-active{background-color:#000;color:#fff}.navbar.is-black .navbar-start .navbar-link::after,.navbar.is-black .navbar-end .navbar-link::after{border-color:#fff}.navbar.is-black .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link{background-color:#000;color:#fff}.navbar.is-black .navbar-dropdown a.navbar-item.is-active{background-color:#0a0a0a;color:#fff}}.navbar.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.navbar.is-light .navbar-brand>.navbar-item,.navbar.is-light .navbar-brand .navbar-link{color:rgba(0,0,0,0.7)}.navbar.is-light .navbar-brand>a.navbar-item:focus,.navbar.is-light .navbar-brand>a.navbar-item:hover,.navbar.is-light .navbar-brand>a.navbar-item.is-active,.navbar.is-light .navbar-brand .navbar-link:focus,.navbar.is-light .navbar-brand .navbar-link:hover,.navbar.is-light .navbar-brand .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}.navbar.is-light .navbar-brand .navbar-link::after{border-color:rgba(0,0,0,0.7)}.navbar.is-light .navbar-burger{color:rgba(0,0,0,0.7)}@media screen and (min-width: 1056px){.navbar.is-light .navbar-start>.navbar-item,.navbar.is-light .navbar-start .navbar-link,.navbar.is-light .navbar-end>.navbar-item,.navbar.is-light .navbar-end .navbar-link{color:rgba(0,0,0,0.7)}.navbar.is-light .navbar-start>a.navbar-item:focus,.navbar.is-light .navbar-start>a.navbar-item:hover,.navbar.is-light .navbar-start>a.navbar-item.is-active,.navbar.is-light .navbar-start .navbar-link:focus,.navbar.is-light .navbar-start .navbar-link:hover,.navbar.is-light .navbar-start .navbar-link.is-active,.navbar.is-light .navbar-end>a.navbar-item:focus,.navbar.is-light .navbar-end>a.navbar-item:hover,.navbar.is-light .navbar-end>a.navbar-item.is-active,.navbar.is-light .navbar-end .navbar-link:focus,.navbar.is-light .navbar-end .navbar-link:hover,.navbar.is-light .navbar-end .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}.navbar.is-light .navbar-start .navbar-link::after,.navbar.is-light .navbar-end .navbar-link::after{border-color:rgba(0,0,0,0.7)}.navbar.is-light .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}.navbar.is-light .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}}.navbar.is-dark,.content kbd.navbar{background-color:#363636;color:#fff}.navbar.is-dark .navbar-brand>.navbar-item,.content kbd.navbar .navbar-brand>.navbar-item,.navbar.is-dark .navbar-brand .navbar-link,.content kbd.navbar .navbar-brand .navbar-link{color:#fff}.navbar.is-dark .navbar-brand>a.navbar-item:focus,.content kbd.navbar .navbar-brand>a.navbar-item:focus,.navbar.is-dark .navbar-brand>a.navbar-item:hover,.content kbd.navbar .navbar-brand>a.navbar-item:hover,.navbar.is-dark .navbar-brand>a.navbar-item.is-active,.content kbd.navbar .navbar-brand>a.navbar-item.is-active,.navbar.is-dark .navbar-brand .navbar-link:focus,.content kbd.navbar .navbar-brand .navbar-link:focus,.navbar.is-dark .navbar-brand .navbar-link:hover,.content kbd.navbar .navbar-brand .navbar-link:hover,.navbar.is-dark .navbar-brand .navbar-link.is-active,.content kbd.navbar .navbar-brand .navbar-link.is-active{background-color:#292929;color:#fff}.navbar.is-dark .navbar-brand .navbar-link::after,.content kbd.navbar .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-dark .navbar-burger,.content kbd.navbar .navbar-burger{color:#fff}@media screen and (min-width: 1056px){.navbar.is-dark .navbar-start>.navbar-item,.content kbd.navbar .navbar-start>.navbar-item,.navbar.is-dark .navbar-start .navbar-link,.content kbd.navbar .navbar-start .navbar-link,.navbar.is-dark .navbar-end>.navbar-item,.content kbd.navbar .navbar-end>.navbar-item,.navbar.is-dark .navbar-end .navbar-link,.content kbd.navbar .navbar-end .navbar-link{color:#fff}.navbar.is-dark .navbar-start>a.navbar-item:focus,.content kbd.navbar .navbar-start>a.navbar-item:focus,.navbar.is-dark .navbar-start>a.navbar-item:hover,.content kbd.navbar .navbar-start>a.navbar-item:hover,.navbar.is-dark .navbar-start>a.navbar-item.is-active,.content kbd.navbar .navbar-start>a.navbar-item.is-active,.navbar.is-dark .navbar-start .navbar-link:focus,.content kbd.navbar .navbar-start .navbar-link:focus,.navbar.is-dark .navbar-start .navbar-link:hover,.content kbd.navbar .navbar-start .navbar-link:hover,.navbar.is-dark .navbar-start .navbar-link.is-active,.content kbd.navbar .navbar-start .navbar-link.is-active,.navbar.is-dark .navbar-end>a.navbar-item:focus,.content kbd.navbar .navbar-end>a.navbar-item:focus,.navbar.is-dark .navbar-end>a.navbar-item:hover,.content kbd.navbar .navbar-end>a.navbar-item:hover,.navbar.is-dark .navbar-end>a.navbar-item.is-active,.content kbd.navbar .navbar-end>a.navbar-item.is-active,.navbar.is-dark .navbar-end .navbar-link:focus,.content kbd.navbar .navbar-end .navbar-link:focus,.navbar.is-dark .navbar-end .navbar-link:hover,.content kbd.navbar .navbar-end .navbar-link:hover,.navbar.is-dark .navbar-end .navbar-link.is-active,.content kbd.navbar .navbar-end .navbar-link.is-active{background-color:#292929;color:#fff}.navbar.is-dark .navbar-start .navbar-link::after,.content kbd.navbar .navbar-start .navbar-link::after,.navbar.is-dark .navbar-end .navbar-link::after,.content kbd.navbar .navbar-end .navbar-link::after{border-color:#fff}.navbar.is-dark .navbar-item.has-dropdown:focus .navbar-link,.content kbd.navbar .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,.content kbd.navbar .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link,.content kbd.navbar .navbar-item.has-dropdown.is-active .navbar-link{background-color:#292929;color:#fff}.navbar.is-dark .navbar-dropdown a.navbar-item.is-active,.content kbd.navbar .navbar-dropdown a.navbar-item.is-active{background-color:#363636;color:#fff}}.navbar.is-primary,.docstring>section>a.navbar.docs-sourcelink{background-color:#4eb5de;color:#fff}.navbar.is-primary .navbar-brand>.navbar-item,.docstring>section>a.navbar.docs-sourcelink .navbar-brand>.navbar-item,.navbar.is-primary .navbar-brand .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link{color:#fff}.navbar.is-primary .navbar-brand>a.navbar-item:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:focus,.navbar.is-primary .navbar-brand>a.navbar-item:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item:hover,.navbar.is-primary .navbar-brand>a.navbar-item.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-brand>a.navbar-item.is-active,.navbar.is-primary .navbar-brand .navbar-link:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:focus,.navbar.is-primary .navbar-brand .navbar-link:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link:hover,.navbar.is-primary .navbar-brand .navbar-link.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link.is-active{background-color:#39acda;color:#fff}.navbar.is-primary .navbar-brand .navbar-link::after,.docstring>section>a.navbar.docs-sourcelink .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-primary .navbar-burger,.docstring>section>a.navbar.docs-sourcelink .navbar-burger{color:#fff}@media screen and (min-width: 1056px){.navbar.is-primary .navbar-start>.navbar-item,.docstring>section>a.navbar.docs-sourcelink .navbar-start>.navbar-item,.navbar.is-primary .navbar-start .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link,.navbar.is-primary .navbar-end>.navbar-item,.docstring>section>a.navbar.docs-sourcelink .navbar-end>.navbar-item,.navbar.is-primary .navbar-end .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link{color:#fff}.navbar.is-primary .navbar-start>a.navbar-item:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:focus,.navbar.is-primary .navbar-start>a.navbar-item:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item:hover,.navbar.is-primary .navbar-start>a.navbar-item.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-start>a.navbar-item.is-active,.navbar.is-primary .navbar-start .navbar-link:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:focus,.navbar.is-primary .navbar-start .navbar-link:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link:hover,.navbar.is-primary .navbar-start .navbar-link.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link.is-active,.navbar.is-primary .navbar-end>a.navbar-item:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:focus,.navbar.is-primary .navbar-end>a.navbar-item:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item:hover,.navbar.is-primary .navbar-end>a.navbar-item.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-end>a.navbar-item.is-active,.navbar.is-primary .navbar-end .navbar-link:focus,.docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:focus,.navbar.is-primary .navbar-end .navbar-link:hover,.docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link:hover,.navbar.is-primary .navbar-end .navbar-link.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link.is-active{background-color:#39acda;color:#fff}.navbar.is-primary .navbar-start .navbar-link::after,.docstring>section>a.navbar.docs-sourcelink .navbar-start .navbar-link::after,.navbar.is-primary .navbar-end .navbar-link::after,.docstring>section>a.navbar.docs-sourcelink .navbar-end .navbar-link::after{border-color:#fff}.navbar.is-primary .navbar-item.has-dropdown:focus .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link,.docstring>section>a.navbar.docs-sourcelink .navbar-item.has-dropdown.is-active .navbar-link{background-color:#39acda;color:#fff}.navbar.is-primary .navbar-dropdown a.navbar-item.is-active,.docstring>section>a.navbar.docs-sourcelink .navbar-dropdown a.navbar-item.is-active{background-color:#4eb5de;color:#fff}}.navbar.is-link{background-color:#2e63b8;color:#fff}.navbar.is-link .navbar-brand>.navbar-item,.navbar.is-link .navbar-brand .navbar-link{color:#fff}.navbar.is-link .navbar-brand>a.navbar-item:focus,.navbar.is-link .navbar-brand>a.navbar-item:hover,.navbar.is-link .navbar-brand>a.navbar-item.is-active,.navbar.is-link .navbar-brand .navbar-link:focus,.navbar.is-link .navbar-brand .navbar-link:hover,.navbar.is-link .navbar-brand .navbar-link.is-active{background-color:#2958a4;color:#fff}.navbar.is-link .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-link .navbar-burger{color:#fff}@media screen and (min-width: 1056px){.navbar.is-link .navbar-start>.navbar-item,.navbar.is-link .navbar-start .navbar-link,.navbar.is-link .navbar-end>.navbar-item,.navbar.is-link .navbar-end .navbar-link{color:#fff}.navbar.is-link .navbar-start>a.navbar-item:focus,.navbar.is-link .navbar-start>a.navbar-item:hover,.navbar.is-link .navbar-start>a.navbar-item.is-active,.navbar.is-link .navbar-start .navbar-link:focus,.navbar.is-link .navbar-start .navbar-link:hover,.navbar.is-link .navbar-start .navbar-link.is-active,.navbar.is-link .navbar-end>a.navbar-item:focus,.navbar.is-link .navbar-end>a.navbar-item:hover,.navbar.is-link .navbar-end>a.navbar-item.is-active,.navbar.is-link .navbar-end .navbar-link:focus,.navbar.is-link .navbar-end .navbar-link:hover,.navbar.is-link .navbar-end .navbar-link.is-active{background-color:#2958a4;color:#fff}.navbar.is-link .navbar-start .navbar-link::after,.navbar.is-link .navbar-end .navbar-link::after{border-color:#fff}.navbar.is-link .navbar-item.has-dropdown:focus .navbar-link,.navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,.navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link{background-color:#2958a4;color:#fff}.navbar.is-link .navbar-dropdown a.navbar-item.is-active{background-color:#2e63b8;color:#fff}}.navbar.is-info{background-color:#3c5dcd;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:#3151bf;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:#3151bf;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:#3151bf;color:#fff}.navbar.is-info .navbar-dropdown a.navbar-item.is-active{background-color:#3c5dcd;color:#fff}}.navbar.is-success{background-color:#259a12;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:#20830f;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:#20830f;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:#20830f;color:#fff}.navbar.is-success .navbar-dropdown a.navbar-item.is-active{background-color:#259a12;color:#fff}}.navbar.is-warning{background-color:#a98800;color:#fff}.navbar.is-warning .navbar-brand>.navbar-item,.navbar.is-warning .navbar-brand .navbar-link{color:#fff}.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:#8f7300;color:#fff}.navbar.is-warning .navbar-brand .navbar-link::after{border-color:#fff}.navbar.is-warning .navbar-burger{color:#fff}@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:#fff}.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:#8f7300;color:#fff}.navbar.is-warning .navbar-start .navbar-link::after,.navbar.is-warning .navbar-end .navbar-link::after{border-color:#fff}.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:#8f7300;color:#fff}.navbar.is-warning .navbar-dropdown a.navbar-item.is-active{background-color:#a98800;color:#fff}}.navbar.is-danger{background-color:#cb3c33;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:#b7362e;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:#b7362e;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:#b7362e;color:#fff}.navbar.is-danger .navbar-dropdown a.navbar-item.is-active{background-color:#cb3c33;color:#fff}}.navbar>.container{align-items:stretch;display:flex;min-height:3.25rem;width:100%}.navbar.has-shadow{box-shadow:0 2px 0 0 #f5f5f5}.navbar.is-fixed-bottom,.navbar.is-fixed-top{left:0;position:fixed;right:0;z-index:30}.navbar.is-fixed-bottom{bottom:0}.navbar.is-fixed-bottom.has-shadow{box-shadow:0 -2px 0 0 #f5f5f5}.navbar.is-fixed-top{top:0}html.has-navbar-fixed-top,body.has-navbar-fixed-top{padding-top:3.25rem}html.has-navbar-fixed-bottom,body.has-navbar-fixed-bottom{padding-bottom:3.25rem}.navbar-brand,.navbar-tabs{align-items:stretch;display:flex;flex-shrink:0;min-height:3.25rem}.navbar-brand a.navbar-item:focus,.navbar-brand a.navbar-item:hover{background-color:transparent}.navbar-tabs{-webkit-overflow-scrolling:touch;max-width:100vw;overflow-x:auto;overflow-y:hidden}.navbar-burger{color:#222;-moz-appearance:none;-webkit-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:block;height:3.25rem;position:relative;width:3.25rem;margin-left:auto}.navbar-burger span{background-color:currentColor;display:block;height:1px;left:calc(50% - 8px);position:absolute;transform-origin:center;transition-duration:86ms;transition-property:background-color, opacity, transform;transition-timing-function:ease-out;width:16px}.navbar-burger span:nth-child(1){top:calc(50% - 6px)}.navbar-burger span:nth-child(2){top:calc(50% - 1px)}.navbar-burger span:nth-child(3){top:calc(50% + 4px)}.navbar-burger:hover{background-color:rgba(0,0,0,0.05)}.navbar-burger.is-active span:nth-child(1){transform:translateY(5px) rotate(45deg)}.navbar-burger.is-active span:nth-child(2){opacity:0}.navbar-burger.is-active span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}.navbar-menu{display:none}.navbar-item,.navbar-link{color:#222;display:block;line-height:1.5;padding:0.5rem 0.75rem;position:relative}.navbar-item .icon:only-child,.navbar-link .icon:only-child{margin-left:-0.25rem;margin-right:-0.25rem}a.navbar-item,.navbar-link{cursor:pointer}a.navbar-item:focus,a.navbar-item:focus-within,a.navbar-item:hover,a.navbar-item.is-active,.navbar-link:focus,.navbar-link:focus-within,.navbar-link:hover,.navbar-link.is-active{background-color:#fafafa;color:#2e63b8}.navbar-item{flex-grow:0;flex-shrink:0}.navbar-item img{max-height:1.75rem}.navbar-item.has-dropdown{padding:0}.navbar-item.is-expanded{flex-grow:1;flex-shrink:1}.navbar-item.is-tab{border-bottom:1px solid transparent;min-height:3.25rem;padding-bottom:calc(0.5rem - 1px)}.navbar-item.is-tab:focus,.navbar-item.is-tab:hover{background-color:rgba(0,0,0,0);border-bottom-color:#2e63b8}.navbar-item.is-tab.is-active{background-color:rgba(0,0,0,0);border-bottom-color:#2e63b8;border-bottom-style:solid;border-bottom-width:3px;color:#2e63b8;padding-bottom:calc(0.5rem - 3px)}.navbar-content{flex-grow:1;flex-shrink:1}.navbar-link:not(.is-arrowless){padding-right:2.5em}.navbar-link:not(.is-arrowless)::after{border-color:#2e63b8;margin-top:-0.375em;right:1.125em}.navbar-dropdown{font-size:0.875rem;padding-bottom:0.5rem;padding-top:0.5rem}.navbar-dropdown .navbar-item{padding-left:1.5rem;padding-right:1.5rem}.navbar-divider{background-color:#f5f5f5;border:none;display:none;height:2px;margin:0.5rem 0}@media screen and (max-width: 1055px){.navbar>.container{display:block}.navbar-brand .navbar-item,.navbar-tabs .navbar-item{align-items:center;display:flex}.navbar-link::after{display:none}.navbar-menu{background-color:#fff;box-shadow:0 8px 16px rgba(10,10,10,0.1);padding:0.5rem 0}.navbar-menu.is-active{display:block}.navbar.is-fixed-bottom-touch,.navbar.is-fixed-top-touch{left:0;position:fixed;right:0;z-index:30}.navbar.is-fixed-bottom-touch{bottom:0}.navbar.is-fixed-bottom-touch.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}.navbar.is-fixed-top-touch{top:0}.navbar.is-fixed-top .navbar-menu,.navbar.is-fixed-top-touch .navbar-menu{-webkit-overflow-scrolling:touch;max-height:calc(100vh - 3.25rem);overflow:auto}html.has-navbar-fixed-top-touch,body.has-navbar-fixed-top-touch{padding-top:3.25rem}html.has-navbar-fixed-bottom-touch,body.has-navbar-fixed-bottom-touch{padding-bottom:3.25rem}}@media screen and (min-width: 1056px){.navbar,.navbar-menu,.navbar-start,.navbar-end{align-items:stretch;display:flex}.navbar{min-height:3.25rem}.navbar.is-spaced{padding:1rem 2rem}.navbar.is-spaced .navbar-start,.navbar.is-spaced .navbar-end{align-items:center}.navbar.is-spaced a.navbar-item,.navbar.is-spaced .navbar-link{border-radius:4px}.navbar.is-transparent a.navbar-item:focus,.navbar.is-transparent a.navbar-item:hover,.navbar.is-transparent a.navbar-item.is-active,.navbar.is-transparent .navbar-link:focus,.navbar.is-transparent .navbar-link:hover,.navbar.is-transparent .navbar-link.is-active{background-color:transparent !important}.navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:focus-within .navbar-link,.navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link{background-color:transparent !important}.navbar.is-transparent .navbar-dropdown a.navbar-item:focus,.navbar.is-transparent .navbar-dropdown a.navbar-item:hover{background-color:#f5f5f5;color:#0a0a0a}.navbar.is-transparent .navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:#2e63b8}.navbar-burger{display:none}.navbar-item,.navbar-link{align-items:center;display:flex}.navbar-item.has-dropdown{align-items:stretch}.navbar-item.has-dropdown-up .navbar-link::after{transform:rotate(135deg) translate(0.25em, -0.25em)}.navbar-item.has-dropdown-up .navbar-dropdown{border-bottom:2px solid #dbdbdb;border-radius:6px 6px 0 0;border-top:none;bottom:100%;box-shadow:0 -8px 8px rgba(10,10,10,0.1);top:auto}.navbar-item.is-active .navbar-dropdown,.navbar-item.is-hoverable:focus .navbar-dropdown,.navbar-item.is-hoverable:focus-within .navbar-dropdown,.navbar-item.is-hoverable:hover .navbar-dropdown{display:block}.navbar.is-spaced .navbar-item.is-active .navbar-dropdown,.navbar-item.is-active .navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-item.is-hoverable:focus .navbar-dropdown,.navbar-item.is-hoverable:focus .navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-item.is-hoverable:focus-within .navbar-dropdown,.navbar-item.is-hoverable:focus-within .navbar-dropdown.is-boxed,.navbar.is-spaced .navbar-item.is-hoverable:hover .navbar-dropdown,.navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed{opacity:1;pointer-events:auto;transform:translateY(0)}.navbar-menu{flex-grow:1;flex-shrink:0}.navbar-start{justify-content:flex-start;margin-right:auto}.navbar-end{justify-content:flex-end;margin-left:auto}.navbar-dropdown{background-color:#fff;border-bottom-left-radius:6px;border-bottom-right-radius:6px;border-top:2px solid #dbdbdb;box-shadow:0 8px 8px rgba(10,10,10,0.1);display:none;font-size:0.875rem;left:0;min-width:100%;position:absolute;top:100%;z-index:20}.navbar-dropdown .navbar-item{padding:0.375rem 1rem;white-space:nowrap}.navbar-dropdown a.navbar-item{padding-right:3rem}.navbar-dropdown a.navbar-item:focus,.navbar-dropdown a.navbar-item:hover{background-color:#f5f5f5;color:#0a0a0a}.navbar-dropdown a.navbar-item.is-active{background-color:#f5f5f5;color:#2e63b8}.navbar.is-spaced .navbar-dropdown,.navbar-dropdown.is-boxed{border-radius:6px;border-top:none;box-shadow:0 8px 8px rgba(10,10,10,0.1), 0 0 0 1px rgba(10,10,10,0.1);display:block;opacity:0;pointer-events:none;top:calc(100% + (-4px));transform:translateY(-5px);transition-duration:86ms;transition-property:opacity, transform}.navbar-dropdown.is-right{left:auto;right:0}.navbar-divider{display:block}.navbar>.container .navbar-brand,.container>.navbar .navbar-brand{margin-left:-.75rem}.navbar>.container .navbar-menu,.container>.navbar .navbar-menu{margin-right:-.75rem}.navbar.is-fixed-bottom-desktop,.navbar.is-fixed-top-desktop{left:0;position:fixed;right:0;z-index:30}.navbar.is-fixed-bottom-desktop{bottom:0}.navbar.is-fixed-bottom-desktop.has-shadow{box-shadow:0 -2px 3px rgba(10,10,10,0.1)}.navbar.is-fixed-top-desktop{top:0}html.has-navbar-fixed-top-desktop,body.has-navbar-fixed-top-desktop{padding-top:3.25rem}html.has-navbar-fixed-bottom-desktop,body.has-navbar-fixed-bottom-desktop{padding-bottom:3.25rem}html.has-spaced-navbar-fixed-top,body.has-spaced-navbar-fixed-top{padding-top:5.25rem}html.has-spaced-navbar-fixed-bottom,body.has-spaced-navbar-fixed-bottom{padding-bottom:5.25rem}a.navbar-item.is-active,.navbar-link.is-active{color:#0a0a0a}a.navbar-item.is-active:not(:focus):not(:hover),.navbar-link.is-active:not(:focus):not(:hover){background-color:rgba(0,0,0,0)}.navbar-item.has-dropdown:focus .navbar-link,.navbar-item.has-dropdown:hover .navbar-link,.navbar-item.has-dropdown.is-active .navbar-link{background-color:#fafafa}}.hero.is-fullheight-with-navbar{min-height:calc(100vh - 3.25rem)}.pagination{font-size:1rem;margin:-.25rem}.pagination.is-small,#documenter .docs-sidebar form.docs-search>input.pagination{font-size:.75rem}.pagination.is-medium{font-size:1.25rem}.pagination.is-large{font-size:1.5rem}.pagination.is-rounded .pagination-previous,#documenter .docs-sidebar form.docs-search>input.pagination .pagination-previous,.pagination.is-rounded .pagination-next,#documenter .docs-sidebar form.docs-search>input.pagination .pagination-next{padding-left:1em;padding-right:1em;border-radius:9999px}.pagination.is-rounded .pagination-link,#documenter .docs-sidebar form.docs-search>input.pagination .pagination-link{border-radius:9999px}.pagination,.pagination-list{align-items:center;display:flex;justify-content:center;text-align:center}.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis{font-size:1em;justify-content:center;margin:.25rem;padding-left:.5em;padding-right:.5em;text-align:center}.pagination-previous,.pagination-next,.pagination-link{border-color:#dbdbdb;color:#222;min-width:2.5em}.pagination-previous:hover,.pagination-next:hover,.pagination-link:hover{border-color:#b5b5b5;color:#363636}.pagination-previous:focus,.pagination-next:focus,.pagination-link:focus{border-color:#3c5dcd}.pagination-previous:active,.pagination-next:active,.pagination-link:active{box-shadow:inset 0 1px 2px rgba(10,10,10,0.2)}.pagination-previous[disabled],.pagination-previous.is-disabled,.pagination-next[disabled],.pagination-next.is-disabled,.pagination-link[disabled],.pagination-link.is-disabled{background-color:#dbdbdb;border-color:#dbdbdb;box-shadow:none;color:#6b6b6b;opacity:0.5}.pagination-previous,.pagination-next{padding-left:.75em;padding-right:.75em;white-space:nowrap}.pagination-link.is-current{background-color:#2e63b8;border-color:#2e63b8;color:#fff}.pagination-ellipsis{color:#b5b5b5;pointer-events:none}.pagination-list{flex-wrap:wrap}.pagination-list li{list-style:none}@media screen and (max-width: 768px){.pagination{flex-wrap:wrap}.pagination-previous,.pagination-next{flex-grow:1;flex-shrink:1}.pagination-list li{flex-grow:1;flex-shrink:1}}@media screen and (min-width: 769px),print{.pagination-list{flex-grow:1;flex-shrink:1;justify-content:flex-start;order:1}.pagination-previous,.pagination-next,.pagination-link,.pagination-ellipsis{margin-bottom:0;margin-top:0}.pagination-previous{order:2}.pagination-next{order:3}.pagination{justify-content:space-between;margin-bottom:0;margin-top:0}.pagination.is-centered .pagination-previous{order:1}.pagination.is-centered .pagination-list{justify-content:center;order:2}.pagination.is-centered .pagination-next{order:3}.pagination.is-right .pagination-previous{order:1}.pagination.is-right .pagination-next{order:2}.pagination.is-right .pagination-list{justify-content:flex-end;order:3}}.panel{border-radius:6px;box-shadow:#bbb;font-size:1rem}.panel:not(:last-child){margin-bottom:1.5rem}.panel.is-white .panel-heading{background-color:#fff;color:#0a0a0a}.panel.is-white .panel-tabs a.is-active{border-bottom-color:#fff}.panel.is-white .panel-block.is-active .panel-icon{color:#fff}.panel.is-black .panel-heading{background-color:#0a0a0a;color:#fff}.panel.is-black .panel-tabs a.is-active{border-bottom-color:#0a0a0a}.panel.is-black .panel-block.is-active .panel-icon{color:#0a0a0a}.panel.is-light .panel-heading{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.panel.is-light .panel-tabs a.is-active{border-bottom-color:#f5f5f5}.panel.is-light .panel-block.is-active .panel-icon{color:#f5f5f5}.panel.is-dark .panel-heading,.content kbd.panel .panel-heading{background-color:#363636;color:#fff}.panel.is-dark .panel-tabs a.is-active,.content kbd.panel .panel-tabs a.is-active{border-bottom-color:#363636}.panel.is-dark .panel-block.is-active .panel-icon,.content kbd.panel .panel-block.is-active .panel-icon{color:#363636}.panel.is-primary .panel-heading,.docstring>section>a.panel.docs-sourcelink .panel-heading{background-color:#4eb5de;color:#fff}.panel.is-primary .panel-tabs a.is-active,.docstring>section>a.panel.docs-sourcelink .panel-tabs a.is-active{border-bottom-color:#4eb5de}.panel.is-primary .panel-block.is-active .panel-icon,.docstring>section>a.panel.docs-sourcelink .panel-block.is-active .panel-icon{color:#4eb5de}.panel.is-link .panel-heading{background-color:#2e63b8;color:#fff}.panel.is-link .panel-tabs a.is-active{border-bottom-color:#2e63b8}.panel.is-link .panel-block.is-active .panel-icon{color:#2e63b8}.panel.is-info .panel-heading{background-color:#3c5dcd;color:#fff}.panel.is-info .panel-tabs a.is-active{border-bottom-color:#3c5dcd}.panel.is-info .panel-block.is-active .panel-icon{color:#3c5dcd}.panel.is-success .panel-heading{background-color:#259a12;color:#fff}.panel.is-success .panel-tabs a.is-active{border-bottom-color:#259a12}.panel.is-success .panel-block.is-active .panel-icon{color:#259a12}.panel.is-warning .panel-heading{background-color:#a98800;color:#fff}.panel.is-warning .panel-tabs a.is-active{border-bottom-color:#a98800}.panel.is-warning .panel-block.is-active .panel-icon{color:#a98800}.panel.is-danger .panel-heading{background-color:#cb3c33;color:#fff}.panel.is-danger .panel-tabs a.is-active{border-bottom-color:#cb3c33}.panel.is-danger .panel-block.is-active .panel-icon{color:#cb3c33}.panel-tabs:not(:last-child),.panel-block:not(:last-child){border-bottom:1px solid #ededed}.panel-heading{background-color:#ededed;border-radius:6px 6px 0 0;color:#222;font-size:1.25em;font-weight:700;line-height:1.25;padding:0.75em 1em}.panel-tabs{align-items:flex-end;display:flex;font-size:.875em;justify-content:center}.panel-tabs a{border-bottom:1px solid #dbdbdb;margin-bottom:-1px;padding:0.5em}.panel-tabs a.is-active{border-bottom-color:#4a4a4a;color:#363636}.panel-list a{color:#222}.panel-list a:hover{color:#2e63b8}.panel-block{align-items:center;color:#222;display:flex;justify-content:flex-start;padding:0.5em 0.75em}.panel-block input[type="checkbox"]{margin-right:.75em}.panel-block>.control{flex-grow:1;flex-shrink:1;width:100%}.panel-block.is-wrapped{flex-wrap:wrap}.panel-block.is-active{border-left-color:#2e63b8;color:#363636}.panel-block.is-active .panel-icon{color:#2e63b8}.panel-block:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}a.panel-block,label.panel-block{cursor:pointer}a.panel-block:hover,label.panel-block:hover{background-color:#f5f5f5}.panel-icon{display:inline-block;font-size:14px;height:1em;line-height:1em;text-align:center;vertical-align:top;width:1em;color:#6b6b6b;margin-right:.75em}.panel-icon .fa{font-size:inherit;line-height:inherit}.tabs{-webkit-overflow-scrolling:touch;align-items:stretch;display:flex;font-size:1rem;justify-content:space-between;overflow:hidden;overflow-x:auto;white-space:nowrap}.tabs a{align-items:center;border-bottom-color:#dbdbdb;border-bottom-style:solid;border-bottom-width:1px;color:#222;display:flex;justify-content:center;margin-bottom:-1px;padding:0.5em 1em;vertical-align:top}.tabs a:hover{border-bottom-color:#222;color:#222}.tabs li{display:block}.tabs li.is-active a{border-bottom-color:#2e63b8;color:#2e63b8}.tabs ul{align-items:center;border-bottom-color:#dbdbdb;border-bottom-style:solid;border-bottom-width:1px;display:flex;flex-grow:1;flex-shrink:0;justify-content:flex-start}.tabs ul.is-left{padding-right:0.75em}.tabs ul.is-center{flex:none;justify-content:center;padding-left:0.75em;padding-right:0.75em}.tabs ul.is-right{justify-content:flex-end;padding-left:0.75em}.tabs .icon:first-child{margin-right:.5em}.tabs .icon:last-child{margin-left:.5em}.tabs.is-centered ul{justify-content:center}.tabs.is-right ul{justify-content:flex-end}.tabs.is-boxed a{border:1px solid transparent;border-radius:4px 4px 0 0}.tabs.is-boxed a:hover{background-color:#f5f5f5;border-bottom-color:#dbdbdb}.tabs.is-boxed li.is-active a{background-color:#fff;border-color:#dbdbdb;border-bottom-color:rgba(0,0,0,0) !important}.tabs.is-fullwidth li{flex-grow:1;flex-shrink:0}.tabs.is-toggle a{border-color:#dbdbdb;border-style:solid;border-width:1px;margin-bottom:0;position:relative}.tabs.is-toggle a:hover{background-color:#f5f5f5;border-color:#b5b5b5;z-index:2}.tabs.is-toggle li+li{margin-left:-1px}.tabs.is-toggle li:first-child a{border-top-left-radius:4px;border-bottom-left-radius:4px}.tabs.is-toggle li:last-child a{border-top-right-radius:4px;border-bottom-right-radius:4px}.tabs.is-toggle li.is-active a{background-color:#2e63b8;border-color:#2e63b8;color:#fff;z-index:1}.tabs.is-toggle ul{border-bottom:none}.tabs.is-toggle.is-toggle-rounded li:first-child a{border-bottom-left-radius:9999px;border-top-left-radius:9999px;padding-left:1.25em}.tabs.is-toggle.is-toggle-rounded li:last-child a{border-bottom-right-radius:9999px;border-top-right-radius:9999px;padding-right:1.25em}.tabs.is-small,#documenter .docs-sidebar form.docs-search>input.tabs{font-size:.75rem}.tabs.is-medium{font-size:1.25rem}.tabs.is-large{font-size:1.5rem}.column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.columns.is-mobile>.column.is-narrow{flex:none;width:unset}.columns.is-mobile>.column.is-full{flex:none;width:100%}.columns.is-mobile>.column.is-three-quarters{flex:none;width:75%}.columns.is-mobile>.column.is-two-thirds{flex:none;width:66.6666%}.columns.is-mobile>.column.is-half{flex:none;width:50%}.columns.is-mobile>.column.is-one-third{flex:none;width:33.3333%}.columns.is-mobile>.column.is-one-quarter{flex:none;width:25%}.columns.is-mobile>.column.is-one-fifth{flex:none;width:20%}.columns.is-mobile>.column.is-two-fifths{flex:none;width:40%}.columns.is-mobile>.column.is-three-fifths{flex:none;width:60%}.columns.is-mobile>.column.is-four-fifths{flex:none;width:80%}.columns.is-mobile>.column.is-offset-three-quarters{margin-left:75%}.columns.is-mobile>.column.is-offset-two-thirds{margin-left:66.6666%}.columns.is-mobile>.column.is-offset-half{margin-left:50%}.columns.is-mobile>.column.is-offset-one-third{margin-left:33.3333%}.columns.is-mobile>.column.is-offset-one-quarter{margin-left:25%}.columns.is-mobile>.column.is-offset-one-fifth{margin-left:20%}.columns.is-mobile>.column.is-offset-two-fifths{margin-left:40%}.columns.is-mobile>.column.is-offset-three-fifths{margin-left:60%}.columns.is-mobile>.column.is-offset-four-fifths{margin-left:80%}.columns.is-mobile>.column.is-0{flex:none;width:0%}.columns.is-mobile>.column.is-offset-0{margin-left:0%}.columns.is-mobile>.column.is-1{flex:none;width:8.33333337%}.columns.is-mobile>.column.is-offset-1{margin-left:8.33333337%}.columns.is-mobile>.column.is-2{flex:none;width:16.66666674%}.columns.is-mobile>.column.is-offset-2{margin-left:16.66666674%}.columns.is-mobile>.column.is-3{flex:none;width:25%}.columns.is-mobile>.column.is-offset-3{margin-left:25%}.columns.is-mobile>.column.is-4{flex:none;width:33.33333337%}.columns.is-mobile>.column.is-offset-4{margin-left:33.33333337%}.columns.is-mobile>.column.is-5{flex:none;width:41.66666674%}.columns.is-mobile>.column.is-offset-5{margin-left:41.66666674%}.columns.is-mobile>.column.is-6{flex:none;width:50%}.columns.is-mobile>.column.is-offset-6{margin-left:50%}.columns.is-mobile>.column.is-7{flex:none;width:58.33333337%}.columns.is-mobile>.column.is-offset-7{margin-left:58.33333337%}.columns.is-mobile>.column.is-8{flex:none;width:66.66666674%}.columns.is-mobile>.column.is-offset-8{margin-left:66.66666674%}.columns.is-mobile>.column.is-9{flex:none;width:75%}.columns.is-mobile>.column.is-offset-9{margin-left:75%}.columns.is-mobile>.column.is-10{flex:none;width:83.33333337%}.columns.is-mobile>.column.is-offset-10{margin-left:83.33333337%}.columns.is-mobile>.column.is-11{flex:none;width:91.66666674%}.columns.is-mobile>.column.is-offset-11{margin-left:91.66666674%}.columns.is-mobile>.column.is-12{flex:none;width:100%}.columns.is-mobile>.column.is-offset-12{margin-left:100%}@media screen and (max-width: 768px){.column.is-narrow-mobile{flex:none;width:unset}.column.is-full-mobile{flex:none;width:100%}.column.is-three-quarters-mobile{flex:none;width:75%}.column.is-two-thirds-mobile{flex:none;width:66.6666%}.column.is-half-mobile{flex:none;width:50%}.column.is-one-third-mobile{flex:none;width:33.3333%}.column.is-one-quarter-mobile{flex:none;width:25%}.column.is-one-fifth-mobile{flex:none;width:20%}.column.is-two-fifths-mobile{flex:none;width:40%}.column.is-three-fifths-mobile{flex:none;width:60%}.column.is-four-fifths-mobile{flex:none;width:80%}.column.is-offset-three-quarters-mobile{margin-left:75%}.column.is-offset-two-thirds-mobile{margin-left:66.6666%}.column.is-offset-half-mobile{margin-left:50%}.column.is-offset-one-third-mobile{margin-left:33.3333%}.column.is-offset-one-quarter-mobile{margin-left:25%}.column.is-offset-one-fifth-mobile{margin-left:20%}.column.is-offset-two-fifths-mobile{margin-left:40%}.column.is-offset-three-fifths-mobile{margin-left:60%}.column.is-offset-four-fifths-mobile{margin-left:80%}.column.is-0-mobile{flex:none;width:0%}.column.is-offset-0-mobile{margin-left:0%}.column.is-1-mobile{flex:none;width:8.33333337%}.column.is-offset-1-mobile{margin-left:8.33333337%}.column.is-2-mobile{flex:none;width:16.66666674%}.column.is-offset-2-mobile{margin-left:16.66666674%}.column.is-3-mobile{flex:none;width:25%}.column.is-offset-3-mobile{margin-left:25%}.column.is-4-mobile{flex:none;width:33.33333337%}.column.is-offset-4-mobile{margin-left:33.33333337%}.column.is-5-mobile{flex:none;width:41.66666674%}.column.is-offset-5-mobile{margin-left:41.66666674%}.column.is-6-mobile{flex:none;width:50%}.column.is-offset-6-mobile{margin-left:50%}.column.is-7-mobile{flex:none;width:58.33333337%}.column.is-offset-7-mobile{margin-left:58.33333337%}.column.is-8-mobile{flex:none;width:66.66666674%}.column.is-offset-8-mobile{margin-left:66.66666674%}.column.is-9-mobile{flex:none;width:75%}.column.is-offset-9-mobile{margin-left:75%}.column.is-10-mobile{flex:none;width:83.33333337%}.column.is-offset-10-mobile{margin-left:83.33333337%}.column.is-11-mobile{flex:none;width:91.66666674%}.column.is-offset-11-mobile{margin-left:91.66666674%}.column.is-12-mobile{flex:none;width:100%}.column.is-offset-12-mobile{margin-left:100%}}@media screen and (min-width: 769px),print{.column.is-narrow,.column.is-narrow-tablet{flex:none;width:unset}.column.is-full,.column.is-full-tablet{flex:none;width:100%}.column.is-three-quarters,.column.is-three-quarters-tablet{flex:none;width:75%}.column.is-two-thirds,.column.is-two-thirds-tablet{flex:none;width:66.6666%}.column.is-half,.column.is-half-tablet{flex:none;width:50%}.column.is-one-third,.column.is-one-third-tablet{flex:none;width:33.3333%}.column.is-one-quarter,.column.is-one-quarter-tablet{flex:none;width:25%}.column.is-one-fifth,.column.is-one-fifth-tablet{flex:none;width:20%}.column.is-two-fifths,.column.is-two-fifths-tablet{flex:none;width:40%}.column.is-three-fifths,.column.is-three-fifths-tablet{flex:none;width:60%}.column.is-four-fifths,.column.is-four-fifths-tablet{flex:none;width:80%}.column.is-offset-three-quarters,.column.is-offset-three-quarters-tablet{margin-left:75%}.column.is-offset-two-thirds,.column.is-offset-two-thirds-tablet{margin-left:66.6666%}.column.is-offset-half,.column.is-offset-half-tablet{margin-left:50%}.column.is-offset-one-third,.column.is-offset-one-third-tablet{margin-left:33.3333%}.column.is-offset-one-quarter,.column.is-offset-one-quarter-tablet{margin-left:25%}.column.is-offset-one-fifth,.column.is-offset-one-fifth-tablet{margin-left:20%}.column.is-offset-two-fifths,.column.is-offset-two-fifths-tablet{margin-left:40%}.column.is-offset-three-fifths,.column.is-offset-three-fifths-tablet{margin-left:60%}.column.is-offset-four-fifths,.column.is-offset-four-fifths-tablet{margin-left:80%}.column.is-0,.column.is-0-tablet{flex:none;width:0%}.column.is-offset-0,.column.is-offset-0-tablet{margin-left:0%}.column.is-1,.column.is-1-tablet{flex:none;width:8.33333337%}.column.is-offset-1,.column.is-offset-1-tablet{margin-left:8.33333337%}.column.is-2,.column.is-2-tablet{flex:none;width:16.66666674%}.column.is-offset-2,.column.is-offset-2-tablet{margin-left:16.66666674%}.column.is-3,.column.is-3-tablet{flex:none;width:25%}.column.is-offset-3,.column.is-offset-3-tablet{margin-left:25%}.column.is-4,.column.is-4-tablet{flex:none;width:33.33333337%}.column.is-offset-4,.column.is-offset-4-tablet{margin-left:33.33333337%}.column.is-5,.column.is-5-tablet{flex:none;width:41.66666674%}.column.is-offset-5,.column.is-offset-5-tablet{margin-left:41.66666674%}.column.is-6,.column.is-6-tablet{flex:none;width:50%}.column.is-offset-6,.column.is-offset-6-tablet{margin-left:50%}.column.is-7,.column.is-7-tablet{flex:none;width:58.33333337%}.column.is-offset-7,.column.is-offset-7-tablet{margin-left:58.33333337%}.column.is-8,.column.is-8-tablet{flex:none;width:66.66666674%}.column.is-offset-8,.column.is-offset-8-tablet{margin-left:66.66666674%}.column.is-9,.column.is-9-tablet{flex:none;width:75%}.column.is-offset-9,.column.is-offset-9-tablet{margin-left:75%}.column.is-10,.column.is-10-tablet{flex:none;width:83.33333337%}.column.is-offset-10,.column.is-offset-10-tablet{margin-left:83.33333337%}.column.is-11,.column.is-11-tablet{flex:none;width:91.66666674%}.column.is-offset-11,.column.is-offset-11-tablet{margin-left:91.66666674%}.column.is-12,.column.is-12-tablet{flex:none;width:100%}.column.is-offset-12,.column.is-offset-12-tablet{margin-left:100%}}@media screen and (max-width: 1055px){.column.is-narrow-touch{flex:none;width:unset}.column.is-full-touch{flex:none;width:100%}.column.is-three-quarters-touch{flex:none;width:75%}.column.is-two-thirds-touch{flex:none;width:66.6666%}.column.is-half-touch{flex:none;width:50%}.column.is-one-third-touch{flex:none;width:33.3333%}.column.is-one-quarter-touch{flex:none;width:25%}.column.is-one-fifth-touch{flex:none;width:20%}.column.is-two-fifths-touch{flex:none;width:40%}.column.is-three-fifths-touch{flex:none;width:60%}.column.is-four-fifths-touch{flex:none;width:80%}.column.is-offset-three-quarters-touch{margin-left:75%}.column.is-offset-two-thirds-touch{margin-left:66.6666%}.column.is-offset-half-touch{margin-left:50%}.column.is-offset-one-third-touch{margin-left:33.3333%}.column.is-offset-one-quarter-touch{margin-left:25%}.column.is-offset-one-fifth-touch{margin-left:20%}.column.is-offset-two-fifths-touch{margin-left:40%}.column.is-offset-three-fifths-touch{margin-left:60%}.column.is-offset-four-fifths-touch{margin-left:80%}.column.is-0-touch{flex:none;width:0%}.column.is-offset-0-touch{margin-left:0%}.column.is-1-touch{flex:none;width:8.33333337%}.column.is-offset-1-touch{margin-left:8.33333337%}.column.is-2-touch{flex:none;width:16.66666674%}.column.is-offset-2-touch{margin-left:16.66666674%}.column.is-3-touch{flex:none;width:25%}.column.is-offset-3-touch{margin-left:25%}.column.is-4-touch{flex:none;width:33.33333337%}.column.is-offset-4-touch{margin-left:33.33333337%}.column.is-5-touch{flex:none;width:41.66666674%}.column.is-offset-5-touch{margin-left:41.66666674%}.column.is-6-touch{flex:none;width:50%}.column.is-offset-6-touch{margin-left:50%}.column.is-7-touch{flex:none;width:58.33333337%}.column.is-offset-7-touch{margin-left:58.33333337%}.column.is-8-touch{flex:none;width:66.66666674%}.column.is-offset-8-touch{margin-left:66.66666674%}.column.is-9-touch{flex:none;width:75%}.column.is-offset-9-touch{margin-left:75%}.column.is-10-touch{flex:none;width:83.33333337%}.column.is-offset-10-touch{margin-left:83.33333337%}.column.is-11-touch{flex:none;width:91.66666674%}.column.is-offset-11-touch{margin-left:91.66666674%}.column.is-12-touch{flex:none;width:100%}.column.is-offset-12-touch{margin-left:100%}}@media screen and (min-width: 1056px){.column.is-narrow-desktop{flex:none;width:unset}.column.is-full-desktop{flex:none;width:100%}.column.is-three-quarters-desktop{flex:none;width:75%}.column.is-two-thirds-desktop{flex:none;width:66.6666%}.column.is-half-desktop{flex:none;width:50%}.column.is-one-third-desktop{flex:none;width:33.3333%}.column.is-one-quarter-desktop{flex:none;width:25%}.column.is-one-fifth-desktop{flex:none;width:20%}.column.is-two-fifths-desktop{flex:none;width:40%}.column.is-three-fifths-desktop{flex:none;width:60%}.column.is-four-fifths-desktop{flex:none;width:80%}.column.is-offset-three-quarters-desktop{margin-left:75%}.column.is-offset-two-thirds-desktop{margin-left:66.6666%}.column.is-offset-half-desktop{margin-left:50%}.column.is-offset-one-third-desktop{margin-left:33.3333%}.column.is-offset-one-quarter-desktop{margin-left:25%}.column.is-offset-one-fifth-desktop{margin-left:20%}.column.is-offset-two-fifths-desktop{margin-left:40%}.column.is-offset-three-fifths-desktop{margin-left:60%}.column.is-offset-four-fifths-desktop{margin-left:80%}.column.is-0-desktop{flex:none;width:0%}.column.is-offset-0-desktop{margin-left:0%}.column.is-1-desktop{flex:none;width:8.33333337%}.column.is-offset-1-desktop{margin-left:8.33333337%}.column.is-2-desktop{flex:none;width:16.66666674%}.column.is-offset-2-desktop{margin-left:16.66666674%}.column.is-3-desktop{flex:none;width:25%}.column.is-offset-3-desktop{margin-left:25%}.column.is-4-desktop{flex:none;width:33.33333337%}.column.is-offset-4-desktop{margin-left:33.33333337%}.column.is-5-desktop{flex:none;width:41.66666674%}.column.is-offset-5-desktop{margin-left:41.66666674%}.column.is-6-desktop{flex:none;width:50%}.column.is-offset-6-desktop{margin-left:50%}.column.is-7-desktop{flex:none;width:58.33333337%}.column.is-offset-7-desktop{margin-left:58.33333337%}.column.is-8-desktop{flex:none;width:66.66666674%}.column.is-offset-8-desktop{margin-left:66.66666674%}.column.is-9-desktop{flex:none;width:75%}.column.is-offset-9-desktop{margin-left:75%}.column.is-10-desktop{flex:none;width:83.33333337%}.column.is-offset-10-desktop{margin-left:83.33333337%}.column.is-11-desktop{flex:none;width:91.66666674%}.column.is-offset-11-desktop{margin-left:91.66666674%}.column.is-12-desktop{flex:none;width:100%}.column.is-offset-12-desktop{margin-left:100%}}@media screen and (min-width: 1216px){.column.is-narrow-widescreen{flex:none;width:unset}.column.is-full-widescreen{flex:none;width:100%}.column.is-three-quarters-widescreen{flex:none;width:75%}.column.is-two-thirds-widescreen{flex:none;width:66.6666%}.column.is-half-widescreen{flex:none;width:50%}.column.is-one-third-widescreen{flex:none;width:33.3333%}.column.is-one-quarter-widescreen{flex:none;width:25%}.column.is-one-fifth-widescreen{flex:none;width:20%}.column.is-two-fifths-widescreen{flex:none;width:40%}.column.is-three-fifths-widescreen{flex:none;width:60%}.column.is-four-fifths-widescreen{flex:none;width:80%}.column.is-offset-three-quarters-widescreen{margin-left:75%}.column.is-offset-two-thirds-widescreen{margin-left:66.6666%}.column.is-offset-half-widescreen{margin-left:50%}.column.is-offset-one-third-widescreen{margin-left:33.3333%}.column.is-offset-one-quarter-widescreen{margin-left:25%}.column.is-offset-one-fifth-widescreen{margin-left:20%}.column.is-offset-two-fifths-widescreen{margin-left:40%}.column.is-offset-three-fifths-widescreen{margin-left:60%}.column.is-offset-four-fifths-widescreen{margin-left:80%}.column.is-0-widescreen{flex:none;width:0%}.column.is-offset-0-widescreen{margin-left:0%}.column.is-1-widescreen{flex:none;width:8.33333337%}.column.is-offset-1-widescreen{margin-left:8.33333337%}.column.is-2-widescreen{flex:none;width:16.66666674%}.column.is-offset-2-widescreen{margin-left:16.66666674%}.column.is-3-widescreen{flex:none;width:25%}.column.is-offset-3-widescreen{margin-left:25%}.column.is-4-widescreen{flex:none;width:33.33333337%}.column.is-offset-4-widescreen{margin-left:33.33333337%}.column.is-5-widescreen{flex:none;width:41.66666674%}.column.is-offset-5-widescreen{margin-left:41.66666674%}.column.is-6-widescreen{flex:none;width:50%}.column.is-offset-6-widescreen{margin-left:50%}.column.is-7-widescreen{flex:none;width:58.33333337%}.column.is-offset-7-widescreen{margin-left:58.33333337%}.column.is-8-widescreen{flex:none;width:66.66666674%}.column.is-offset-8-widescreen{margin-left:66.66666674%}.column.is-9-widescreen{flex:none;width:75%}.column.is-offset-9-widescreen{margin-left:75%}.column.is-10-widescreen{flex:none;width:83.33333337%}.column.is-offset-10-widescreen{margin-left:83.33333337%}.column.is-11-widescreen{flex:none;width:91.66666674%}.column.is-offset-11-widescreen{margin-left:91.66666674%}.column.is-12-widescreen{flex:none;width:100%}.column.is-offset-12-widescreen{margin-left:100%}}@media screen and (min-width: 1408px){.column.is-narrow-fullhd{flex:none;width:unset}.column.is-full-fullhd{flex:none;width:100%}.column.is-three-quarters-fullhd{flex:none;width:75%}.column.is-two-thirds-fullhd{flex:none;width:66.6666%}.column.is-half-fullhd{flex:none;width:50%}.column.is-one-third-fullhd{flex:none;width:33.3333%}.column.is-one-quarter-fullhd{flex:none;width:25%}.column.is-one-fifth-fullhd{flex:none;width:20%}.column.is-two-fifths-fullhd{flex:none;width:40%}.column.is-three-fifths-fullhd{flex:none;width:60%}.column.is-four-fifths-fullhd{flex:none;width:80%}.column.is-offset-three-quarters-fullhd{margin-left:75%}.column.is-offset-two-thirds-fullhd{margin-left:66.6666%}.column.is-offset-half-fullhd{margin-left:50%}.column.is-offset-one-third-fullhd{margin-left:33.3333%}.column.is-offset-one-quarter-fullhd{margin-left:25%}.column.is-offset-one-fifth-fullhd{margin-left:20%}.column.is-offset-two-fifths-fullhd{margin-left:40%}.column.is-offset-three-fifths-fullhd{margin-left:60%}.column.is-offset-four-fifths-fullhd{margin-left:80%}.column.is-0-fullhd{flex:none;width:0%}.column.is-offset-0-fullhd{margin-left:0%}.column.is-1-fullhd{flex:none;width:8.33333337%}.column.is-offset-1-fullhd{margin-left:8.33333337%}.column.is-2-fullhd{flex:none;width:16.66666674%}.column.is-offset-2-fullhd{margin-left:16.66666674%}.column.is-3-fullhd{flex:none;width:25%}.column.is-offset-3-fullhd{margin-left:25%}.column.is-4-fullhd{flex:none;width:33.33333337%}.column.is-offset-4-fullhd{margin-left:33.33333337%}.column.is-5-fullhd{flex:none;width:41.66666674%}.column.is-offset-5-fullhd{margin-left:41.66666674%}.column.is-6-fullhd{flex:none;width:50%}.column.is-offset-6-fullhd{margin-left:50%}.column.is-7-fullhd{flex:none;width:58.33333337%}.column.is-offset-7-fullhd{margin-left:58.33333337%}.column.is-8-fullhd{flex:none;width:66.66666674%}.column.is-offset-8-fullhd{margin-left:66.66666674%}.column.is-9-fullhd{flex:none;width:75%}.column.is-offset-9-fullhd{margin-left:75%}.column.is-10-fullhd{flex:none;width:83.33333337%}.column.is-offset-10-fullhd{margin-left:83.33333337%}.column.is-11-fullhd{flex:none;width:91.66666674%}.column.is-offset-11-fullhd{margin-left:91.66666674%}.column.is-12-fullhd{flex:none;width:100%}.column.is-offset-12-fullhd{margin-left:100%}}.columns{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.columns:last-child{margin-bottom:-.75rem}.columns:not(:last-child){margin-bottom:calc(1.5rem - .75rem)}.columns.is-centered{justify-content:center}.columns.is-gapless{margin-left:0;margin-right:0;margin-top:0}.columns.is-gapless>.column{margin:0;padding:0 !important}.columns.is-gapless:not(:last-child){margin-bottom:1.5rem}.columns.is-gapless:last-child{margin-bottom:0}.columns.is-mobile{display:flex}.columns.is-multiline{flex-wrap:wrap}.columns.is-vcentered{align-items:center}@media screen and (min-width: 769px),print{.columns:not(.is-desktop){display:flex}}@media screen and (min-width: 1056px){.columns.is-desktop{display:flex}}.columns.is-variable{--columnGap: 0.75rem;margin-left:calc(-1 * var(--columnGap));margin-right:calc(-1 * var(--columnGap))}.columns.is-variable>.column{padding-left:var(--columnGap);padding-right:var(--columnGap)}.columns.is-variable.is-0{--columnGap: 0rem}@media screen and (max-width: 768px){.columns.is-variable.is-0-mobile{--columnGap: 0rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-0-tablet{--columnGap: 0rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-0-tablet-only{--columnGap: 0rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-0-touch{--columnGap: 0rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-0-desktop{--columnGap: 0rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-0-desktop-only{--columnGap: 0rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-0-widescreen{--columnGap: 0rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-0-widescreen-only{--columnGap: 0rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-0-fullhd{--columnGap: 0rem}}.columns.is-variable.is-1{--columnGap: .25rem}@media screen and (max-width: 768px){.columns.is-variable.is-1-mobile{--columnGap: .25rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-1-tablet{--columnGap: .25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-1-tablet-only{--columnGap: .25rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-1-touch{--columnGap: .25rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-1-desktop{--columnGap: .25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-1-desktop-only{--columnGap: .25rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-1-widescreen{--columnGap: .25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-1-widescreen-only{--columnGap: .25rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-1-fullhd{--columnGap: .25rem}}.columns.is-variable.is-2{--columnGap: .5rem}@media screen and (max-width: 768px){.columns.is-variable.is-2-mobile{--columnGap: .5rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-2-tablet{--columnGap: .5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-2-tablet-only{--columnGap: .5rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-2-touch{--columnGap: .5rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-2-desktop{--columnGap: .5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-2-desktop-only{--columnGap: .5rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-2-widescreen{--columnGap: .5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-2-widescreen-only{--columnGap: .5rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-2-fullhd{--columnGap: .5rem}}.columns.is-variable.is-3{--columnGap: .75rem}@media screen and (max-width: 768px){.columns.is-variable.is-3-mobile{--columnGap: .75rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-3-tablet{--columnGap: .75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-3-tablet-only{--columnGap: .75rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-3-touch{--columnGap: .75rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-3-desktop{--columnGap: .75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-3-desktop-only{--columnGap: .75rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-3-widescreen{--columnGap: .75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-3-widescreen-only{--columnGap: .75rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-3-fullhd{--columnGap: .75rem}}.columns.is-variable.is-4{--columnGap: 1rem}@media screen and (max-width: 768px){.columns.is-variable.is-4-mobile{--columnGap: 1rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-4-tablet{--columnGap: 1rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-4-tablet-only{--columnGap: 1rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-4-touch{--columnGap: 1rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-4-desktop{--columnGap: 1rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-4-desktop-only{--columnGap: 1rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-4-widescreen{--columnGap: 1rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-4-widescreen-only{--columnGap: 1rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-4-fullhd{--columnGap: 1rem}}.columns.is-variable.is-5{--columnGap: 1.25rem}@media screen and (max-width: 768px){.columns.is-variable.is-5-mobile{--columnGap: 1.25rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-5-tablet{--columnGap: 1.25rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-5-tablet-only{--columnGap: 1.25rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-5-touch{--columnGap: 1.25rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-5-desktop{--columnGap: 1.25rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-5-desktop-only{--columnGap: 1.25rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-5-widescreen{--columnGap: 1.25rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-5-widescreen-only{--columnGap: 1.25rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-5-fullhd{--columnGap: 1.25rem}}.columns.is-variable.is-6{--columnGap: 1.5rem}@media screen and (max-width: 768px){.columns.is-variable.is-6-mobile{--columnGap: 1.5rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-6-tablet{--columnGap: 1.5rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-6-tablet-only{--columnGap: 1.5rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-6-touch{--columnGap: 1.5rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-6-desktop{--columnGap: 1.5rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-6-desktop-only{--columnGap: 1.5rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-6-widescreen{--columnGap: 1.5rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-6-widescreen-only{--columnGap: 1.5rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-6-fullhd{--columnGap: 1.5rem}}.columns.is-variable.is-7{--columnGap: 1.75rem}@media screen and (max-width: 768px){.columns.is-variable.is-7-mobile{--columnGap: 1.75rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-7-tablet{--columnGap: 1.75rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-7-tablet-only{--columnGap: 1.75rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-7-touch{--columnGap: 1.75rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-7-desktop{--columnGap: 1.75rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-7-desktop-only{--columnGap: 1.75rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-7-widescreen{--columnGap: 1.75rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-7-widescreen-only{--columnGap: 1.75rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-7-fullhd{--columnGap: 1.75rem}}.columns.is-variable.is-8{--columnGap: 2rem}@media screen and (max-width: 768px){.columns.is-variable.is-8-mobile{--columnGap: 2rem}}@media screen and (min-width: 769px),print{.columns.is-variable.is-8-tablet{--columnGap: 2rem}}@media screen and (min-width: 769px) and (max-width: 1055px){.columns.is-variable.is-8-tablet-only{--columnGap: 2rem}}@media screen and (max-width: 1055px){.columns.is-variable.is-8-touch{--columnGap: 2rem}}@media screen and (min-width: 1056px){.columns.is-variable.is-8-desktop{--columnGap: 2rem}}@media screen and (min-width: 1056px) and (max-width: 1215px){.columns.is-variable.is-8-desktop-only{--columnGap: 2rem}}@media screen and (min-width: 1216px){.columns.is-variable.is-8-widescreen{--columnGap: 2rem}}@media screen and (min-width: 1216px) and (max-width: 1407px){.columns.is-variable.is-8-widescreen-only{--columnGap: 2rem}}@media screen and (min-width: 1408px){.columns.is-variable.is-8-fullhd{--columnGap: 2rem}}.tile{align-items:stretch;display:block;flex-basis:0;flex-grow:1;flex-shrink:1;min-height:min-content}.tile.is-ancestor{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.tile.is-ancestor:last-child{margin-bottom:-.75rem}.tile.is-ancestor:not(:last-child){margin-bottom:.75rem}.tile.is-child{margin:0 !important}.tile.is-parent{padding:.75rem}.tile.is-vertical{flex-direction:column}.tile.is-vertical>.tile.is-child:not(:last-child){margin-bottom:1.5rem !important}@media screen and (min-width: 769px),print{.tile:not(.is-child){display:flex}.tile.is-1{flex:none;width:8.33333337%}.tile.is-2{flex:none;width:16.66666674%}.tile.is-3{flex:none;width:25%}.tile.is-4{flex:none;width:33.33333337%}.tile.is-5{flex:none;width:41.66666674%}.tile.is-6{flex:none;width:50%}.tile.is-7{flex:none;width:58.33333337%}.tile.is-8{flex:none;width:66.66666674%}.tile.is-9{flex:none;width:75%}.tile.is-10{flex:none;width:83.33333337%}.tile.is-11{flex:none;width:91.66666674%}.tile.is-12{flex:none;width:100%}}.hero{align-items:stretch;display:flex;flex-direction:column;justify-content:space-between}.hero .navbar{background:none}.hero .tabs ul{border-bottom:none}.hero.is-white{background-color:#fff;color:#0a0a0a}.hero.is-white a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-white strong{color:inherit}.hero.is-white .title{color:#0a0a0a}.hero.is-white .subtitle{color:rgba(10,10,10,0.9)}.hero.is-white .subtitle a:not(.button),.hero.is-white .subtitle strong{color:#0a0a0a}@media screen and (max-width: 1055px){.hero.is-white .navbar-menu{background-color:#fff}}.hero.is-white .navbar-item,.hero.is-white .navbar-link{color:rgba(10,10,10,0.7)}.hero.is-white a.navbar-item:hover,.hero.is-white a.navbar-item.is-active,.hero.is-white .navbar-link:hover,.hero.is-white .navbar-link.is-active{background-color:#f2f2f2;color:#0a0a0a}.hero.is-white .tabs a{color:#0a0a0a;opacity:0.9}.hero.is-white .tabs a:hover{opacity:1}.hero.is-white .tabs li.is-active a{color:#fff !important;opacity:1}.hero.is-white .tabs.is-boxed a,.hero.is-white .tabs.is-toggle a{color:#0a0a0a}.hero.is-white .tabs.is-boxed a:hover,.hero.is-white .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-white .tabs.is-boxed li.is-active a,.hero.is-white .tabs.is-boxed li.is-active a:hover,.hero.is-white .tabs.is-toggle li.is-active a,.hero.is-white .tabs.is-toggle li.is-active a:hover{background-color:#0a0a0a;border-color:#0a0a0a;color:#fff}.hero.is-white.is-bold{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}@media screen and (max-width: 768px){.hero.is-white.is-bold .navbar-menu{background-image:linear-gradient(141deg, #e8e3e4 0%, #fff 71%, #fff 100%)}}.hero.is-black{background-color:#0a0a0a;color:#fff}.hero.is-black a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-black strong{color:inherit}.hero.is-black .title{color:#fff}.hero.is-black .subtitle{color:rgba(255,255,255,0.9)}.hero.is-black .subtitle a:not(.button),.hero.is-black .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-black .navbar-menu{background-color:#0a0a0a}}.hero.is-black .navbar-item,.hero.is-black .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-black a.navbar-item:hover,.hero.is-black a.navbar-item.is-active,.hero.is-black .navbar-link:hover,.hero.is-black .navbar-link.is-active{background-color:#000;color:#fff}.hero.is-black .tabs a{color:#fff;opacity:0.9}.hero.is-black .tabs a:hover{opacity:1}.hero.is-black .tabs li.is-active a{color:#0a0a0a !important;opacity:1}.hero.is-black .tabs.is-boxed a,.hero.is-black .tabs.is-toggle a{color:#fff}.hero.is-black .tabs.is-boxed a:hover,.hero.is-black .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-black .tabs.is-boxed li.is-active a,.hero.is-black .tabs.is-boxed li.is-active a:hover,.hero.is-black .tabs.is-toggle li.is-active a,.hero.is-black .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#0a0a0a}.hero.is-black.is-bold{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}@media screen and (max-width: 768px){.hero.is-black.is-bold .navbar-menu{background-image:linear-gradient(141deg, #000 0%, #0a0a0a 71%, #181616 100%)}}.hero.is-light{background-color:#f5f5f5;color:rgba(0,0,0,0.7)}.hero.is-light a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-light strong{color:inherit}.hero.is-light .title{color:rgba(0,0,0,0.7)}.hero.is-light .subtitle{color:rgba(0,0,0,0.9)}.hero.is-light .subtitle a:not(.button),.hero.is-light .subtitle strong{color:rgba(0,0,0,0.7)}@media screen and (max-width: 1055px){.hero.is-light .navbar-menu{background-color:#f5f5f5}}.hero.is-light .navbar-item,.hero.is-light .navbar-link{color:rgba(0,0,0,0.7)}.hero.is-light a.navbar-item:hover,.hero.is-light a.navbar-item.is-active,.hero.is-light .navbar-link:hover,.hero.is-light .navbar-link.is-active{background-color:#e8e8e8;color:rgba(0,0,0,0.7)}.hero.is-light .tabs a{color:rgba(0,0,0,0.7);opacity:0.9}.hero.is-light .tabs a:hover{opacity:1}.hero.is-light .tabs li.is-active a{color:#f5f5f5 !important;opacity:1}.hero.is-light .tabs.is-boxed a,.hero.is-light .tabs.is-toggle a{color:rgba(0,0,0,0.7)}.hero.is-light .tabs.is-boxed a:hover,.hero.is-light .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-light .tabs.is-boxed li.is-active a,.hero.is-light .tabs.is-boxed li.is-active a:hover,.hero.is-light .tabs.is-toggle li.is-active a,.hero.is-light .tabs.is-toggle li.is-active a:hover{background-color:rgba(0,0,0,0.7);border-color:rgba(0,0,0,0.7);color:#f5f5f5}.hero.is-light.is-bold{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}@media screen and (max-width: 768px){.hero.is-light.is-bold .navbar-menu{background-image:linear-gradient(141deg, #dfd8d9 0%, #f5f5f5 71%, #fff 100%)}}.hero.is-dark,.content kbd.hero{background-color:#363636;color:#fff}.hero.is-dark a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.content kbd.hero a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-dark strong,.content kbd.hero strong{color:inherit}.hero.is-dark .title,.content kbd.hero .title{color:#fff}.hero.is-dark .subtitle,.content kbd.hero .subtitle{color:rgba(255,255,255,0.9)}.hero.is-dark .subtitle a:not(.button),.content kbd.hero .subtitle a:not(.button),.hero.is-dark .subtitle strong,.content kbd.hero .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-dark .navbar-menu,.content kbd.hero .navbar-menu{background-color:#363636}}.hero.is-dark .navbar-item,.content kbd.hero .navbar-item,.hero.is-dark .navbar-link,.content kbd.hero .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-dark a.navbar-item:hover,.content kbd.hero a.navbar-item:hover,.hero.is-dark a.navbar-item.is-active,.content kbd.hero a.navbar-item.is-active,.hero.is-dark .navbar-link:hover,.content kbd.hero .navbar-link:hover,.hero.is-dark .navbar-link.is-active,.content kbd.hero .navbar-link.is-active{background-color:#292929;color:#fff}.hero.is-dark .tabs a,.content kbd.hero .tabs a{color:#fff;opacity:0.9}.hero.is-dark .tabs a:hover,.content kbd.hero .tabs a:hover{opacity:1}.hero.is-dark .tabs li.is-active a,.content kbd.hero .tabs li.is-active a{color:#363636 !important;opacity:1}.hero.is-dark .tabs.is-boxed a,.content kbd.hero .tabs.is-boxed a,.hero.is-dark .tabs.is-toggle a,.content kbd.hero .tabs.is-toggle a{color:#fff}.hero.is-dark .tabs.is-boxed a:hover,.content kbd.hero .tabs.is-boxed a:hover,.hero.is-dark .tabs.is-toggle a:hover,.content kbd.hero .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-dark .tabs.is-boxed li.is-active a,.content kbd.hero .tabs.is-boxed li.is-active a,.hero.is-dark .tabs.is-boxed li.is-active a:hover,.hero.is-dark .tabs.is-toggle li.is-active a,.content kbd.hero .tabs.is-toggle li.is-active a,.hero.is-dark .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#363636}.hero.is-dark.is-bold,.content kbd.hero.is-bold{background-image:linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%)}@media screen and (max-width: 768px){.hero.is-dark.is-bold .navbar-menu,.content kbd.hero.is-bold .navbar-menu{background-image:linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%)}}.hero.is-primary,.docstring>section>a.hero.docs-sourcelink{background-color:#4eb5de;color:#fff}.hero.is-primary a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.docstring>section>a.hero.docs-sourcelink a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-primary strong,.docstring>section>a.hero.docs-sourcelink strong{color:inherit}.hero.is-primary .title,.docstring>section>a.hero.docs-sourcelink .title{color:#fff}.hero.is-primary .subtitle,.docstring>section>a.hero.docs-sourcelink .subtitle{color:rgba(255,255,255,0.9)}.hero.is-primary .subtitle a:not(.button),.docstring>section>a.hero.docs-sourcelink .subtitle a:not(.button),.hero.is-primary .subtitle strong,.docstring>section>a.hero.docs-sourcelink .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-primary .navbar-menu,.docstring>section>a.hero.docs-sourcelink .navbar-menu{background-color:#4eb5de}}.hero.is-primary .navbar-item,.docstring>section>a.hero.docs-sourcelink .navbar-item,.hero.is-primary .navbar-link,.docstring>section>a.hero.docs-sourcelink .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-primary a.navbar-item:hover,.docstring>section>a.hero.docs-sourcelink a.navbar-item:hover,.hero.is-primary a.navbar-item.is-active,.docstring>section>a.hero.docs-sourcelink a.navbar-item.is-active,.hero.is-primary .navbar-link:hover,.docstring>section>a.hero.docs-sourcelink .navbar-link:hover,.hero.is-primary .navbar-link.is-active,.docstring>section>a.hero.docs-sourcelink .navbar-link.is-active{background-color:#39acda;color:#fff}.hero.is-primary .tabs a,.docstring>section>a.hero.docs-sourcelink .tabs a{color:#fff;opacity:0.9}.hero.is-primary .tabs a:hover,.docstring>section>a.hero.docs-sourcelink .tabs a:hover{opacity:1}.hero.is-primary .tabs li.is-active a,.docstring>section>a.hero.docs-sourcelink .tabs li.is-active a{color:#4eb5de !important;opacity:1}.hero.is-primary .tabs.is-boxed a,.docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a,.hero.is-primary .tabs.is-toggle a,.docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a{color:#fff}.hero.is-primary .tabs.is-boxed a:hover,.docstring>section>a.hero.docs-sourcelink .tabs.is-boxed a:hover,.hero.is-primary .tabs.is-toggle a:hover,.docstring>section>a.hero.docs-sourcelink .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-primary .tabs.is-boxed li.is-active a,.docstring>section>a.hero.docs-sourcelink .tabs.is-boxed li.is-active a,.hero.is-primary .tabs.is-boxed li.is-active a:hover,.hero.is-primary .tabs.is-toggle li.is-active a,.docstring>section>a.hero.docs-sourcelink .tabs.is-toggle li.is-active a,.hero.is-primary .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#4eb5de}.hero.is-primary.is-bold,.docstring>section>a.hero.is-bold.docs-sourcelink{background-image:linear-gradient(141deg, #1bc7de 0%, #4eb5de 71%, #5fa9e7 100%)}@media screen and (max-width: 768px){.hero.is-primary.is-bold .navbar-menu,.docstring>section>a.hero.is-bold.docs-sourcelink .navbar-menu{background-image:linear-gradient(141deg, #1bc7de 0%, #4eb5de 71%, #5fa9e7 100%)}}.hero.is-link{background-color:#2e63b8;color:#fff}.hero.is-link a:not(.button):not(.dropdown-item):not(.tag):not(.pagination-link.is-current),.hero.is-link strong{color:inherit}.hero.is-link .title{color:#fff}.hero.is-link .subtitle{color:rgba(255,255,255,0.9)}.hero.is-link .subtitle a:not(.button),.hero.is-link .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-link .navbar-menu{background-color:#2e63b8}}.hero.is-link .navbar-item,.hero.is-link .navbar-link{color:rgba(255,255,255,0.7)}.hero.is-link a.navbar-item:hover,.hero.is-link a.navbar-item.is-active,.hero.is-link .navbar-link:hover,.hero.is-link .navbar-link.is-active{background-color:#2958a4;color:#fff}.hero.is-link .tabs a{color:#fff;opacity:0.9}.hero.is-link .tabs a:hover{opacity:1}.hero.is-link .tabs li.is-active a{color:#2e63b8 !important;opacity:1}.hero.is-link .tabs.is-boxed a,.hero.is-link .tabs.is-toggle a{color:#fff}.hero.is-link .tabs.is-boxed a:hover,.hero.is-link .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-link .tabs.is-boxed li.is-active a,.hero.is-link .tabs.is-boxed li.is-active a:hover,.hero.is-link .tabs.is-toggle li.is-active a,.hero.is-link .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#2e63b8}.hero.is-link.is-bold{background-image:linear-gradient(141deg, #1b6098 0%, #2e63b8 71%, #2d51d2 100%)}@media screen and (max-width: 768px){.hero.is-link.is-bold .navbar-menu{background-image:linear-gradient(141deg, #1b6098 0%, #2e63b8 71%, #2d51d2 100%)}}.hero.is-info{background-color:#3c5dcd;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:#3c5dcd}}.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:#3151bf;color:#fff}.hero.is-info .tabs a{color:#fff;opacity:0.9}.hero.is-info .tabs a:hover{opacity:1}.hero.is-info .tabs li.is-active a{color:#3c5dcd !important;opacity:1}.hero.is-info .tabs.is-boxed a,.hero.is-info .tabs.is-toggle a{color:#fff}.hero.is-info .tabs.is-boxed a:hover,.hero.is-info .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-info .tabs.is-boxed li.is-active a,.hero.is-info .tabs.is-boxed li.is-active a:hover,.hero.is-info .tabs.is-toggle li.is-active a,.hero.is-info .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#3c5dcd}.hero.is-info.is-bold{background-image:linear-gradient(141deg, #215bb5 0%, #3c5dcd 71%, #4b53d8 100%)}@media screen and (max-width: 768px){.hero.is-info.is-bold .navbar-menu{background-image:linear-gradient(141deg, #215bb5 0%, #3c5dcd 71%, #4b53d8 100%)}}.hero.is-success{background-color:#259a12;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:#259a12}}.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:#20830f;color:#fff}.hero.is-success .tabs a{color:#fff;opacity:0.9}.hero.is-success .tabs a:hover{opacity:1}.hero.is-success .tabs li.is-active a{color:#259a12 !important;opacity:1}.hero.is-success .tabs.is-boxed a,.hero.is-success .tabs.is-toggle a{color:#fff}.hero.is-success .tabs.is-boxed a:hover,.hero.is-success .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-success .tabs.is-boxed li.is-active a,.hero.is-success .tabs.is-boxed li.is-active a:hover,.hero.is-success .tabs.is-toggle li.is-active a,.hero.is-success .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#259a12}.hero.is-success.is-bold{background-image:linear-gradient(141deg, #287207 0%, #259a12 71%, #10b614 100%)}@media screen and (max-width: 768px){.hero.is-success.is-bold .navbar-menu{background-image:linear-gradient(141deg, #287207 0%, #259a12 71%, #10b614 100%)}}.hero.is-warning{background-color:#a98800;color:#fff}.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:#fff}.hero.is-warning .subtitle{color:rgba(255,255,255,0.9)}.hero.is-warning .subtitle a:not(.button),.hero.is-warning .subtitle strong{color:#fff}@media screen and (max-width: 1055px){.hero.is-warning .navbar-menu{background-color:#a98800}}.hero.is-warning .navbar-item,.hero.is-warning .navbar-link{color:rgba(255,255,255,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:#8f7300;color:#fff}.hero.is-warning .tabs a{color:#fff;opacity:0.9}.hero.is-warning .tabs a:hover{opacity:1}.hero.is-warning .tabs li.is-active a{color:#a98800 !important;opacity:1}.hero.is-warning .tabs.is-boxed a,.hero.is-warning .tabs.is-toggle a{color:#fff}.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:#fff;border-color:#fff;color:#a98800}.hero.is-warning.is-bold{background-image:linear-gradient(141deg, #764b00 0%, #a98800 71%, #c2bd00 100%)}@media screen and (max-width: 768px){.hero.is-warning.is-bold .navbar-menu{background-image:linear-gradient(141deg, #764b00 0%, #a98800 71%, #c2bd00 100%)}}.hero.is-danger{background-color:#cb3c33;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:#cb3c33}}.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:#b7362e;color:#fff}.hero.is-danger .tabs a{color:#fff;opacity:0.9}.hero.is-danger .tabs a:hover{opacity:1}.hero.is-danger .tabs li.is-active a{color:#cb3c33 !important;opacity:1}.hero.is-danger .tabs.is-boxed a,.hero.is-danger .tabs.is-toggle a{color:#fff}.hero.is-danger .tabs.is-boxed a:hover,.hero.is-danger .tabs.is-toggle a:hover{background-color:rgba(10,10,10,0.1)}.hero.is-danger .tabs.is-boxed li.is-active a,.hero.is-danger .tabs.is-boxed li.is-active a:hover,.hero.is-danger .tabs.is-toggle li.is-active a,.hero.is-danger .tabs.is-toggle li.is-active a:hover{background-color:#fff;border-color:#fff;color:#cb3c33}.hero.is-danger.is-bold{background-image:linear-gradient(141deg, #ac1f2e 0%, #cb3c33 71%, #d66341 100%)}@media screen and (max-width: 768px){.hero.is-danger.is-bold .navbar-menu{background-image:linear-gradient(141deg, #ac1f2e 0%, #cb3c33 71%, #d66341 100%)}}.hero.is-small .hero-body,#documenter .docs-sidebar form.docs-search>input.hero .hero-body{padding:1.5rem}@media screen and (min-width: 769px),print{.hero.is-medium .hero-body{padding:9rem 4.5rem}}@media screen and (min-width: 769px),print{.hero.is-large .hero-body{padding:18rem 6rem}}.hero.is-halfheight .hero-body,.hero.is-fullheight .hero-body,.hero.is-fullheight-with-navbar .hero-body{align-items:center;display:flex}.hero.is-halfheight .hero-body>.container,.hero.is-fullheight .hero-body>.container,.hero.is-fullheight-with-navbar .hero-body>.container{flex-grow:1;flex-shrink:1}.hero.is-halfheight{min-height:50vh}.hero.is-fullheight{min-height:100vh}.hero-video{overflow:hidden}.hero-video video{left:50%;min-height:100%;min-width:100%;position:absolute;top:50%;transform:translate3d(-50%, -50%, 0)}.hero-video.is-transparent{opacity:0.3}@media screen and (max-width: 768px){.hero-video{display:none}}.hero-buttons{margin-top:1.5rem}@media screen and (max-width: 768px){.hero-buttons .button{display:flex}.hero-buttons .button:not(:last-child){margin-bottom:0.75rem}}@media screen and (min-width: 769px),print{.hero-buttons{display:flex;justify-content:center}.hero-buttons .button:not(:last-child){margin-right:1.5rem}}.hero-head,.hero-foot{flex-grow:0;flex-shrink:0}.hero-body{flex-grow:1;flex-shrink:0;padding:3rem 1.5rem}@media screen and (min-width: 769px),print{.hero-body{padding:3rem 3rem}}.section{padding:3rem 1.5rem}@media screen and (min-width: 1056px){.section{padding:3rem 3rem}.section.is-medium{padding:9rem 4.5rem}.section.is-large{padding:18rem 6rem}}.footer{background-color:#fafafa;padding:3rem 1.5rem 6rem}h1 .docs-heading-anchor,h1 .docs-heading-anchor:hover,h1 .docs-heading-anchor:visited,h2 .docs-heading-anchor,h2 .docs-heading-anchor:hover,h2 .docs-heading-anchor:visited,h3 .docs-heading-anchor,h3 .docs-heading-anchor:hover,h3 .docs-heading-anchor:visited,h4 .docs-heading-anchor,h4 .docs-heading-anchor:hover,h4 .docs-heading-anchor:visited,h5 .docs-heading-anchor,h5 .docs-heading-anchor:hover,h5 .docs-heading-anchor:visited,h6 .docs-heading-anchor,h6 .docs-heading-anchor:hover,h6 .docs-heading-anchor:visited{color:#222}h1 .docs-heading-anchor-permalink,h2 .docs-heading-anchor-permalink,h3 .docs-heading-anchor-permalink,h4 .docs-heading-anchor-permalink,h5 .docs-heading-anchor-permalink,h6 .docs-heading-anchor-permalink{visibility:hidden;vertical-align:middle;margin-left:0.5em;font-size:0.7rem}h1 .docs-heading-anchor-permalink::before,h2 .docs-heading-anchor-permalink::before,h3 .docs-heading-anchor-permalink::before,h4 .docs-heading-anchor-permalink::before,h5 .docs-heading-anchor-permalink::before,h6 .docs-heading-anchor-permalink::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f0c1"}h1:hover .docs-heading-anchor-permalink,h2:hover .docs-heading-anchor-permalink,h3:hover .docs-heading-anchor-permalink,h4:hover .docs-heading-anchor-permalink,h5:hover .docs-heading-anchor-permalink,h6:hover .docs-heading-anchor-permalink{visibility:visible}.docs-dark-only{display:none !important}pre{position:relative;overflow:hidden}pre code,pre code.hljs{padding:0 .75rem !important;overflow:auto;display:block}pre code:first-of-type,pre code.hljs:first-of-type{padding-top:0.5rem !important}pre code:last-of-type,pre code.hljs:last-of-type{padding-bottom:0.5rem !important}pre .copy-button{opacity:0.2;transition:opacity 0.2s;position:absolute;right:0em;top:0em;padding:0.5em;width:2.5em;height:2.5em;background:transparent;border:none;font-family:"Font Awesome 6 Free";color:#222;cursor:pointer;text-align:center}pre .copy-button:focus,pre .copy-button:hover{opacity:1;background:rgba(34,34,34,0.1);color:#2e63b8}pre .copy-button.success{color:#259a12;opacity:1}pre .copy-button.error{color:#cb3c33;opacity:1}pre:hover .copy-button{opacity:1}.admonition{background-color:#f5f5f5;border-style:solid;border-width:2px;border-color:#4a4a4a;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:#f5f5f5;border-color:#4a4a4a}.admonition.is-default>.admonition-header{background-color:rgba(0,0,0,0);color:#4a4a4a}.admonition.is-default>.admonition-body{color:rgba(0,0,0,0.7)}.admonition.is-info{background-color:#f5f5f5;border-color:#3c5dcd}.admonition.is-info>.admonition-header{background-color:rgba(0,0,0,0);color:#3c5dcd}.admonition.is-info>.admonition-body{color:rgba(0,0,0,0.7)}.admonition.is-success{background-color:#f5f5f5;border-color:#259a12}.admonition.is-success>.admonition-header{background-color:rgba(0,0,0,0);color:#259a12}.admonition.is-success>.admonition-body{color:rgba(0,0,0,0.7)}.admonition.is-warning{background-color:#f5f5f5;border-color:#a98800}.admonition.is-warning>.admonition-header{background-color:rgba(0,0,0,0);color:#a98800}.admonition.is-warning>.admonition-body{color:rgba(0,0,0,0.7)}.admonition.is-danger{background-color:#f5f5f5;border-color:#cb3c33}.admonition.is-danger>.admonition-header{background-color:rgba(0,0,0,0);color:#cb3c33}.admonition.is-danger>.admonition-body{color:rgba(0,0,0,0.7)}.admonition.is-compat{background-color:#f5f5f5;border-color:#3489da}.admonition.is-compat>.admonition-header{background-color:rgba(0,0,0,0);color:#3489da}.admonition.is-compat>.admonition-body{color:rgba(0,0,0,0.7)}.admonition.is-todo{background-color:#f5f5f5;border-color:#9558b2}.admonition.is-todo>.admonition-header{background-color:rgba(0,0,0,0);color:#9558b2}.admonition.is-todo>.admonition-body{color:rgba(0,0,0,0.7)}.admonition-header{color:#4a4a4a;background-color:rgba(0,0,0,0);align-items:center;font-weight:700;justify-content:space-between;line-height:1.25;padding:0.5rem .75rem;position:relative}.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;margin-right:.75rem;content:"\f06a"}details.admonition.is-details>.admonition-header{list-style:none}details.admonition.is-details>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f055"}details.admonition.is-details[open]>.admonition-header:before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f056"}.admonition-body{color:#222;padding:0.5rem .75rem}.admonition-body pre{background-color:#f5f5f5}.admonition-body code{background-color:rgba(0,0,0,0.05)}.docstring{margin-bottom:1em;background-color:rgba(0,0,0,0);border:2px solid #dbdbdb;border-radius:4px;box-shadow:2px 2px 3px rgba(10,10,10,0.1);max-width:100%}.docstring>header{cursor:pointer;display:flex;flex-grow:1;align-items:stretch;padding:0.5rem .75rem;background-color:#f5f5f5;box-shadow:0 0.125em 0.25em rgba(10,10,10,0.1);box-shadow:none;border-bottom:1px solid #dbdbdb;overflow:auto}.docstring>header code{background-color:transparent}.docstring>header .docstring-article-toggle-button{min-width:1.1rem;padding:0.2rem 0.2rem 0.2rem 0}.docstring>header .docstring-binding{margin-right:0.3em}.docstring>header .docstring-category{margin-left:0.3em}.docstring>section{position:relative;padding:.75rem .75rem;border-bottom:1px solid #dbdbdb}.docstring>section:last-child{border-bottom:none}.docstring>section>a.docs-sourcelink{transition:opacity 0.3s;opacity:0;position:absolute;right:.375rem;bottom:.375rem}.docstring>section>a.docs-sourcelink:focus{opacity:1 !important}.docstring:hover>section>a.docs-sourcelink{opacity:0.2}.docstring:focus-within>section>a.docs-sourcelink{opacity:0.2}.docstring>section:hover a.docs-sourcelink{opacity:1}.documenter-example-output{background-color:#fff}.outdated-warning-overlay{position:fixed;top:0;left:0;right:0;box-shadow:0 0 10px rgba(0,0,0,0.3);z-index:999;background-color:#f5f5f5;color:rgba(0,0,0,0.7);border-bottom:3px solid rgba(0,0,0,0);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:2px solid #dbdbdb;border-radius:4px}.content code{font-weight:inherit}.content a code{color:#2e63b8}.content a:hover code{color:#363636}.content h1 code,.content h2 code,.content h3 code,.content h4 code,.content h5 code,.content h6 code{color:#222}.content table{display:block;width:initial;max-width:100%;overflow-x:auto}.content blockquote>ul:first-child,.content blockquote>ol:first-child,.content .admonition-body>ul:first-child,.content .admonition-body>ol:first-child{margin-top:0}pre,code{font-variant-ligatures:no-contextual}.breadcrumb a.is-disabled{cursor:default;pointer-events:none}.breadcrumb a.is-disabled,.breadcrumb a.is-disabled:hover{color:#222}.hljs{background:initial !important}.katex .katex-mathml{top:0;right:0}.katex-display,mjx-container,.MathJax_Display{margin:0.5em 0 !important}html{-moz-osx-font-smoothing:auto;-webkit-font-smoothing:auto}li.no-marker{list-style:none}#documenter .docs-main>article{overflow-wrap:break-word}#documenter .docs-main>article .math-container{overflow-x:auto;overflow-y:hidden}@media screen and (min-width: 1056px){#documenter .docs-main{max-width:52rem;margin-left:20rem;padding-right:1rem}}@media screen and (max-width: 1055px){#documenter .docs-main{width:100%}#documenter .docs-main>article{max-width:52rem;margin-left:auto;margin-right:auto;margin-bottom:1rem;padding:0 1rem}#documenter .docs-main>header,#documenter .docs-main>nav{max-width:100%;width:100%;margin:0}}#documenter .docs-main header.docs-navbar{background-color:#fff;border-bottom:1px solid #dbdbdb;z-index:2;min-height:4rem;margin-bottom:1rem;display:flex}#documenter .docs-main header.docs-navbar .breadcrumb{flex-grow:1;overflow-x:hidden}#documenter .docs-main header.docs-navbar .docs-sidebar-button{display:block;font-size:1.5rem;padding-bottom:0.1rem;margin-right:1rem}#documenter .docs-main header.docs-navbar .docs-right{display:flex;white-space:nowrap;gap:1rem;align-items:center}#documenter .docs-main header.docs-navbar .docs-right .docs-icon,#documenter .docs-main header.docs-navbar .docs-right .docs-label{display:inline-block}#documenter .docs-main header.docs-navbar .docs-right .docs-label{padding:0;margin-left:0.3em}@media screen and (max-width: 1055px){#documenter .docs-main header.docs-navbar .docs-right .docs-navbar-link{margin-left:0.4rem;margin-right:0.4rem}}#documenter .docs-main header.docs-navbar>*{margin:auto 0}@media screen and (max-width: 1055px){#documenter .docs-main header.docs-navbar{position:sticky;top:0;padding:0 1rem;transition-property:top, box-shadow;-webkit-transition-property:top, box-shadow;transition-duration:0.3s;-webkit-transition-duration:0.3s}#documenter .docs-main header.docs-navbar.headroom--not-top{box-shadow:.2rem 0rem .4rem #bbb;transition-duration:0.7s;-webkit-transition-duration:0.7s}#documenter .docs-main header.docs-navbar.headroom--unpinned.headroom--not-top.headroom--not-bottom{top:-4.5rem;transition-duration:0.7s;-webkit-transition-duration:0.7s}}#documenter .docs-main section.footnotes{border-top:1px solid #dbdbdb}#documenter .docs-main section.footnotes li .tag:first-child,#documenter .docs-main section.footnotes li .docstring>section>a.docs-sourcelink:first-child,#documenter .docs-main section.footnotes li .content kbd:first-child,.content #documenter .docs-main section.footnotes li kbd:first-child{margin-right:1em;margin-bottom:0.4em}#documenter .docs-main .docs-footer{display:flex;flex-wrap:wrap;margin-left:0;margin-right:0;border-top:1px solid #dbdbdb;padding-top:1rem;padding-bottom:1rem}@media screen and (max-width: 1055px){#documenter .docs-main .docs-footer{padding-left:1rem;padding-right:1rem}}#documenter .docs-main .docs-footer .docs-footer-nextpage,#documenter .docs-main .docs-footer .docs-footer-prevpage{flex-grow:1}#documenter .docs-main .docs-footer .docs-footer-nextpage{text-align:right}#documenter .docs-main .docs-footer .flexbox-break{flex-basis:100%;height:0}#documenter .docs-main .docs-footer .footer-message{font-size:0.8em;margin:0.5em auto 0 auto;text-align:center}#documenter .docs-sidebar{display:flex;flex-direction:column;color:#0a0a0a;background-color:#f5f5f5;border-right:1px solid #dbdbdb;padding:0;flex:0 0 18rem;z-index:5;font-size:1rem;position:fixed;left:-18rem;width:18rem;height:100%;transition:left 0.3s}#documenter .docs-sidebar.visible{left:0;box-shadow:.4rem 0rem .8rem #bbb}@media screen and (min-width: 1056px){#documenter .docs-sidebar.visible{box-shadow:none}}@media screen and (min-width: 1056px){#documenter .docs-sidebar{left:0;top:0}}#documenter .docs-sidebar .docs-logo{margin-top:1rem;padding:0 1rem}#documenter .docs-sidebar .docs-logo>img{max-height:6rem;margin:auto}#documenter .docs-sidebar .docs-package-name{flex-shrink:0;font-size:1.5rem;font-weight:700;text-align:center;white-space:nowrap;overflow:hidden;padding:0.5rem 0}#documenter .docs-sidebar .docs-package-name .docs-autofit{max-width:16.2rem}#documenter .docs-sidebar .docs-package-name a,#documenter .docs-sidebar .docs-package-name a:hover{color:#0a0a0a}#documenter .docs-sidebar .docs-version-selector{border-top:1px solid #dbdbdb;display:none;padding:0.5rem}#documenter .docs-sidebar .docs-version-selector.visible{display:flex}#documenter .docs-sidebar ul.docs-menu{flex-grow:1;user-select:none;border-top:1px solid #dbdbdb;padding-bottom:1.5rem}#documenter .docs-sidebar ul.docs-menu>li>.tocitem{font-weight:bold}#documenter .docs-sidebar ul.docs-menu>li li{font-size:.95rem;margin-left:1em;border-left:1px solid #dbdbdb}#documenter .docs-sidebar ul.docs-menu input.collapse-toggle{display:none}#documenter .docs-sidebar ul.docs-menu ul.collapsed{display:none}#documenter .docs-sidebar ul.docs-menu input:checked~ul.collapsed{display:block}#documenter .docs-sidebar ul.docs-menu label.tocitem{display:flex}#documenter .docs-sidebar ul.docs-menu label.tocitem .docs-label{flex-grow:2}#documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron{display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;font-size:.75rem;margin-left:1rem;margin-top:auto;margin-bottom:auto}#documenter .docs-sidebar ul.docs-menu label.tocitem .docs-chevron::before{font-family:"Font Awesome 6 Free";font-weight:900;content:"\f054"}#documenter .docs-sidebar ul.docs-menu input:checked~label.tocitem .docs-chevron::before{content:"\f078"}#documenter .docs-sidebar ul.docs-menu .tocitem{display:block;padding:0.5rem 0.5rem}#documenter .docs-sidebar ul.docs-menu .tocitem,#documenter .docs-sidebar ul.docs-menu .tocitem:hover{color:#0a0a0a;background:#f5f5f5}#documenter .docs-sidebar ul.docs-menu a.tocitem:hover,#documenter .docs-sidebar ul.docs-menu label.tocitem:hover{color:#0a0a0a;background-color:#ebebeb}#documenter .docs-sidebar ul.docs-menu li.is-active{border-top:1px solid #dbdbdb;border-bottom:1px solid #dbdbdb;background-color:#fff}#documenter .docs-sidebar ul.docs-menu li.is-active .tocitem,#documenter .docs-sidebar ul.docs-menu li.is-active .tocitem:hover{background-color:#fff;color:#0a0a0a}#documenter .docs-sidebar ul.docs-menu li.is-active ul.internal .tocitem:hover{background-color:#ebebeb;color:#0a0a0a}#documenter .docs-sidebar ul.docs-menu>li.is-active:first-child{border-top:none}#documenter .docs-sidebar ul.docs-menu ul.internal{margin:0 0.5rem 0.5rem;border-top:1px solid #dbdbdb}#documenter .docs-sidebar ul.docs-menu ul.internal li{font-size:.85rem;border-left:none;margin-left:0;margin-top:0.5rem}#documenter .docs-sidebar ul.docs-menu ul.internal .tocitem{width:100%;padding:0}#documenter .docs-sidebar ul.docs-menu ul.internal .tocitem::before{content:"⚬";margin-right:0.4em}#documenter .docs-sidebar form.docs-search{margin:auto;margin-top:0.5rem;margin-bottom:0.5rem}#documenter .docs-sidebar form.docs-search>input{width:14.4rem}#documenter .docs-sidebar #documenter-search-query{color:#707070;width:14.4rem;box-shadow:inset 0 1px 2px rgba(10,10,10,0.1)}@media screen and (min-width: 1056px){#documenter .docs-sidebar ul.docs-menu{overflow-y:auto;-webkit-overflow-scroll:touch}#documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar{width:.3rem;background:none}#documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#e0e0e0}#documenter .docs-sidebar ul.docs-menu::-webkit-scrollbar-thumb:hover{background:#ccc}}@media screen and (max-width: 1055px){#documenter .docs-sidebar{overflow-y:auto;-webkit-overflow-scroll:touch}#documenter .docs-sidebar::-webkit-scrollbar{width:.3rem;background:none}#documenter .docs-sidebar::-webkit-scrollbar-thumb{border-radius:5px 0px 0px 5px;background:#e0e0e0}#documenter .docs-sidebar::-webkit-scrollbar-thumb:hover{background:#ccc}}kbd.search-modal-key-hints{border-radius:0.25rem;border:1px solid rgba(0,0,0,0.6);box-shadow:0 2px 0 1px rgba(0,0,0,0.6);cursor:default;font-size:0.9rem;line-height:1.5;min-width:0.75rem;text-align:center;padding:0.1rem 0.3rem;position:relative;top:-1px}.search-min-width-50{min-width:50%}.search-min-height-100{min-height:100%}.search-modal-card-body{max-height:calc(100vh - 15rem)}.search-result-link{border-radius:0.7em;transition:all 300ms}.search-result-link:hover,.search-result-link:focus{background-color:rgba(0,128,128,0.1)}.search-result-link .property-search-result-badge,.search-result-link .search-filter{transition:all 300ms}.property-search-result-badge,.search-filter{padding:0.15em 0.5em;font-size:0.8em;font-style:italic;text-transform:none !important;line-height:1.5;color:#f5f5f5;background-color:rgba(51,65,85,0.501961);border-radius:0.6rem}.search-result-link:hover .property-search-result-badge,.search-result-link:hover .search-filter,.search-result-link:focus .property-search-result-badge,.search-result-link:focus .search-filter{color:#f1f5f9;background-color:#333}.search-filter{color:#333;background-color:#f5f5f5;transition:all 300ms}.search-filter:hover,.search-filter:focus{color:#333}.search-filter-selected{color:#f5f5f5;background-color:rgba(139,0,139,0.5)}.search-filter-selected:hover,.search-filter-selected:focus{color:#f5f5f5}.search-result-highlight{background-color:#ffdd57;color:black}.search-divider{border-bottom:1px solid #dbdbdb}.search-result-title{width:85%;color:#333}.search-result-code-title{font-size:0.875rem;font-family:"JuliaMono","SFMono-Regular","Menlo","Consolas","Liberation Mono","DejaVu Sans Mono",monospace}#search-modal .modal-card-body::-webkit-scrollbar,#search-modal .filter-tabs::-webkit-scrollbar{height:10px;width:10px;background-color:transparent}#search-modal .modal-card-body::-webkit-scrollbar-thumb,#search-modal .filter-tabs::-webkit-scrollbar-thumb{background-color:gray;border-radius:1rem}#search-modal .modal-card-body::-webkit-scrollbar-track,#search-modal .filter-tabs::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,0.6);background-color:transparent}.w-100{width:100%}.gap-2{gap:0.5rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.ansi span.sgr1{font-weight:bolder}.ansi span.sgr2{font-weight:lighter}.ansi span.sgr3{font-style:italic}.ansi span.sgr4{text-decoration:underline}.ansi span.sgr7{color:#fff;background-color:#222}.ansi span.sgr8{color:transparent}.ansi span.sgr8 span{color:transparent}.ansi span.sgr9{text-decoration:line-through}.ansi span.sgr30{color:#242424}.ansi span.sgr31{color:#a7201f}.ansi span.sgr32{color:#066f00}.ansi span.sgr33{color:#856b00}.ansi span.sgr34{color:#2149b0}.ansi span.sgr35{color:#7d4498}.ansi span.sgr36{color:#007989}.ansi span.sgr37{color:gray}.ansi span.sgr40{background-color:#242424}.ansi span.sgr41{background-color:#a7201f}.ansi span.sgr42{background-color:#066f00}.ansi span.sgr43{background-color:#856b00}.ansi span.sgr44{background-color:#2149b0}.ansi span.sgr45{background-color:#7d4498}.ansi span.sgr46{background-color:#007989}.ansi span.sgr47{background-color:gray}.ansi span.sgr90{color:#616161}.ansi span.sgr91{color:#cb3c33}.ansi span.sgr92{color:#0e8300}.ansi span.sgr93{color:#a98800}.ansi span.sgr94{color:#3c5dcd}.ansi span.sgr95{color:#9256af}.ansi span.sgr96{color:#008fa3}.ansi span.sgr97{color:#f5f5f5}.ansi span.sgr100{background-color:#616161}.ansi span.sgr101{background-color:#cb3c33}.ansi span.sgr102{background-color:#0e8300}.ansi span.sgr103{background-color:#a98800}.ansi span.sgr104{background-color:#3c5dcd}.ansi span.sgr105{background-color:#9256af}.ansi span.sgr106{background-color:#008fa3}.ansi span.sgr107{background-color:#f5f5f5}code.language-julia-repl>span.hljs-meta{color:#066f00;font-weight:bolder}/*! + Theme: Default + Description: Original highlight.js style + Author: (c) Ivan Sagalaev + Maintainer: @highlightjs/core-team + Website: https://highlightjs.org/ + License: see project LICENSE + Touched: 2021 +*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#F3F3F3;color:#444}.hljs-comment{color:#697070}.hljs-tag,.hljs-punctuation{color:#444a}.hljs-tag .hljs-name,.hljs-tag .hljs-attr{color:#444}.hljs-keyword,.hljs-attribute,.hljs-selector-tag,.hljs-meta .hljs-keyword,.hljs-doctag,.hljs-name{font-weight:bold}.hljs-type,.hljs-string,.hljs-number,.hljs-selector-id,.hljs-selector-class,.hljs-quote,.hljs-template-tag,.hljs-deletion{color:#880000}.hljs-title,.hljs-section{color:#880000;font-weight:bold}.hljs-regexp,.hljs-symbol,.hljs-variable,.hljs-template-variable,.hljs-link,.hljs-selector-attr,.hljs-operator,.hljs-selector-pseudo{color:#ab5656}.hljs-literal{color:#695}.hljs-built_in,.hljs-bullet,.hljs-code,.hljs-addition{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#38a}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:bold}.gap-4{gap:1rem} diff --git a/v0.9.12/assets/themeswap.js b/v0.9.12/assets/themeswap.js new file mode 100644 index 000000000..9f5eebe6a --- /dev/null +++ b/v0.9.12/assets/themeswap.js @@ -0,0 +1,84 @@ +// Small function to quickly swap out themes. Gets put into the tag.. +function set_theme_from_local_storage() { + // Initialize the theme to null, which means default + var theme = null; + // If the browser supports the localstorage and is not disabled then try to get the + // documenter theme + if (window.localStorage != null) { + // Get the user-picked theme from localStorage. May be `null`, which means the default + // theme. + theme = window.localStorage.getItem("documenter-theme"); + } + // Check if the users preference is for dark color scheme + var darkPreference = + window.matchMedia("(prefers-color-scheme: dark)").matches === true; + // Initialize a few variables for the loop: + // + // - active: will contain the index of the theme that should be active. Note that there + // is no guarantee that localStorage contains sane values. If `active` stays `null` + // we either could not find the theme or it is the default (primary) theme anyway. + // Either way, we then need to stick to the primary theme. + // + // - disabled: style sheets that should be disabled (i.e. all the theme style sheets + // that are not the currently active theme) + var active = null; + var disabled = []; + var primaryLightTheme = null; + var primaryDarkTheme = null; + for (var i = 0; i < document.styleSheets.length; i++) { + var ss = document.styleSheets[i]; + // The tag of each style sheet is expected to have a data-theme-name attribute + // which must contain the name of the theme. The names in localStorage much match this. + var themename = ss.ownerNode.getAttribute("data-theme-name"); + // attribute not set => non-theme stylesheet => ignore + if (themename === null) continue; + // To distinguish the default (primary) theme, it needs to have the data-theme-primary + // attribute set. + if (ss.ownerNode.getAttribute("data-theme-primary") !== null) { + primaryLightTheme = themename; + } + // Check if the theme is primary dark theme so that we could store its name in darkTheme + if (ss.ownerNode.getAttribute("data-theme-primary-dark") !== null) { + primaryDarkTheme = themename; + } + // If we find a matching theme (and it's not the default), we'll set active to non-null + if (themename === theme) active = i; + // Store the style sheets of inactive themes so that we could disable them + if (themename !== theme) disabled.push(ss); + } + var activeTheme = null; + if (active !== null) { + // If we did find an active theme, we'll (1) add the theme--$(theme) class to + document.getElementsByTagName("html")[0].className = "theme--" + theme; + activeTheme = theme; + } else { + // If we did _not_ find an active theme, then we need to fall back to the primary theme + // which can either be dark or light, depending on the user's OS preference. + var activeTheme = darkPreference ? primaryDarkTheme : primaryLightTheme; + // In case it somehow happens that the relevant primary theme was not found in the + // preceding loop, we abort without doing anything. + if (activeTheme === null) { + console.error("Unable to determine primary theme."); + return; + } + // When switching to the primary light theme, then we must not have a class name + // for the tag. That's only for non-primary or the primary dark theme. + if (darkPreference) { + document.getElementsByTagName("html")[0].className = + "theme--" + activeTheme; + } else { + document.getElementsByTagName("html")[0].className = ""; + } + } + for (var i = 0; i < document.styleSheets.length; i++) { + var ss = document.styleSheets[i]; + // The tag of each style sheet is expected to have a data-theme-name attribute + // which must contain the name of the theme. The names in localStorage much match this. + var themename = ss.ownerNode.getAttribute("data-theme-name"); + // attribute not set => non-theme stylesheet => ignore + if (themename === null) continue; + // we'll disable all the stylesheets, except for the active one + ss.disabled = !(themename == activeTheme); + } +} +set_theme_from_local_storage(); diff --git a/v0.9.12/assets/warner.js b/v0.9.12/assets/warner.js new file mode 100644 index 000000000..3f6f5d008 --- /dev/null +++ b/v0.9.12/assets/warner.js @@ -0,0 +1,52 @@ +function maybeAddWarning() { + // DOCUMENTER_NEWEST is defined in versions.js, DOCUMENTER_CURRENT_VERSION and DOCUMENTER_STABLE + // in siteinfo.js. + // If either of these are undefined something went horribly wrong, so we abort. + if ( + window.DOCUMENTER_NEWEST === undefined || + window.DOCUMENTER_CURRENT_VERSION === undefined || + window.DOCUMENTER_STABLE === undefined + ) { + return; + } + + // Current version is not a version number, so we can't tell if it's the newest version. Abort. + if (!/v(\d+\.)*\d+/.test(window.DOCUMENTER_CURRENT_VERSION)) { + return; + } + + // Current version is newest version, so no need to add a warning. + if (window.DOCUMENTER_NEWEST === window.DOCUMENTER_CURRENT_VERSION) { + return; + } + + // Add a noindex meta tag (unless one exists) so that search engines don't index this version of the docs. + if (document.body.querySelector('meta[name="robots"]') === null) { + const meta = document.createElement("meta"); + meta.name = "robots"; + meta.content = "noindex"; + + document.getElementsByTagName("head")[0].appendChild(meta); + } + + const div = document.createElement("div"); + div.classList.add("outdated-warning-overlay"); + const closer = document.createElement("button"); + closer.classList.add("outdated-warning-closer", "delete"); + closer.addEventListener("click", function () { + document.body.removeChild(div); + }); + const href = window.documenterBaseURL + "/../" + window.DOCUMENTER_STABLE; + div.innerHTML = + 'This documentation is not for the latest stable release, but for either the development version or an older release.
Click here to go to the documentation for the latest stable release.'; + div.appendChild(closer); + document.body.appendChild(div); +} + +if (document.readyState === "loading") { + document.addEventListener("DOMContentLoaded", maybeAddWarning); +} else { + maybeAddWarning(); +} diff --git a/v0.9.12/bench_intsize.png b/v0.9.12/bench_intsize.png new file mode 100644 index 000000000..a7161e08d Binary files /dev/null and b/v0.9.12/bench_intsize.png differ diff --git a/v0.9.12/bench_intsize_clifford.png b/v0.9.12/bench_intsize_clifford.png new file mode 100644 index 000000000..ce097f396 Binary files /dev/null and b/v0.9.12/bench_intsize_clifford.png differ diff --git a/v0.9.12/bench_threaded_apply.png b/v0.9.12/bench_threaded_apply.png new file mode 100644 index 000000000..0c8446348 Binary files /dev/null and b/v0.9.12/bench_threaded_apply.png differ diff --git a/v0.9.12/bench_threaded_apply_threadtime.png b/v0.9.12/bench_threaded_apply_threadtime.png new file mode 100644 index 000000000..31396d026 Binary files /dev/null and b/v0.9.12/bench_threaded_apply_threadtime.png differ diff --git a/v0.9.12/canonicalization/1c693e3d.png b/v0.9.12/canonicalization/1c693e3d.png new file mode 100644 index 000000000..3c0e40bd1 Binary files /dev/null and b/v0.9.12/canonicalization/1c693e3d.png differ diff --git a/v0.9.12/canonicalization/56cefa31.png b/v0.9.12/canonicalization/56cefa31.png new file mode 100644 index 000000000..dc5bcdf8e Binary files /dev/null and b/v0.9.12/canonicalization/56cefa31.png differ diff --git a/v0.9.12/canonicalization/6bff5d3d.png b/v0.9.12/canonicalization/6bff5d3d.png new file mode 100644 index 000000000..85dcc088d Binary files /dev/null and b/v0.9.12/canonicalization/6bff5d3d.png differ diff --git a/v0.9.12/canonicalization/b472d8a4.png b/v0.9.12/canonicalization/b472d8a4.png new file mode 100644 index 000000000..dc33de706 Binary files /dev/null and b/v0.9.12/canonicalization/b472d8a4.png differ diff --git a/v0.9.12/canonicalization/index.html b/v0.9.12/canonicalization/index.html new file mode 100644 index 000000000..72c45c6be --- /dev/null +++ b/v0.9.12/canonicalization/index.html @@ -0,0 +1,14 @@ + +Canonicalization · QuantumClifford.jl

Canonicalization operations

Different types of canonicalization operations are implemented. All of them are types of Gaussian elimination.

canonicalize!

First do elimination on all X components and only then perform elimination on the Z components. Based on (Garcia et al., 2012). It is used in logdot for inner products of stabilizer states.

The final tableaux, if square should look like the following

If the tableaux is shorter than a square, the diagonals might not reach all the way to the right.

using QuantumClifford, CairoMakie
+f=Figure()
+stabilizerplot_axis(f[1,1], canonicalize!(random_stabilizer(20,30)))
+f
Example block output

canonicalize_rref!

Cycle between elimination on X and Z for each qubit. Particularly useful for tracing out qubits. Based on (Audenaert and Plenio, 2005). For convenience reasons, the canonicalization starts from the bottom row, and you can specify as a second argument which columns to be canonicalized (useful for tracing out arbitrary qubits, e.g., in traceout!).

The tableau canonicalization is done in recursive steps, each one of which results in something akin to one of these three options

using QuantumClifford, CairoMakie
+f=Figure()
+stabilizerplot_axis(f[1,1], canonicalize_rref!(random_stabilizer(20,30),1:30)[1])
+f
Example block output

canonicalize_gott!

First do elimination on all X components and only then perform elimination on the Z components, but without touching the qubits that were eliminated during the X pass. Unlike other canonicalization operations, qubit columns are reordered, providing for a straight diagonal in each block. Particularly useful as certain blocks of the new created matrix are related to logical operations of the corresponding code, e.g. computing the logical X and Z operators of a MixedDestabilizer. Based on (Gottesman, 1997).

A canonicalized tableau would look like the following (the right-most block does not exist for square tableaux).

using QuantumClifford, CairoMakie
+f=Figure()
+stabilizerplot_axis(f[1,1], canonicalize_gott!(random_stabilizer(30))[1])
+f
Example block output

canonicalize_clip!

Convert to the "clipped" gauge of a stabilizer state resulting in a "river" of non-identity operators around the diagonal.

using QuantumClifford, CairoMakie
+f=Figure()
+stabilizerplot_axis(f[1,1], canonicalize_clip!(random_stabilizer(30)))
+f
Example block output

The properties of the clipped gauge are:

  1. Each qubit is the left/right "endpoint" of exactly two stabilizer rows.
  2. For the same qubit the two endpoints are always different Pauli operators.

This canonicalization is used to derive the bigram a stabilizer state, which is also related to entanglement entropy in the state.

Introduced in (Nahum et al., 2017), with a more detailed explanation of the algorithm in Appendix A of (Li et al., 2019).

diff --git a/v0.9.12/canonicalize.png b/v0.9.12/canonicalize.png new file mode 100644 index 000000000..9aba7ab98 Binary files /dev/null and b/v0.9.12/canonicalize.png differ diff --git a/v0.9.12/canonicalize.tex b/v0.9.12/canonicalize.tex new file mode 100644 index 000000000..8fb0d5f2e --- /dev/null +++ b/v0.9.12/canonicalize.tex @@ -0,0 +1,17 @@ +\documentclass[]{standalone} +\usepackage{adjustbox} +\usepackage{amsmath} +\usepackage{graphicx} +\begin{document} +$\left[ +\begin{array}{ccc} + \ddots & ^{\scriptscriptstyle \text{any Pauli}} & \\ + & {\rotatebox[origin=c]{-35}{$\scriptscriptstyle XY\text{ diagonal}$}} & \\ + & ^{\scriptscriptstyle I\text{s or }Z\text{s}} & \ddots \\ + \hline + \ddots & ^{\scriptscriptstyle I\text{s or }Z\text{s}} & \\ + & {\rotatebox[origin=c]{-35}{$\scriptscriptstyle \ \ Z\text{ diagonal}$}} & \\ + & ^{\scriptscriptstyle I\text{s only}} & \ddots +\end{array} +\right]$ +\end{document} \ No newline at end of file diff --git a/v0.9.12/canonicalize_gott.png b/v0.9.12/canonicalize_gott.png new file mode 100644 index 000000000..5e3a92bfa Binary files /dev/null and b/v0.9.12/canonicalize_gott.png differ diff --git a/v0.9.12/canonicalize_gott.tex b/v0.9.12/canonicalize_gott.tex new file mode 100644 index 000000000..d117c573c --- /dev/null +++ b/v0.9.12/canonicalize_gott.tex @@ -0,0 +1,16 @@ +\documentclass[]{standalone} +\usepackage{adjustbox} +\usepackage{amsmath} +\usepackage{graphicx} +\begin{document} +$\left[ +\begin{array}{ccc|ccc|c} + \ddots & ^{\scriptscriptstyle I\text{s or }Z\text{s}} &&&&& \\ + & {\rotatebox[origin=c]{-35}{$\scriptscriptstyle XY\text{ diagonal}$}} &&& ^{\scriptscriptstyle I\text{s or }X\text{s}} && \\ + & & \ddots &&&&{\scriptscriptstyle \text{any}} \\ + &&&\ddots & &&^{\scriptscriptstyle \text{Pauli}} \\ + & ^{\scriptscriptstyle I\text{s or }Z\text{s}} &&& {\rotatebox[origin=c]{-35}{$\scriptscriptstyle \ \ Z\text{ diagonal}$}} && \\ + &&&& ^{\scriptscriptstyle I\text{s only}} & \ddots & +\end{array} +\right]$ +\end{document} \ No newline at end of file diff --git a/v0.9.12/canonicalize_rref.png b/v0.9.12/canonicalize_rref.png new file mode 100644 index 000000000..e5b0093bf Binary files /dev/null and b/v0.9.12/canonicalize_rref.png differ diff --git a/v0.9.12/canonicalize_rref.tex b/v0.9.12/canonicalize_rref.tex new file mode 100644 index 000000000..735b6d9a5 --- /dev/null +++ b/v0.9.12/canonicalize_rref.tex @@ -0,0 +1,33 @@ +\documentclass[]{standalone} +\usepackage{adjustbox} +\usepackage{amsmath} +\usepackage{graphicx} +\begin{document} +$ +\left[ +\begin{array}{c|c} +I & \\ +\vdots & \mbox{RREF}' \\ +I & +\end{array} +\right],\quad +\left[ +\begin{array}{c|c} +I & \\ +\vdots & \mbox{RREF}' \\ +I & \\ \hline +\sigma & * \ldots * +\end{array} +\right] +\mbox{ and } +\left[ +\begin{array}{c|c} +I & \\ +\vdots & \mbox{RREF}' \\ +I & \\ \hline +\sigma_1 & * \ldots * \\ +\sigma_2 & * \ldots * \\ +\end{array} +\right] +$ +\end{document} \ No newline at end of file diff --git a/v0.9.12/commonstates/index.html b/v0.9.12/commonstates/index.html new file mode 100644 index 000000000..a7d254890 --- /dev/null +++ b/v0.9.12/commonstates/index.html @@ -0,0 +1,75 @@ + +Useful States · QuantumClifford.jl

Useful States and Operators

States

Stabilizer states can be represented with the Stabilizer, Destabilizer, MixedStabilizer, and MixedDestabilizer tableau data structures. You probably want to use MixedDestabilizer which supports the widest set of operations.

Moreover, a MixedDestabilizer can be stored inside a Register together with a set of classical bits in which measurement results can be written.

Below are convenience constructors for common types of states and operators, already implemented in this library.

Pauli Operators

Single qubit PauliOperator is implemented in [single_z] and [single_x].

julia> single_z(4,2)
++ _Z__
+
+julia> single_x(4,3)
++ __X_

All identity operators use zero.

julia> zero(PauliOperator, 3)
++ ___
+
+julia> zero(P"XYZXYZ")
++ ______

Random Pauli operators are implemented as well (with or without a random phase).

julia> using StableRNGs; rng = StableRNG(42);
+
+julia> random_pauli(rng, 4)
++ ZYY_
+
+julia> random_pauli(rng, 4; nophase=false)
+- YZ_X

Stabilizer States

An all-identity stabilizer can be created with zero.

julia> zero(Stabilizer, 3)
++ ___
++ ___
++ ___
+
+julia> zero(Stabilizer, 2, 3)
++ ___
++ ___
+
+julia> zero(S"XIZ
+              YZX")
++ ___
++ ___

Diagonal stabilizers in different bases are available as well, through one.

julia> one(Stabilizer, 3)
++ Z__
++ _Z_
++ __Z
+
+julia> one(Stabilizer, 3; basis=:Y)
++ Y__
++ _Y_
++ __Y
+
+julia> one(S"XX
+             ZZ")
++ Z_
++ _Z

A random stabilizer (or destabilizers or Clifford operators) can be created as well. We use the algorithm described in (Bravyi and Maslov, 2021).

julia> random_stabilizer(rng, 2,5)
++ YZXZZ
+- XZYYY

Mixed States

Similarly, one can create a diagonal mixed state.

julia> one(MixedDestabilizer, 2, 3)
+𝒟ℯ𝓈𝓉𝒶𝒷
++ X__
++ _X_
+𝒳ₗ━━━
++ __X
+𝒮𝓉𝒶𝒷━
++ Z__
++ _Z_
+𝒵ₗ━━━
++ __Z

Enumerating all Clifford Operations

The algorithm from (Koenig and Smolin, 2014) can be used to enumerate all Clifford operations on a given number of qubits through enumerate_cliffords. Or one can use random_clifford, random_stabilizer to directly sample from that set.

julia> length(enumerate_cliffords(1))
+6
+
+julia> length(enumerate_cliffords(2))
+720

To also enumerate possible phases, you can use enumerate_phases.

julia> length(collect(enumerate_phases(tCNOT)))
+16
+
+julia> length(collect(enumerate_phases(enumerate_cliffords(2))))
+11520

Common entangled states

Bell states and GHZ states have convenience constructors:

julia> bell()
++ XX
++ ZZ
+
+julia> bell(2)
++ XX__
++ ZZ__
++ __XX
++ __ZZ
+
+julia> ghz(4)
++ XXXX
++ ZZ__
++ _ZZ_
++ __ZZ
diff --git a/v0.9.12/datastructures/index.html b/v0.9.12/datastructures/index.html new file mode 100644 index 000000000..e73d5ede5 --- /dev/null +++ b/v0.9.12/datastructures/index.html @@ -0,0 +1,2 @@ + +Datastructure Choice · QuantumClifford.jl

Data Structures Options

Choosing Appropriate Tableau Data Structure

There are four different data structures used to represent stabilizer states. If you will never need projective measurements you probably would want to use Stabilizer. If you require projective measurements, but only on pure states, Destabilizer should be the appropriate data structure. If mixed stabilizer states are involved, MixedStabilizer would be necessary.

Stabilizer is simply a list of Pauli operators in a tableau form. As a data structure it does not enforce the requirements for a pure stabilizer state (the rows of the tableau do not necessarily commute, nor are they forced to be Hermitian; the tableau might be underdetermined, redundant, or contradictory). It is up to the user to ensure that the initial values in the tableau are meaningful and consistent.

canonicalize!, project!, and generate! can accept an under determined (mixed state) Stabilizer instance and operate correctly. canonicalize! can also accept a redundant Stabilizer (i.e. not all rows are independent), leaving as many identity rows at the bottom of the canonicalized tableau as the number of redundant stabilizers in the initial tableau.

canonicalize! takes $\mathcal{O}(n^3)$ steps. generate! expects a canonicalized input and then takes $\mathcal{O}(n^2)$ steps. project! takes $\mathcal{O}(n^3)$ for projecting on commuting operators due to the need to call canonicalize! and generate!. If the projections is on an anticommuting operator (or if keep_result=false) then it takes $\mathcal{O}(n^2)$ steps.

MixedStabilizer provides explicit tracking of the rank of the mixed state and works properly when the projection is on a commuting operator not in the stabilizer (see table below for details). Otherwise it has the same performance as Stabilizer.

The canonicalization can be made unnecessary if we track the destabilizer generators. There are two data structures capable of that.

Destabilizer stores both the destabilizer and stabilizer states. project! called on it never requires a stabilizer canonicalization, hence it runs in $\mathcal{O}(n^2)$. However, project! will raise an exception if you try to project on a commuting state that is not in the stabilizer as that would be an expensive $\mathcal{O}(n^3)$ operation.

MixedDestabilizer tracks both the destabilizer operators and the logical operators in addition to the stabilizer generators. It does not require canonicalization for measurements and its project! operations always takes $\mathcal{O}(n^2)$.

For the operation _, anticom_index, result = project!(...) we have the following behavior:

projectionStabilizerMixedStabilizerDestabilizerMixedDestabilizer
on anticommuting operator anticom_index>0 result===nothingcorrect result in $\mathcal{O}(n^2)$ stepssame as Stabilizersame as Stabilizersame as Stabilizer
on commuting operator in the stabilizer anticom_index==0 result!==nothing$\mathcal{O}(n^3)$; or $\mathcal{O}(n^2)$ if keep_result=false$\mathcal{O}(n^3)$$\mathcal{O}(n^2)$ if the state is pure, throws exception otherwise$\mathcal{O}(n^2)$
on commuting operator out of the stabilizer[1] anticom_index==rank result===nothing$\mathcal{O}(n^3)$, but the user needs to manually include the new operator to the stabilizer; or $\mathcal{O}(n^2)$ if keep_result=false but then result indistinguishable from cell above and anticom_index==0$\mathcal{O}(n^3)$ and rank goes up by onenot applicable if the state is pure, throws exception otherwise$\mathcal{O}(n^2)$ and rank goes up by one

Notice the results when the projection operator commutes with the state but is not generated by the stabilizers of the state (the last row of the table). In that case we have _, anticom_index, result = project!(...) where both anticom_index==rank and result===nothing, with rank being the new rank after projection, one more than the number of rows in the tableau before the measurement.

Bit Packing in Integers and Array Order

We do not use boolean arrays to store information about the qubits as this would be wasteful (7 out of 8 bits in the boolean would be unused). Instead, we use all 8 qubits in a byte and perform bitwise logical operations as necessary. Implementation details of the object in RAM can matter for performance. The library permits any of the standard UInt types to be used for packing the bits, and larger UInt types (like UInt64) are usually faster as they permit working on 64 qubits at a time (instead of 1 if we used a boolean, or 8 if we used a byte).

Moreover, how a tableau is stored in memory can affect performance, as a row-major storage usually permits more efficient use of the CPU cache (for the particular algorithms we use).

Both of these parameters are benchmarked (testing the application of a Pauli operator, which is an $\mathcal{O}(n^2)$ operation; and testing the canonicalization of a Stabilizer, which is an $\mathcal{O}(n^3)$ operation). Row-major UInt64 is the best performing and it is used by default in this library.

  • 1This can occur only if the state being projected is mixed. Both Stabilizer and Destabilizer can be used for mixed states by simply providing fewer stabilizer generators than qubits at initialization. This can be useful for low-level code that tries to avoid the extra memory cost of using MixedStabilizer and MixedDestabilizer but should be avoided otherwise. project! works correctly or raises an explicit warning on all 4 data structures.
diff --git a/v0.9.12/ecc_example_sim/86fcd35a.png b/v0.9.12/ecc_example_sim/86fcd35a.png new file mode 100644 index 000000000..1e4cdc9f3 Binary files /dev/null and b/v0.9.12/ecc_example_sim/86fcd35a.png differ diff --git a/v0.9.12/ecc_example_sim/882783a8.png b/v0.9.12/ecc_example_sim/882783a8.png new file mode 100644 index 000000000..f6912d902 Binary files /dev/null and b/v0.9.12/ecc_example_sim/882783a8.png differ diff --git a/v0.9.12/ecc_example_sim/index.html b/v0.9.12/ecc_example_sim/index.html new file mode 100644 index 000000000..f3055daae --- /dev/null +++ b/v0.9.12/ecc_example_sim/index.html @@ -0,0 +1,26 @@ + +ECC example · QuantumClifford.jl

ECC example with Pauli Frames

The documentation is incomplete

Waiting for a better documentation than the small example below. Check out also the page on ECC performance evaluators

Consider Steane 7-qubit code:

using QuantumClifford
+using QuantumClifford.ECC: Steane7, naive_syndrome_circuit, naive_encoding_circuit, parity_checks, code_s, code_n
+using Quantikz
+
+code = Steane7()
+H = parity_checks(code)
+ ___XXXX
++ _XX__XX
++ X_X_X_X
++ ___ZZZZ
++ _ZZ__ZZ
++ Z_Z_Z_Z

... and the corresponding encoding circuit

ecirc = naive_encoding_circuit(code)
Example block output

... and the corresponding syndrome measurement circuit (the non-fault tolerant one)

scirc, _ = naive_syndrome_circuit(code)
(QuantumClifford.AbstractOperation[sXCX(4,8), sXCX(5,8), sXCX(6,8), sXCX(7,8), sMRZ(8, 1), sXCX(2,9), sXCX(3,9), sXCX(6,9), sXCX(7,9), sMRZ(9, 2)  …  sCNOT(2,12), sCNOT(3,12), sCNOT(6,12), sCNOT(7,12), sMRZ(12, 5), sCNOT(1,13), sCNOT(3,13), sCNOT(5,13), sCNOT(7,13), sMRZ(13, 6)], 6, 1:6)

The most straightforward way to start sampling syndromes is to set up a table of Pauli frames.

circuit = [ecirc..., scirc...]
+nframes = 4
+frames = pftrajectories(circuit; trajectories=nframes) # run the sims
+pfmeasurements(frames)                                 # extract the measurements
4×6 Matrix{Bool}:
+ 0  0  0  0  0  0
+ 0  0  0  0  0  0
+ 0  0  0  0  0  0
+ 0  0  0  0  0  0

The pftrajectories function is multithreaded. If you want more low-level control over these Pauli frame simulations, check out the PauliFrame structure, the other methods of pftrajectories, and the circuit compactifaction function compactify_circuit.

If you want to model Pauli errors, use:

errprob = 0.1
+errors = [PauliError(i,errprob) for i in 1:code_n(code)]
+fullcircuit = [ecirc..., errors..., scirc...]
Example block output

And running this noisy simulation:

frames = pftrajectories(fullcircuit; trajectories=nframes)
+pfmeasurements(frames)
4×6 Matrix{Bool}:
+ 0  0  0  0  0  0
+ 0  0  0  0  0  0
+ 0  0  0  0  0  0
+ 0  0  0  0  0  0
diff --git a/v0.9.12/ghz4graph.png b/v0.9.12/ghz4graph.png new file mode 100644 index 000000000..ad3b87cc8 Binary files /dev/null and b/v0.9.12/ghz4graph.png differ diff --git a/v0.9.12/graphs/index.html b/v0.9.12/graphs/index.html new file mode 100644 index 000000000..348da329e --- /dev/null +++ b/v0.9.12/graphs/index.html @@ -0,0 +1,46 @@ + +Graph States · QuantumClifford.jl

Graph States

The `graphstate` API is not considered stable

graphstate returns a lot of information about encoding a given stabilizer state in a graph. A different API is being designed that streamlines the work with graph states.

Conversion to and from graph states is possible.

Consider a GHZ state:

ghz(4)
+ XXXX
++ ZZ__
++ _ZZ_
++ __ZZ

It can be converted to a graph state with graphstate

graphstate(ghz(4))[1]

Notice that the initial GHZ state was not in the typical graph state form. We can see that explicitly by converting back and forth between the two forms:

julia> using Graphs, QuantumClifford
+
+julia> ghz(4)
++ XXXX
++ ZZ__
++ _ZZ_
++ __ZZ
+
+julia> Stabilizer(Graph(ghz(4)))
++ XZZZ
++ ZX__
++ Z_X_
++ Z__X

There is a set of single-qubit operations that can convert any stabilizer tableau into a state representable as a graph. These transformations are performed implicitly by the Graph constructor when converting from a Stabilizer. If you need the explicit transformation you can use the graphstate function that specifies which qubits require a Hadamard, Inverse Phase, or Phase Flip gate. The graph_gatesequence or graph_gate helper functions can be used to generate the exact operations:

julia> s = ghz(4)
++ XXXX
++ ZZ__
++ _ZZ_
++ __ZZ
+
+julia> g, h_idx, ip_idx, z_idx = graphstate(s);
+
+julia> gate = graph_gate(h_idx, ip_idx, z_idx, nqubits(s))
+X₁ ⟼ + X___
+X₂ ⟼ + _Z__
+X₃ ⟼ + __Z_
+X₄ ⟼ + ___Z
+Z₁ ⟼ + Z___
+Z₂ ⟼ + _X__
+Z₃ ⟼ + __X_
+Z₄ ⟼ + ___X
+
+julia> canonicalize!(apply!(s,gate)) == canonicalize!(Stabilizer(g))
+true

These converters also provides for a convenient way to create graph and cluster states, by using the helper constructors provided in Graphs.jl.

julia> Stabilizer(grid([4,1])) # Linear cluster state
++ XZ__
++ ZXZ_
++ _ZXZ
++ __ZX
+
+julia> Stabilizer(grid([2,2])) # Small 2D cluster state
++ XZZ_
++ ZX_Z
++ Z_XZ
++ _ZZX

Graphs are represented with the Graphs.jl package and plotting can be done both in Plots.jl and Makie.jl (with GraphMakie).

diff --git a/v0.9.12/index.html b/v0.9.12/index.html new file mode 100644 index 000000000..83364c739 --- /dev/null +++ b/v0.9.12/index.html @@ -0,0 +1,18 @@ + +QuantumClifford.jl · QuantumClifford.jl

QuantumClifford.jl

QuantumClifford.jl is a Julia library for simulation of Clifford circuits, which are a subclass of quantum circuits that can be efficiently simulated on a classical computer.

This library uses the tableaux formalism[1] with the destabilizer improvements[2]. Pauli frames are supported for faster repeated simulation of noisy circuits. Various symbolic and algebraic tools for manipulating, converting, and visualizing states and circuits are also implemented.

The library consists of two main parts: Tools for working with the algebra of Stabilizer Tableaux and tools specifically for efficient Circuit Simulation.

Stabilizer Tableau Algebra

The Stabilizer Tableau Algebra component of QuantumClifford.jl efficiently handles pure and mixed stabilizer states of thousands of qubits, along with support for sparse or dense Clifford operations acting upon them. It provides operations such as canonicalization, projection, generation , and partial traces. The code is vectorized and multithreaded, offering fast, in-place, and allocation-free implementations. Tools for conversion to graph states and for visualization of tableaux are available.

See the Stabilizer Tableau Algebra manual or the curated list of useful functions.

Example Usage

julia> using QuantumClifford
+
+julia> P"X" * P"Z"
+-iY
+
+julia> P"X" ⊗ P"Z"
++ XZ
+
+julia> S"-XX
+         +ZZ"
+- XX
++ ZZ
+
+julia> tCNOT * S"-XX
+                 +ZZ"
+- X_
++ _Z

Circuit Simulation

The circuit simulation component of QuantumClifford.jl enables Monte Carlo (or symbolic) simulations of noisy Clifford circuits. It provides three main simulation methods: mctrajectories, pftrajectories, and petrajectories. These methods offer varying levels of efficiency, accuracy, and insight.

Monte Carlo Simulations with Stabilizer Tableaux (mctrajectories)

The mctrajectories method runs Monte Carlo simulations using a Stabilizer tableau representation for the quantum states.

Monte Carlo Simulations with Pauli Frames (pftrajectories)

The pftrajectories method runs Monte Carlo simulations of Pauli frames over a single reference Stabilizer tableau simulation. This approach is much more efficient but supports a smaller class of circuits.

Symbolic Depth-First Traversal of Quantum Trajectories (petrajectories)

The petrajectories method performs a depth-first traversal of the most probable quantum trajectories, providing a fixed-order approximation of the circuit's behavior. This approach gives symbolic expressions for various figures of merit instead of just a numeric value.

diff --git a/v0.9.12/mixed/index.html b/v0.9.12/mixed/index.html new file mode 100644 index 000000000..15d5f8f61 --- /dev/null +++ b/v0.9.12/mixed/index.html @@ -0,0 +1,60 @@ + +Mixed States · QuantumClifford.jl

Mixed Stabilizer States

The Stabilizer and Destabilizer have some support for mixed states (by being initialized with an incomplete list of stabilizer generators), but for most purposes one would use the Mixed* data structures.

Mixed stabilizer states are implemented with MixedStabilizer and MixedDestabilizer, the latter of which is the preferred data structure for most tasks as it is much faster by virtue of tracking the destabilizer generators.

julia> s = S"XXX
+             IZZ";
+
+julia> Destabilizer(s)
+𝒟ℯ𝓈𝓉𝒶𝒷
++ Z__
++ _X_
+𝒮𝓉𝒶𝒷━
++ XXX
++ _ZZ

Unlike Destabilizer, MixedDestabilizer also tracks the logical operation generators.

julia> m = MixedDestabilizer(s)
+𝒟ℯ𝓈𝓉𝒶𝒷
++ Z__
++ _X_
+𝒳ₗ━━━
++ _XX
+𝒮𝓉𝒶𝒷━
++ XXX
++ _ZZ
+𝒵ₗ━━━
++ Z_Z
+
+julia> stabilizerview(m)
++ XXX
++ _ZZ
+
+julia> destabilizerview(m)
++ Z__
++ _X_
+
+julia> logicalxview(m)
++ _XX
+
+julia> logicalzview(m)
++ Z_Z

Gottesman Canonicalization

To obtain the logical operators we perform a different type of canonicalization, described in Gottesman's thesis and implemented in canonicalize_gott!. Unlike canonicalize! which uses only row operations, canonicalize_gott! performs column swaps as well. MixedDestabilizer undoes those swaps by default when instantiated, but that behavior can be turned off, if you prefer to work with the canonicalized tableau.

julia> s = S"XXX
+             ZIZ";
+
+julia> MixedDestabilizer(s)
+𝒟ℯ𝓈𝓉𝒶𝒷
++ Z__
++ __X
+𝒳ₗ━━━
++ _X_
+𝒮𝓉𝒶𝒷━
++ XXX
++ Z_Z
+𝒵ₗ━━━
++ ZZ_
+
+julia> MixedDestabilizer(s; undoperm=false)
+𝒟ℯ𝓈𝓉𝒶𝒷
++ Z__
++ _X_
+𝒳ₗ━━━
++ __X
+𝒮𝓉𝒶𝒷━
++ XXX
++ ZZ_
+𝒵ₗ━━━
++ Z_Z

Destabilizer and MixedStabilizer do not use any column swaps on instantiation as they do not track the logical operators.

diff --git a/v0.9.12/noise/index.html b/v0.9.12/noise/index.html new file mode 100644 index 000000000..3154fea7d --- /dev/null +++ b/v0.9.12/noise/index.html @@ -0,0 +1,2 @@ + +Noise Processes · QuantumClifford.jl
diff --git a/v0.9.12/noisycircuits/index.html b/v0.9.12/noisycircuits/index.html new file mode 100644 index 000000000..2e8db0c75 --- /dev/null +++ b/v0.9.12/noisycircuits/index.html @@ -0,0 +1,2 @@ + +Simulation of Noisy Circuits · QuantumClifford.jl

Simulation of Noisy Clifford Circuits

Unstable

This is unfinished experimental functionality that will change significantly.

We have experimental support for simulation of noisy Clifford circuits which can be imported with using QuantumClifford.Experimental.NoisyCircuits.

Both Monte Carlo and Perturbative Expansion approaches are supported. When performing a perturbative expansion in the noise parameter, the expansion can optionally be performed symbolically, to arbitrary high orders.

Multiple notebooks with examples are also available. For instance, see this tutorial on entanglement purification for many examples.

diff --git a/v0.9.12/noisycircuits_API/index.html b/v0.9.12/noisycircuits_API/index.html new file mode 100644 index 000000000..7f9dfc5d1 --- /dev/null +++ b/v0.9.12/noisycircuits_API/index.html @@ -0,0 +1,2 @@ + +API · QuantumClifford.jl

Full API (autogenerated)

Unstable

This is experimental functionality with an unstable API.

diff --git a/v0.9.12/noisycircuits_mc/index.html b/v0.9.12/noisycircuits_mc/index.html new file mode 100644 index 000000000..4e3d2eb27 --- /dev/null +++ b/v0.9.12/noisycircuits_mc/index.html @@ -0,0 +1,21 @@ + +Monte Carlo · QuantumClifford.jl

Monte Carlo simulations of noisy Clifford circuits

Unstable

This is experimental functionality with an unstable API.

Import with using QuantumClifford.Experimental.NoisyCircuits.

This module enables the simulation of noisy Clifford circuits through a Monte Carlo method where the same circuit is evaluated multiple times with random errors interspersed through it as prescribed by a given error model.

Below is an example of a purification circuit. We first prepare the circuit we desire to use, including a noise model. Quantikz.jl was is used to visualize the circuit.

good_bell_state = S"XX
+                    ZZ"
+initial_state = MixedDestabilizer(good_bell_state⊗good_bell_state)
+
+g1 = sCNOT(1,3) # CNOT between qubit 1 and qubit 3 (both with Alice)
+g2 = sCNOT(2,4) # CNOT between qubit 2 and qubit 4 (both with Bob)
+m = BellMeasurement([sMX(3),sMX(4)]) # Bell measurement on qubit 3 and 4
+v = VerifyOp(good_bell_state,[1,2]) # Verify that qubit 1 and 2 indeed form a good Bell pair
+epsilon = 0.01 # The error rate
+n = NoiseOpAll(UnbiasedUncorrelatedNoise(epsilon))
+
+# This circuit performs a depolarization at rate `epsilon` to all qubits,
+# then bilater CNOT operations
+# then a Bell measurement
+# followed by checking whether the final result indeed corresponds to the correct Bell pair.
+circuit = [n,g1,g2,m,v]
Example block output

And we can run a Monte Carlo simulation of that circuit with mctrajectories.

mctrajectories(initial_state, circuit, trajectories=500)
Dict{CircuitStatus, Float64} with 4 entries:
+  continue:CircuitStatus(0)      => 0.0
+  true_success:CircuitStatus(1)  => 487.0
+  false_success:CircuitStatus(2) => 9.0
+  failure:CircuitStatus(3)       => 4.0

For more examples, see the notebook comparing the Monte Carlo and Perturbative method or this tutorial on entanglement purification for many examples.

Interface for custom operations

If you want to create a custom gate type (e.g. calling it Operation), you need to definite the following methods.

applywstatus!(s::T, g::Operation)::Tuple{T,Symbol} where T is a tableaux type like Stabilizer or a Register. The Symbol is the status of the operation. Predefined statuses are kept in the registered_statuses list, but you can add more. Be sure to expand this list if you want the trajectory simulators using your custom statuses to output all trajectories.

There is also applynoise! which is convenient wait to create a noise model that can then be plugged into the NoisyGate struct, letting you reuse the predefined perfect gates and measurements. However, you can also just make up your own noise operator simply by implementing applywstatus! for it.

You can also consult the list of implemented operators.

diff --git a/v0.9.12/noisycircuits_ops/index.html b/v0.9.12/noisycircuits_ops/index.html new file mode 100644 index 000000000..1f8c70022 --- /dev/null +++ b/v0.9.12/noisycircuits_ops/index.html @@ -0,0 +1,13 @@ + +Circuit Operations · QuantumClifford.jl

Operators in Circuit Simulations

Unstable

This is experimental functionality with an unstable API.

Import with using QuantumClifford.Experimental.NoisyCircuits.

Too see a condensed list of all operations check out the API docs.

Unitary Gates

We distinguish between symbolic gates like sCNOT that have specialized (fast) apply! methods (usually just for single and two qubit gates) and general tableau representation of gates like CliffordOperator that can represent any multi-qubit gate.

Predefined unitary gates are available, like sCNOT, sHadamard, etc.

[sCNOT(2,4),sHadamard(2),sCPHASE(1,3),sSWAP(2,4)]
Example block output

Any arbitrary tableaux can be used as a gate too.

They can be specified by giving a Clifford operator tableaux and the indices on which it acts (particularly useful for gates acting on a small part of a circuit):

SparseGate(tCNOT, [2,4])
Example block output

The Clifford operator tableaux can be completely arbitrary.

SparseGate(random_clifford(3), [2,4,5])
Example block output

If the Clifford operator acts on all qubits, we do not need to specify indices, just use the operator.

Noisy Gates

Each gate can be followed by noise applied to the qubits on which it has acted. This is done by wrapping the given gate into a NoisyGate

ε = 0.03 # X/Y/Z error probability
+noise = UnbiasedUncorrelatedNoise(ε)
+noisy_gate = NoisyGate(SparseGate(tCNOT, [2,4]), noise)
Example block output

In circuit diagrams the noise is not depicted, but after each application of the gate defined in noisy_gate, a noise operator will also be applied. The example above is of Pauli Depolarization implemented by UnbiasedUncorrelatedNoise.

One can also apply only the noise operator by using NoiseOp which acts only on specified qubits. Or alternatively, one can use NoiseOpAll in order to apply noise to all qubits.

[NoiseOp(noise, [4,5]), NoiseOpAll(noise)]
Example block output

Coincidence Measurements

Global parity measurements involving single-qubit projections and classical communication are implemented with BellMeasurement. One needs to specify the axes of measurement and the qubits being measured. If the parity is trivial, the circuit continues, if the parity is non-trivial, the circuit ends and reports a detected failure. This operator is frequently used in the simulation of entanglement purification.

BellMeasurement([sMX(1), sMY(3), sMZ(4)])
Example block output

There is also NoisyBellMeasurement that takes the bit-flip probability of a single-qubit measurement as a third argument.

Stabilizer Measurements

A measurement over one or more qubits can also be performed, e.g., a direct stabilizer measurement on multiple qubits without the use of ancillary qubits. When applied to multiple qubits, this differs from BellMeasurement as it performs a single projection, unlike BellMeasurement which performs a separate projection for every single qubit involved. This measurement is implemented in PauliMeasurement which requires a Pauli operator on which to project and the index of the classical bit in which to store the result. Alternatively, there are sMX, sMZ, sMY if you are measuring a single qubit.

[PauliMeasurement(P"XYZ", 1), sMZ(2, 2)]
Example block output

TODO: SparseMeasurement, NoisyMeasurement

Verification Operations

At the end of many circuits one might want to check whether they performed correctly. The VerifyOp operation corresponds to an unphysical perfect tomographic operation, checking whether the state of the qubits at the given indices is indeed what is expected. If it is, the operation reports a success, otherwise it reports an undetected error.

desired_state = random_stabilizer(5)
+qubit_indices = [1,2,3,4,7]
+VerifyOp(desired_state, qubit_indices)
Example block output

Reset Operations

The Reset operations lets you trace out the specified qubits and set their state to a specific tableau.

new_state = random_stabilizer(3)
+qubit_indices = [1,2,3]
+Reset(new_state, qubit_indices)
Example block output

It can be done anywhere in a circuit, not just at the beginning.

Gates Conditioned on Classical Bits

ConditionalGate is a conditional gate that performs one of two provided gates, depending on the value of a given classical bit.

DecisionGate is a conditional gate that performs one of the supplied gates, depending on the output of decisionfunction applied to the entire classical bit register.

gate1 = SparseGate(tCNOT,   [1,2])
+gate2 = sCPHASE(1,2)
+gate3 = SparseGate(tSWAP,   [1,3])
+cg = ConditionalGate(gate1, gate2, 2)
+dg = DecisionGate([gate1,gate2,gate3], bit_register->1) # it will always perform gate1
+[sMX(4,1), sMZ(5,2), cg, dg]
Example block output

TODO: Split ConditionalGate into quantum conditional and classical conditional

diff --git a/v0.9.12/noisycircuits_perturb/index.html b/v0.9.12/noisycircuits_perturb/index.html new file mode 100644 index 000000000..f6ae8a521 --- /dev/null +++ b/v0.9.12/noisycircuits_perturb/index.html @@ -0,0 +1,23 @@ + +Perturbative Expansions · QuantumClifford.jl

Perturbative expansions for simulating noisy Clifford circuits

Unstable

This is experimental functionality with an unstable API.

Import with using QuantumClifford.Experimental.NoisyCircuits.

This module enables the simulation of noisy Clifford circuits through a perturbative expansion in the noise parameter (assuming the noise is small). Instead of simulating many Monte Carlo trajectories, only the leading order trajectories are exhaustively enumerated and simulated.

Here is an example of a purification circuit (the same circuit seen in the Monte Carlo example)

good_bell_state = S"XX
+                    ZZ"
+canonicalize_rref!(good_bell_state)
+initial_state = MixedDestabilizer(good_bell_state⊗good_bell_state)
+
+g1 = sCNOT(1,3) # CNOT between qubit 1 and qubit 3 (both with Alice)
+g2 = sCNOT(2,4) # CNOT between qubit 2 and qubit 4 (both with Bob)
+m = BellMeasurement([sMX(3),sMX(4)]) # Bell measurement on qubit 3 and 4
+v = VerifyOp(good_bell_state,[1,2]) # Verify that qubit 1 and 2 indeed form a good Bell pair
+epsilon = 0.01 # The error rate
+n = NoiseOpAll(UnbiasedUncorrelatedNoise(epsilon))
+
+# This circuit performs a depolarization at rate `epsilon` to all qubits,
+# then bilater CNOT operations
+# then a Bell measurement
+# followed by checking whether the final result indeed corresponds to the correct Bell pair.
+circuit = [n,g1,g2,m,v]
+
+petrajectories(initial_state, circuit)
Dict{CircuitStatus, Float64} with 3 entries:
+  true_success:CircuitStatus(1)  => 0.967065
+  false_success:CircuitStatus(2) => 0.019406
+  failure:CircuitStatus(3)       => 0.0129373

For more examples, see the notebook comparing the Monte Carlo and Perturbative method or this tutorial on entanglement purification.

Symbolic expansions

The perturbative expansion method works with symbolic variables as well. One can use any of the symbolic libraries available in Julia and simply plug symbolic parameters in lieu of numeric parameters. A detailed example is available as a Jupyter notebook.

Interface for custom operations

If you want to create a custom gate type (e.g. calling it Operation), you need to definite the following methods.

applyop_branches!(s::T, g::Operation; max_order=1)::Vector{Tuple{T,Symbol,Real,Int}} where T is a tableaux type like Stabilizer or a Register. The Symbol is the status of the operation, the Real is the probability for that branch, and the Int is the order of that branch.

There is also applynoise_branches! which is convenient for use in NoisyGate, but you can also just make up your own noise operator simply by implementing applyop_branches! for it.

You can also consult the list of implemented operators.

diff --git a/v0.9.12/notebooks/Noisy_Circuits_Tutorial_with_Purification_Circuits.ipynb b/v0.9.12/notebooks/Noisy_Circuits_Tutorial_with_Purification_Circuits.ipynb new file mode 100644 index 000000000..be1064a7b --- /dev/null +++ b/v0.9.12/notebooks/Noisy_Circuits_Tutorial_with_Purification_Circuits.ipynb @@ -0,0 +1,1381 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`Last edit on Mar 18 2024 with QuantumClifford 0.9.0 and Julia 1.10.2`" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "using QuantumClifford\n", + "using QuantumClifford.Experimental.NoisyCircuits\n", + "using AbstractAlgebra\n", + "using LaTeXStrings\n", + "using Quantikz: displaycircuit\n", + "using Plots # Makie is a good alternative plotting library" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# States of interest\n", + "\n", + "All of the states will be expressed in one of the many canonical forms available, so that comparisons can be performed easily." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "A typical Bell pair" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "+ ZZ\n", + "+ XX" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "good_bell_state = S\"XX\n", + " ZZ\"\n", + "canonicalize_rref!(good_bell_state)[1]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "A typical GHZ state" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "+ _ZZ\n", + "+ Z_Z\n", + "+ XXX" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "good_ghz3_state = S\"XXX\n", + " ZZI\n", + " IZZ\"\n", + "canonicalize_rref!(good_ghz3_state)[1]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The bi-colored graph state version of a GHZ state" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "+ _ZZ\n", + "+ ZXX\n", + "+ X_Z" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "good_ghz3_state = S\"ZXX\n", + " XZI\n", + " XIZ\"\n", + "canonicalize_rref!(good_ghz3_state)[1]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Warmup example: Purifying a Bell pair\n", + "\n", + "We will first run a typical purification circuit on two perfect Bell pairs. Given that all gates and initial states are perfect, the circuit is redundant, but running this calculation is a good sanity check. After all, if the circuit is not preserving perfect Bell pairs, there is little chance it would be doing any purification either.\n", + "\n", + "There are three components to the circuit: the bilateral CPHASE (or CNOT) gates, the coincidence measurement performed by Alice and Bob to check for errors, and a \"verify\" step at the end of the simulation. Experimentally, Alice and Bob do not have access to this operation, but we add it in our calculation in order to verify whether the final state obtained by this procedure is indeed the state we want.\n", + "\n", + "In terms of library features, we use the `SparseGate` and `BellMeasurement` objects for the \"real\" part of the circuit and the `VerifyOp` for the verification step." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "4-element Vector{QuantumClifford.AbstractOperation}:\n", + " sCPHASE(1,3)\n", + " sCPHASE(2,4)\n", + " BellMeasurement(Union{sMX, sMY, sMZ}[sMX(3, 0), sMX(4, 0)], false)\n", + " VerifyOp(Stabilizer 2×2, [1, 2])" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "initial_state = MixedDestabilizer(good_bell_state⊗good_bell_state)\n", + "circuit = [\n", + " sCPHASE(1,3),\n", + " sCPHASE(2,4),\n", + " BellMeasurement([sMX(3),sMX(4)]),\n", + " VerifyOp(good_bell_state, [1,2])\n", + "]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can run a Monte Carlo simulation with `mctrajectories`, or a Perturbative Expansion calculation with `petrajectories`. Given that there is no noise source in this circuit, all Monte Carlo samples will give the same result." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Dict{CircuitStatus, Float64} with 3 entries:\n", + " true_success:CircuitStatus(1) => 1.0\n", + " failure:CircuitStatus(3) => 0.0\n", + " false_success:CircuitStatus(2) => 0.0" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "petrajectories(initial_state, circuit)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Dict{CircuitStatus, Float64} with 4 entries:\n", + " true_success:CircuitStatus(1) => 100.0\n", + " continue:CircuitStatus(0) => 0.0\n", + " failure:CircuitStatus(3) => 0.0\n", + " false_success:CircuitStatus(2) => 0.0" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mctrajectories(initial_state, circuit, trajectories=100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The possible final statuses (`:undetected_failure`, `:detected_failure`, `:true_success`) come from the definitions of the various circuit operations. `SparseGate` always generates `:continue`, which tells the simulator to continue to the next operation. `BellMeasurement` can report `:detected_failure` or `:continue`, depending whether there was an anti-coincidence or a coincidence. Finally `VerifyOp` reports either `:true_success` if we indeed obtained the desired state, or a `:undetected_failure` if the obtained state is not the desired one even though the measurement step had reported `:continue`. Custom statuses can be implemented as well, as seen later on." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Later on we will also need to compare these results against no purification so we define this circuit for convenience:" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "nopurification_circuit = [VerifyOp(good_bell_state, [1,2])];" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Define a network noise parameter to be used for the rest of the notebook\n", + "\n", + "For a more interesting calculation, we will now introduce network noise with the `NoiseOpAll` operation, which causes depolarization of certain strength to all of the qubits." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "netnoise_value = 0.10\n", + "netnoise = UnbiasedUncorrelatedNoise(netnoise_value)\n", + "netnoise_opall = NoiseOpAll(netnoise);" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "5-element Vector{QuantumClifford.AbstractOperation}:\n", + " NoiseOpAll(UnbiasedUncorrelatedNoise{Float64}(0.1))\n", + " sCPHASE(1,3)\n", + " sCPHASE(2,4)\n", + " BellMeasurement(Union{sMX, sMY, sMZ}[sMX(3, 0), sMX(4, 0)], false)\n", + " VerifyOp(Stabilizer 2×2, [1, 2])" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[netnoise_opall,circuit...] # The explosions denote depolarization noise" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Dict{CircuitStatus, Float64} with 3 entries:\n", + " true_success:CircuitStatus(1) => 0.6561\n", + " failure:CircuitStatus(3) => 0.1944\n", + " false_success:CircuitStatus(2) => 0.0972" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pe_netnoise = petrajectories(initial_state, [netnoise_opall,circuit...])" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Dict{CircuitStatus, Float64} with 3 entries:\n", + " true_success:CircuitStatus(1) => 0.813333\n", + " failure:CircuitStatus(3) => 0.0\n", + " false_success:CircuitStatus(2) => 0.186667" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pe_netnoise_nopurification = petrajectories(good_bell_state,\n", + " [netnoise_opall,nopurification_circuit...],max_order=2)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "Therefore a network depolarization rate of 0.1\n", + "causes the fidelity to drop to\n", + "$F_{0}=\n", + "0.813\n", + "$.\n" + ], + "text/plain": [ + "L\"Therefore a network depolarization rate of 0.1\n", + "causes the fidelity to drop to\n", + "$F_{0}=\n", + "0.813\n", + "$.\n", + "\"" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "latexstring(\"\"\"\n", + " Therefore a network depolarization rate of $(netnoise_value)\n", + " causes the fidelity to drop to\n", + " \\$F_{0}=\n", + " $(round(pe_netnoise_nopurification[true_success_stat],digits=3))\n", + " \\$.\n", + " \"\"\")" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "But purification can increase the fidelity to\n", + "$\\frac{\\mathrm{true\\ success}}{\\mathrm{true\\ success}+\\mathrm{undetected\\ failure}}=\n", + "0.871\n", + "$.\n" + ], + "text/plain": [ + "L\"But purification can increase the fidelity to\n", + "$\\frac{\\mathrm{true\\ success}}{\\mathrm{true\\ success}+\\mathrm{undetected\\ failure}}=\n", + "0.871\n", + "$.\n", + "\"" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "latexstring(\"\"\"\n", + " But purification can increase the fidelity to\n", + " \\$\\\\frac{\\\\mathrm{true\\\\ success}}{\\\\mathrm{true\\\\ success}+\\\\mathrm{undetected\\\\ failure}}=\n", + " $(round(pe_netnoise[true_success_stat] / (pe_netnoise[true_success_stat]+pe_netnoise[false_success_stat]),digits=3))\n", + " \\$.\n", + " \"\"\")" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "With a rate of positive coincidence measurements of\n", + "$\\mathrm{true\\ success}+\\mathrm{undetected\\ failure}=\n", + "0.85\n", + "$.\n" + ], + "text/plain": [ + "L\"With a rate of positive coincidence measurements of\n", + "$\\mathrm{true\\ success}+\\mathrm{undetected\\ failure}=\n", + "0.85\n", + "$.\n", + "\"" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "latexstring(\"\"\"\n", + " With a rate of positive coincidence measurements of\n", + " \\$\\\\mathrm{true\\\\ success}+\\\\mathrm{undetected\\\\ failure}=\n", + " $(round(pe_netnoise[true_success_stat]+pe_netnoise[failure_stat],digits=3))\n", + " \\$.\n", + " \"\"\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Monte Carlo instead of Perturbative Expansions\n", + "\n", + "The 10% network error rate we have picked is not all that small, and the perturbative expansion will not be all that accurate. We can attempt Monte Carlo simulations. For very large circuits this would be cheaper than perturbative expansions. Choosing the best method is a balancing act that depends on the desired accuracy, the size of the circuit, and the number of noisy components." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Dict{CircuitStatus, Float64} with 4 entries:\n", + " true_success:CircuitStatus(1) => 6549.0\n", + " continue:CircuitStatus(0) => 0.0\n", + " failure:CircuitStatus(3) => 2260.0\n", + " false_success:CircuitStatus(2) => 1191.0" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mc_netnoise = mctrajectories(initial_state, [netnoise_opall,circuit...],\n", + " trajectories=10000)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Symbolic Perturbative Expansions\n", + "\n", + "The perturbative expansions can be done with any of the available symbolic libraries under Julia (including the Julia interface to the SymPy Python library). Here we give an example with `AbstractAlgebra.jl`, part of Nemo. Fractions are a bit clunky, so we treat the numerator and denominator separately. `SymPy` would be simpler to use, but it can be a bit slower.\n", + "\n", + "We will define two symbols, one for the network noise, and one for the gate noise to be used later." + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [], + "source": [ + "using AbstractAlgebra\n", + "field = RealField # If you want to use multiprecision floats\n", + "# field = QQ # If you want to use rationals\n", + "R, (e_netn, e_gate) = polynomial_ring(field, [\"e_n\", \"e_g\"])\n", + "sym_unity = R(1);" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [], + "source": [ + "sym_netnoise = UnbiasedUncorrelatedNoise(e_netn)\n", + "sym_netnoise_opall = NoiseOpAll(sym_netnoise);" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "sym_pe_netnoise = petrajectories(initial_state, [sym_netnoise_opall,circuit...],\n", + " branch_weight=sym_unity)\n", + "\n", + "sym_true_success = sym_pe_netnoise[true_success_stat]\n", + "sym_coincidence_prob = (sym_pe_netnoise[true_success_stat]+sym_pe_netnoise[failure_stat]);" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can print out the symbolic expression:" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$e_n^4 - 4.0*e_n^3 + 6.0*e_n^2 - 4.0*e_n + 1$" + ], + "text/plain": [ + "L\"$e_n^4 - 4.0*e_n^3 + 6.0*e_n^2 - 4.0*e_n + 1$\"" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "latexstring(sym_true_success)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And evaluate it to compare it with the numerical calculation:" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.65609999999999998852059750198417731326117063872516155242919921875" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sym_true_success(netnoise_value, 0) # evaluate at e_n = netnoise_value, e_g = 0" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.6561" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pe_netnoise[true_success_stat]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Higher order expansions\n", + "\n", + "Higher order expansions are also possible with this library, however the cost of the simulation grows exponentially in the order, due to the combinatorial explosion of trajectories that need to be followed. See the example below where we see the number of branches for the depolarization acting on all qubits." + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "(order = 0, nb_of_branches = 1, total_probability = 0.6561)\n", + "(order = 1, nb_of_branches = 13, total_probability = 0.9476999999999999)\n", + "(order = 2, nb_of_branches = 67, total_probability = 0.9963000000000005)\n", + "(order = 3, nb_of_branches = 175, total_probability = 0.9999000000000001)\n", + "(order = 4, nb_of_branches = 256, total_probability = 1.0000000000000007)\n" + ] + } + ], + "source": [ + "for order in [0,1,2,3,4]\n", + " branches = QuantumClifford.applynoise_branches(initial_state, netnoise, [1,2,3,4], max_order=order)\n", + " println((order = order, nb_of_branches = length(branches), total_probability = sum(b[2] for b in branches)))\n", + "end" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let us compute the whole circuits to the given order" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0.060664 seconds (46.77 k allocations: 2.562 MiB, 93.70% compilation time)\n", + " 0.382868 seconds (94.44 k allocations: 4.899 MiB, 81.59% gc time, 16.19% compilation time)\n", + " 0.088570 seconds (134.56 k allocations: 6.886 MiB, 86.62% compilation time)\n" + ] + } + ], + "source": [ + "@time sym_pe_netnoise2 = petrajectories(initial_state, [sym_netnoise_opall,circuit...],\n", + " branch_weight=sym_unity, max_order=2);\n", + "@time sym_pe_netnoise3 = petrajectories(initial_state, [sym_netnoise_opall,circuit...],\n", + " branch_weight=sym_unity, max_order=3);\n", + "@time sym_pe_netnoise4 = petrajectories(initial_state, [sym_netnoise_opall,circuit...],\n", + " branch_weight=sym_unity, max_order=4);" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### All of the results together" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot(title=\"Purified Fidelity vs Initial Fidelity\\naccording to different calculation methods\")\n", + "\n", + "netnoise_pe_samples = 0.0:0.005:0.4\n", + "netnoise_mc_samples = 0.0:0.05:0.4\n", + "mc_trajectories = [50, 5000]\n", + "\n", + "# No purification\n", + "exact_solution_no_purification = petrajectories(good_bell_state,\n", + " [sym_netnoise_opall,nopurification_circuit...],\n", + " branch_weight=sym_unity,\n", + " max_order=100)\n", + "F0 = exact_solution_no_purification[true_success_stat].(netnoise_pe_samples,0)\n", + "plot!(F0,F0,color=:black,alpha=0.3,label=false)\n", + "\n", + "# Symbolic perturbative expansions\n", + "for (order,sym_result) in enumerate(\n", + " [sym_pe_netnoise,sym_pe_netnoise2,sym_pe_netnoise3,sym_pe_netnoise4])\n", + " ts = sym_result[true_success_stat].(netnoise_pe_samples, 0)\n", + " uf = sym_result[failure_stat].(netnoise_pe_samples, 0)\n", + " Fout = ts ./ (ts .+ uf)\n", + " plot!(F0, Fout, label=\"expansion to order=$(order)\", lw=2)\n", + "end\n", + "\n", + "# Monte Carlo approach\n", + "F0 = exact_solution_no_purification[true_success_stat].(netnoise_mc_samples,0)\n", + "for m in mc_trajectories\n", + " Fout_mc = []\n", + " for n in netnoise_mc_samples\n", + " netnoise = UnbiasedUncorrelatedNoise(n)\n", + " netnoise_opall = NoiseOpAll(netnoise)\n", + " mc_netnoise = mctrajectories(initial_state, [netnoise_opall,circuit...],\n", + " trajectories=m)\n", + " push!(Fout_mc, mc_netnoise[true_success_stat]/(mc_netnoise[true_success_stat]+get(mc_netnoise,failure_stat,0)))\n", + " end\n", + " plot!(F0, Fout_mc, label=\"MC $(m) trajectories\", line=false, marker=true)\n", + "end \n", + "\n", + "plot!(legend=:outertopright, xlabel=\"Input Fidelity\", ylabel=\"Output Fidelity\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Local Operational Noise in Addition to the Network Noise\n", + "\n", + "Up to here we considered imperfect initial states purified by perfect circuits. Now we will introduce imperfect gates as well, and study a few different regimes of the gate error model. We will add a small chance of depolarization to all of the gates and a chance for flipping a qubit to all measurements." + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [], + "source": [ + "# A helper function to add noise to ops and lists of ops.\n", + "make_noisy(g::SparseGate, noise) = NoisyGate(g, UnbiasedUncorrelatedNoise(noise))\n", + "make_noisy(m::BellMeasurement, noise) = NoisyBellMeasurement(m, noise)\n", + "make_noisy(other_op, noise) = other_op\n", + "make_noisy(circuit::AbstractVector, noise) = [make_noisy(op, noise) for op in circuit];" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [], + "source": [ + "sym_pe_allnoise = petrajectories(\n", + " initial_state,\n", + " [sym_netnoise_opall,make_noisy(circuit, e_gate)...],\n", + " branch_weight=sym_unity)\n", + "\n", + "sym_true_success = sym_pe_allnoise[true_success_stat]\n", + "sym_coincidence_prob = (sym_pe_allnoise[true_success_stat]+sym_pe_allnoise[failure_stat]);" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$2.0*e_n^4*e_g^2 - 2.0*e_n^4*e_g + e_n^4 - 8.0*e_n^3*e_g^2 + 8.0*e_n^3*e_g - 4.0*e_n^3 + 12.0*e_n^2*e_g^2 - 12.0*e_n^2*e_g + 6.0*e_n^2 - 8.0*e_n*e_g^2 + 8.0*e_n*e_g - 4.0*e_n + 2.0*e_g^2 - 2.0*e_g + 1$" + ], + "text/plain": [ + "L\"$2.0*e_n^4*e_g^2 - 2.0*e_n^4*e_g + e_n^4 - 8.0*e_n^3*e_g^2 + 8.0*e_n^3*e_g - 4.0*e_n^3 + 12.0*e_n^2*e_g^2 - 12.0*e_n^2*e_g + 6.0*e_n^2 - 8.0*e_n*e_g^2 + 8.0*e_n*e_g - 4.0*e_n + 2.0*e_g^2 - 2.0*e_g + 1$\"" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "latexstring(sym_true_success) # Not all that legible # TODO print this better" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "5-element Vector{QuantumClifford.AbstractOperation}:\n", + " NoiseOpAll(UnbiasedUncorrelatedNoise{AbstractAlgebra.Generic.MPoly{BigFloat}}(e_n))\n", + " sCPHASE(1,3)\n", + " sCPHASE(2,4)\n", + " NoisyBellMeasurement{AbstractAlgebra.Generic.MPoly{BigFloat}}(BellMeasurement(Union{sMX, sMY, sMZ}[sMX(3, 0), sMX(4, 0)], false), e_g)\n", + " VerifyOp(Stabilizer 2×2, [1, 2])" + ] + }, + "execution_count": 29, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sym_allnoise_circuit = [sym_netnoise_opall,make_noisy(circuit, e_gate)...]" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0.006039 seconds (41.07 k allocations: 2.159 MiB)\n" + ] + } + ], + "source": [ + "@time sym_pe_allnoise2 = petrajectories(\n", + " initial_state,\n", + " sym_allnoise_circuit,\n", + " branch_weight=sym_unity,\n", + " max_order=2);" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0.015842 seconds (122.05 k allocations: 6.477 MiB)\n" + ] + } + ], + "source": [ + "@time sym_pe_allnoise3 = petrajectories(\n", + " initial_state,\n", + " sym_allnoise_circuit,\n", + " branch_weight=sym_unity,\n", + " max_order=3);" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " 0.027895 seconds (219.08 k allocations: 11.635 MiB)\n" + ] + } + ], + "source": [ + "@time sym_pe_allnoise4 = petrajectories(\n", + " initial_state,\n", + " sym_allnoise_circuit,\n", + " branch_weight=sym_unity,\n", + " max_order=4);" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### All of the noisy circuit results together" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot(title=\"Purified Fidelity vs Initial Fidelity\\nboth network and local noise\\naccording to different calculation methods\")\n", + "\n", + "netnoise_pe_samples = 0.0:0.005:0.4\n", + "netnoise_mc_samples = 0.0:0.05:0.4\n", + "local_noise_samples = [0.0, 0.01, 0.05]\n", + "mc_trajectories = 10000\n", + "\n", + "line_styles = [:dot, :dashdot, :dash, :solid]\n", + "\n", + "# No purification\n", + "exact_solution_no_purification = petrajectories(good_bell_state,\n", + " [sym_netnoise_opall,nopurification_circuit...],\n", + " branch_weight=sym_unity,\n", + " max_order=100)\n", + "F0 = exact_solution_no_purification[true_success_stat].(netnoise_pe_samples,0)\n", + "plot!(F0,F0,color=:black,alpha=0.3,label=false)\n", + "\n", + "# Symbolic perturbative expansions\n", + "for (li, local_noise) in enumerate(local_noise_samples)\n", + " for (order,sym_result) in enumerate(\n", + " [sym_pe_allnoise,sym_pe_allnoise2,sym_pe_allnoise3,sym_pe_allnoise4])\n", + " ts = sym_result[true_success_stat].(netnoise_pe_samples, local_noise)\n", + " uf = sym_result[failure_stat].(netnoise_pe_samples, local_noise)\n", + " Fout = ts ./ (ts .+ uf)\n", + " plot!(F0, Fout,\n", + " label = order==4 ? \"gate error rate of $(local_noise)\" : nothing,\n", + " lw = order==4 ? 2 : 1.5,\n", + " color=li, linestyle=line_styles[order],\n", + " )\n", + " end\n", + "end\n", + "\n", + " \n", + "# Monte Carlo approach\n", + "F0 = exact_solution_no_purification[true_success_stat].(netnoise_mc_samples,0)\n", + "for (li, local_noise) in enumerate(local_noise_samples)\n", + " Fout_mc = []\n", + " for n in netnoise_mc_samples\n", + " netnoise = UnbiasedUncorrelatedNoise(n)\n", + " netnoise_opall = NoiseOpAll(netnoise)\n", + " c = [netnoise_opall,circuit...]\n", + " c = make_noisy(c, local_noise)\n", + " mc_netnoise = mctrajectories(initial_state, c,\n", + " trajectories=mc_trajectories)\n", + " push!(Fout_mc, mc_netnoise[true_success_stat]/(mc_netnoise[true_success_stat]+get(mc_netnoise,failure_stat,0)))\n", + " end\n", + " plot!(F0, Fout_mc, label=nothing, line=false, marker=true, color=li)\n", + "end\n", + "\n", + "# Legend\n", + "for (li, style) in enumerate(line_styles)\n", + " plot!([-1], [-1], linestyle = style, label = \"perturbation to order $(li)\", color = \"black\")\n", + "end\n", + "plot!([-1], [-1], line=false, marker=true, label = \"10 000 MC trajectories\", color = \"black\")\n", + "plot!(xlim=(0.39,1.01))\n", + "plot!(ylim=(0.35,1.03))\n", + "plot!(legend=:outertopright, xlabel=\"Input Fidelity\", ylabel=\"Output Fidelity\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Reproducibility information" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Julia Version 1.10.2\n", + "Commit bd47eca2c8a (2024-03-01 10:14 UTC)\n", + "Build Info:\n", + " Official https://julialang.org/ release\n", + "Platform Info:\n", + " OS: Linux (x86_64-linux-gnu)\n", + " CPU: 8 × Intel(R) Core(TM) i7-10510U CPU @ 1.80GHz\n", + " WORD_SIZE: 64\n", + " LIBM: libopenlibm\n", + " LLVM: libLLVM-15.0.7 (ORCJIT, skylake)\n", + "Threads: 1 default, 0 interactive, 1 GC (on 8 virtual cores)\n", + "\u001b[32m\u001b[1mStatus\u001b[22m\u001b[39m `~/Documents/ScratchSpace/quantumjulia/Project.toml`\n", + " \u001b[90m[0525e862] \u001b[39mQuantumClifford v0.8.21 `QuantumClifford.jl`\n" + ] + } + ], + "source": [ + "versioninfo()\n", + "using Pkg\n", + "Pkg.status(\"QuantumClifford\")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.10", + "language": "julia", + "name": "julia-1.10" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.10.2" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/v0.9.12/notebooks/Perturbative_Expansions_vs_Monte_Carlo_Simulations.ipynb b/v0.9.12/notebooks/Perturbative_Expansions_vs_Monte_Carlo_Simulations.ipynb new file mode 100644 index 000000000..8cafed1b7 --- /dev/null +++ b/v0.9.12/notebooks/Perturbative_Expansions_vs_Monte_Carlo_Simulations.ipynb @@ -0,0 +1,1726 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`Last edit on Mar 18 2024 with QuantumClifford 0.9.0 and Julia 1.10.2`" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "using QuantumClifford\n", + "using QuantumClifford.Experimental.NoisyCircuits\n", + "using Plots # Makie is a good alternative plotting library\n", + "using Quantikz\n", + "using ProgressMeter" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Monte Carlo error vs Perturbative expansion error\n", + "\n", + "The Monte Carlo method requires large number of samples to obtain a result with a small stochastic error. The scaling is $\\mathrm{error}\\propto\\frac{1}{\\sqrt{N}}$ where $N$ is the number of samples.\n", + "\n", + "The perturbative expansion method's computational complexity grows exponentially in the order of the expansion, however at low order it can be more efficient than the Monte Carlo method for the same error. The error scales as $\\varepsilon^n$ where $\\varepsilon$ is the perturbative parameter (e.g. a small error rate) and $n$ is the order of the expansion. $n=1$ is the default for this software. The software supports symbolic evaluation (e.g. it provides analytical expansions).\n", + "\n", + "Below we compare results obtained with either method and explore the accuracy of the result as a function of the $N$ and $\\varepsilon$ parameters. The toy circuit on which we test these methods is the purification of a noisy Bell pair by the sacrifice of another noisy Bell pair. We report the rate of successful purification, detected failed purification, and undetected failures of purification (which are the source of imperfection afther the purification)." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Relative error\n", + "\n", + "Comparing the two simulation methods in the case of a perfect purification circuit that purifies one Bell pair by sacrificing another Bell pair. Both pairs are subjected to depolarization noise before being used.\n", + "\n", + "We run the Monte Carlo simulation with a 1000 samples and show how averaging over that many samples leads to a small stochastic error in the estimate. We report the histogram (distribution) of such relative errors over multiple runs of the Monte Carlo simulation." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "5-element Vector{QuantumClifford.AbstractOperation}:\n", + " NoiseOpAll(UnbiasedUncorrelatedNoise{Float64}(0.03))\n", + " sCNOT(1,3)\n", + " sCNOT(2,4)\n", + " BellMeasurement(Union{sMX, sMY, sMZ}[sMX(3, 0), sMX(4, 0)], false)\n", + " VerifyOp(Stabilizer 2×2, [1, 2])" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "good_bell_state = S\"XX\n", + " ZZ\"\n", + "initial_state = MixedDestabilizer(good_bell_state⊗good_bell_state)\n", + "\n", + "g1 = sCNOT(1,3) # CNOT between qubit 1 and qubit 3 (both with Alice)\n", + "g2 = sCNOT(2,4) # CNOT between qubit 2 and qubit 4 (both with Bob)\n", + "m = BellMeasurement([sMX(3),sMX(4)]) # Bell measurement on qubit 3 and 4\n", + "v = VerifyOp(good_bell_state,[1,2]) # Verify that qubit 1 and 2 indeed form a good Bell pair\n", + "epsilon = 0.01 # The error rate\n", + "n = NoiseOpAll(UnbiasedUncorrelatedNoise(3epsilon))\n", + "\n", + "# This circuit performs a depolarization at rate `epsilon` to all qubits,\n", + "# then bilater CNOT operations\n", + "# then a Bell measurement\n", + "# followed by checking whether the final result indeed corresponds to the correct Bell pair.\n", + "circuit = [n,g1,g2,m,v]" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "N = 1000 # Nb of trajectories\n", + "relative_error(a,b, symbol) = abs(a[symbol]/N-b[symbol]) / (a[symbol]/N+b[symbol]+1e-5)\n", + "df = [] # store relative error in the detected failure rate\n", + "uf = [] # store relative error in the undetected failure rate\n", + "ts = [] # store relative error in the true success rate\n", + "pe = petrajectories(initial_state, circuit) # perturbative expansion\n", + "for i in 1:1000\n", + " mc = mctrajectories(initial_state, circuit, trajectories=N) # Monte Carlo\n", + " append!(df,relative_error(mc,pe,failure_stat))\n", + " append!(uf,relative_error(mc,pe,false_success_stat))\n", + " append!(ts,relative_error(mc,pe,true_success_stat))\n", + "end" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Print the results according to the perturbative expansion:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Dict{CircuitStatus, Float64} with 3 entries:\n", + " true_success:CircuitStatus(1) => 0.903546\n", + " failure:CircuitStatus(3) => 0.0365069\n", + " false_success:CircuitStatus(2) => 0.0547604" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pe" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Compare the MC results to the perturbative expansion results:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOydd1wTyf/wJ4VeJPSEJkVEUSyoYAEpiqKIHbty9q53dj3xVO7EgoqKJyoqdkURUbCBohSlSgeR3ntooSbZ54/5us/+NhBBg5467xd/sJPZ2dnZ3flM+RQKhmEAgUAgEIhfFer3rgACgUAgEN8TJAgRCAQC8UuDBCECgUAgfmmQIEQgEAjELw0ShAgEAoH4pUGCEIFAIBC/NPTvXQGE6KmoqAgPD9fT0xs8ePD3rsvPQ0FBQVZWVnV1taqq6tixY7t+YnR0dH5+vo2NjZKSEkx59OgRlUqdPHkyKWdmZmZOTk5DQ0OfPn3wZ1deXp6ZmVlWViYjIzNp0iSR3MtPQGFh4bt374yMjAYOHPi964L48cEQPwLbtm2bNm1acnKy4E9RUVHTpk3766+/8JSnT58CANasWdP18ktKSrKzs9va2kRQ15+Otra22bNn45+MjY1Nt05fuHAhACAyMhJPkZeXV1RUJOaprKw0MzPDL7Fp0yaYvnHjRir1f8s2enp6X38vPw23bt0CAOzatUskpdXX12dnZ9fU1IikNMQPB1oa/TF49eqVv79/ZWWl4E8lJSX+/v7h4eFfU/6iRYv09fULCwu/ppCfFR8fH19fXysrqydPnsTGxv77778iv8TBgwejoqIWLVoUEhISGxu7ZcsWAEBwcPCpU6eMjY39/f1jY2MfPnwo8usiIPfu3dPX1z916tT3rgji+4CWRn9Cxo8fz+FwxMTEvndFfhLi4+MBAPv27bOyshJJgWVlZaSUuLg4AMDJkycVFRVJiVu3bp06dapIrotAIDoECcKfECqVKi0tLZjO4/FKS0ubmpqUlZWJHW5XaGxsLC4ulpKS0tTUxBfrBMvPy8sTExPT0NCg0WjCC2xtbS0oKJCWltbQ0MATm5qaCgsLxcXFtbS06HRhLyeXy4U5iacDACoqKmpra7W0tKSkpLp8c6Curq6srExaWlpTU5NCoZB+LSkpAQB0vcVaWloKCgrk5OSYTGaHGQTr1uElSktLAQAMBqPDQrhcbnFxcXNzs5aWloyMjJD6NDc3FxQUKCgoqKmp4YltbW0FBQUYhvXu3Vv4mKm2tra8vFxFRUVIC7S2thYWFtJoNBaLJSEhIZgBw7Di4uLGxkZ1dXUFBYUOC2lraysuLubz+SoqKvLy8kKqJFh4SUkJh8PR1dUVci/V1dWVlZVycnKkd6bnKCsrq62tVVRUVFVV7SwPn88vLi7mcDgsFkv4Xbe0tOTn58vKyn6z+v9CfOelWUTXGDZsGADg5cuXgj89ePAAADBu3Dg85dWrV2pqajt37sRTSktLZ8+eTewjmEzm33//jWFYSUkJg8GAUqdXr14MBoPBYKirq+Pnfvz40dHRET9XWVl537597e3tpGqcPn1aRUUF5mGxWJcvXz5//jyDwfj333/xPDY2NgwGo6ioaNOmTbDvNjIywjCsubl58+bNffr0wasnKyu7du3ahoYG4iV2797NYDAeP37s6emJ9ywmJiaJiYkYhsXHxw8fPhw//eTJk11p2Pj4eGtra1y0a2pqenh48Pl8+Ovx48cZDAa8d3l5edg44eHhnZXW1ta2fft2XCwNHDgwIiJCcI+wT58+/fr1g/8vW7aMwWDACjA+cfnyZQaDASWKrKwsTLx16xY8pba2dtOmTbiAlJCQmDt3bmlpKbEmAwcOVFZWrq2tXbp0qaSkJABg7Nix8Kf8/Pz58+fjwlhOTm7jxo0cDgc/t6GhgcFgjBkzprS0dOrUqbBuVCrVwcGhsrKSdMvp6enTp0+HlwAA0Gg0a2tr4mZ2a2vrgQMH1NXV8QwTJkxIT08nFpKammpjY0McYBkYGFy9elXIg8P3CAMCAvT09OBZioqKR48exR8fzuPHj01NTfHC+/Tpc+fOHfzXKVOmwEcmJSWFPwJ/f//k5GQGg7F48WJiUUZGRgwG48CBA3gKm81WUlLCmxfi7e1taGiIX9HU1DQ0NJRUq6ampt27d+NfDZ1Od3R0zM3NJeYZO3Ysg8EoKyvbunUr8b2KjY0V0jiI7oJmhD8hra2t5eXldXV18JDP59vb2yckJEyYMMHOzk5SUrK0tDQiIiIyMhIAICMjs3Llytu3b+fn58+dOxeO1vHZWE5OzqhRoyorKydOnGhvb89msy9fvrx///6UlBRfX1988nTs2LFt27YpKSn9+eefWlpaCQkJq1atGjlyJJvNbmlpwSvW0NDAZrOXLl0aFxc3Y8YMHR0dWEkOh3P69Olx48bNmDGDxWJVVlbevXv37Nmz6enpISEh+FWam5vZbPaZM2dCQ0PnzZunq6sbERHx7NmziRMnPnr0yMrKasSIES4uLtXV1d7e3ps3bzYwMBDUzCQSExNjbW3d1NQ0e/ZsCwuLkpKSixcvbtq0KTc398SJEwCAwYMHr1y58v79+1lZWbNmzYJ9FovF6qzAlStXXrlyRVdXd8WKFfLy8oGBgXZ2dv379ydlKy8vx1vY1tZWWVn53LlzdXV1K1euhIlGRkYrV64MDg6Oi4ubMGGCgYEBAAB2rPX19ZaWlklJScOGDbO3t5eTkwsJCbl9+3ZsbGxMTAw+2aqrq2Oz2TNnzkxLS5s3b56GhgafzwcAZGdnW1hYlJaW2tnZwb7b39//1KlTKSkpz58/h/N4DMPYbHZJSYmtrS2FQtmyZYuYmNi9e/ceP348b968Fy9e4DcSFRVlZ2dXX19vZ2c3btw4KpX68eNHf3//jIyMAQMGAAC4XO7UqVOfPn1qaGjo7OysoqISHR199+7d0aNHR0dH6+vrAwBqa2utra2rqqrmzp07YsQIGo1WVFQUHBz8/v37RYsWCXl8AICwsLBjx47Nnj1769atZWVl586d27ZtG4fD2bdvH57n7Nmz69evl5aWXrVqlZGRUWFh4aVLl+bOnVtfX798+XIAwJQpU3g8XlBQkKmp6ejRo+FZenp6/fv3p9FogYGBfD4fCumMjIyMjAwAQFBQ0N69e2HO169fV1dXEwXt1q1b3d3dVVRUfv/9d21t7YyMjCtXrowfPz4oKGjcuHEwT2trq52dXXh4+IABA1asWKGoqBgREfHgwYOYmJjY2Fj8HYOfzPLly6OiohYvXsxkMl++fBkaGmpvb//hw4fOVgsQ3eY7C2JE14AzwqVLlx4UYP78+eD/zghJWqMJCQkAgEmTJpHKrK+vx/+3tbUFAGRnZ5PyQH3933//HU+prq7W1dUFANy9exemlJSUSEhISElJZWZm4tn8/PzgC3bixAk8Ec7YWCxWSUkJ8SpwmZSY0t7eDqv07NkzPPH3338HAEhISODDYT6f7+joCACQkZHZu3cvnvPGjRsd3jKJQYMGAQCOHz+Op+Tl5SkqKlIolLdv3+KJ8BJw3imE0NBQAEDv3r2Jyodr166F7SBca7R3796CH+PGjRsBAAEBAcTEVatWAQA2bNjA4/HwxF27dgEA/vjjDzxFW1sbAGBkZMRms4mnjxkzBgBw9uxZPKW9vX3GjBkAAG9vb5hSX18P6zxjxozW1lY8EfbOGRkZMKWtrQ2+CZ6ensRLtLa24i1w9OhRAICjo2NLSwuewdvbGybCw9u3b5Mqj18R6xw4IwQAHD58GE/MycmRk5Oj0+lZWVkwJSMjQ0xMTEVFJScnB8+Wm5uroKAgKyuL1/PSpUsAAKLqNWTWrFkAgLi4OHh45swZAMDQoUPpdHptbS1M3LBhAwDg8ePH8PDZs2cAAGNj4+rqarycd+/e0el0fX19LpcLU/78808AwIIFC4iLK8ePHwcALFq0CE8ZOnQoAEBfXx+f8ePv/Llz54S0D6JbIEH4YwAFoRCECMLo6GgAwOzZs4WU36EgLC0tpVAo8vLypM70woULAICJEyfCQ6hrJ2itAessKAg9PDy6cssBAQEAgG3btuEpUBCuXr2amA12o2pqaniXjWFYe3u7mJiYrq6ukPJjY2MBADo6OiSjETiZWLFiBZ7SRUG4dOlSQalQVlYGlw1FIgjr6uokJCRUVFSIcgXDsObmZnl5eSaTiadAQXj79m1iNqh9M3LkSNKFPn78SHyFoCCkUChFRUXEbJs3bwYA+Pv7w0N/f38AgJWVVactgmFaWlpUKpW0bIthmLGxMY1Gq6urwzDs6tWrAAAXFxch5QgCBaGamlpzczMxHSrc7t+/n1hnouCHwPmcj48PPOxMEJ49exYAcOTIEXg4ffp0OTk5eOmHDx/CxH79+tHpdHgvGIY5ODgAAF68eEEqau7cufhrwOVy4dI3fhaEx+Npa2tLS0vjLzMUhDdu3CBmgy2/efPmrjQUoiugpdEfiVOnTg0ZMoSUGBYWtnv3biFnGRsbM5lMX1/fmTNnzp4929ramqg0IQQ4EDYzMyNpN9jb2wMAoCABn5Qq4VSDiIWFBZ6HiGBOAACPx3v48OHbt29LS0vLy8sBAA0NDQCA4uJiUk7SmAAqDgwcOFBcXBxPpNPpqqqqRUVFQu4O1s3W1pakXjFx4sT9+/d3WHPh4AUSE9XU1AYOHBgTE9Pd0jokJiamtbW1d+/eYWFhpJ/U1dUzMzPZbDZxuczCwoKYB9rYaGpqBgcHE9MxDJOQkEhNTSUmMplMklIGFK64jU1ERAQAwMbGprPa5ufnFxYWamhopKSkpKSkEH9SUVFJTU398OHD8OHDx4wZIykpeejQoaKiomnTpllaWvbq1eszDfEJeC4xZdy4ce7u7niDw4ai0WikW4akpaUJLx8+zZCQkG3btvF4vNevX9vY2NjZ2VGp1JCQEEdHx9LS0oyMjFGjRuF6LmFhYRQKpaWlhXRFuCmblpY2cuTI1NRUNpttaGgIB6lE1NTUCgoK8vLyiFuM+OY3hPQgEF8PEoQ/EgMGDBCUIlVVVcLPkpaWfvDgwW+//ebn5+fn50ehUIYMGbJo0aJ169YJVxesrq4GAGhpaZHSmUwmnU6vqamBeydwnw/XhiBm67BYQZ23mpoae3v76OhocXHxPn36MBgMvHdrbW0lZSbpLsJbwJ224IiLi7e3t3/B3cFepkOTTeHAAjU1NUnpWlpaohKE0O4iJiZm/PjxHWaoq6vDBSGVSiU9FHi6r6+vr6+v4Ln4iihEWVmZlAEONdra2uBhRUUFAACujgqpbXFxsZDawhJu3769du3aS5cuXbp0iUajjR49euXKlfPnzxfU4CXRYWsDwkcBB1VwPbmzCgjB0NBQR0cnLCystbU1OTm5pqbG1tZWUVFx8ODBISEhAICQkBDs04IKAKC5uRmWOWXKFCFXhPrAmZmZwlsGh/R6wwch/PVGdAskCH8JzMzM0tLS4uPjnz9//vLly9evX//+++8vXrx4/PixkL4Gai02NjaS0ltaWrhcroSEBNQggENdNptNyiaYAhG0rNi3b190dPSKFSuOHj2KzwbCwsIsLS27cZPdBPYmgncHZ6KkeUZXgCK5sbGRZMwACxQJ8BL29vYHDx7sMANx8EGhUEiGLvD09evXOzs7C57bmVVMZ8AmEnJ38HIDBgy4cuVKhxlwPeGpU6c6ODhERESEhIQEBweHh4e/efMmPj7e3d1deB0EHx8U5/jjg3UICgrq0IAB19gUgpWVlY+Pz7t37969ewc+zRFtbW2PHTtWWloKxSEuCOl0OoVCkZSUfPPmTYdfFpTcsFYjR448ffp0hxc1MjL6bMUQIgQJwl+IoUOHDh06dOfOnfn5+ZaWlkFBQUlJSVBhBH60GIYR88PBPtxAIvLhwwdAmArAjzYlJWXmzJnEbElJSV2s2IsXLygUyuHDh4lrYvAqPQesf2ZmJimddHddR09PLy8vLzs7m7TynJWV9RXV/D9A9dHCwkKijmJ3T6+qqvqy00nAtbv09PTOMujq6tJotLy8vMGDB3/WrpRGo1laWlpaWsJ1aSsrKw8PD1dXV+H2oIJtm52dDQCAe64AAAMDA2iQIPyWhQwCbG1tfXx8QkJC3r17x2Qy+/XrBxOPHj368uXLV69eSUtL4+7xxMTEdHR08vLyevXqRTQHIgEfRG5urkgeBOLrQS7WfkV0dHTgEiu+AwfHy6Q53ODBg1VUVN6/f0/ayTh37hwAYMKECfAQ+j3x8vLicDh4nrS0tCdPnnSxPrAbIvaVfD4f6in0HFZWVpKSkk+fPs3Pzyemk+6u68BlrosXLxITQ0JCcnNzv66m/5/Bgwfr6uqmpKQI7hF2hYkTJ0pJST169Egk20sODg5UKvX27dtwTVgQBoNhZWXV2Nh47dq1bpU8bNgwQ0NDHo8n6IKHRFhYGGkoA9vfzs4OHk6fPh18UrAUUg6cGtbU1Aj+BGd7gYGBERER0J4EAGBhYSEhIXHu3Ln8/Hz4P54fXlG4Hz5tbW1TU9OysjJoBIz47iBB+PMTFBS0adOmpKQkaEkGAIiMjHz69Km4uDiuegNH98ePH09KSsrJyYF9t7i4+I4dOwAAS5YsgZoUPB7Py8vL29tbTk4O6nACAExMTBYsWFBaWjpu3Ljnz59//Pjxzp079vb2gvs3nTF06FAMw7Zt2waNDuvr69esWSNkqiESlJSUVq9e3d7ePm/ePCgLW1tbDx48+OTJExaLtWzZsu4WuHz5cmVl5atXr3p7e8OmTk1NXb16dYeeVr4MKpXq7u5OoVBmzpx57949fAO1pKTEw8MDGlEIQUVFZc+ePRwOZ/z48a9fv+ZyuQAAPp+flZW1f/9+T0/PblXG0NBw+fLllZWV9vb2iYmJMLGxsfHy5ctRUVHw0M3NTUJCYt26df/++y++jFldXX3lyhW8hb28vP766y84kwMAYBh27969lJQUFosluINLQkxMbNGiRVCut7e379+///Xr14aGhtAgBADw22+/mZiYPHr0aOnSpQUFBTCxpaXl1atXCxcuxC8K339/f/+QkJCcnJycnBx8VMdisYyMjOLj45uamnArQGlpaXNzc6h8RFKP2rFjB5PJPHny5J49e/Cd5sbGxoCAAGiwCFPc3d3pdLqzs/OVK1eamppgYkVFxfnz59evX9+lB4AQId9LXRXRLbrlWYZkPnHz5k34rMXFxXV1deHkT0xM7OLFi/gpJSUlxMVACQkJmM7j8VasWAETNTU14dKlnJxcUFAQsQ5NTU2kddHFixcfOnQIAED0LAOV3wS9k2RkZEB1ABkZGQMDA0lJSUVFxfPnzwMAZs6ciWeDotfPz494Lty5mTNnDqlMeDvCW7W5uRlOZ6lUqra2NtzbU1NTi46OJmbrovkEhmHBwcGwEGVlZV1dXQqFMmHChDlz5gDR2RFiGHbx4kW4YEilUonO5IiNoK2tTaPRBGvI5/N37doFJ99iYmJaWlq4ti1ucgC32UxMTEjnQis6d3d3PKW5uXnevHnwdBUVFdwM3NfXF8/z5MkTXNeD6EXM1NQUZsCN36WkpAwMDKCyj5ycnKAFAhFow7B+/fqhQ4fSaDR9fX34cqqqqpKeVFFRkbm5ObxEr1698G1UGo2GmxtiGEYa+uBmshiGrVu3DiYSrV0PHDgAE3ErQ5zk5GR8XVRZWRlXO5KUlMTtCDEMu3fvHmwNCoWiqakpKysLsxHDm0DzCaJJIoZhUAUXN8REfD1oj/DHYMuWLWVlZR3uOgwcOPDEiRM6Ojp4ipGR0YkTJ+DmHwBg5syZYWFhr1+/zsrKqqysVFZW7tOnz5w5c+BGBYTJZKanp0dERBQWFpaVleGrlFQq9fz584sWLbp7925eXp6kpKSpqamzszNJHVFKSurevXsJCQlxcXF0On348OH9+/eHA1vihtn69etLS0sFHWP27ds3MTHx4sWLqampGIYtWbJk6dKlUDG1b9++eDYHBwc1NTVjY2PiuVpaWm5uboLKBdu3b/+sTqCkpKS/v39QUFBAQEBhYaG8vLyZmdlvv/1GUt9fvHjxqFGjOlOCJWJra5ucnHzu3LnU1FQFBQUXF5dFixY9efJkyJAhxAfk5uZG2pTasWOHYG2nTJnCYrHgphSRZcuWOTg43Lx5MzY2ls1mq6qq6ujojB8/ftSoUXienTt3dqjGQqFQ/vnnH2dn5zt37qSkpDQ2NtrZ2enr60+aNAl/YSQkJNzc3AQVSUaOHOnm5kY0yZCUlLx58+batWvv37+fk5MjJiamra09YcIE4iRp4sSJOTk5t27dioyMrKysVFJS0tDQsLa2tra2hhm2bds2atSosLCw/Pz8mpoauA+3YMEC4UY+gwYNcnNzMzc3P3LkiLe3d3h4eHNzs6mp6erVq0l6MRoaGpGRkUFBQU+fPi0oKKDT6ZqamoMGDXJ0dCRqxkKnQunp6cXFxW1tbcQwhytXrtTS0pKWlibOUOfPny8uLk6hUASjfg4YMCA1NfX+/fshISGlpaWysrIsFsvc3Nze3p64/j9z5kxra+tbt269e/euurpaWVlZS0vLxsaGGO1yw4YN5eXlJNfBampqbm5uxO8X8ZVQMKFL5wjEl8HlcgcMGJCZmVlQUND1NVIEAoH49qA9QoQIiI+P9/Pzg3tOAICampqlS5d++PDBwcEBSUEEAvEfBy2NIkRAdna2k5OTpKRk7969YRAiPp8/YMAALy+v7101BAKB+AxoaRQhAmpra3EHaS0tLSwWy9raeu7cuUS3ZwgEAvHfBAlCBAKBQPzSoD1CBAKBQPzSfAdBGBER8ddffy1ZssTJySkyMrKurm7hwoW4Uc5PwLFjx5ycnEj+ShAkVqxY8dmwq1/Pjh07Fi5ciGvxIL6SFStW4EZ1Pw2BgYFOTk7Q+rZHqaysjIqKCg4OTkxMFPQm/wWEh4cvXLgQRmX6ZqSlpS1cuBAGrhIJnp6eCxcuFKEDpi/hG9stnjt3DvooUlBQYDAY9+/fh47YR40a9fWFt7e3u7m5Xbhw4euL+hqgj6Wu2F//9/Hz83NzcysrKxN5yaqqqjIyMqIqzc3NjWi5jwON8EjR+xBfjKysrIqKyveuhYiB4XBPnz4tJA/R+1pSUpJghn/++Qf+OmbMGNJPfD7/+vXrQ4YMIbrhlpCQmDZtGjH+8xcAvZnjnhC+DTC8FDFgZxfx9vZ2c3MT/BihxwmSF4tvzLfWGv3nn38kJCTi4uL69+8PU9hs9oQJE0hW0l8Gl8vduXOnkZHR8uXLv740BADg+vXrfn5+48eP72IIw+/Fzp07e/fuvXr1alK6hYWFtrZ2d+MqIDpj/Pjxv7ICFIVCwTDs6tWrR48eJf3k4+MDfyWlt7W1LV68+M6dOzQazd7eftSoUQoKChUVFWFhYQEBAQ8fPszKytLT0/uy+mhoaEyYMOFHsaz38PBISkpas2YNyeng4MGDa2trux6Esif4poKwubm5sLBw0KBBuBQEADAYjG+wKIH4NUH2G6LFz8/ve1fhe6KsrKyurn7t2rVDhw7R6f+/84yMjPzw4YOVlVVoaCjplC1btty5c0dHRycgIMDExIT4U3Jy8sqVK78mrOC4ceNw96c/Ljt37ty5c+f3rcO3E4TJycmlpaUYhvF4vLi4OACApKSksbFxe3t7TEyMvLz8gAEDYM7KysqCggINDQ11dfXk5OTQ0NCmpqYlS5ZAt155eXmRkZGlpaVUKlVFRcXc3BwPLgMDBrW0tMDyAQAKCgr6+vqfrVtCQkJ4eDiHw1FRURk3bhwMzYpTXV2dl5fHYrGYTGZqauqrV684HM6iRYugZ8XW1tagoKDMzEx5efkJEyYIGdyVlZUFBwcXFxdLSEiYm5vj/g8hdXV1WVlZKioq2traWVlZL168qK+vnzlzZofDvebm5rS0tF69esEoM0+fPq2vrzc0NLS3t+8wkF5lZeWLFy8KCwvFxcWHDx8+evRo4ipNQ0NDZmamkpJS79698/Lynj17VltbO3ny5NbWVhiPIj09HR/qDhkyhEqlZmVl1dXVGRsbEy/H5XITExNlZGRwh2fl5eVFRUVaWlqqqqrv37+HfrCWLl1KdG1VW1v7+PHj4uJiFRWVKVOmCHr2amxsfPPmTV5eXkNDA4PBsLGxIbYJfDrwQeDPHbYMACAhIaGpqWnkyJEUCqWmpiY3N1dZWZno7QxSVVWVn58PGx9PrK+vf/HiRU5ODpVKHThwoI2NDbHvEwKfz3/79m1sbCy0JLG3tyfeb0JCAo/HMzQ0lJOTI56VmJjI5XINDAzg0Dg1NbWlpWXo0KEcDufx48f5+fkMBsPBwQH354nT1NQUHh6ek5NTV1cnLy9vZWUl6JUtPj6eTqebmJg0NDTA6BOdlVZYWBgREVFSUgIAUFZWHjFiBNF9XVRUFJVKJQVM5/P5YWFh79+/b21t1dHRsbOzIwVPLiwsrKio0NfXV1BQCAsLi42N5fP5I0aMIHprE0JtbW1YWFheXl5TU1OHX2hbW1tycrKcnJyhoWFFRcWjR4+qqqqYTKajo6OCggKpNAzD3rx5ExsbS6PRzMzMRo4c2ZU64CxcuHDHjh3Pnj2bPHkyngiXKBctWkQShElJSZ6enhISEo8fP8b7N5yBAwfirs87g8/nR0ZGZmRkVFdXy8rK6ujoWFpa4v5aKysrP378qK2tjbutyM7Orq2t7devn7i4+LNnzzIyMmRkZIh+LdLS0l6+fNnU1DRs2DAbGxvitQoKCiorK/v06YOXD3n//j2NRiNJcRJtbW0RERHZ2dnV1dXS0tKjRo0iRphqampKT09vbm4GACQkJEAni2JiYrDMzMzMqqoqExMT3Nsq5MOHD69evaqrq+vVq5eNjQ10jI5TX1//8eNH+M3m5uY+efKkoaFBX1/fwcFBsA+MjY1NSUmBzuo0NDQsLCzI/cw3W4TFI4Th9O3bF8MwwT1CGAfH1dWVGD40LCwMw7Ddu3cLLnPBGCsdjv1nzJghvFZ1dXWkWNJ0On379u08Hg/PA7eF9+3bh7ufBp8iU3/48IHo/5NGo7m5uQnuEfJ4vN27d5PWlGxsbKqqqpbAY6kAACAASURBVPA8jx8/BgCsW7du586duJS6detWh9VOTk4GADg4OBw9epTovdDAwCAjI4OYk8/nHzhwgPRmjB49mrjtB7/eJUuWHDx4EC8NelgWpLm5GcMw2AtAAYkDw4KPGDECT4G7L+7u7rhrZvDJSTHcIwwJCSF2mvLy8vfv3yeWefz4cdJCCpVKXblyJe682MfHR7CSkyZNgr8S9wg/fvxIoVD69+8v2J6//fYbAOD69et4ysWLF0l9aL9+/Uj32yFpaWkk55MyMjLEfev9+/fDGvL5fDzx9u3bAICBAwc2NTXBFOhk9c2bN0S3rlJSUleuXCFeztvbWzBi34IFC0g7MRISEkwmMywsjOiHU0pK6uHDh8Rsf//9t6CwP3bsGJ5BcI8wOzsbj2ECkZOTI/pzxz55D7916xZReAAAnJyciB9ah/z555+kKsEvlNh6cCRkZWV169YtoltOZWXl2NhYYmmNjY0TJ04kljZz5szDhw+Dru0RqqiolJWV0en02bNn4z81NTUpKCiMGjUqIiIC/N89wrVr1wIAFi9eLPweO6OsrIw05oC339DQADMI7hHCsBuBgYHQWzdEQkLCz8+Px+Nt2LCBOAKeP38+sRlXrVoFABD0dS4tLc1kMvFDwT3CoKAgkuwEAEyYMIHNZsMM79+/BwJoaGjAXwX3CFtaWpydnYlVpVAoy5Yta21txfM8e/YMALBq1So3NzdiH9inTx+ib/SGhgbSEwcAUKlU0rf87QRhUlISrPrAgQNjY2OhiMY6F4QaGhoaGhpnz5599+7ds2fPCgoKnj9/DgDo37//06dPi4uLCwsL37x5s2vXrjt37mAYVllZGRkZCQDo3bt37CeI3uUF4fP5MG7Z2LFjIyIiiouLHz58CAW2i4sLng0KQg0NDSaTeebMmbdv3z5//jwvL4/D4cBpx9q1azMzM4uLiz09PaWkpOB2GlEQwrAJgwYN8vf3z8nJiY6OXrBgAfx08RcRCkINDQ0Gg+Hu7h4eHv7q1avOel4oCNXU1KSlpT09PYuLizMzM+FXp6enx+Fw8Jx79+4FAPTr1+/evXvZ2dmxsbFwA3XEiBG4LIGCUENDQ05O7vDhw9BDd0JCQmxsLPSMfP36dbxJYc/VLUGooaGho6Pj5eX17t27J0+elJSUYBimqqoqJiamqKi4bt062HpnzpyRlJQUExNLSEjAS9i3b9+qVauePHmSnp6ek5Pz4MEDOIo8dOgQftHY2FgAAJPJxCv58eNH+CtJWQZGYYyJiSFWu7GxUU5OTl5eHm832L9oaGhcvnz5w4cPSUlJu3fvptFoOjo6tbW1Qt6ooqIiVVVVOp2+ZcuWmJiYnJyc27dva2hoUCiUx48fwzw8Hg9GLsTDOMDlBFlZWWJ7QkGopqa2ZMmStLS00tLSixcvysnJUanUN2/e4Nnc3d2dnZ0fPXqUmpqal5f3+PHjESNGAAC2bdtGrJiEhISsrKySktK6devg7A2OtxgMRn19PcwDPx8DA4PHjx8XFRUVFRWFh4fv3buXKHpJgrC+vh4ugSxevDghIaGoqOj8+fOwTyQGCYGCUFtbe+DAgQ8ePEhNTfX19YVzFG9vbyHtCc/dvHnzixcvMjMzP378eOvWLfjREWUtFITq6uoyMjJ//fVXdHR0dHQ01Ek2NjYm9vWwz7W2to6OjoZzRx0dHTjU6KIgxDBs8uTJ4uLieBCV69evAwDOnz8vKAjhHhAxkEW3gL3E8uXLExMTKysr09LS/Pz8Zs+e/VlBqKmpaWtr+/z58+Tk5H/++YdGozEYjN27d6urq/v4+KSkpDx8+BA6EIedJ+SLBeGNGzdmz559//795OTkgoKC4OBg+IbPnTsXZuBwOLGxsXDO8Pr1a/iR4j2koCCEU6DBgweHhIQUFxcHBwdDH+jLli3D80Bpoq2t3atXr9OnT79///7NmzfQ2/v06dPxbDA22bRp06Kjo8vLyzMzM4OCgpydnTMzM4n3+E21RqHMMzc3F0wUFIQ0Gi05OZmYc8+ePUAgCg8ROPU2MjLqYn1gU2ppaeHDcAzD0tLSaDSahIREeXk5TIGCkEKhxMfHE08/ffo0AGDKlCnExFOnTsFBB/6YU1JSKBSKvr4+/vpCHBwcAABPnz6Fh1AQElOEAAUhAMDDw4OYDme3eGJ2djaNRtPU1KypqSFmmzt3LgDg3r178BBfzyHNxrBP35VgoJluCUIxMTHSa4dhGJyaTJ06lZh44sQJwUQS5eXlCgoKLBaLmAgHQIKZSYLwwoULAID169cT81y9epX4YcMFWFlZWVyaQnbv3g0AOHz4sJC6LV68GABw/PhxYmJiYiKdTh80aBDxFphMppiYWERERHNzM5xRXbt2jXgWFIRjx44l9uOXL18GAFhaWgqpQ21tLYvFkpOTa2trwxPhrHrHjh3EnPBtwSeFbm5uAAAfHx8hhZMEIZxLjR8/nljJO3fuQIGKz/agINTU1CR+AvCFnzx5spDLdUhOTo64uDixPaEgJIlVHo8Hnz7+lsJ5CYvFIo4U379/D2ceXReEd+/eBQCcOXMG/jRu3DgpKSk2my0oCOFKTIdapl0BBj4jti2JzgShqakpMd6Tk5MTAIBOp6elpeGJ9+/fB/83dNcXC0JBWltbBw4cSKPRiCtPcAhbV1dHykwShLBzk5OTq6iowPOUlZXJyMhQKBQYoAb71HtTKBS4WAiB66hiYmL4yw9DsuBz087472rTTZw4kbSqDgOVvXnzBg8w+5VA+5sNGzYQF5f69es3ZcqU1tZWUoD1cePGkZaA4Ol4fFrI8uXLSasEN27cwDBsw4YNpBVw+NqRFIVMTEy6HhtdTk6OpB8LK4OHvb59+zaPx1u9ejVsOuGX1tfXh4u6Imfq1KkdBpACAq23YsUKWVnZJ0+ewAi9JNra2thstpiY2ODBg0tKSoqLi7tbEycnJ2lp6Zs3bxKtuODi6pIlS+BhYGAgm812cnIi7c522Gik6vn6+srKym7YsIGYbmJiYm5unpiYCMd8AABVVdWrV6/yeLwFCxasXLny/fv3y5cvX7hwoWCZmzdvJi4QweBEYWFhHQaFb29vZ7PZcPutoaEhIyODlOGPP/4gHkI9C1yKwJckPDy862aX8BPYvn07sZKzZs3S19fPysrCh2uQlStXEj8BGO29W9ZjLS0tbDZbQUHB0NAwOTmZ9JIoKioSN1OoVCrcA8Nv8OHDhwCAVatWEZdPBw8eTNoq+yxTp05VVlaGr01RUdGrV69mzJghuBnZ1tYGa0j68LuOoqJiY2NjTExMd0/csGEDcbUQLoSMHz+euHkMN2hFbr3H4/HYbDaHw7G0tOTxePHx8d0tAT6mpUuXErfx1NTUnJ2dMQwjGU2amZnBu4PIy8sPHz68vb29qKgIpsCdF0ElJhL/Xafbghv+c+bMOXjw4MmTJx8+fDhp0qSxY8fa2dl1Ren2wYMHcLICMTAwgCt+MAa6YDixoUOH+vv7p6WlCa8PPJ20hywlJWVoaAgX6yAJCQkAgHfv3uH9IARGrybZ3QteRQj6+vqkQGWwMnjN4aXj4+NJSlm1tbWClzYyMiJ2ZyKEqCRMgtR6MjIy+vr6iYmJ2dnZ0KKGy+WeP3/+2rVrubm55eXlxMw1NTUaGhrdqom8vPyMGTOuX78eGBgIx87FxcWhoaF9+vTBg/nBRsvLyyM1GoZhFApFiJ+EjIyM5uZmdXX1P//8k/QT1DnKz8/HgxqOGzdu9+7drq6ueXl5xsbGHh4eHZZJah8xMbH+/fuXl5enp6fD7x/DsMuXL1+5ciUrKwuOvvHMRNM3AICCggIpUB9cw8dbdfr06X/++eeFCxeePn06adIkKysrQbUXEvBNI31BVCp10KBB2dnZaWlpeIxD8CkKPI6kpKS8vDzpmQrS2tp66tSpu3fv5ufn4wHfIWw2mxgksk+fPiQFAniDZWVl8LDDDxYAMGjQoJCQEOHVICIuLj5nzhxPT8/k5GR/f38ej0cUwMRs4uLibW1tcKXqC1ixYsWGDRtGjhw5ZsyYcePG2drampubd8UWiDTuhBKFlKisrEyhUCoqKr6sbiT8/Pz+/ffftLS08vJyHo+Hp3c4YhOOkG4ZEDo3iOAIG77k5eXlMDT3ihUrAgMDp0+fPnz4cDs7O2tra0tLSzExMdJZ/11BiEe1xtHU1IyLi3NxcQkMDPT09PT09BQTE/vtt9+OHj0quFVL5MCBA7B3g8ybNw8KQg6HAz41HBH43jQ2NgqvD4fDoVKpgj0FSR8JSp2IiIjo6GhSTj09PZIgF7yKEAQVLBUVFWk0Gl5zeOmoqCji7eOXJk0Tu3XpbtFZyXQ6nVQH8Omm8KCyzs7ON27c0NbWnjFjhqamJoPBoNFoXl5e8fHxX+YvZsmSJdevX/fx8YGC8MqVKzweb8mSJfggADZaSkoKPpPA0dXVFXxbcGBk3fr6el9fX8FfBdWJraysXF1dwad5aodlEtVNIaT22bhx45kzZ5hMpoODg7a2tqKiIp1Ov3btmuDETlCnBt4yLjtVVFRiY2NdXFwePXrk5eXl5eVFp9MXLFhw/PjxzsQhh8Oh0WiCzxe2EukLEqwAlUrFhPo6xjBs6tSpz54909fXnzt3LpPJZDAYVCr12LFjHz9+JHa4XblB+L131qTdwtnZ2dPT8+rVq/7+/pqamniQYRJaWlrZ2dlZWVlCxoJCWL9+vaqq6qlTp8LDw9+8eePi4sJkMo8cOdLh4gERUlPAdugwUXj7d5EjR47s2LFDUVFxypQp+vr6DAZDXFw8MDAwICDgCz7SbnXLgh8OHCjg9+Xo6Pj8+fPDhw+/fv06Jibm77//hhGzSWst/11B2CH6+vo3btxob2+PjY0NDg4+f/78+fPnW1paOlQdxPHy8qqvr8cPcTU8KD7LysqI41bwaQj52bmmnJxcXV1dZWUl6ZnhI1DiVS5cuNCVNc9uzckER9NVVVU8Hg+vOby0h4fHzJkzRXtp+LaR1qhJ7+hn4XK5VVVVpI4J3hS8haSkpBs3bpiYmERGRhLj2sNdvS/DxsZGW1s7KCiorKxMXV39+vXrVCqV6OwNNtrWrVu3bdvWrZLhiYaGhh3qyJGoqKhYvHgxnU6Xk5P7559/HBwciGp+OOXl5aRBHvHlLCgo8PT01NfXj42NJS7NPXr0qFs1x9HW1r5y5QqXy33//n1wcPCFCxd8fHzq6+s7Mx+Ul5evqampqKgg+VuAix9fbyL98uXLZ8+eWVpaBgcHE0fx7u7uX1AabEnBr4b0wXaFYcOGDRgw4MyZMy0tLXv27CGuQxIZM2ZMdnb28+fPHR0dv6DCAAAnJycnJ6fq6uo3b94EBATcvHlz8eLFTCYTaoWIlg4/6vb2duHe4Jqamvbv36+oqJiQkAAVcCCCg+8uAs2KBB9KF7tlQaC1ZUNDQ3h4eGBg4JUrV/744w8FBQWoKw757+4RCkFMTGzkyJF79+6Ni4sTFxf39/eH8p9Op1OpVMExyIgRI8YRwLce4T+CS/BRUVEAAKinJASYAbddg9TX12dmZhJTYAcHN9JFCzTmI6bAJVm85l9/adj7CDYpHEyQXtbU1NTulk9qvdra2qysLCkpKbg/BzeZ7O3tiVIQ2lCSyhEXF+/i2JNKpS5evJjL5d6+ffvt27cZGRm2trZEu7QvbjQjIyNpaemUlBQ4pxQChmHLly8vKSlxdXW9ceNGW1ubk5MTcayGQ2qf5ubmlJQUKpUK142h3rWtrS1RCnK53C/ugyB0On348OG7du2Ki4uTk5MLDAzszOgbvmmkL4jL5cKdoc9+QZ8FvgCOjo5EKVhdXf1lO1vweyc1Kfj01XSXJUuWwC1AIS5zly1bBgC4evUqvmVFAsOwrhjUKykpTZ8+/fLly0eOHBHcJxMV8KMmDRQyMjJIM28S2dnZTU1NZmZmRCkIOmrVzjoTEh2+VKDL3XJnyMnJ2dvbnzlz5tq1a4CgSAH5kQShYP8CFYTwlqXT6aqqqmVlZW1tbV0pcPbs2QAAT09PojiJjY199uyZrKzspEmThJ8Op1nQygpP9PT0hFN7HGdnZxqNdvbsWcGvl8vldncWRaSpqYlo7YdhGPT8BO8LALBw4UJxcXFvb29BvQkej4cvrwkBbsIVFBSQ0uFCX2BgIJ7C5XKh2mG3OHr0KLH1Tp8+3dzcPG3aNPjNwKk2qd3c3d3hlhsRFotVWVnZxc0YuBB66dIlkpoMxMHBQVVV9fHjx69fvxY8V4iQk5CQWLBgAZfLhfqlQk48fPjwo0ePJkyYsG3bNnt7+z/++CM7O5topYpz/PhxYjfk7e1dU1ODb4132D5eXl6ddbvCEbw1eXl5CQkJHo/XWVcI3zQ3NzdiBh8fn8LCQhMTk25teHdIhzd44MCBL/PGMmPGDAqFcuHCBeKdhoeHf9lIcc2aNbGxsQkJCVC/t0MsLCxmzJjR0NAwbdo0wSlORUXF7Nmzc3JyOjudNMwFn9Z1v8YZjRDgR42rrwMAMAyDq/dCgM8oPz+fOJV8+PChoCTrrDMhMXPmTCqVSho95OXl3bhxg0ajdWVxi4jgW91hG/5IS6MbN27Mzs6eP39+37591dTUioqKPDw8OBwO0fTSzMzs4cOHjo6OFhYWdDrd0NBQiCbk6NGj586de/v27bFjx7q4uGhra8fFxe3duxc+/s/OwRcvXnz69OmXL186OTlt2LBBXl7+wYMHhw8f1tHRIapUGBoaurq67tq1a8SIEZs3bx42bFivXr0KCgoSEhJ8fHwuXrxob2//ZQ2ipaV18ODBtra2adOmNTQ0nD59+tWrVyYmJlCJHwCgra197NixjRs3jho1atOmTSNGjFBUVCwsLExMTPTx8XF3d8dFZmdAo7StW7cmJiZC5bctW7bQ6fRZs2bt27fv1KlTUlJS1tbWpaWlpPFEVxAXF8/IyJgzZw5UqfXz8zt06JCMjAweimT48OHy8vK+vr5Qo5XL5d69e/fs2bN6enqk7sPMzOzOnTtTpkyxsrISExPT09MTcmsGBgZjxowJCwv7+PGjvLw86Q2RkZG5ePHi9OnTJ06cuH79+jFjxrBYrJKSkrS0tGvXri1ZsmTHjh2dlXzo0KGXL1/++++/OTk5CxYsMDAw4HA4ubm5AQEBxcXFcJ4UHR3t4uKipqZ25coVuBh16NChyMjIu3fvjh8/nqQGXFVVNXXq1C1btigqKgYGBh44cEBcXBz37zxgwABVVdUXL15s3LhxwYIFVCr1wYMH7u7uBgYGWVlZ3XoWAIA9e/bExMQsWLCgX79+TCYTPtOqqqpZs2Z16K4IALB8+fILFy5EREQ4Ojpu2rSpV69ez58/h4ZrJ0+e7G4FBBkzZoy4uLiXlxeLxZo4cSKHw7l69eqNGzc0NTW/QNj37dt31apV586ds7a2PnjwoI6OTnR09K5du3R1db9giikjI0N0ntIZly5dKi8vj4iI6Nu376JFi0aNGsVgMMrLy8PCwu7evdvY2Ig/TRJ8Pp/FYjk5OdnZ2enp6YmJicXHx+/du5dCoUB7A5EzadIkBQUFX19fFRWVqVOnstnsy5cvf/z4Ubh3WTU1NWNj49TU1EWLFq1Zs0ZGRubZs2eurq6GhoaktTEzM7OAgIAlS5bMmDFDUlJSTk4Omj6T0NPT+/33393d3a2srPbv329kZJSWlubi4tLS0rJt2zaoAtN1hg4dampq6uDgYGBgICcnl5SUdPDgQQAA0cUHAN82+oSgHaGfn9+HDx9AR3aEuMU0zl9//UXaGqVSqQsXLmxsbMTz5Ofnjxs3DvdF8lnPMi0tLatWrSIqYsnKyp48eZKYB9oR7t+/n81m79mzZweBtWvXEp1U0el0e3t7qB23dOlSYs5JkyYJalEzmcxly5bt2bOnsLAQ9yzTlZbEPctcvnyZuAc+YsSIoqIiUuabN2+SVi0AAKamprh1IO5ZRvBCfD5/27ZtRG0I6FkGw7ArV64QLz1q1KiUlBTQkR0hydgRAj3LxMbGEpclmUxmaGgoMVtgYCBx3U9eXv7WrVuzZs0CABDNOouKiiZOnIj31x16liECDQpB5+ZQwcHBghMaIyOjoKCgDvPjlJeXz549m6Tax2AwtmzZgmEYm83u3bs3lUolWWvl5+crKipKSkrizgTgPOP9+/dEvTglJSXcMB/y+vVroq6HlJTU+fPnV65cCQAIDg7Gs0HPMqSqQoO/Xbt2wcOjR48Sl6ABABQKZdasWUQfAoKeZcrLy0meO1gsVkBAADEPtCMkebHBMIzBYCgqKgpvzxs3bpCcxQQFBY0dOxYAUFhYCPPgnmVI58Iu79KlS3hKa2srcQGAQqGsWbPm2LFjoDt2hJ0haEcIaWlpOXjwoKBKkampKW7LKwifzzc2Nibt3CspKRH9G3RmRwg/DT6fD005od8ikhUphmEUCkVHR4eYEhQURPzcjI2NMzMzP2tHmJycTHQcRqfTDxw4AIezly9fxrM1NTU5OzvjngWFeJYRdMUlISGxd+9eoh8i3LMM6aagJlFkZCQ8tLOzI+3gysjICFoDf9MI9TweLz8/X0JCAtd6Nzc3P3HihIaGhoSEBL7fXl9fX1VVpaio2KFpTnx8fHFxcX19vaam5oABA4j600Sys7MpFIqMjExXwiaUlpZGRkay2WwWi2VhYUFyAtnQ0FBZWclgMNLT08dNn99ssbLbdy4UyZhbV4+5TJ48uaysTF5eXlCrTZCUlJSBAwc6ODg8evSIzWaHhobW1tYaGhqOHDmyQ+1qLpcL/ezAYaaRkRHuexAA0NLSUlJSIicnJ0R9jsPhwM0DXV1d/OOsqKh4/fo1h8MxMjIyMzPj8/mk51tXV1ddXa2kpCQ4vYZrKbq6um1tbU+fPq2srGSxWFZWVoK6f3V1dTExMYWFhWpqamPHjpWRkSkvL+dwOPC1IWWuqKhobGyUlpaGGx6lpaXt7e0k15QAgLa2NjilUFFRIT1uHAzDkpKSUlNTW1tb1dXVDQ0Nu+K3FlJWVhYVFVVRUaGiosJisYYMGQIXe+G7JC4uTmx/Ys179eoFe0wjI6MPHz60tLTQaDToalVFRcXa2lpwOMXhcKKioqCvVAsLi169elVVVdXX1zOZTLwxc3NzqVQqyckqfKYKCgq4Umh7e/v79++Liopqa2s1NDSMjY1J9SwqKuJwOIKLgZmZmbGxsa2trb179x49ejRpDlFdXV1XV6eurk4ayEIBJuh8kUR1dXVsbGxJSYmGhoalpaWkpGRJSUlLS4u2tjb0vsblcgsKCiQlJUmuU2tra2tqagQf8YcPH6Kjo2k0mrm5uZ6eHnxLlZWVhSif8/n8vLw86F2oszzwOxKsBoTH471//z4rK6uhoUFFRWXw4MGfvXEAQEVFRWJiIvTrpqOjY2pqSnznORxOdXW1goICXnPip8HlcrlcrqSkZGNjY0VFBfFBQ3Jycuh0OunrqK2tDQ0Nramp0dPTs7S0pFKppJentbW1vLxcVlaWWFpbW1tUVFRWVpaCgoKFhYWysjKbzWaz2R1+X/C54Jeurq7mcDjq6uqCr01ERARUahs9ejRpJNHc3FxaWirYYcLviMVi4cPi2trahISE4uJiPp/fu3fvIUOGCH5E31QQCmJubu7h4WFmZibykhsaGjrr4L6YyMjIycu31v7RwdbR1yB/af7F350+u0pJhCgIRVuZ70JPPKwfHVwQCgr77wt6WD8KuCD83hX5AfiR9ggRCASiK/zzzz9wwRPxM3HgwIH169f3RMlIECIQiJ+NioqK7du3Q694iJ+Do0ePklwLiRAkCH9IWCyWl5eX4NYX4qfhwIEDtbW1XYyAiBBESkpK0G8R4sdFUlJSuEXj14A+sx8SRUVFqBmI+FmBEQMQCMQ3oKuCsK6u7u3btw0NDSYmJkSdsfb29levXrHZbCsrK6J+ZmFhYXh4uLq6+tixY7viJRaBQCAQiO9Cl0RUWlqatra2u7v7gwcPRo4c6eLiAtPb29vHjx8PvfQaGxvjETeCg4OHDBny9OnTzZs3d0sZEoFAIBCIb0yXZoQsFuvDhw/QMCs+Pn7YsGGbNm1SUlLy9/evqKhISEgQFxd3dXXdt28f1ObfvXv3P//8s3LlysbGxr59+75588bS0rJn7wOBQCAQiC+iS4KQaNiupaWFYRj0R/7o0aNp06ZBK8jZs2f/9ddf7e3tVVVVMTEx0OwfeuwMCAhAghCBQHxHGhoaSB6/ehQmk9mhWT3iv0m3lWUOHTpkZ2cHn3FxcbG5uTlM19LS4vF4ZWVlFRUVMjIyuL6WpqYmdKLWIfX19Q8ePMDD1qiqqk6dOrXbN9ERQjwFfzGkACWi43/OkHqm8B+AnnhYiB7ih3hYgn5Cjp844XbKS1JR/Rtcnd/eqkDn5X9M/wbX+nqKioqoVOqXiW3oNZPJZHI4nKKiIiH+x0UC9L7W3bOoVOpnY8x1TxBevHjRz88vPDwcHnK5XNyNG/ynvb29vb2d6NuNTqcLiQXR3Nycnp6Oh49nMpmfjfnQRWBNRFIUDpfL7SE3PDwer4c8yv8Q9MTDQvQQP8TDEhyz8ni8ltHLW6b8+S0uX5EtdX4KKe3w4cMwYjOVStXV1Z0yZcq8efM6C2QIAMjPz793796WLVu6e/F///3X2trayMioi/lPnjwpLS2Ne7qHXLhw4dSpU/jhhg0bOlRTP3nyJIVCcXNzi4uLW7duHfSB3HN8WT8pJiYmpJ0h3RCE165d279//8uXL3H3g+rq6riFY0VFBQCAyWTSaLSGhoaWlhbo2qe8vFzIWENNTW337t094WKtvb1d5L6FxMXFuxG7thtQxMTEfmVPSD3xsBA9xA/xsD7b8X17CgsL+/XrB333Jycn79+//+bNm48ePeqsqsXFxRcvXvwCQXj9+nUtLa2uC8IOgcGWT58+DQ8FiyrQWgAAIABJREFU48VDtm7d+jVX6S50Or2H3r2uGjbcu3dv586dz549I/rCt7S0fPHiBfw/ODh4xIgRUlJSWlpavXv3hh7K+Xx+SEgI2iBEIBAIeXl5PT09U1NTZ2fn0NDQ8PBwPz8/+FNAQMDUqVMtLS0PHjzY3t6OYdjevXuLi4thhHq4qHbnzh0HBwcrK6tjx47hK4RJSUkLFiwwMzObOXNmQkLC1atXP3z4cPjwYScnp3v37gEASkpKVq1aNXr06AULFnz8+BGexWazV65caW5uvm3bts4C0MvKyvb7hJKS0q1btxwdHc3MzObPn5+e/r9V3xcvXuAiANLU1OTk5IQvTR85cgTG9Xzw4MG///67b98+c3Pz0NDQtrY2V1dXGxubyZMn4xEQU1NT58yZM3z48PHjx8PKfzO6JAiTk5PnzZs3bNiwq1ev7ty5c+fOndBt/KJFi/Ly8latWuXh4bF9+3YYj5RKpe7atWvt2rVnzpxZuHAhlUoV1bYfAoFA/BxoaGjY2Ni8evUKfJpmbN++/dKlSwkJCTt37oTxoVRVVd3c3Nzc3MTExLy9vQ8fPrx3797z588HBwf//fffAICPHz9aWlra2treuXNn48aNfD5/8uTJOjo6S5YscXNzs7W1bWxsHDlypImJyc2bNydMmABTAACzZ8+m0Wi3b9/u168fjOUkSHl5eeAnWlpaqFTqvn377t27Z2lpOXnyZCg+ExMTk5KSiGe1t7f7+vrigjAiIgIKi/T09O3btyspKV26dKl///7Ozs6ZmZleXl67du3asGEDjGA1b948W1vbR48eHTt2TDBqVY/SpaVRJSUlT09PYgqcn8rLy0dFRV2+fLmwsNDPz8/CwgL+umLFCi0trRcvXgwdOvTs2bMwAA0CgUAgcDQ0NKB6xNGjR93c3EaPHg0AOHny5NChQ93d3VksFgwxDTMfPXrUy8sL7iIdPXp0xowZLi4unp6e8+fPX7p0KSBEs5KUlFRXV4cnXrx40cTEZN26dQCAxYsX37p1Kzg42MTEJCoq6tGjR1JSUkuXLoXRCgXJy8s7f/48/N/MzGzOnDkFBQW5ubkGBgZcLjc9PX3w4MHdul8zMzMYmbKwsDAgIKC6ulpCQqJPnz6bNm26du3a6NGj6+rqKBSKgoICNNX7lnTVjrAzh17q6uq7du0STJ84cSIpXCcCgUAgcIqLi2Hkzuzs7N27d+PqKjo6OqTlSgzDcnJyNm7ciE8qYOjQ3NxcOzs7IZfIzs6OiYkZNmwYntLa2lpYWKihoYHHqoSBxAUxMzPz9/fHD1evXh0RETFy5EhFRcX29vYv8H+NC/WcnBwejwcFPwT+f+XKlV27dm3dutXKysrV1XXgwIHdvcQXg3yNIhAIxLemuLg4JCTEx8cHAMBkMg8fPkxSmKdSqfgCI4VCUVNTO3v2LFF4AABYLFZBQQGpZArl/0eZZTKZI0eOfPDgATFDenp6RUUFj8eDejolJSWkgL2C5Ofn37lzp7y8XFxcHMMwHx+fzgLZSkhIUCiUlpYWGIQZtwgABA0mJpNJp9Pfvn1LWiy0trZ+9+5deXn58ePH58+f39M6qESQF1AEAoH4FtTX1+fk5ERHR3t7e1taWlpbW0+bNg0AsHz58j///BPupbHZ7KCgIAAAi8UqLS398OEDm83GMGz58uU7duwoLi4GAFRWVj5//hwA4Ozs7O3t/e7dOwBAVVVVbm4uAEBDQyM6OrqqqqqlpWXWrFlhYWG+vr58Pp/L5YaGhpaXl/ft21dLS+vkyZMYhr19+/bp06efrbm4uHhra2tBQQGfzxceDklSUtLQ0PDWrVsYhvn7+8fExAjm6dOnj6mp6ZYtW5qamgAAGRkZcXFxGIY9ePCgtbVVTU1t8ODB3zhiPBKE35+WovRFvy2T6aUo2j9zS5vvfWcIBOJ/aGlppaenOzk5bd68+eXLl3///be/vz8MSLBhw4YlS5ZMnjyZyWSamZlBp83a2tp79+5dtmzZ+PHj29ra9uzZM3nyZFtbWyaTaWlpmZqaCgAwMzO7cOHCmjVr1NXVLSws8vPzAQAuLi7JyckTJ068fv06i8V6/vz5+fPnNTU1dXV1jx07xufzqVSqr6+vv7+/urq6q6vr1q1bBS3c1NTUdHV18UMmk/n333+PHTu2d+/eNTU18+bNk5eXBwCwWCwmkwkAkJWVxa3pz58/f+zYMRUVlWfPnq1evRqqvTCZTDxsHIVC8fX15XA4xsbG6urqzs7OtbW1AABvb289PT1NTc2zZ892psLTQ1C+seAlYW5u7uHh0RN2hA0NDXJycqItMzIycvLyrbV/vBZtsfS9xlz7HWAw2QL3q2CXKHo5VpeQl03+m/TEw0L0ED/Ew9q8ebOuru6mTZvwlAMHDx7yOIc8y/y4HDhwgMfj7d+/vycKR3uE/w3EZYC0SIOItnBEWRoC8YOz5Y8/JovIa1VXgPMkxI9CDwpCOAfvufIRCASii8jIyJiamn7vWiD+o3RVUJ04ccLOzk5fX//69et44suXL/UJhIaGwvSysjJbW9tevXqpqqoS8yMQCAQC8V+jq4KQTqcvX75cUVGxrq4OT+RwOAwG48UnRowYAdP/+OMPHR2d2trawMDANWvWFBYWir7iCAQCgUCIgq4ujW7YsAEA4OXlRUqXlJTEzSQhDQ0N9+/fT05OptFow4cPt7W1vX79eodG9wgEAoFAfHe+do8wISFBVVVVUVFxzpw5e/bsERcXLygowDAM983dv3//rKyszk7n8/kNDQ1sNhseSkhIQDNMxH+TjIyMN2/eiLxYWVnZ+fPni7xYBAKB6ApfJQhNTExCQ0MNDAwyMjKcnZ15PJ6rqyubzZaRkcEDIcrLy6elpXVWQm5u7owZM3CPA3379oVhK74eDofz2WCM3aW5uRkD39PapFtgGAYd7IoQjzNnLz+PEdcaINpiG195Ozo6irZMRA/RE1+WyGlvb29ubsZH2IifgJaWli/r0yQlJen0z0i6rxKEOjo6Ojo6AABzc/P9+/fv37/f1dVVRUWloaEBVxlls9mdxbICAOjr6/eQHSGGYbKysqItU0pKigL+610ADoVCEXkL0MXEWofMaB2/WbTFgpcXRV5VRA/RE1+WyNHU1Dxy5MiRI0e+d0UQouTgwYM99O6JzHyCz+fDcaKWlpakpGRKSoqJiQkAIDExUbhbWAQCgRAtu3btQnoJXC6Xy+X+96Mo/xfoqtZobm5uXFxcQ0NDYWFhXFwcXHPw8/OLiYkpLy9/9eqVi4vL7NmzAQDS0tILFy7cu3dvRUXFgwcP3r59u3Dhwh68AwQCgUAgvoKuzghv37798uXLXr16xcXFxcXFubi4WFhYlJaW7t+/v6qqislkrlix4vfff4eZjx49umnTpiFDhmhoaNy/f1/I0igCgUAgEN+XrgrCDpca1q1bB0M+kpCTk7t06dLXVg2BQCAQiJ4HuUBDIBAIxC/NT+t0u6ioCAa7EiEfPnzgY3zRlolAIBCI78tPKwidFv2WW1FLk5ARYZlt9ZXtEgoiLBCBQCAQ352fVhC2cvmcRd5Ad4QoC31zgRZ6TpQFIhAIBOJ7g/YIEQgEAvFLgwQhAoFAIH5puro0mpqa+vbt2+zsbEdHx5EjR+Lp6enpJ0+erK+vd3R0nDdvHkzEMOzChQshISGqqqpbt26FbtgQCAQCgfgP0tUZ4c6dO58+fXrz5s34+Hg8sbKy0sLCQlNTc9asWTt37rxy5QpMP3LkiIeHx/z58yUkJCwtLZubm0VebwQCgUAgREJXZ4SPHj0CANja2hITr1y5MmLEiL179wIAuFyuq6urs7Mzl8v18PC4ceOGtbX11KlTX79+7evru3jxYpFXHYFAIBCIr+er9gijo6MtLS3h/5aWlikpKY2NjQUFBWVlZWPGjIHpFhYWUVFRX1tNBAKBQCB6hq8ynygrK1NUVIT/Kysrw5SKigp5eXkxMTE8PTY2trMSioqK1q1bJy8vDw/19PROnjz5NVXCwfg9Yvn+w0Qj7Jl4hO3t7aItEEfkVUX0ED9EPEIE+BR9gsvlfu+KfGd6PB6hlJRUa2sr/L+lpQUAICMjIy0tDf/H04VEkFJSUnJ2djYyMoKHDAZDVOGmKNQeUYj9gTqAnohHiI9vRM5/P8QdAvJDxCNEABSGqTt8lSDU0tLKz8+H/+fl5YmLi6uqqtLp9La2tvLycjU1NQBAfn6+hoZGZyVISUkNHz68JwLzIhAIBALRFb5q2jRr1qz79+83NDQAAHx8fGbMmEGj0VRUVKysrHx8fAAAlZWVQUFBME4hAoFAIBD/Qbo6I/z9998DAgJKS0uTkpKOHz9+5swZe3v7CRMmmJubDxo0SEtLKy8vLzg4GGY+cuTIlClTnj59mpmZOW/evKFDh/ZY/RE/BRIy+gOHibzUnZvXrli2VOTFIhCIn4yuCkJXV1cXFxf8UEZGBgBApVJv3bqVkZFRU1NjamoqISEBfx02bFhWVtb79+81NDR0dXVFXmnEz0YrJ2eap4jLjLqdkJQi4jIRCMTPSFcFoYyMDBR+guCqLqT8uAUF4rvA47bHxcWJtsyqqioA1EVb5v/QEfWyQWYYACUiLhOBQPyM/LTRJ351GirqqivHz18p4lKLc8DkAaItE4FAIL4vSBD+pPB4FGkF9rZ3oi2VdgjN8hEIxM8Gij6BQCAQiF8aJAgRCAQC8UuDBCECgUAgfmm+ao+wrq4uKysLPzQwMOjVqxf8v6Sk5O3bt2pqaqNHj0aeCREIBALxn+WrBOGbN2/mz5/ft29feOjh4TF69GgAwKtXr2bNmjVhwoTExMQBAwbcuXNHBDVFIBAIBKIH+Fqt0UGDBoWHh5MSd+/e7erqumbNmoaGhr59+4aHhyObQsS3Ji/27N07Z0+dEG2pYuISJcVFMNYKAoH4OfhaQdjS0hIWFqakpNS3b18ajQYAKCsre/fuXWBgIABATk5u0qRJDx8+RIIQ8a35f+zdd1xT1/s48JOEhLBH2Btlo6BFHLgYVkURKyiOah3UvfeqW3HU0VZrba1orauf2iIFRQUBB25AnCB77xESkpB1f3/cNr98GYrmJjHkeb/8IzmePOfcm5An995zz+FzKEGLRVMIToSa3zhxOBxiYwIAlEvWRFhXV7d9+/bc3FxjY+PY2Fh7e/vy8nIdHR3JOoU2NjZv377t7OXNzc0xMTGZmZmSysHBwTJ26V+YCi0dCFQGhpBIJBKJRMruiNKo+earENF/lN0RJSOTye8dpyJTIhw5cmRRURFCSCgUTp8+ffXq1ZcvXxYIBPihIY5KpfL5/M4icLnc169f19bW4k9LSkoCAwNl6ZIEJp9EqPbZFXYAxufzJctwqiE133wVgq9HCGMVaTSafBfmlcyyraGhMWPGjMWLFyOELCwsWCwWj8fDF4SsqamxtLTsLIK5ufnmzZvlsR4hLMwrH+q+A0gkkpaWlra2trI7ojQikUidN1+FwMK8XUdYtnj58qWVlRVCyM7Ozt7ePjk5GSGEYVhycvKwYcOIagUAAAAglkxHhOvXryeTyXZ2dq9fvz59+jR+mwSZTF63bt2iRYs2btyYlpYmEonGjx9PUG8BUDIhj/PTTz8ZGhoSG3bAgAH+/v7ExgQAdJFMiTA8PPz69ev4seDTp08l6zEtXLjQxsYmMTHRw8Pju+++o9FoRHQVAOVrbW09/LiBrE3kAARRZU7Ag6eQCAFQFpkSYf/+/fv379/hf40bN27cuHGyBAfgU0RC/FHrkbEtkTHT/0YVl4kMCAD4EDDXKAAAALUG6xECoGxiUXNTY3p6OrFRSSRSnz59yPIZPg1AdwKJEABlK854/PhR4JR5xEbllb+9k5Ikj3uTAOhmIBECoGyYmOwytHlpLLFRDY/4C4VCYmMC0C3BaRMAAABqrdsmwvq6OmV3AYDupqysbOfOncruBeiS5OTk8+fPK7sXqkEup0Zramq++uqre/fuGRoaHjx4cMqUKfJo5d04HK7iGwXg09FSXRw0eiyxg2XEYrEmXevbb78lMCaQkzdv3rx9+zYyMlLZHVEBckmEq1evNjc3b2xsfPLkyahRo4YMGWJjYyOPhgAAnRGLxYLIc6hHx3f6fqQ3KYKzC8aGRRAZEyEalbpn22YPDw9iwwLQRcQnQjab/eeff2ZlZVGpVD8/v8DAwHPnzm3YsIHwhgAA70HXQ9pGRAbkscQ07WtmYUTGRIh+c7/9L78MHjyY2LBmZmbDhw8nNibolohPhCUlJWKx2MXFBX/q6emZm5vbWWWxWFxZWVlYWIg/1dbWJm4+NgzxWIjTSFA0hBBCfA4mEhEcEyEMEyN+C8Fhec0IExPfVbEQ8bmEh0UIER9TJMCEPOLDYghxmYijS2RMAQ8TCeTwuULy+BNAmtrIg5i10iQEsVt+vJz4y60XBMbEhHxyxcs9O7YRGBM3cOBAc3NzYmNiGEb4ekn19fVMJlPy7UqUhw8fVldXExsTIdS3b18vLy/CwyKEDAwM3nuBgET4un1paWkhISGNjf/++e3bt+/hw4dXrlzpsLKurq70et8UCkVXl5ivGCZPiImEBH+yMAxDiPDPK0amILGI6PWNMAwjvqsIIUwOSzHJIyYSizAyhfiukjVIYqLvScDEGCIR/7miaCCi/wQwDEMII5EIHmQnnz8BhIlFxP8JiMUII36pW3kkQjmFxTQ0SZiY2JgIISpNU5tGeX+9DxcZGXnw4MF31yH+iJDBYLBYLMkb0NTUZGZm1lllNptNeAcAAACAriP+9gk7OztNTc1Xr17hT7OyslxdXQlvBQAAACAE8adGEUJz586tr68/depUWlratGnTcnNzCT+lDgAAABBCLrdPHDx4cMmSJe7u7paWlv/73/8gCwIAAPhkyeWIEAAAAFAV3XaKNQAAAKArukMiTElJmTx58oQJE2JiYjqsUFZWtnjx4uDg4N27d7e2tiq4e0BaQkLCxIkTJ06ceP369fb/y+Px4uPjd+zYMX/+fBhRrHTR0dGhoaEzZszIyMho/78ZGRnr168fN27czJkzExMTFd89INHU1LRu3brg4OB169Yxmcz2FX7//fevvvoqODh47ty5hK982Q2ofCJ8/vz5+PHjg4ODZ8yYMW/evBs3brSpIBKJRo4cSSKR1q5dm5SUtGrVKqX0EyCE0tLSpk6dGh4eHh4ePmXKlPv377epUF5evm/fvtLS0l9++YXH4ymlkwB36tSpXbt2LVy40MfHJygoqKKiok2FEydO0On0+fPn9+/fPywsLD4+Xin9BAihKVOmFBUVrV27tqioaOrUqe0r1NTUjBo1atWqVba2tsOHD8/JyVF8Jz9pmIqbN2/e0qVL8ccHDx4cPXp0mwpXr161t7cXi8UYhuXm5mppaTU2Niq6lwDDMAyLiIj45ptv8MdbtmyZPHlyh9Vqa2sRQrW1tQrsGmjL09Pz4sWL+OMJEybs3LnzHZWXLVs2e/ZshfQLtPXq1SstLS387m0Wi6WlpfXmzZt31O/fv/+pU6cU1TvVoPJHhOnp6ZIpCgcPHvz06dM2FZ4+fern54ff3e/k5KSvry+5xxEo2HvfLPCJ4PF4r1696vqbVVBQABPrK0t6erq3tzc+J5eurq63t3eHJz85HE5jY2NiYmJxcfGQIUMU3s1PmsonwurqamNjY/wxg8Gor68XCASdVcDrVFVVKbSL4D9t3ix4Iz5Z+GSSRkb/Ttj97jfrjz/+ePLkyfLlyxXUOfB/dfErbvfu3Q4ODqNHj16zZo1kLmiAU/lEqK2tzeX+u/Qgl8ul0+lUKlW6go6OjvTVJg6Ho6enp9Augv+0ebPgjfhk6ejoIIQkfzjveLNu3ry5dOnSuLg4BoOhuP4BKe2/4jqcsTkqKorJZL5+/fro0aP/+9//FNhBFaDyidDOzq6oqAh/XFhYaGtr26aCra2tZP51LpdbVVXVvg5QjPe+WeATwWAwtLW1pd+sDs98pqamzpgx4++///b19VVo/4AU6a84hFBRUdE7/rJcXV3HjRuXmpqqiJ6pDpVPhBEREWfPnuXz+RiGRUdHR0T8u2Tob7/9VlBQgBAKDw9/+PAhPkrqwoULLi4u7u7uyuyxGouIiDhz5oxIJBKJRKdPn5a8WSdPniwvL1du34A0Eok0adKkU6dOIYSam5v//PPPyZMnI4RYLNbx48fxw/r79+9Pnjz50qVLcMFJuUaMGNHc3JycnIwQSk5OZrFYQUFBCKFnz57hy/4IBIKSkhK8ckNDQ3Jycq9evZTY4U+RskfryIrH440ePbpHjx6enp79+vVraGjAyy0tLS9fvow/PnjwIIPBGDRokLm5+e3bt5XXWXXHYrGGDh3q6urq6uo6fPhwfJwbhmHa2tpJSUn4YxMTE0NDQ4SQoaGhiYmJ8jqr7oqKipydnT/77DNra+uZM2eKRCIMw/Ajj8rKSgzDhg0bRqVSjf4TFham7C6rr4sXLxobG/v5+TEYjD/++AMv3L9//5AhQzAMY7FYDAbD3d3dx8dHT09v1qxZAoFAqf395HSTKdZyc3MFAoG7u7tk8S18GLGGxr+TqdbW1paVlbm6umprayuvmwAhhLKzsxFCbm5ukpLm5mYdHR0KhYIQkqxkiZOM1wCKJxKJXr16ZWBgYG9vj5dgGNbc3Kyvr08ikVgsllD4/5dmpFKpRC0mCj4Ck8nMy8tzdnbW19fHS/h8vkAgwC/3ikSivLw8Ho9nZ2cHf1PtdZNECAAAAHwclb9GCAAAAMgCEiEAAAC1BokQAACAWoNECAAAQK1BIgQAAKDWIBECAABQa5AIAQAAqDVIhAAAANQaJEIAAABqDRIhAAAAtQaJEAAAgFqDRAgAAECtQSIEAACg1iARAgAAUGuQCAEAAKg1SIQAAADUGiRCAAAAag0SIQAAALUGiRAAAIBag0QIAABArUEiBAAAoNYgEQIAAFBrGsptfunSpatWrXJ0dCQ8cuRXM1JSkgkP2xVfzZq1fdcepTT90QQCgYaGBolEUnZHVINIJEIIUSgUZXdENWAYJhQKqVSqsjuiMvh8Po1GU3YvVIbsu0vJifDJkyc1NTXySIRZmRmb+ph5mOgTHvndUopqM55lKrhR2QkEAjKZDN/sXQSJ8IOIxWKBQACJsOtaW1shEXad7LtLyYlQrsx16HYGWgpu1ERbU8EtAqAOeDzevXv3lN0LBeFwONra2sruxSend+/e5ubm8ojcnRMhAKDbuH379pdfftm3b19ld0QRMAyD6xRtFBYWTp8+ffv27fIIDokQAKACxGJx//79r127puyOAOXYuXMnfklCHmDUKAAAALUGiRAAAIBag0QIAABArcE1QoKVs3iPcx4HDR2s+KY1tbQuXf5bX1/Rd4wAAIBKg0RIsOoWnglF/LUpX/FNr0h5UV9fD4kQAAA+SJcSIZvNPn36dGpqKpvN9vb2XrNmjZmZGf5fjx49OnjwYFNTU2ho6JIlS/Ahv0Kh8Ntvv01KSjI3N//mm288PDzkuAWfHoa25lA7huLb1YIbloE6aWpq+vbAAZFIqJjmdHR0165bR6fTFdMcUKQuJcL8/Pw7d+5ERESYmpoePXp05MiRGRkZZDK5oqJi1KhRUVFRHh4eCxYsIJFIS5YsQQjt2LHjxo0bhw8fvnv3bkBAQF5enp6enpw3BACgXt68eXP25x9nuFsoprnvssqmTpvm5OQkKeFwOHV1dXZ2dpKS0tJSY2NjHR2drgQ8ceLE8OHD3d3die/rh7h69SqVSh05cqR0YX19fW1treSpqakpg9HBj/sbN26QSKSRI0cWFRXFxcUtXbpU7t2Vjy4lQm9v7z///BN/7OPjY2hoWFxc7OjoGB0dHRAQsGjRIoTQvn371q1bt2TJEj6ff+LEidjYWD8/vyFDhly9evXSpUtz586V40YAANSSpaHeon7ET9DYoUt59W1KkpOTly5dWlhYKCkJDAw8cODAhAkTuhLwwoULVlZWnSXCjIyMDRs23Lx580P7OWnSpIULFwYGBnaxfkpKira2dptEeOLEif3790ty/LJly+bNm9f+ta9fv8YTYUlJyS+//NLNE6G0nJwcOp2Oz3OTmZk5aNAgvHzQoEG5ubnNzc01NTUNDQ0DBgyQlGdkZBDYYwAAUAkikai8vNzS0lJ6nlUej1dfX29tbd2mMpfLbW5ulkwhxuPxSktL29RpaWnhcDimpqbtWzE1NdXS0kIIVVRUcDgc6QoYhlVUVJiZmUl3QyQSVVRUWFlZddb5wMDAK1euSJdwOJza2lorKytJnJUrV75zB7SFYVhpaamJiQk+gVxdXR2dTtfV1ZVU4HK5VVVVRkZGhoaGHxRZRh+WCFtaWubNm7d9+3Z8M6qrq42MjPD/MjY2xktqa2v19fUl8xEbGxvn5eV1FrC4uPirr76SnEmws7M7d+7cR2xGe5hYTEicj2obU06zCHE4HDab/RGv5XA4AoEAZpHuIj6fjxCCaZG7SCQStba2imX7k+RyuZiS/rI+wtKlS7lc7osXL3g8XmVl5dWrV319fRFCJ06c+Oabb3r06GFkZNTS0oJX5nA48+fPv3fvnqGhIYZhly9f7tGjx5w5c4qLi/v164cQSktL4/F4kZGRmZmZurq6dDr98uXLtra2CKGoqKjvv//e3t6+urr6yJEjxcXFz58/X7ly5fbt2xcsWPD1119funRp7dq1lpaWZWVlO3fu/PrrrxFCqamp06ZNs7a2FolEdnZ2Xl5e792iRYsWJSUlMRiMvLy8PXv24AeIGzZsIJFIe/fulVRjMpmGhoYikYhMJiOExo8fHxYWNnPmzKioqAcPHlRWVvJ4vH379jk6On755ZckEqmxsdHf3//XX3/V0ND4+eefd+7c2bNnz+rq6rCwMOmwOD6f3+H3W0tLyztmpKPT6Roa78l0H5AsTE/CAAAgAElEQVQIuVzu+PHjfXx81q1bh5fo6upyuVz8Mf4bRF9fn8vlSv8eaWlpMTAw6CympaXl8uXLe/XqhT81MDCQ/nUgCxJZebdIKmmSQBJC2traH7cDyWSypqYmJMIugkT4QUQiEZVKlXEWaS0tLdWafjM1NfXx48fGxsZ79+6NioqKiYkpKChYt25denq6s7PzrVu3RowYgdfctWsXhmF5eXkUCuWnn35asmTJ9evXo6OjIyMjnz59itdZuXKlmZlZbm4umUzet2/f2rVrL126FBsb+/PPP2dmZlpZWYnFYiaTaWRkdPny5Y0bN4aEhCCEcnJyVq1adf/+fQcHh8rKSh8fn8DAQBsbm5kzZ/74448TJkwoLS3t3bt3h4kwIyNj1qxZ+OPDhw9/8803x48fRwiVlJR89tln4eHhDAbjg36a3LlzJzMzs0ePHkKh0Nvbe/v27ZMmTRIKhePGjTt9+vTcuXN37NiRlJSED65sbm5uH4FGo3X4/YZhmIyJo6uJsLW1NSwszMLC4pdffpF8HO3t7QsKCvDHBQUFWlpaJiYmVCpVKBSWl5fjx/4FBQU9e/bsLCyNRnNzc/Px8ZFlGwAA4FMTFhaGnycbOnTo+fPnEULJycnDhg1zdnZGCAUFBUnG3cTExEyePPnvv/9GCGlqat65c6f90XNMTMyKFSv++usvhJCOjk5qaipCKDY2NjIyEj+9SSaTJefnJOLj43v06PHkyZMnT54ghGxtbe/fv9+7d+/W1lb8Qqatre3YsWM77L+ZmZkkVdPpdLFYfOTIkYKCAvxXYHZ29uDBH3a39OjRo3v06IEQysnJKS4uRgjhQ0/s7OxSU1Pnzp3bs2fPDRs2zJ49OygoSMG3gXUpEfL5/IiICB0dnTNnzkgfNEyZMmXGjBlbtmxhMBg///zz5MmTKRSKsbHxqFGj8IPc0tLShIQE9Vk8BQCgPnR0dCSnN3EtLS2SCz2SYxQqlSoQCBBCzc3N0qfHJI/r6+uLi4tbW1vxp8uWLRMK/889IRiGNTQ0FBQUNDY24iWRkZEIocbGxncvx1FfX9/S0pKeno4/DQgIcHR0bG5ulk4znZ2xs7GxmT59Ov5YIBAMHjw4PDw8NDTUyMgoJSWlzYZ3Rjqj4z8L8F5RKBRJr4yMjPAxJXFxcb/++usPP/wwffr0gwcPLly4sCtNEKJLiTAtLe2ff/7R19eX3D547dq1gQMH+vv7f/HFFx4eHqamphiGXb9+Hf/fgwcPhoSExMbGlpeXr1ixwtPTU17dBwAAJXF2dq6vry8pKcFHV5aVldXU1Li6unZW38XF5dSpU/gSS2w2Ozc3Fy/v1atX//798eH3EjQaTZIOSSSSh4fHsGHDvvzyS+k6np6e9+/fbzNWU/qFvXr1unHjxt69e6XPKldWVpaVlTU0NOCZKSMjo82Q0fby8/OZTGZUVBRCiMlkVlRUdFZTV1eXSqXW1taam5uLxeLs7Oz2ddzc3FpbW5cuXdpmxJChoeGaNWvWrFmTmJg4Z86cTy4RBgQEdHgumEQiHTt2bOvWrY2Njc7OzuT/Lst5eHjk5ua+ffvW3Nxc8isAAAC6Exsbm1mzZk2YMAGfS+THH3+cPn26vb19Z/WDg4M3bdq0aNGisWPHRkdHS64x79mzJywsrKWlpVevXmVlZTk5OQcPHnR2dq6trd29e7eZmdmcOXP27ds3e/bs2tpaV1fXoqKi8vLy3bt3L1++vG/fvqtXrw4KCiouLnZxcQkKCurbt++xY8eqqqr69+8fERFx9OjRqVOnTp06VSAQpKamLl261NXVNSIiYurUqUuWLElJSSkqKnrvltra2opEogMHDri7u//000/48NQOUSiUESNGLFmyZNq0afHx8Twer30dMzOzNWvWjBkzZt26dQYGBs+ePXN0dJw6deqMGTPGjRtnbGx88eJFfJSQwhAwxZqZmZnkSFGCQqEo/UZRAED3xhMIS5hcxbQlFHUw6vXXX3/9448/0tLSMAxbuXLllClT8PLQ0FDJ4CBbW9s1a9YghCgUSmpq6vfffx8bG7to0aLw8HB8YIifn9+9e/d+//33P//809LSMjw8HCFkYGCQlpaWlJSEnw4dNWpUUlLShQsXnj9/bmNjg1/hMzU1ffbs2S+//HL58mUrK6sxY8YghKKioi5fvlxeXs7lcjU0NG7fvn369Olr167RaDRfX1/84PXXX389fvx4TEzM0KFDL1y4QG03KZW/v7+Li4vkqY6Ozq1bt3755ZeioqItW7bk5ubiVzpHjRqFH2s6ODhIDkzPnz9/5MiRq1evzpgxY8yYMfghckBAgPT4l927dw8ePDgxMbG5udnd3d3f359EIn3++edpaWlsNrtPnz74uV+FISl3RPLAgQO///57yU2HBOrX23Obp35fi04HrMrJrrs5+UzemRBvBbeLEBpy4UnKo6eOjh9zfzGHw4FRo10Ho0Y/CH77hIyjRhMSEo4ePSq9MG9+fv7oEYEigUDmDnaJjq5eyr00ExMTxTQH2sAX5t2xY0f7/2KxWDJOXgaTbgMAVFLPnj1zC4uV3QvQHcB6hAAAANQaHBF2H0KR+OXLlw0NDR/xWh6PR6PRyB81CwGJRHJ2doZ51QEAKkpeiVAsFhcXFyt+yjh11sRuWbsgkk77qMWYMIQ+dtaOuuYW3yHDFi9d9pGvl4GRkRHMxgAAkFFXE+GaNWtiY2Pz8vKOHTu2ePFivDAuLi40NFRS5+rVq/iwpZycnJCQECqVWlVVtWbNmk2bNhHeb9AemYROj3K31e90ZLOcLLmelZac1PD2hYLbRQilvS1ht7TAEnEAAFl0NREOHjx4ypQpq1atal/efuKY1atXT5o0KSoqqqioqE+fPhMmTIBbKboxDEOf9zDbH9DpfcTy41JYIeNUzgAA0NVEiN+20v52E4QQi8XS0dGRXF5qbGxMSEj46aefEEIODg7BwcEXL17cuXMnQR0GAKip0tLSX375Rdm9AMqRnp7ep08fOQWX9Rrho0eP7O3teTzepEmTjh49qq+vX1paSqVS8SVCEEJOTk74/Kod4vP52dnZkjUyDA0N3zFDNwBAbXl6evr5+UkmqOzehELhe1cOUjcWFhYBAQFyCi7Tvh44cGBVVRWDwaiqqgoLC9uwYcPx48dZLJb0BDza2todLqiBq6ysjIqKgvUIVZ7yNpnNZiv+7CjcUP9BCFmP0NjY+NChQ0R16RPHZrOJWpCum1H+eoTtSRZKtrCwWL9+PT6NkLm5eXNzs0gkwqcpaWhokKy53J69vb2cZpZRw/UIlUl5m6yrqyvjlCUfARLhByFkPUK1IvsCe2pF9t1FWLaoq6vDu2Jra2toaIgvf4UQevTo0bsXCgEAAACUqKtHhI8ePSopKampqcnMzPzzzz8HDRpkY2Pz008/GRsb29vbv379etOmTVu2bEEIaWpqzp8/f9WqVUeOHElLS3vz5s3UqVPluQkAAADAx+tqInz58uXjx4/9/PwQQklJST179rSxsWEwGBcvXqypqbGysjp27NjEiRPxyjt27Ni7d+/q1autra2Tk5MVvNYwAAAA0HVdTYSRkZHt18WIiIiIiIhoX5lKpW7dunXr1q2y9g4AAACQM5h0GwAAgFqDRAgAAECtQSIEAACg1iARAgAAUGuQCAEAAKi1ro4aZTKZGRkZeXl5fn5+np6ekvLa2trTp083NzePHTt20KBBkvKkpKTk5GQzM7M5c+bA7RMAAAA+WV09IhwxYsSqVas2b96cmpoqKWSxWAMGDHjz5o2+vn5ISEh8fDxefvr06a+++srExOTevXvDhg0TCoWE9xsAAAAgRFePCB8+fEihUIKCgqQLz58/b2Vldfr0aYSQkZFRVFRUSEiIWCzes2fPTz/9NH78+BUrVnh6esbFxeGrOAEAAACfmq4eEeIzaLeRmpo6atQo/PGoUaMePHjA5XJLS0sLCgpGjhyJECKTySNGjEhJSSGquwAAAACxZFp9orKyUrJAFL7ERGVlZW1tra6urmQlJnNz86ysrM4iVFdXR0VFSVaxsLe3X7t2rSxdksAwJS5cDsswKQ6PxyMrfKURfPUJxS//pKLwZZgU/zapLh6P1+Eq6KBD795dVCq1wwM5aTIlQg0NDZFIhD/GLwRSqVQNDQ3pLwihUPiOLmppabm7uzs4OOBPTU1NiXr737E8lfyp4TJMSmuZSqUq/isDwzC8aQW3q6LIZLJYLIbd1XVK+VSrrnfvrq78ApMpEVpZWVVUVOCPKyoqKBSKhYUFhUJpaWlpamoyNDTEy62srDqLoK+vP2HCBHmsR6iO2UiZlLa3KRTKe3/uyaNR1Mn1AtAhpbxNqgt21weRfXfJdLIiJCQkNjZWIBAghP76669Ro0ZRqVQrKysfH5+///4bIcThcBISEsaOHStLKwAAAID8dPWIcO/evcnJyc+ePauoqLhy5crWrVuHDh06YcKEH374ISAgwMXFJTY2NiEhAa+8e/fu6dOnP3jwICMjo2/fvv7+/vLqPlBvQpFoy5Ytij+JJBKJwsPDBw4cqOB2AQDy0NVEOG7cOF9fX8lTV1dXhBCNRktJSUlMTGxsbNy9e7fkFOjo0aOfPn16+/btyZMnBwYGKvVyHejOMLGY8uAfxY/CSCup19LSgkQIQPfQ1UTYq1evXr16tS+n0Wgdnvl0cHCQDIEBQH7mfuagpaHoqyk8EYwXBaD7gAHNAAAA1BokQgAAAGoNEiEAAAC1BokQAACAWoNECAAAQK3JlAjv3r3bT0paWhpe3tTUNGXKFFNT0169el29epWIfgIAAAByIdMUa01NTUKh8NSpU/hTJycn/MHatWuFQmF+fv69e/emTJny9u1bCwsLWXsKAAAAyIFMiRAhpKur6+PjI13C4XAuXLjw6NEjfX39MWPGDBky5Ny5c2vWrJGxIQA+HdXs1vRbSetb2Ipv2szCcjVBK7QAAHCyJsJXr155eHgwGIzJkycvXLiQQqEUFxfz+XxPT0+8gre3d05Ojsz9BOATUtjUotH8lvKoXsHtCsTibc/KIBECQCyZEqGrq+ulS5d69uz5+vXrpUuXstnsDRs21NfX6+rqSqZVMzAwePPmTWcRcnNzpeep6tu37+3bt2XpkoQy14pT3uJ8SqN+m+xrZbSon6OCG20RiH56VsZisRTcroxEIhGfz5cs2Qbei81WwskG1fXu3UWn0987HbFMidDFxcXFxQUh5OTkxGQyDxw4sGHDBgaDwWazMQzDcyGTyTQxMeksgrOz8/fffy+PZZiUuQqoGs6tqoabrDx6enrK7sKHwRfm1dbWVnZHVInKvcvKJePuIixbaGtr4+sx2draUigUyenQV69eOTs7E9UKAAAAQCyZEmFiYmJRUZFYLH758uXOnTtDQkIQQrq6uhEREXv27Gltbb13715KSsr06dMJ6i0AAABAMJkS4ZMnT4YMGaKpqTl27NiRI0fu2rULLz906FBTU5OJicmMGTOio6Otra2J6CoAAABAPJmuEW7atGnTpk3ty01NTePi4mSJDABoT4RhZLF4YsgYJbRNIq3bsq1///5KaBoAOZP19gkAgMK0CsVcgWAEVqH4pi++qc7IyIBECLolSIQAqBIyiRTirIR5mh5Utyi+UQAUAybdBgAAoNbgiBAA8H7lTM4fv/+W/iDtI16LYZhYLKJQPvLbxsnVbf2mzR/3WgC6otsmQkz95joBQH6qWBwXjWKnckVPatPA4f+SnKxuibC1tRVuqO862XeXvBJhVVXVgwcPzM3NBw0aRFLGtCPl5eWol4Hi2wWgu/K1Mvqyl42CGy1mci6X5iu4UeXKyMhYtWpVamqqsjuiGpqamnx8fIqLi2UJIpdEmJqaOnHixBEjRjx//tzb2/vixYvyaOXdMEx5c42Cbg/ONygQXyBMT09XfLtUKtXDw0NDQ9GnzXg8Ho/HU3CjqovP53O5XBmDyOU93rhx486dOxctWtTc3Ozq6pqWljZ48GB5NAQA6N6q2K2VtbWRE0MV33RRbdPZCxdDQ5XQNFAw4hNhVVXVw4cP8YXp8SUJY2NjIRECAD6CCMOMtWjx43srvukFt94KhULFtwsUj/hEWF5erqOjY2xsjD+1tbV9+/ZtZ5Wrq6u3bdsmWZ7C0NCwV69ehHRDJBLdyK9+Xafoa/vZdaxqDv/8yzIFt4sQwjDsSk6lsRZNwe0WM7k0dqtSNhkh9MercipF0XcBVbe0vqhhKn6T2XyhGMOUsquZXP6Tikaywq/3FzS08AQipWzy87KaLetWH9i1XcHtNrNY1VXVA/t6KbhdhFBdXb2hoYHizwYjhJzdPQcPG/4RL2SxWDwe78SJE51V6N+//2efffbuIMRvsEAgoFAokqdUKpXP53dW2djYOD8/v6ioCH+qpaUl+9nefyObWaYySRS2gJBoXdeqoSeg8y+UK7pdhJCRsfG1OoxM/pim2Wy2piaNSv2YJMrVMmwRi5SyyRYmJn9WCRFS9LczX1P3LZdUrZRNNjVRyq6mGRi9btXI/6im+Xw+n8/X1dX9iNeKxRqGxsZK2WSKjj4ikbi8VgW3K8YwDRpN8e0ihAQiMa+1lSJUwsqR5RWVT548+YgXisViFxeXd7xWW1tbCYnQwsKCxWK1trZqamoihGpqaiwtLTurrJRr4AAAAIAE8eeUbG1t7ezskpOTEUIYhqWkpAwZMoTwVgAAAABCEH9ESKFQ1q1bt2jRoo0bN96/f18gEEyYMIHwVgAAAABCkOQ0A0tsbGxiYqKlpeWCBQsYDIY8mgAAAABkJ69ECAAAAKgEFV59AsOwlpb3LA3DZrPbFwqFQqLGpqqWDveGNC6XCzdOSbx3dxH+QpXG5XJFIiWMNlRR7/1b43K5HR6ltLS0qOHRi1AofPdsO0KhUCD4+KHFqpoIT58+bWJiYmtrO2jQoNLS0vYVXr586enp6eDgYGlpid/dj9u+fTuDwbCysgoNDVWfL6z09HRXV1cHBwdbW9ukpKT2FVgsVmhoqKWlJYPB2LFjB15YV1dnLGXfvn2K7bXSZGZmurm5OTg42NjY3Lx5s32Fv/76a8yYMVZWVvPmzZMuT0hIsLKycnBw8PDweP78uaL6q2RNTU343jA2No6Kimpf4dWrV5MnT3ZycnJxcZEu9/f3l3y6Pv/8c0X1V8mam5tDQkKsrKwYDMauXbvaVzh+/HjPnj0ZDIaent7XX3/d2vrvfRTFxcUDBgywtbU1NTU9e/asYnutTJs2bWIwGBYWFmFhYRwOp83/3rt3z9fXV09Pz9DQMCAgoKCgAC/ftWuX9NcXk8l8VxuYCiopKdHR0UlPTxeLxUuWLAkLC2tfx9fXNyoqCsOwGzduGBoaslgsDMNSUlIsLCxKS0v5fH5wcPDGjRsV3XUl8fT0/OGHHzAM+/vvv01NTXk8XpsKGzZsGD16NJ/PLysrs7CwSElJwTCspqaGQqE0/IfD4Si+50rRu3fvw4cPYxgWGxvLYDDab3h8fPyFCxe+/vrradOmSQpbWlqMjIzi4+MxDDt48GDfvn0V2WclWrlyZWhoqEAgKCoqMjU1ffDgQZsKL168OHHixI8//mhmZiZd/tlnn8XExOCfrubmZgV2WZnWrl07ZswYgUBQUlJibm5+9+7dNhXOnj2blZUlFourqqp69eq1e/duvDw0NHTZsmVisfjJkye6urrl5eUK77sS3Lhxw8bGpqKiorW1dcSIEdu2bWtTITU19caNG3w+v7W1debMmQEBAXj5pk2blixZIvn6EovF72hFJRPh3r17Q0JC8MfFxcUaGhqNjY3SFV69ekWn09lsNv60T58+586dwzBs1qxZq1evxgtv3rxpbW2twF4rzePHj/X19VtbW/Gnzs7OMTExbepYWVnduHEDf7x69epZs2Zh/yVCRXb1U5CRkaGrqyv5reDu7v7nn392WHPr1q3SifDixYuenp74Yy6Xq6Oj8/z5c3n39lPAYDBSU1Pxx0uWLFmwYEGH1VJTU9snwsTERLn37xNjbm6elJSEP16xYsXXX3/9jsrr16/HP2N1dXUUCqW0tBQvDw4O/vbbb+Xd1U/BtGnTJEcs8fHxjo6O76h88+ZNyWds06ZNa9as6WIrKnlqND8/38PDA39sZ2dHo9HarMGRn59vb2+vo6ODP3V3d8/Pz8fL3d3dJYXl5eXqcLEwPz/fycmJRvt31hjJ3pDgcrkVFRXSe0ZyekEsFpuZmZmbm3/55ZdVVVWK7Lay5Ofn9+jRA58OAnW0u97xQsnHkk6nOzg4dPGFKq2pqam+vl6y4dIfnq6YOnWqgYHBsGHDHjx4IJ8OflrYbHZ1dXUXdxefz7927drw4cMRQkVFRTo6OjY2Nl15YXeSl5cn/dVUXFz8jmuBMTEx+O7CnTx5Uk9Pz8PD4+TJk+9uRSUTYVNTk7a2tuSpnp5eY2OjdAUmk9lhBSaTKcmO+IRPTU1NiuixUnW2NyTwnSCpo6ur29DQgNe8d+9eSUnJ48eP2Wz2lClTFNhrpXnv7iL8hSqtsw9PV/zwww+5ubklJSXBwcFjxoxRh19aXd9dGIYtW7aMwWBERkaijj5dXd/PKq3Nl7ZYLG5ubu6w5h9//PH3338fPnwYfzplypQXL17U1tYeOnRozZo1sbGx72hFJROhqamp9JXPpqYmMzOzd1RobGzEK5iamkoyX2NjI5lMlsz33Y11tjckTExMyGSypE5jY6O5uTlCiE6n+/n50el0e3v7o0eP3r59Wx1+N7x3dxH+QpWGb2P7D09XDB482NDQ0MDAYOPGjVZWVuqwFK2pqSmJROrK7lq7dm16evqVK1fwqZulv7ve/cJups2XNpVKNTIyal8tLi5u+fLl+AVFvKR37962trZ0Oj04ODgyMrIbJkJPT8+MjAz88atXrzQ0NOzt7aUruLm5lZaW1tfX408zMjI8PT0RQh4eHpmZmXhhZmams7MzlUpVYMeVw93dPTc3Fx8ii2HYs2fP8L0hQaVSnZycpPeM5NSNBJ/PJ5FISpmWXsHwk074r04MwzIzM9vsrs5If7qampoKCwvb78buR1tb297eXvL32OGH570wDOPz+erwx6ipqdmjR4/37q5vvvkmKSnp+vXrBgYGeImDgwOJRHrz5g3+NCMjQx0+Xajdl7abmxuZ3DZt3bx5c+7cuXFxcd7e3h0GaW1tfc+n62MvYSpTQ0ODgYHB2bNnS0pKQkJC5s+fj5fv2LHj+PHj+OMxY8bMmTOnrKzs0KFDtra2fD4fw7CsrCwDA4PExMTc3Nw+ffrgIwPVwfDhwxcvXlxWVrZr1y4XFxeRSIRhWFxcnORC/aFDh7y9vd++fZuUlGRgYJCVlYVhWHJyclxcXH5+/sOHD4cNGzZu3DhlboMCBQYGLliwoKysLCoqqkePHkKhEMOwa9euzZ49G69QWlqamJg4ffr0wMDAxMTEnJwcDMMEAoGDg8O+ffvKysrmz58/cuRIZW6DAkVFRfXr1y8vL+/69ev6+vrZ2dkYhlVVVQUEBNTX12MY1tLSkpiYeOjQIUNDw8TERHxYaXl5+a+//vr69evs7Oxly5ZZWFjglbu9AwcO9O3bNzc39+bNmwYGBi9fvsQwrLa2NiAgoKamBsOwvXv36uvrX7x4MTExMTEx8enTp/gLIyMjQ0NDS0pKzpw5Y2Rk1NTUpMzNUJSnT58aGhqmpqbm5OT06tXr2LFjePnMmTOvX7+OYdidO3e0tLR27dqV+B98gOgPP/yQnp6en58fHR2tpaUlGaDUIZX8gW9kZBQXF7d58+Zdu3YFBgYePHgQLyeTyZIfC6dPn16xYsXw4cN79ux57do1/OeAl5fXyZMnN27cyGazJ06cuGzZMqVtg2KdP39+5cqVw4YNc3Nzi4uLw/cSmUyWHOEtX768oaEhNDRUV1f3119/9fLyQghhGHbkyJGSkhIDA4PAwMDNmzcrcxsU6Ny5c/iHx9nZ+erVq/i5KendlZGRcfToUbxw//794eHhLi4uGhoa8fHxq1evPnnypK+v72+//abMbVCgtWvXMpnMsWPH6uvr//bbb66urni5ZHc1NDTs378fIdSvX7/9+/c7OjoOHDiQQqHEx8cfOnSIRCJ5e3unpKRIFjHt3lauXNnY2Dhu3DhdXd3o6GjJ+QbJ7qqvr+/fv/+pU6fwp97e3j4+Pgihw4cPr1mzJigoyNLSMj4+XnKw2L35+PgcP3581apVXC43IiJi4cKFeLmGhgb+PVZWVjZ48ODbt2/fvn0b/6+goCCEUEFBwalTpzgcjr29/f/+9z+8sDMwxRoAAAC1ppLXCAEAAACiQCIEAACg1iARAgAAUGuQCAEAAKg1SIQAAADUGiRCAAAAag0SIQAAALUGiRAAAIBag0QIAABArUEiBAAAoNYgEQIAAFBrkAgBAACoNUiEAAAA1BokQgAAAGoNEiEAAAC1BokQAACAWoNECAAAQK1BIgQAAKDWIBECAABQa5AIAQAAqDVIhAAAANQaJEIAAABqTcmJsKGhAcMw5fYBAACAOiMpNw8NGTLk+++/9/HxITzy/BULspvyqHQagTH53FYvM49j3x4lMCZACPF4PDqdruxegC6BN0tViEQisVhMpVKV3REVoKHc5oVCoVAolEfku6l36WHGej21CYzJym2+e/UugQEBTiAQwHerqoA3S1VgGCYSiSARdoWSE6HKEYvEjY2NxMbU0NDQ09MjNiYA4N2uXLmSkJCg7F7IkVgsxjCMQqEouyOEmTp1qr+/vzwiQyL8ANzqlrdZL20cbIkNy+e2/hP7T3BwMLFhAQDvEB8fLxAIBg8erOyOgC65evVqSkoKJELlE/PFujYGfaOGEhu25MQbNptNbEwAwHsNGzYsMjJS2b0AXVJVVSUSieQUvKuJ8OHDh/fu3cvLy5syZYokJz9//q3iyQsAACAASURBVPzHH3+U1Fm6dGmvXr0QQkKh8PDhw7du3TIzM9u8ebObmxvR3QYAAACI0dXbJ3744Yc3b94kJia+evVKUlhcXHzr1i2f/xgYGODlu3bt+uOPPzZs2ODi4uLv7w+HOwAAAD5ZXT0ivHDhAkIoKCioTbmFhcW8efOkS/h8/vHjx69cuTJ48OCAgICEhIRLly59/fXXhHQXAAAAIJasN9QXFRVNnz59+fLlaWlpeElpaWlDQ8OAAQPwp35+funp6TK2AgAAAMiJTINlLCwsFi1a5OTk9ObNm+Dg4JMnT06ePLm6ulpfX19D49/IDAajoKCgswglJSVfffWVjo4O/tTJySk6OlqWLkmIMTEhcdohfv4BDMN4PJ46n0BuaWkhkUjK7gXokm7zZsnpDmYgP3w+/yO+J+l0uiQfdUamROjr6+vr64s/NjQ0PHTo0OTJk3V1dTkcjqQOh8N5x01yFhYWy5cvx4fYIIT09fV1dXVl6ZIEmSSn2eOI/wogkUh0Op2oDVdFGIap8+arlm7zZrX/cjz+0/Hd+/YorAP+w4dfOHtBYc11AzQaTU6fPcJun+jZs2ddXR1CyMbGRigUlpeXW1tbI4QKCgocHR07exWNRnNzc5PHFGsAAPBBcnLfUvvoWPjbKaAtTgXracLTNoVxcXFZWVltCt3c3CZOnCh7i0lJSdeuXWOxWPb29sHBwfCtK02mRJifn+/o6Egmkzkczs8//+zn54cQMjY2/vzzz0+ePLl9+/aysrJr167dvQvTkgEAVICGLpVuRuS8jJ0RcoWtqO0cVSKRCD9he+PGDR6PN378eLxQ9uaOHTu2f//+9evXGxsbZ2dnnz9/HhKhtK4mwnnz5l2+fJnFYj18+HDLli1nzpwJDQ3dt2/flStXrK2ti4uLfXx8Tp48iVc+dOhQSEjIP//8U1paKrm5ECgSm80eFxbKaeW8v+qHICHSzs07Ro4cSWxYAABC6Isvvvjiiy8QQkwmk8lkbt++HcOwy5cvM5nMmJgYKpUaHBz8+PHj0aNH4/WvX7/ev39/Y2NjhFBVVdWNGzc4HM7nn3/u5OTUJvKZM2d27949c+ZM6UIOh3Pz5k28RYRQamqqi4uLlZUVQqixsfH69esVFRVubm6jRo3CTyM/evTo8ePHNBpt5MiR+Hm+pqamhISEurq64cOHe3l54XGePn167949Eonk5eUVEBCAECooKLh27Rqfz3dycgoODsanP3316tWdO3e0tLTGjx9vZGSEEBIIBP/8809+fr6RkdGIESPecSqRcF29kHbkyJH8/PyampqysrL8/Hz8nTh58uSLFy/Onj2bm5ublJRkYWGBV/b09MzNzT179uybN2927twpr76DzjU2Nj558oTrRyL2X3Fr2cuXL5W9cQCoC5FIFBERERIS8urVq8bGxtzc3OXLl0v+d/ny5bm5uQihx48fDxw48NWrV7W1tUFBQbdv324Tx9DQMDExsc08ybW1tdKpcdu2bU+ePEEIZWdne3l5JSUlicXic+fOFRYWIoTWrVv31VdfNTc3l5aW/vzzzwihwsJCX1/ftLQ0NpsdHh6O32L3zz//RERE8Pn81tbWEydOIIRev349ePDguro6Mpn8v//9r6qqCiF06tSpCRMmNDQ0ZGZm+vj4VFdXI4SmT5/+22+/0en0oqKiv/76Sy47tBNdPSLU0dGRjO2UZmFhIcl//yeuhgYcCCoXVZNq1MuU2JjslwRPOA4AeK9Vq1ZNmDABIfTo0aMOK6xcuXLv3r1Tp05FCHl5eW3bti01NVW6wpEjR2bMmGFqatqrV68xY8asXbsWPwjr0IYNG+bMmbNjxw5JyYsXL06ePJmbm2tiYiIp/Oabb+bMmbNx40aEUHBw8BdffDFt2rTU1NTp06evW7dOUu3hw4cDBw7cvn27pKS5uXn16tXPnj1zcHBACFGp1B9++GHPnj0pKSl37951dXX9kH1DDJhrFAAAPmnvnhlcJBKlp6efO3cuJiYGIcRms6Xn/8L17t372bNnubm59+7dO3bsWHx8fEZGRmcBnzx5gqc3iadPn/br1086CyKEHj9+XF5enpmZiRDCMKy4uJjNZk+cODEkJCQ1NXXs2LFffvmljY3N559/vnPnTi8vr9DQ0KlTp3p6er5+/ZrP50uSZVFRET6yMjIysn///mPHjh07dmxERIQiF5CCRAgAAJ80yQKQFApFeuwMj8dDCJFIJAqFMnfuXFvbfxfGIZM7vubl7Ozs7OwcHBxsaWmZm5urp6cnHY3L5eIPaDSaQCCQfmH7ErwzERERkrlTNmzYQKfT/fz8SktLk5KSLl++7OXl9fr1a1tb29zc3Lt378bExPj5+SUkJNBoNC0trfXr10tC6evrI4T27t07f/78a9euHT58OCYm5vLlyx+8pz4WJEIAAFANNjY2FRUVTU1NhoaGz58/LysrQwiRyWR/f//MzEzJsJeWlpY2L3zy5Em/fv3wmRAKCwvJZLKZmZm+vj6fzy8uLra3ty8pKZFc/g8ICDhz5syQIUPwp2KxePDgwQsXLszJycHPW4rFYjKZHBQU9OjRo4ULF+JhW1paNDQ0WlpadHR0xo8fP378eBcXl5ycHD09PR0dncDAwMDAwPLy8oyMjMjISBqNVldXN2rUKOkOczgcBweHRYsW+fj4EHLHSNdBIgQfgFnQuCl509YdW4kNq6+vX1FaQWxMALofCwuLsLCwQYMGeXt783g8/IwiQujHH3+cMGFCSkqKs7NzQUGBtbX1uXPnpF+4bt26wsLCvn37CgSCtLS0ffv2MRgMhNCyZcv8/f0HDRpUX1/fs2dPvPLevXvHjRs3aNAgNze3rKysixcvurq6Hjp0yN/fPyAgQCAQ6OnpRUdH7969OywszNfX19vbu7y8nMfjpaamLl68uLCw0NnZuaSkxNTUtH///seOHbt48aK3tzebzX7+/PnRo0e1tLTOnTs3a9YsfKmGrKysuXPnLly40NbWNiAgwNjYOCUlRXpMkAJAIgQfQMQXWo51tBrhQGzY+/OvExsQgI/T9LoeExE/jWJ7/Caedudfvxs3bhSLxQghCoWSn58vPZ3K77///ujRIw6HM2TIkOrqajMzM4SQg4PD06dPX7x4UVlZaWtr6+np2SZgSkpKXl5eXl4enU6Pjo7GX4UQOnjw4LRp0+rq6oYOHdrY2GhoaIgQMjc3f/DgQVZWVnV19bZt2/AhLXPnzh0/fnxWVpaWlhY+oZiRkVFycvKbN2+Ki4vNzMz69OmDEDp16tTz588rKirMzc19fHxIJNLatWtDQkIKCgoMDQ19fX1pNBpCKCgoKDs7+/nz583Nzbt27bKzs0MIFRQUZGVlsVisLVu2SE7zKgYkQvBhyDSKho7iLmIDoDBTJk3WpGoqqDF71Gemd2f/KUlUJBKpR48e0v9FIpEGDhyIP5bOFhQKpU+fPng26pCTk1P7+wsRQp999hn+QEtLSzqapFy6V59//nmbznh4eHh4eEi/sG/fvn379pWu5u7u7u7u3iaajo7OoEGDpEsMDAyGDRvWWf/lChIhAAAghNCgQYPafDUDNSGnmakBAAAA1QCJEAAAgFqDRAgAAECtQSIEAACg1j5gsExVVdWbN2+cnZ1tbGwkhXw+PzExsaGhISgoCJ+2HFdUVHT79m0rK6ugoKDOpjkAAAAAlK6riTAwMBCf7/XAgQOLFy/GC/l8Pr7KhouLy4oVK65fv47fX3Ljxo1p06ZNmDAhMzPT2to6NjYWn3oAAAA+ESQS6fDhw5cuXVJ2R+QIw7Bu891bWFg4ffp0OQXvaiKMjo62tbVtsxBdTEwMk8nMzMykUql79+7dvn371atXEUKbN28+cOBAZGRkS0uLm5vb7du3/f39Ce86AAB8tC1btrx9+1bZvZAjkUgkEonwG9i7h969e8spclcTIT65QBvx8fFffPEFPkf4xIkTt2zZIhAIamtr09PTw8PDEUI6OjrBwcHx8fGQCAEAnxQ7Ozt8QpPuSigUCoVCyYTd4B1kuqG+vLzcz88Pf2xtbS0SiSorK2tqanR0dPCpevDy7OzsziI0Nzf//fffkgVBTExMJPPGyghDipgniRAYholEovaTu8tCKBRimMrsAYQQsZsP5EcgEMCbpRLwREihUJTdESWjUCjvHaciUyIUiUSSBvDdLRQKpQvxcqFQ2FkEHo+XnZ1dX1+PP7Wzsxs3bpwsXfr/5JUF5BJXLBZLr4ciO2KjKYDKdVht4SfclN0L8H6i/yi7I0rWldGaMiVCS0vLmpoa/HF1dTVeQqFQ2Gw2l8vFZ66rqamxtLTsLIKZmdmmTZskK1oRSG6XiIkPSyKRqFQqsWcwNDU1VesiOZzAURUCgQDeLJUAp0a7TqYbG/z9/W/evIk/vnnz5qBBg7S0tGxtbXv06JGYmIgQEovFSUlJ+MhSAAAA4BPU1SPCU6dOPX78ODs7++LFi8+fP58/f/5nn3325ZdfHjhwYPbs2e7u7gcOHDhz5gxCiEwmb968eeHChXl5effv36fRaISd7QQAAACI1tVE6OjoKBKJfHx88KdGRkYIIT09vUePHv32229MJvPq1auSM5yzZ8+2t7e/devWsGHDoqOjNTRgjQsAAACfqA+4oT4wMLB9uamp6Zo1a7peHwAAAPikwORnAAAA1BokQgAAAGoNrt6B7unt27cxMTGEh6VSqUuXLsVnUwIAdA+QCMEnoaCggNiAZ8+ePXbpJ30PY2LD1iSXTZw4sXtPzQWAuoFEqHzCVuGLFy/wgbhEqa2tFYvFBAaULxKp31BfYkOyG9gWw20dJ7sTG5b1uJ7YgAAApYNEqHxNZQ1Hz/z429VzBMbkt7RyeVwCA8oXhvU+MJjYkK+OPFGluVYBAMoDifATQEKWXziaDrB6f80uY+U31h+sIzAgAAB0VzBqFAAAgFqDRAgAAECtQSIEAACg1iARAgAAUGtyTISqNHwfAACAupIpESYnJ/eUkpqaipdXVVUFBQUZGBiYmZn9/vvvBHQTAAAAkA+Zbp9oaWkxNTVNSEjAn+rq6uIPVq1aZW9vf/PmzYyMjMDAwOHDh8NMHAAAAD5Nsp4a1dDQMPoPPgEji8X666+/Nm7cSKFQfH19g4KCzp0j8lZxAAAAgECyJsJnz56ZmZm5urpu3bqVz+cjhEpKSjAMc3Jywit4eHjk5eV19nKxWMxisRr/w+FwZOwPAAAA8EFkOjXq5eV1+/ZtJyen7OzsmTNnikSiPXv2NDY26ujokEgkvI6+vv7r1687i1BYWBgWFkahUPCnrq6uSUlJsnRJQozJaaiO6szbpTo9VSEYwlpaWthstrI7ojQtLS2Sv27wKRP+R9kdUTI6na6h8Z5MJ1MitLe3t7e3RwgNGDBg586d27Zt27Nnj6mpKYvFEovFZDIZIdTY2GhmZtZZhJ49e37//fcDBgyQpRsdIpPkNCBWdb4CVKenKoSESDo6OpLL4WoIwzB13nwVgmdBOp2u7I6oAMKyhUgkwjOfra0tnU5/+fIlXp6VleXuTvAKAAAAAABRZDoi/Ouvv2xtbe3s7N68ebN169bp06cjhLS1tadPn75ly5aTJ0/eu3fvwYMHZ8+eJai3ACgbhphMZmNjI7FRDQwM8N+RAADFkykRVlVV7dy5s76+3tLSct68eStWrMDLv/322+XLl/v4+FhaWv7111/vODUKgGphN7P7DxpAphCZtEQCYfjE8PNnzxMYEwDQdTIlwsWLFy9evLh9uZ6eXnR0tCyRAfhEkZB31GBNhhaBIeseVzYWNxEYEADwQeBsDAAAALUGC/MCoGScCnbSjed6hnrEhqXRaGl30tzc3IgNC0D3A4kQACUTcgQGLsYui/sQGzb/UNaLFy9oNBqxYbW1tfX0CM7ZACgXJEIAlI9EIWnoUImNyaxpmrMgUlNLk8CYQr6wp2OP9EfpBMYEQOkgEQLQTZFJTku89F2MCQzJym/i/F1HYEAAPgWQCAEAXdXayCvMK7C0syI2LIlEuvT7xWHDhhEbFoAugkQIAOgqEUdA0aParfQgNmz5xbyKigpiYwLQdZAIAQAfgKxBpptpExuTSif4+igAHwTuIwQAAKDW4IgQAKBkTWWNi5cvXrV+NbFh3Vxdk28mExsTdEuQCAEASibiCxij7Bh9zQmMyW9uffZjFoEBQTfWbRMhh8uhIyIHjgMAEEKYfBZ8punTiL30SKap+3Wf4uLihoYGX19fZXdEBcglEWIYdubMmaSkJAsLixUrVtja2sqjlXerr6s3RjaKbxeA7g3DxMruQlcJBcKkpCTCw/bt25fBYBAelnBXr17NycmBRNgVckmEBw8ejI6O3rlzZ1pa2tChQ7Ozs2GVZACAIglYfHYza9a6SGLDNpc3bVu3dfVqgi9nygMmp4P37oj4RCgUCr/77ruzZ88GBQVNmjTp7t27f/7554wZMwhvCAAAOiXGKHSNnqu9iY36cu+jzVs3b9u5jdiwerp6L5+/JHZxZg6HQ2C07o34RFhaWlpZWSmZJGL48OEPHz6ERAgA6AbEfKFFsIP1SEdiwz5YdMOuhz2xMfm8VhcXl4KCAmLDMplMAwMDYmMihBgMhjzCdhHxibCqqkpfX59K/fcOWRMTk/T0TqfoffPmzciRIzU0/u2GlpaWq6srId0QIXHVjZI6rUpCouF49RxMLC48/ZrAmAghDGEND6vYr4lcmlXIEWhoUQnvqogrbH5dX1jFIzYszUCT8K4K6lsxrojwsFQdatlfeWQqhcCYnIpmEV9IeFfJVHJ1Ykl9WhWBMXn1HIQQ4V0VY1jD42p2NpPAmCKugKpDI7yrQq6oJZ9Z+r9cYsPS9DQZPhbExmQWNOSXFfQZ1JfYsHwen0qnkYgNipCxnnFP+x5ER0UIobCwsA4XkJdGfCLU0tJqbW2VPOXxeNranQ4G27dvH5PJlJwQ0NXVdXFxIaQbJSUl1tbWFAqRX1hATgoLCx0dCf6JDeRBJBKVl5fb2dkpuyPg/VgsFo/HMzU1VXZHlKwr3y3EJ0Jra2sej1dTU2NmZoYQKikpsbHpdPTmwoULCe8AAAAA0HXE32pjamo6fPjw33//HSFUV1d37dq18PBwwlsBAAAACEGSxxDbx48fh4aGenl5ZWdnh4SEHD9+nPAmAAAAAELIJREihFgsVkZGhqWlJVHX/AAAAAB5kFciBAAAAFQCZfv27cruwwdIT0+/ceOGQCCwtrbusEJlZeWVK1dKSkocHR0lQ0YxDLtz505KSgqdTpceQ1VXV3flypXc3Fx7e3vJ/R6AKPfv309KSqJQKObmHU+mXFRUFBsbW11d7ejoKBk5LBKJkpKS7t69a2BgYGRkhBe+ePHixYsXBQUFBQUFpaWlDg4OitkENcHhcOLi4jIzMy0tLTsb43337t3k5GQqlYoPgsOx2ez09PT6+noLi/8z9P/x48c3b97EMMzS0lK+XVc/zc3NsbGxr169srW11dTUbF9BLBbfunXrzp07urq6xsb/f75lJpP59OlTNpst+Q5sbW1NTU0t+A+JRJL8xakdTHXs37/f2tp6/vz59vb227dvb1/h6dOnxsbGs2bNGjp06KBBg3g8Hl4eGRnp5uY2f/58U1PTc+fO4YU5OTmmpqbTpk0bOXKkp6cnk8lU3JaogdWrV/fs2XPBggWWlpbHjx9vX+HmzZvGxsaRkZH9+vUbM2aMWCzGMEwsFo8bN65v375ff/01g8FISEjAK0+aNMnd3X3EiBEjRowIDw9X6JZ0d0wm08PDY+TIkdOmTTMzM3v79m37OosXL3ZxcVmwYIG5ufmpU6fwwv3799NoNCMjozFjxkhX3rZtm729/fz5821sbA4cOKCIbVAbFRUVdnZ2X3zxxYQJE+zs7CorK9vXmThxore399y5cxkMRmxsLF64Zs0aGo1maGg4e/Zs6WhkMnnEf37//XcFbcanR2USIZPJ1NXVzcrKwjDs7du3WlpadXV1beqMGzdu586dGIYJBII+ffqcP38ew7DXr1/r6urW1tZiGHb16lU7OzuhUIhh2OzZs5ctW4ZhmFgsDggI+O677xS8Rd1YaWkpnU4vLS3FMCwtLY3BYHC53DZ1+vfv//PPP2MYxuFw7OzskpKSMAxLSUmxsrJis9kYhkVHR/v4+OCVJ02adOLECYVug9r47rvv/P398R8iy5YtmzNnTpsKeXl52traVVVVGIbdunXL0tKSz+djGFZZWclmsw8dOiSdCGtra7W0tPBsmpWVpaurCz8xCbRx48aIiAj88ZQpUzZu3NimwoMHD0xNTfF9fuHCBU9PT7y8rKyMy+WuX7++TSLU1NRUSMc/dSqzUklqaqqlpaWXlxdCyNnZ2dXVNTExUbqCSCRKSEjAb9XQ0NAYP358fHw8Qujq1av+/v4mJiYIoVGjRjU2Nj5//hwhFB8fj1cmkUhhYWF4ZUCIhISEfv364feP+vn5aWpqPnjwQLpCdXX148eP8f2vpaU1ZswYfP/Hx8cHBwfr6OgghMLDw9PT0ysqKvCXFBYWXr9+nfD5ogD+h0AikRBCEydObP+HcO3aNT8/P/z8dkBAAJ/Pf/r0KULIwsICf6ekJSUlubi4ODs7I4S8vLwsLS1TU1MVsBVqIi4ubuLEifjj8PDw9m9WfHz8yJEj9fX1EUJffPFFTk4O/idjbW3d4coHGIalpqbeuXOHxWLJue+fNJVJhOXl5dI35ltbW5eXl0tXqK6uFgqFkjqSCtIvxK9XlZeX8/n8urq69pUBIdq8WVZWVm12b0VFBZ1Ol6xl0+Gbpa+vr6enh5fTaLQHDx4cPXr0s88+i4yMxGCEF3HKy8slV9ytra1ra2ulZ4ZC//dNIZFIlpaW7/hjee/fKZBFmzer/b6V3v9aWlpGRkbv3v/m5uaHDx9evXp1jx495LFklapQmYV5RSLR/2vvzMOaOtYGPlkghD2gCUlYI5siooAoqGyKFqvWQlXcADf0amv56lZtH7xiqxWrqK3V2pYaL4qiolaBQsAFERC8yColgoogENaENZDlfH/M0+m5ScCl4lLP7488OTPvOWdmzpl5z7zzzgz8aIVQqVS5XK4iAABAMhQKBQrI5XL1ExUKBYZh6sIEL4VneVj4hfZR+Q90Ip/Ph65PDQ0N48aNu3DhQlBQ0FDn4h0B/ywoFAqGYUqlUkVg8Kf5wsIEzwu+eDW2Ws9V/iwWq6amBsofOHBg2bJltbW1Q5Dqt4C3pkfIZrObmprQoUgk4nA4eAEWi0UikZqbm1UEOBwOOhHDMBhOp9ONjY3VhQleCk99WGZmZj09PV1dXUgAuhfiT5RKpWKxGJ6IHIDZbLavr+/du3dfQS7eEfBlLhKJGAwGnU4fSAA8rbI8lzDB88JmswdvtfDlL5fLW1tbByl/MpmMtOaiRYvq6urQxd813hpFOGnSpPv379fV1QEAWlpaioqK4E5PUqm0o6MDAKCtrT1p0qT09HQon56e7uvrCwDw9fW9ceOGVCoFABQUFJDJZDjQ6Ovrm5aWpiJM8FLw9fXNy8uDow5CoVAkEnl4eAAAenp6YCCXy7W3t4ejvEqlMiMjw8/PD56YkZEBO/cCgYDH41lYWOCvLJPJSkpKiEWfXyIDVQSxWNzf3w8FsrOz4eZ2JSUl3d3drq6uA11typQpxcXFsD2tq6sTCoWTJk0a6iy8O/j5+Wl8WG1tbTKZDADg6+t79epV2Au8du0ai8WytbV9liv/97//1dPTw0+3eLd4ra46z8e//vUvV1fXAwcOTJgwITw8HAbGxsZ6eHjA/ykpKQwG45tvvlm+fLm1tTVyV5s6der06dNjY2Pt7Ox27doFA3NycgwNDaOjo9evX89kMuvr6199jv7BBAUFeXt7HzhwYPTo0Zs3b4aBn3/++ezZs+H/48ePs9nsb7/9dt68ec7OztARUSaTubi4BAUF7du3j8PhQE/93t5eLy+vqKioXbt2eXp6jh49GrqVErwU6uvrhw8fvn79+ujoaCMjo9zcXBhuY2OD5hrNnDnT398/NjZ25MiRUVFRMPD27dsRERGenp4WFhYRERHHjx+H4WFhYRMmTDhw4ICrq+vatWtffY7+wfzxxx9GRkZbt27dtm2bsbHxH3/8AcN1dXUFAgGGYQqFwsPDY86cOfv377e0tDx8+DAUEAgEERERLi4uDg4OERERSUlJGIYdOXIkPDx8z549GzZsMDY23r9//+vK12vnbVpZRqlUnjlzpri42MnJadGiRdBcVlZWVl1d/cEHH0CZ/Pz8y5cvGxoahoeHo3mjUqn0+PHjNTU1Xl5es2fPRhcsKSk5f/68jo7O0qVLB9kig+AFkMlk//nPf4RCobu7O3JKLCgoaG9vnz59OpS5du1aRkYGk8kMDw9He3J2dHQcP35cJBJNnTrV398fAKBUKi9dulRcXKxQKOzt7efPn69xHjHBC1NbWxsfH9/X1xcUFATtJQCAM2fOuLu7jxgxAgDQ19d34sSJBw8eTJgwYe7cuVCgqqrq6tWr6CIODg4+Pj4AAIVCcfLkyXv37rm4uCxYsODl7rpOUFVVlZCQAABYuHAh6u0dP358+vTp0Ara1dV1/PjxhoYGHx8fVNdKS0vxnttjx4718PCoq6u7fPny48ePjY2N/f39x48f/8pz86bwNilCAgICAgKClw7xsUZAQEBA8E5DKEICAgICgncaQhESEBAQELzTEIqQgICAgOCdhlCEBAQEBATvNIQiJCAgICB4pyEU4YvT3t7O5/NfeE3h+vp6Pp/f3t7+clOljlwuP3bsWFlZGTy8c+dOYmIiXqC1tTU5Ofmnn35CS5fdv3///Pnzx44dE4lEQ528IaW0tPTv737Q1dXV3d39MpLz9tHd3X3s2LGqqqrXnZAXp6+vDy6LoxEMw8Ri8SCnd3d3w0Vb3mQ6zfiI+QAAHDNJREFUOjr4fP7jx48HEmhububz+UO6gppMJjt79mxLS8vQ3WIIec0T+t9miouLAQApKSnPIpyWlnbhwgV8yO+//w4AuHv37tCk7i9gK3Dw4EF4+H//939MJhPF5ufnGxkZmZiY8Hi877//HsOw7777jkwmc7lcHo9XWFg41MkbOnp7e62trdG2wLdv3+bxeDweLy0tDS8ml8vd3d15PN7GjRvx4UKhcOnSpWjRKS6Xu3bt2sePH7+6DLwBwFWY0RIzbxTXr1/fsmXLtGnTeDzeRx99pC4gFAr9/f3hYg5jx469desWPra/v3/jxo0GBgYAAFNT0127dsFNGRFXrlyxt7cHAFAolLlz5745i0/l5OScOHECH1JZWQkAgOvFYBiWmZl59uxZvEB2djYAIDs7e0gTFhgYuGrVqiG9xRBBKMIX57kU4dy5cydOnIgPqa6u3rlzJ9zvdEhRUYQCgSA2NhbFLly4cOTIkXCFMwiTyYyIiBjqVL0Cvv32Ww6H09fXBw9v3LgBANDR0Zk3bx5eLCUlhUKhaGlphYWFocDr168bGBiw2eyvv/46NTU1JSXlm2++GTFiRGBg4KvMwmvnTVaEwcHBJiYmAQEBJiYmXl5eKrESicTS0tLOzu63337LyMiYPHmygYHB/fv3kcD69eupVGpMTExubu62bdsAADExMSg2NzdXS0tr1qxZWVlZZ86cYbPZY8eOlclkryhvgxIZGclisfAhra2tO3fuRCuuLV68ePTo0XiB2tranTt3wr2yh45bt25RKJR79+4N6V2GAkIRakYkEnV2dqLD3t7ehoYGqVSKl9GoCPv7+0UikcqnJaZJEb4AfX19DQ0NPT09zyLc0dHR3NyMqSlCFby8vD744AN0CIUPHTqkLimRSBoaGtSzhmhqauro6ECHUqlUvdDwdHV1DbJ9eVNTU3t7u3q4QqFobGx86r7nSqXS1tZ206ZNKAQqwpCQEG1t7ZaWFhQ+f/78mTNnGhkZIUXY3t4+fPhwOzs7kUiEv2ZfX5/Kh7YKfX19Kqc8O/39/Q0NDd3d3QMJwJcQ7iAGaWpqQmpeBblc3tjY2NvbO9DVZDIZ3GJeY6xYLG5ra8OeWRG2tLTgi/TZgU9TLBYPnk6N2YQpxDBszJgx6opwz549AIC8vDx42NzcTKPRli9fDg9ra2upVCp+KdQPP/zQ0NAQlf/06dOZTCaqaxcuXAAAnDp16qk56uzsbGpqQodyubyhoQHfmKgglUobGxvlcrnGWLFY3NjYqFLp1BWhCuqKUCNPTZtcLm9qatJY5fv7+zW+YI6Ojp988slTb/2mQSjCv4iMjBw7dmxKSoqNjQ0AAG4AW19fP2/ePLi4pY6OzrJly1DboaIIz58/P27cOLiyoq6u7pw5c5AtZebMmVpaWlQqlcFgMBgMPz8/DMOuXbtmZmZWVlaGYdiaNWscHR1VKsPEiRPnz58P/4vF4mXLlunq6gIAqFRqcHAwVHIaaWtrmzt3LkyJk5NTVlYWXhFu377d2dkZw7CSkhIGg0GlUrW0tGDCdu/ebWxsDNPPYDA8PT3hKWlpaS4uLtBCyGaz4VrYkI0bNzo5OaWlpcFFKUNDQzEMa2xsXLBgASw0Go0WGhqKFOSdO3cYDMbFixeDgoJgCp2dnYuLi9EFlUplTEwM2juGxWLFxcXBKIVC8fXXX6MlZCdMmDCIYRkODebk5KAQqAhPnz5tamqKFiNubW3V0dFJTEzEK8J9+/YBAH777beBLq5OQkKCi4sLtMLp6ekFBQUhjbhhwwZra2uVpnzq1KkzZ86E/zs7O9esWaOvrw+tcLNmzUJvTnNzM4PBOHr0aHh4uLa2NgDgwYMHDx8+DAwMhJslUSgUZ2dnuOAy4uzZs3BbKxqNtnr16t27dw8fPhzF9vb2RkZGwsVdyWTy9OnTHz16hGLr6+sDAgJgRtzd3eF2LoMowqSkJLTipa2tLbL/JyQkMBiM0tJSvPCWLVssLS1h6wkftJmZGTzXzc2toKAASY4bN+7TTz/96quvYDoH10AaFaGvr6+VlRU+JDAwEJXDL7/8AgC4fv06ioULeMLq3Nvbq6WlhbQmhmFSqdTAwCAkJERjAi5evMhgMAQCAdwSx9LSEsOw/v7+bdu2QdM6iUTy9vZGPTYMw9hsdnR09Lp162A14XK5KkMnqampaN1XDofz66+/wvDVq1fTaDQymQzr7IgRIzAMq66uNjMzg4n/6KOPtLW1KRQKFIB7EuTn55uZmeXn58OLKBSK6OhomDYymezt7V1eXo5uPXXq1CVLlhw7dmzYsGEAAENDw6+++grFPnr0aMaMGWgJWQcHB3w13Lp1K4PBGEivv7EQivAvIiIiDAwMLC0tf/rpp5ycnLy8vI6ODnt7e1tb23PnzpWXl8fHxw8bNuzDDz+E8iqK8PDhw/v3779161ZFRcXJkye5XO6kSZNgVEFBgZeX18iRIwUCgUAguH37Nva/Y4RwaxX82NWdO3dQ/e/v7584cSKHwzlx4kR5eXlSUpKlpaWnp+dAnbOAgAB9ff24uLjy8vLDhw/DLa3Vxwg7OjoEAoGDg8OkSZNgwoRC4W+//QYA+PjjjwUCAdQiGRkZVCp13rx52dnZRUVFmzZtAgAkJibCq61bt05PT8/S0vLHH3/MycnJycnp6uoaOXIkj8dLTEwsLy8/deoUk8mcNWsWlM/Ly4MVe/PmzXl5eRcvXuRyuePHj0d52bBhA4lEWrt27a1bt4qKiuLi4o4ePQqjPv30UxqNtnv37qKiohs3bkyZMsXU1LShoUFjIURFRWlra+P7o1ARJiUlrV27Fu1Y8v3335uYmEilUrwiDAwM1NHRGaizpZHY2NiDBw/m5OTcu3fvxIkTZmZm06ZNg1G3bt0CAJw/fx4JV1ZWkkikY8eOYRimUCj8/PyYTOYvv/xSXl5++fJlW1tbFxcXaIWDzkpMJnPevHnp6enp6elisbiwsHD9+vUCgaCiouLq1avTpk2j0+kPHz5Et6NQKO+//35eXl5+fn5QUNCwYcOoVCq6++zZsxkMxpEjR8rKylJTU0eNGmVvbw+Vk1wuHz9+vImJSUJCQllZWUxMDIvFGkQRpqenk8nkGTNmZGdn37x5MyAggEwmZ2RkYBjW2dmpr6+P75HLZDIWi4W0y+eff66trb1z5867d+9mZ2f7+/sbGRmhIVgej8dkMt3d3S9cuHDz5k28SVMdjYqQx+O9//77+JDNmzcDAOAHyvbt2wEA+F4s9Cbbu3cvhmHV1dUAAPwIAoZhbm5u8AtSHeh9xuFwvvjii6ysrNTUVAzDQkND9fX1Y2NjS0pKMjIy3NzczM3NUd+XTqebmprOmDEjNzc3Nzc3ICCASqUiRZWWlkahUBYsWJCdnX337t3PPvsMvUJlZWVBQUFQ7woEAqjL8WOEhYWF/v7+1tbWUADWYpUxwi+//BIAsGHDhsLCwkuXLllbWzOZTPTp5uHhwWKx3Nzcrly5kpeXt3jxYgAA2pbEz89v1KhRAoGguro6Ly8vJiYG70lw6dIlAAD+m+atgFCEfxEREQEA+P3331HI3r17qVSqUChEISdPngQAwGo5+BhhUlISAAB9a6ubRvGKUKFQWFhYLFq0CMV+8sknRkZG0FATHx8PALh58yaKvXbtGgDgxo0b6vfNz88HAHz33XcoJDo6ehBnGQ8PD6TaMQyDmzviT3d1dfX09MRb5GbPnj1+/Hj4f926dQCAy5cvo9gDBw6QyWT8OMHZs2cBADAEKkLY24YcPXoUAABHL2pqaigUysqVK9XzVV1dTSaTv/nmGxTS2tpqaGj49ddfqwtjGDZ37lx7e3t8CFKEt2/fBgCUlJRgGObu7r5u3ToMw/CK0MnJydbWVuNlnxH4nqABYEdHxzlz5qDYrVu30ul0aPi9ePGiyltXUFAAAEhOTsb+VIRubm6DWKS7urr09PTQHjpBQUEsFgvZrPr7+62srJAihPtFoO8Y7E+tnJCQgGFYamqqSvfr008/HUQR+vj4cDgc9LXR29vLZrO9vb3hYWhoKIvFQuNqsImEL21dXR2VSv33v/+NLiWRSExNTb/88kt4yOPxDA0NW1tbB8o1Ho2KkE6nQ/sEAhpLKyoqMAxbtWoVmUzGv9UNDQ0AgK1bt2J/qg0Vh5SAgAAul6sxAVAR4p2toAP2jz/+iELq6upoNBpy3aLT6cOHD0em1+7ublNTU+TyM2bMmMmTJ+OTFxgYiBoQddOoirOMumkUrwi7urp0dXXx7kWFhYUkEmn79u3w0MPDw8DAAOnFnp4eQ0PDLVu2wEMDA4OBKh2GYX/88QcA4Oeffx5I4M2ECghw6OjooI1LAABpaWnm5uY1NTU1NTUwBJqMysrKNG53WVpaeuXKlfr6+v7+fuiTXVVVZWVl9dT7ksnkpUuXxsbGisViY2NjmUx2+vTpkJAQaAtNS0szMDCQSqUZGRlQXi6Xk8nksrIyaIrBU1RUBAAIDg5GIcHBwVFRUc9TDH/R3NxcWFi4bNky/IY7ZmZmmZmZSqUSmke0tLQCAwNRbFpaGofDefLkicrEkrKyspEjR8L/ePlRo0YBAB4/fmxubn79+nWFQrFixQr1lGRkZCiVymHDhqFCAACYm5ujaSHqKWcwGBqjPDw8nJ2d4+PjQ0ND79y588MPP6gIoKw9F3fv3k1JSWlsbOzv74dO5NXV1bBHtXTp0u3bt4tEIhaLpVQq4+Pjg4KCoBU6PT2dRqORSCR8vmg0WllZ2cyZM+Hh3Llz0U7ikLa2ttOnTz948ABudKytrY1mOJSWlgYEBOjo6MBD+HR+/vlneAj7cHQ6HX87BoMBi7GoqIhEIn344YcoKjg4+ODBgwNluaioaPHixWhXLB0dnQ8++OCXX36RyWTQ+ejEiRMCgQA+bj6fb2NjM2XKFAAA3DyWyWTik2FpaYl/mt7e3i+8TyyGYQqFQuUhwo3blEolAEChUJBIJHypwli4KTT8VTmdSqXC8IGYM2cO+g9NysbGxvgMslgsfAaRfRsAoKurGxgYCHdKamxsLCkpWbFiBb7ScTgc+Cms8ia8AEKhsKenZ8GCBShk3Lhx9vb2cAwF4urqymQy4X86nW5jYwNHi6FwbGxsX19fcHCws7OzSnpMTU0BAE1NTX8zka8YQhH+DywWC/9cRSLRkydP5s+fj5dhMBitra3q527btm3Pnj2TJ092cnJiMBgYhgEAJBLJM946PDx89+7d586dW7ly5ZUrV5qbm8PCwlAyenp6VJJhZGSkcQ7ikydPSCQSeokBAHC46MWAL3RiYiLsuCBoNFpHRwdsyocPHw4bEZRakUikXmhtbW34Q/QfDn3BzdCh/tC4NyTsG23cuFGl4vF4PI0pp1KpfX19A+VryZIl+/fv7+vrGzVqlPo2bGw2Oz8/X6FQ4PM1OJ999tnBgwd9fHwcHR0ZDAaceYaeflhYWFRUVEJCQmRkZGZmZm1tLf7hyuXykJAQ/NV0dXXxk9vQQBrkxo0bs2bNYjKZfn5+DAaDQqFQqVTYlQcANDY2wqEdBBpVBX8WY2hoqEr6YVKfPHlibGyMlCgAAA3WqiORSCQSicrbxeFwZDKZRCIZNmyYn58fj8fj8/mBgYFtbW3Jycnbtm2Djw8mAx0iYDMKgd8QLwaJRDIzM8O/cgAAWG3hS8vhcBQKhUQigYcqsbDA1U8f6NNKPcEikYhEIq1Zs0ZFBj0moPZY2Wx2XV0d+LNwTp8+Da1KCC0tra6uLjjf4+8AP+tVHhyXy8XPMlT5BKHRaLCGAgBOnjy5adOmffv2RUdHs9nsVatWffHFF7AWAwDkcjlM6t9M5CuGUIT/g8o3oJGR0ejRowsLC596Ynd3d0xMzJdffrljxw4YcvPmzZ9++unZb21nZ+fp6cnn81euXMnn8+3t7SdOnIiSMWzYsMbGxme5DjR7trW1oebv78yiNTQ0BABERUXB8RWNqBeag4NDaWnpC9wONkMikUhdF0KniYKCAo19cXVYLBa0Emtk6dKlX3zxxeHDh3ft2qUe6+3tffXq1ZycHNh9eSqtra0HDhzYtWvX559/DkPS09N//fVXJMDlcqdOncrn8yMjI/l8PpfLhXsOw3zp6uq2tLQM0gdV0RZ79uyxs7PLy8tDrU9cXBz+XiqvCjT6odtRKJT6+nq8tkMwmUyJRAL7czBkkE97HR0dCoWiMoG6ubmZQqHAxppEIi1ZsiQmJkYsFp86daq/v3/JkiUoGQCArKwsZ2fnga7/N3f05XK59+/fx4fcv3/f0NAQKgA4cH7//n30GQSFHR0dAQAcDodEIuFPVygU1dXVg78P+AQbGRlhGCYUClU+SvCoFx1UjbDSRUdHw6HBl46enh5QaxaamprQN8HgmJubJyQk9PX15eXlnT59Ojo6WktLCw46gj8zpaLj33yIlWUGw9vbu7S0tKKi4qmSjx8/VigUbm5uKCQlJQUvoK+v39vbO/hFwsLCsrOzc3NzU1NTw8PDUfPn4+MjEonwhotBGD16NAAADkBC8P+fFwsLixEjRpw/fx4alJ4FHx+fioqKF1OEU6ZMIZFIKgvfoMsCADRGaWT8+PE1NTUDLRrCZrPXr1/v6+uLmmY8K1eu1NXV3bJli1QqVYmCY5wq1NTUYBg2yNMHAISFhRUVFWVnZ1+4cCE8PBz1Nb29vTs7O5/rGT18+HDMmDFIC+bn5+MbNTc3t99//x11Rnt6eqADFMTHx0cmk8HJAOo4OzsrlUqBQIBCBkkYjUYbN25camoqejcUCkVKSsq4ceOQsTQ8PLyvry8xMZHP58MOIso1iUSCg8dDhL+/f0VFBVJmvb296enpyCHWz88PAACHLSEXL17U1tb29fUFAOjr63t4eFy+fBllLTs7u7W1dcaMGc94d/i6Dp7BzMxM2H8CAMhksoyMDFh5ra2trayszp07N1Cle2pjMriAm5ublpZWcnIyCqmqqqqoqPD09BzkmirQaDQfH58jR46MHTsWXylKSkoAAB4eHs9+qTeC1zlA+YYRERFhY2ODDxGJRGw2297ePjU1VSwWNzU1ZWVlRUREQNcvvLNMb2+vkZGRv79/XV2dRCI5evQoNPIgX8Hdu3draWnFx8fn5+dDtxH1lWXEYjGdTre2tqZQKPipr11dXY6Ojlwu9+zZs62trW1tbXl5eZGRkRpd6aA+ZrPZmZmZ3d3dV65cgb2rF3aWgbonJCSkrKysp6fn4cOHp06dQm4O69atMzc3xyegpaXF3Nzc1tY2OTlZLBY3NzffvHlzzZo1cL4HrDOZmZlIHoZcu3YNHoaFhWlra+/duxeW5PXr19HUvYULF+ro6Ozbt6+2tranp6e0tHT37t2XLl3S+DThWCneCQU5y2iUxzvLYBh24sQJCoXi5uZ27ty5R48e1dTUXLhwISAgQOOEeolEoqenFxgYWF9f397efujQIWhDwztS9fT0GBkZWVtbAwAqKytReF9fn4uLC4vFOnXqVHNzc3t7e0FBwaZNm+DEA2glU3E9CAkJMTExuXXrllQqzcrKsre319XVXbJkCYwtLS3V0dEZP378uXPnkpKSJk2aZGlpiZxl5HK5l5eXiYlJXFycSCSSSCSFhYXbtm2D8+2kUqmdnZ2NjQ30/j1z5gy0sQ/kLHPmzBkAwMqVK2tra2tra5ctWwb+1xMHwzAfHx+Yaz6fjw9fvny5trb2nj17Hj9+3NPTU15evnfvXvSseTzeU9coqaysTExMTExMtLKycnBwgP+rq6thbH19vZGR0eTJkysrK2traxcuXEilUqHDNiQ4OFhfX//SpUttbW18Pp9Kpa5fvx7FwrGATz75pLGxsbi42MnJydzcfKBpl7COqNTH9957T19f/4cffqivr+/q6iouLt6xYwd0qcUwjE6n6+rqrlixoqGhob6+Pjw8HACApsGcOnUKALBo0aLy8nJY6U6ePBkdHQ1j4UyPgwcP5uXlFRUVYWrOMocOHSKTyXFxcbdv34YTtFS8RtesWaOlpfX999+3tbUVFxe7ubnp6ekhx2OVNgGGQOeazs7OVatW3bx5s729XSqVJicn6+rqRkVFIcmPP/4Yzh55uyAU4V+oK0IMw4RCIfx4hFCp1KlTp8L6oOI1mpSUhIYQbG1tYd1AilAikcyfPx/aSdzd3bEBllhbuHAhAGDGjBkqyXjy5MmcOXOQ7YVMJnt5eT158kRjRmpqalxdXaGkiYnJ+fPn/44ixDAsISHBwsICFYKJicmOHTtglLoixDCsurp62rRpqEdLoVD8/PzgFPinKkKpVLpu3TpkmqPRaPv27UNRkZGReJueg4PD1atXNRYChmHu7u7Lli1Dh8+lCDEMy8zMnDBhAsoFnHKHJmirkJCQAC1aAABHR0fYkKl4FK9atQoAoO7f2NTU9NFHH6E+IolE8vDwgA26RkVYU1ODpnXq6ekdOXLE2dkZKUKYU3d3dyqVyuVyd+7cuWXLFryTYXt7+9KlS6nUv4ZFXF1dYXOJYdi9e/egeRAAwGazYZs7yDzCQ4cOoVErAwMDlTcH+3PGnr6+vsrE7f7+/s2bN0N3MIidnR36cHkWRQine6qAd9TMysqytLSE4QwGQ2Uyolgsnj17Nnq4oaGhKos/HDx4EFoRAQAjR47Ez3ZVQaMi7OrqioiIQB13AICzszPSxHQ6fcOGDcgfik6nwwUOEfHx8dB+CzE1NUW+mjKZbPXq1dD8aGpqiqkpwu7u7sWLF8OPGEdHR0xNEfb29q5YsQK9cjY2NvgplYMowu7u7tGjR6NKQaVSw8PDUbnJZDIzMzPUOLxFkDAMU3+ZCFQQiUQ1NTV6enpWVlZw4jNExZ+ip6dHKBTSaDQHB4dnGeF4LncMAEBbW1tVVZWurq6FhQUcZRmEioqK3t7eUaNGqYwGwQf/vAMwGIYJhUKJRDJ8+HALCwt8MzoQTU1Njx49grMMn3eEv7Ozs6KiAvaPVc7t7e2trKyUy+UWFhaD+1MkJCSsXr26pqZmcB+HwWlpaXnw4IGBgQGPx0MWP410d3cLhUI6ne7g4PACrn0SiaSyspJOp5ubmz81wQqF4sGDBx0dHY6OjqixHoj33nuvo6MjJycHH9jZ2VlZWamlpWVubo53UQEAKJXK8vJyhULh5OT0LF4PUqn03r17AAD1l+1Zzq2srJTJZFwu9+94dQ2EQqGoqKjo7+8fKG11dXX19fVWVlYa36Xu7u6Kigo9PT1HR8cXc9fs7u6GE1TMzc3xXku6urqbNm3asWNHTU2NSCRydHREH1IIpVIpFAo7OjqepdI9tTFRF4DtiYGBwTO2V/gT6+rqlEqltbU1fmTx4sWLS5YsqaqqeuvGCAlFSPCPBcOwyZMn+/v779y583Wn5ZWSlpbm7++vpaWFYdjPP/+8evXqPXv2wJUQCN4QkCJ83Ql5aWAY5uHhMXv27BeerPUaIbxGCf6xkEik5OTkd3AHpeXLl4vFYktLy4aGBolEEhISEhkZ+boTRfAPR6lUnjlzRuPcpzcfokdIQPBPo7OzMzc3t7GxEfr7oDE/gjeHuLi4MWPGuLu7v+6EEABAKEICAgICgnccYh4hAQEBAcE7DaEICQgICAjeaQhFSEBAQEDwTvP/VDcZHpib04IAAAAASUVORK5CYII=", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot(histogram(df, label=\"Detected Failures\",\n", + " title=\"Histogram of differences between\\nfirst-order perturbative expansion and MC simulations\"),\n", + " histogram(uf, label=\"Undetected Failures\", color=2),\n", + " histogram(ts, label=\"True Successes\", color=3,\n", + " xaxis=\"relative difference (MC averaged over $(N) repetitions)\"),\n", + " layout=(3,1),legend=true)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Notice that the sum of probabilities in the perturbative expansion is less than one, as only the leading order is kept." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.9948135699999998" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sum(values(pe))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It is instructive to see how the purification procedure compares to no purification:" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Dict{CircuitStatus, Float64} with 3 entries:\n", + " true_success:CircuitStatus(1) => 0.940053\n", + " failure:CircuitStatus(3) => 0.0\n", + " false_success:CircuitStatus(2) => 0.0547604" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pe_nopurification = petrajectories(initial_state, [n,v])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Larger number of samples lowers the MC error\n", + "\n", + "As already mentioned the stochastic error in the MC approach scales as $\\frac{1}{\\sqrt{N}}$. The plot below demonstrates how using larger number of samples makes the answer from the Monte Carlo approach more precise." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\u001b[32mProgress: 100%|█████████████████████████████████████████| Time: 0:00:02\u001b[39m\n", + "\u001b[32mProgress: 100%|█████████████████████████████████████████| Time: 0:00:00\u001b[39m\n", + "\u001b[32mProgress: 100%|█████████████████████████████████████████| Time: 0:00:01\u001b[39m\n" + ] + } + ], + "source": [ + "Ns = [50,100,10^0.5*100,1000,10000]\n", + "reps = 20\n", + "pe = petrajectories(initial_state, circuit) # perturbative expansion\n", + "DF,UF,TS = [],[],[]\n", + "for N in Ns\n", + " df,uf,ts = [],[],[]\n", + " @showprogress for i in 1:reps\n", + " mc = mctrajectories(initial_state, circuit, trajectories=N) # Monte Carlo\n", + " push!(df,get(mc,failure_stat,0)/N)\n", + " push!(uf,get(mc,false_success_stat,0)/N)\n", + " push!(ts,get(mc,true_success_stat,0)/N)\n", + " end\n", + " push!(DF,df)\n", + " push!(UF,uf)\n", + " push!(TS,ts)\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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MpnM+h9HGiCKdwccBEHocOHh4dbtjNLSUpPJFB4e7tqSQBIWFsZxXFFRkXSzsLAwLCzMtSWBle1/nMLCQqVSGRgY6NqSoLVCEDpcWlraV199ZTAYiGjbtm19+vTB/+dmQq1W33///du2bSMik8m0c+fOMWPGuLoouCktLe3LL7+UNgq3bds2evRo25NeAJoQLszblFavXr1z586zZ8/6+PjExMQsWbJk1KhRoiiOGjWqsrKya9eu27dv37p1a0pKiqsrdTt6vX7cuHE6ne6nn35KSUnx9fWV8u/gwYMTJkyYOHFiZmamSqXat2+f3YEb4FAvv/zyoUOHTpw4ER4eHh4e/sorr/Tp00ev199///1eXl4xMTE7d+7ct28fxlqDgyAIm9LFixcLCgqsNzt27BgREUFEFovl22+/vXHjxpAhQ6KiolxXoPsSBGH//v3WmwqF4v7775f+Ligo+P7777Va7fDhw3EUyiXOnj1bUlJivdmtWzetVktERqNxz549NTU1w4YNw0BrcBwEIQAAuDXscwcAALeGIAQAALeGIAQAALeGIAQAALeGIAQAALeGIAQAALeGIAQAALcmW7ZsmatraKmOHTv2008/6fV627lDKyoqdu3a5ePj4+vr2+Rr3L59+5gxY6ZPn+7t7d3kD94YOp1u+fLlL7300ooVKwICArp27Wq7VK/Xf/HFF5mZmRqNpsHT/9///nf06NGSkpKYmBjnlnw3BQUFn3766RdffLF///6CgoLw8HC1Wn1vD5WTk9OvX7+OHTve2xNkjO3du/fLL7/8+uuvz507p9frw8LCXDLHTb9+/aqqqvr16+f8VQO4DIN7NXv2bCLSarXV1dXWxmPHjhHRxx9/7Ig1fvTRR0RUUFDgiAdvjOeff97b23vlypUffPBBRkZGg6X5+fnSh2rhwoW27UajUZooZODAgU1SRmpq6pIlS37PI1gslmeffVahUKhUqi5dunTp0sXLy0upVK5cufLeHvDixYtEtH379nu4b0FBQXJyMhHFxsb27NlTmkIlLS3t3ir5nQICApYuXeqSVQO4CnaN/i5KpbKqquqtt95ydSFOsn///tGjRz///PN//OMfk5KS7PZJSEjYsmWLXq+3tuzcubO2trZt27ZNVUZBQUFpaenveYRFixa9/vrrTz75ZGlp6ZkzZ86cOVNWVrZ69Wrpd4yTLVmy5Pz58/v27bt69eqxY8eKiooyMjJmzZrl/EoA3BPmF/5dNBrNxIkT33jjjYULF1ovImrr22+/rampmTRpkt2W4uLiHTt2jBs3rqioaPv27RaLZdKkST169CCir7766uDBg4GBgTNnzpQmLG3wsN9++61cLp80adJ9991nu6i8vHzr1q1Xrlzx9fVNS0vr2bOnddG6det69uwZEhLy3//+t7CwcPHixZGRkbfXfP78+e3bt1dUVERGRs6YMUPaQCksLNy1a1dOTo5MJlu3bh0RzZs3T7pceAPTp09/4403vvzyy+nTp0stH3744bhx465evdqgZ3p6+o4dO6qqqmJiYmbMmCFtNRJRWVnZ559/Pnr06Nra2k8++cRkMvXr12/06NEcxxHRpk2bKisrr1y5IpURGxtrncT8f//73969e2tqahISEmbNmqXRaG4vj4hOnjy5du3ahx9++I033rA2enp6LliwwBo/NTU1+/bty8jIqK+vj42NTUtLa9OmjbXzpk2b4uLiEhISPv7445ycnPnz59/+Uuh0ui1btmRkZHh5eQ0bNmzw4MF2iyGiAwcO9OvXb9iwYdaWpKQk298Zubm5e/fuzc7OlsvlSUlJ48aN8/T0bPBaVVZWbtu2zWAwjB8/vm/fvkS0d+/e77//3t/ff8aMGdYZbrOzs/ft2/fAAw+kp6fv3r2biCZOnNirV6871UZER44c2b17d3V1dXx8/MyZM/38/KyLMjIydu3aVVJS4uvr27lz59TUVFfttAf4XVy9SdqCzZ49W6vVXr9+3cvLy7qnrsGu0WnTpiUnJ9vey7blwIEDRPToo48GBARI83HL5fLdu3cvWLAgIiJi6NCh/v7+oaGhRUVFUn9p1+i8efOCg4PHjBnTrl07nuc3btxoffADBw74+/uHhISkpaV1796d47i///3v1qUcx82YMSMwMLBz5869evU6evTo7U/q3Xff5Xk+JiZm5MiRWq1Wo9H8+OOPjLETJ04kJyd7eHgEBgYmJycnJycbjcYG95V2ja5atWr69OkjR46UGouLixUKxa5du7p37267a3TlypUcx8XHx48YMcLf3z8gIODYsWPSohMnThDR448/7u/vP2jQoMTERCJ66aWXpKXDhw+3LeOFF15gjAmCMHfuXCLq0aNHWlqaVquNjIzMysqy+8Y99dRTRJSZmWl3qWTo0KGhoaEpKSnSo3l7ex88eNC6NCQkZOLEiWFhYR07duzbt++uXbsa7BrNzc2NjY2VIlA6kvrQQw+Jomh3XZ06dYqOjq6vr7e7VKfTEVH79u3HjBkzZMgQpVKZmJhYUVFh+1otWLDA399/8ODB0dHRPM9v37598eLFYWFhQ4cODQwM1Gq1OTk5Uv/PPvtM+ghptdq0tLT4+HiO49asWWNdne2uUVEUFyxYQETJyclpaWlBQUHh4eGXLl2Slm7YsIHjuG7duk2dOnXIkCEajeaLL764y0sK0GwhCO+dFISMsWeeecbDwyM3N5fdUxDGx8dLUVdfX9+hQ4eAgIAJEyYYDAbG2NWrV5VK5V//+lepvxSESUlJZWVljDGj0Th27FgvL6/i4mLGWE1NTXBwcGpqam1trdRfCptTp05JNzmO43n+m2++udMzyszMlMvlU6dONZlMjLGSkpLExMSIiAipGMZYQkLC3Llz73R3axDu3r2b5/m8vDzG2Ouvvx4SEmI2m22D8Pjx4zzPP/TQQxaLhTF2/fr1du3axcfHSzelL/c2bdpkZ2czxkRRnDlzplqttj6vxMTEP/zhD7arfuedd3ie37Ztm3SztLS0fUJFjSIAAAtKSURBVPv2w4cPt1vnoEGD/Pz87vQsJOnp6VIxjLG6urq+ffv26NHDujQkJISI/vOf/1hbGgTh6NGjNRrN2bNnpZsrVqygOx85/uc//0lEkZGRTz755CeffFJSUmK71Gw2nzlzxnrz/PnzGo3G+rNAeq3atm2bn5/PGNPr9d26dQsICBg5cqROp2OM5eXleXl5Pf3001J/KQjj4uKkz4zZbJ42bZpKpZI+vezWIFy3bh3HcVu2bJFulpeXd+rUadCgQdLNhISEhx56yFqYTqcrLy+/+6sK0DwhCO+dNQgrKir8/f0ffvhhdk9BuG7dOuvSZ555hojOnz9vbenbt+/48eOlv6Ug3LRpk3Xp2bNniWjDhg2MsQ8//JCIzp07Z11qsVj8/PxeffVV6SbHcePGjbvLM3r11Vc5jrN+JzLGNm/eTERff/21dLORQSgIQmRkpDTwpHPnztIXq20QPv/88wqFwvYbX9rPeejQIfbzl/ubb75pXfrNN98QUXp6unTz9iBMSkoaNWqUbct7770nk8msEW6rc+fOMTExd3kdbFVXV1dUVLz11ltyuVz6fcAYCwkJ6dOnj2032yCsq6vjOM6aPYwxs9kcERExYsSIO61l06ZNycnJ0r5fmUw2cuTIa9euNegjCEJFRUVFRUVaWtro0aOlRum1+uc//2nt9tJLLxHR8ePHrS0pKSnW3wRSEH7wwQfWpVlZWUS0evVq6aZtEHbv3j0lJcW2ho0bN3IcJ/0iiYyMnDx5shS3AC0ajhE2AX9//yVLlixbtuzpp5++h7snJCRY/w4ICCCi+Ph425aysjLb/raXJ01KSlIqldeuXSOis2fPchz3/PPPG41Gawez2Wx7cK5Tp053qSQrK0ur1dpeMVE6YHnx4sVRo0Y1/hnxPD979ux///vfQ4YMOXfu3Mcff3z7iiIjI4OCgm5fUf/+/aWW9u3bW5dKPRu8DlYWiyUzM9NisaSmprKfLytWVlYmCMK1a9c6duzYoL9arb5x48bdn8KxY8deeumlgwcPSnsmJUVFRdYX5y6vpLRL1vbYrVwu79atW0ZGxp3uMnv27NmzZ5eUlBw9enTbtm2bNm1KSUmRji8S0YcffviPf/zj0qVLZrNZ6t+5c2fbu9t+hAIDA+m2j1CDA7S2H6F27dr5+vpKcWiLMXbu3LmYmBjbV1XaJXv16tVu3botXbr0qaeekvbDp6amTpgwwd/f/05PEKA5QxA2jcWLF69Zs+all1567rnn7t5TFMUGLbefLmZ7eVhpK+FO/Xmel8vlUvKZTCae5wcMGGB7l2HDhtkmwd3Pk6uurlYqlbYt0k1BEO5yL7seeuih//u//1u0aFHPnj0bfGvbXZH0lG1XdPvLwu5w7UxpH2ZYWJh11Ixk+vTpdr+aExMTjxw5UlxcfKdrvZaUlAwdOrRfv367d++Ojo729vb+5JNPFi5caLFYrH3uMiqkurqafn7prJRK5a++jMHBwWPHjh07dmx0dPTLL7/8/fffjxkz5rPPPps7d+7SpUs3b96s1WpVKtUjjzySmZlpe8ff8xGSarP98SQRRVEQBOlAqW37tGnTpN8lTzzxxP333//ZZ5999913f/zjH5999tlvvvlG+kED0LIgCJuGWq1+4YUXFi1aZL3uuUSj0Uhfi1a5ubm/c12XL1+2bi3l5eXpdLp27doRUWxsrCAIEyZM6NChw709ctu2bT///POqqirryMALFy4QUXR09G99qISEhL59+/70009r1qyxu6JDhw7p9Xrr6Edp12IjV8TzvO3vCQ8Pj/DwcI1G86u/QiQTJ07cuHHjhg0b/vKXv9jtcPjw4fr6+rVr18bFxUktBQUFjXlkifQspGdkdeHChca/jNLWZHFxMRHt27cvISHh9ddfty6VdgD8HpcvX7ZuFJaXl5eWlkofIVsymaxt27ZeXl53eVWlUzCXL1+ek5PTp0+flStXbtu27XfWBuB8OI+wySxYsCA6OnrlypW2jQkJCdnZ2db9TgcOHJAO6vweb7/9tnXT5M033+R5Xhp5P2XKFA8Pjz//+c/WHWhEpNfry8vLG/nIEyZMEEVx1apV0k2z2bxq1SofH5/hw4ffQ50fffTRvn375syZc/uiiRMn6nS61atXSzeNRuObb76p1WoHDhzYmEcOCQlpkEyzZs3atWvX/v37bRuvX79u9+5paWlDhgxZsWLF9u3bbdvT09MXL15MRDzP0885REQ3btyQDmE2UmRkZHJy8vr16ysqKqSW7du3X7x40fYsGlv/+te/rD2JiP18aLZLly5SMdXV1QaDQVq6a9eu06dPN74Yu9555x2TyST9/eabb3Icl5qaenu32bNn7927d+/evbaN0qsqimJhYaG1sW3btqGhobZbzAAtCLYIm4xSqXz55ZcffPBB28a5c+e++uqrgwcPnjp1allZ2XfffdejR4/b947+JkajcdCgQcOHD5fOw3v22WelQ0Rt2rRZv379ww8/3KVLl1GjRqnV6qysrG+++Wbjxo0TJ05szCMPGDBg4cKFK1asyMjISEpK2rdv38mTJ//1r3/d23RxcXFx1i2qBkaNGjVz5sw///nPJ06ciI+P/+abbzIyMjZv3mzdQLy7yZMnP/bYY/369WvTpk3//v2ffPLJZcuWHTlyZPjw4RMnTuzUqVN5efnJkydLS0svX758+905jvvkk08mT548adKk5OTkXr168Tyfnp5++PDhefPmEdHgwYOjoqKmTp06d+5co9G4efPmzp07f/fdd41/7u+9915KSkrPnj0nT55cVlb28ccf9+3b97HHHrPb+eWXX160aFG/fv0SEhIEQfjxxx8vXrw4d+5c6fS+2bNnr1u3bvDgwaNHj7527dqOHTt69+5dU1PT+GLsvgIDBgwYOXJkZmbmtm3b/vSnPzWYLU/y4osv/vTTT6NHjx4/fnznzp0rKytPnTqVn5+fk5NjsVjatm2bmprauXNntVp94MCBjIyM11577fdUBeAqmGv03pnN5ri4ONt9oZ06deI4rk+fPkOGDJGOP3l5eU2ZMqW0tPTChQuhoaEbNmyIjIxMSEjo3bs3ETHGPDw8UlJSrLsipaMytudWm0ymjh07SufFC4Lg7++/evVqvV5/8OBBInrhhReeeeYZ60GgLl26TJw4saam5ty5c0VFRVqt9oknnhg1apR0vMpgMAwePPjuk2GmpaW1b9/+4sWLly9fjouLe+edd8aNG2ddajQae/bsKZ3Ydztp/NWQIUPsTiJjNBq7detmPYY0YcKEmJiYCxcuXL16NTExce3atdbtTsaYQqGQzoFr0CINJurZs+egQYPUarWXl1dsbGznzp0VCsXs2bNjYmKuXLmSmZlpNpt79+7917/+NSwszG6pXl5eDz30UPfu3Wtra69evarT6bp06fLGG288/vjjRKRSqaZMmVJZWXnmzBmLxfLiiy9Onz5do9GkpKRIUW0wGPr27Ws7nIcxJopiSkqKNK9CRETE1KlTKysrT58+bTab//jHP77zzjseHh52i5kwYUJ0dHRNTU12drZer+/Spcvf/va3pUuXSkujoqKGDBmSlZWVkZERGhq6fv362NjYuLg46az5218rQRCCgoKGDRtmPcffbDZbP3IXLlz45JNPdu/e7enpeeDAAbPZ/Oyzz77wwgvWj5BOp+vfv7/000oul8+aNatdu3ZZWVmZmZnSu//SSy+Fh4fzPB8XF1dVVXX58uWcnJz4+Pj3339/wIABdp8gQDPH3WkAAgC0Ptu2bZsyZcrly5dth5UCuDkcIwQAALeGIARwI0ql0t/f3+4ksQBuC7tGAQDArWGLEAAA3BqCEAAA3Nr/B4VUK61ilrD+AAAAAElFTkSuQmCC", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot()\n", + "for (N, df, uf, ts) in zip(Ns, DF, UF, TS)\n", + " scatter!(ones(reps)*N*0.9,df,label=\"\",color=1,markerstrokewidth=0,alpha=0.3)\n", + " scatter!(ones(reps)*N, uf,label=\"\",color=2,markerstrokewidth=0,alpha=0.3)\n", + " scatter!(ones(reps)*N*1.1,ts,label=\"\",color=3,markerstrokewidth=0,alpha=0.3)\n", + "end\n", + "hline!([pe[failure_stat]], color=1,lw=2,label=\"detected failure\")\n", + "hline!([pe[false_success_stat]],color=2,lw=2,label=\"undetected failure\")\n", + "hline!([pe[true_success_stat]], color=3,lw=2,label=\"true success\")\n", + "plot!(xaxis=:log10,legend=:outertopright,\n", + " xlabel=\"Number of Monte Carlo Samples\",\n", + " ylabel=\"Fraction\",\n", + " title=\"Monte Carlo (dots)\\nvs\\nPerturbative expansion (lines)\"\n", + " )" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Large perturbation lowers the precision of the perturbative approach\n", + "\n", + "We already saw that the probabilities in the perturbative solution do not sum up to unity. Here we see how this imprecision grows as $\\varepsilon$ grows." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\u001b[32mProgress: 100%|█████████████████████████████████████████| Time: 0:00:14\u001b[39m\n" + ] + } + ], + "source": [ + "N = 100000\n", + "εs = 0.01:0.003:0.08\n", + "PE = []\n", + "MC = []\n", + "@showprogress for ε in εs\n", + " nε = NoiseOpAll(UnbiasedUncorrelatedNoise(3ε))\n", + " circuit = [nε,g1,g2,m,v]\n", + " pe = petrajectories(initial_state, circuit) # perturbative expansion\n", + " mc = mctrajectories(initial_state, circuit, trajectories=N) # Monte Carlo\n", + " push!(PE,pe)\n", + " push!(MC,mc)\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot( εs, [pe[failure_stat] for pe in PE], color=1, label=\"detected failure (perturb.)\")\n", + "plot!(εs, [pe[false_success_stat] for pe in PE], color=2, label=\"undetected failure (perturb.)\")\n", + "plot!(εs, [pe[true_success_stat] for pe in PE], color=3, label=\"true success (perturb.)\")\n", + "plot!(εs, [sum(values(pe)) for pe in PE], color=:black, label=\"total probability (perturb.)\")\n", + "plot!(εs, [mc[failure_stat]/N for mc in MC], color=1, line=:dash, label=\"detected failure (MC)\")\n", + "plot!(εs, [mc[false_success_stat]/N for mc in MC], color=2, line=:dash, label=\"undetected failure (MC)\")\n", + "plot!(εs, [mc[true_success_stat]/N for mc in MC], color=3, line=:dash, label=\"true success (MC)\")\n", + "plot!(legend=:outertopright, xlabel=\"ε\", ylabel=\"Fraction\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As seen above, the error in the perturbative approach can be much too large for large $\\varepsilon$." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Reproducibility information" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Julia Version 1.10.2\n", + "Commit bd47eca2c8a (2024-03-01 10:14 UTC)\n", + "Build Info:\n", + " Official https://julialang.org/ release\n", + "Platform Info:\n", + " OS: Linux (x86_64-linux-gnu)\n", + " CPU: 8 × Intel(R) Core(TM) i7-10510U CPU @ 1.80GHz\n", + " WORD_SIZE: 64\n", + " LIBM: libopenlibm\n", + " LLVM: libLLVM-15.0.7 (ORCJIT, skylake)\n", + "Threads: 1 default, 0 interactive, 1 GC (on 8 virtual cores)\n", + "\u001b[32m\u001b[1mStatus\u001b[22m\u001b[39m `~/Documents/ScratchSpace/quantumjulia/Project.toml`\n", + " \u001b[90m[0525e862] \u001b[39mQuantumClifford v0.8.21 `QuantumClifford.jl`\n" + ] + } + ], + "source": [ + "versioninfo()\n", + "using Pkg\n", + "Pkg.status(\"QuantumClifford\")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.10", + "language": "julia", + "name": "julia-1.10" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.10.2" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/v0.9.12/notebooks/Stabilizer_Codes_Based_on_Random_Circuits.ipynb b/v0.9.12/notebooks/Stabilizer_Codes_Based_on_Random_Circuits.ipynb new file mode 100644 index 000000000..722d42490 --- /dev/null +++ b/v0.9.12/notebooks/Stabilizer_Codes_Based_on_Random_Circuits.ipynb @@ -0,0 +1,4562 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`Last edit on Mar 18 2024 with QuantumClifford 0.9.0 and Julia 1.10.2`" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Stabilizer Codes Based on Random Circuits\n", + "\n", + "A brielf tutorial describing the use of the Julia library `QuantumClifford` for the simulation and evaluation of error correcting codes derived from the evolution of local Clifford circuits. Inspired by \"Quantum coding with low-depth random circuits\" by Michael J. Gullans, Stefan Krastanov, David A. Huse, Liang Jiang, Steven T. Flammia, [arXiv:2010.09775](https://arxiv.org/abs/2010.09775)" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "using QuantumClifford\n", + "using Plots # Makie is a good alternative plotting library\n", + "using BenchmarkTools" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To install these libraries go to package mode (press `]`) and type\n", + "`add QuantumClifford Plots`, etc.\n", + "\n", + "Some of this code can be much faster by using the newer GPU accelerated types." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Initial Example with a Small Number of Qubits" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Setting up the tableaux data structures" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "First we need to create a tableau that will track what our brickwork circuit is doing. We can do that with a Stabilizer string literal:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "+ XXX\n", + "- ZZ_\n", + "+ _ZZ" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "state = S\"+XXX\n", + " -ZZI\n", + " +IZZ\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "But one can create specific tableaux programatically as well (useful for large tableaux). The julia function `one` is typically used to create identity elements of a given class." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "+ Z_______________________________________________________________\n", + "+ _Z______________________________________________________________\n", + "+ __Z_____________________________________________________________\n", + "+ ___Z____________________________________________________________\n", + "+ ____Z___________________________________________________________\n", + "+ _____Z__________________________________________________________\n", + "+ ______Z_________________________________________________________\n", + "+ _______Z________________________________________________________\n", + "+ ________Z_______________________________________________________\n", + "+ _________Z______________________________________________________\n", + "+ __________Z_____________________________________________________\n", + "+ ___________Z____________________________________________________\n", + " ⋮\n", + "+ _____________________________________________________Z__________\n", + "+ ______________________________________________________Z_________\n", + "+ _______________________________________________________Z________\n", + "+ ________________________________________________________Z_______\n", + "+ _________________________________________________________Z______\n", + "+ __________________________________________________________Z_____\n", + "+ ___________________________________________________________Z____\n", + "+ ____________________________________________________________Z___\n", + "+ _____________________________________________________________Z__\n", + "+ ______________________________________________________________Z_\n", + "+ _______________________________________________________________Z" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "N = 2^6 # Number of qubits for our examples\n", + "initial_state = one(Stabilizer, N) # Use `one` to create the \"identity\" object of given class and size" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "It is easier to view large stabilizer states as matrix plots:" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot(initial_state, xzcomponents=:together)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Clifford Operator data structures" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This library provides not only tableaux but also varios operators that can act on the tableax, representing a quantum Clifford gate. They are implemented in multiple different data structures, depending on what operations are to be done most efficiently. The most common one is `CliffordOperator` that simply stores the transformation of the diagonal tableaux. It can be instantiated with a literal:" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "X₁ ⟼ + XZ\n", + "X₂ ⟼ + ZX\n", + "Z₁ ⟼ + Z_\n", + "Z₂ ⟼ + _Z" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "op = C\"XZ\n", + " ZX\n", + " ZI\n", + " IZ\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The `CPHASE`, `CNOT`, `Hadamard`, `Phase` gates are built in. A prefix `t` specifies a gate represented as a dense tableau, and an `s` prefix specifies a gate with a sparse symbolic representation which can be much faster. We will have a performance comparison below." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Tensor products between gates is implemented as well:" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "X₁ ⟼ + Y_\n", + "X₂ ⟼ + _Z\n", + "Z₁ ⟼ + Z_\n", + "Z₂ ⟼ + _X" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "tPhase ⊗ tHadamard # Use the slash+tab key combination to enter latex symbols" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### The brickwork layers of local Clifford Operators" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To construct our brick layers, we can use `tensor_pow` to make the first layer for bricks, and `permute` to shift it by one and create the second layer of bricks. We mark them as `const` because Julia can be slow when non-const global variables are used." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "const brick_layer1 = tensor_pow(tCNOT, N÷2); # Get the tensor product of N÷2 CNOT gates\n", + "# ÷ implies integer division (instead of float division with /)\n", + "const brick_layer2 = permute(brick_layer1, [(2:N)...,1]);" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nO3dd3xUVd7H8TOTBBJCC6QRSkwElCrV0EITdhddRFQUWHsWAQu4PCICuhQVKVJ87YICLk1BARWkCIQQiNJJIJAChEAoCZCQkF5JZp4/zuN97s6kTEIgJOfz/gvunLlzZzJnvvfc3zkzBrPZLAAAUJWxqg8AAICqRBCWZuLEiRMmTKjqoyheUlLSsmXLJk2aNHbs2GXLlhXb5uLFi2PHjv3Pf/5T4UfZvXt3QEBASEiI7Xc5evTo2LFjt2/fXt7H+ve//x0QEHD9+vXy3hE1wPz58wMCAtLS0qr6QIqRnZ29Zs2aKVOmjB079qOPPiq2TV5e3tixY2fPnl3hR4mIiAgICNiwYYPtd7l69erYsWO//vrr8j7Wli1bAgICTpw4Ud47Vq3MzMwzZ84cPXq08j8lzMrLyclZvnz5li1brG9ycXFp2LDh/T+kMl2+fNnDw0MIUatWLRcXl9GjRxfb7NChQ0KIkm61xbx584QQX3/9te13Wbt2rRBixowZ5X2sp59+WggRERFR3jtWld9++23mzJlDhw5t0qSJEMLNza2qj6gaWLt27apVq6y3+/v7CyHi4+Pv/yGVLjs7u2PHjkIIe3t7FxeXLl26FNssPT1dCNGxY8cKP9DOnTuFEO+8847tdwkLCxNCPPvss+V9rGnTpgkhvv/++/LesUqkpqZ++umnnTt31idXp06d9uzZU1kPYV/JuVoNZWRkjB07tkePHs8884zFTf7+/uYHsoa6fPnyxMTEmTNn/vOf/zQYDPfugVq0aNG/f/+mTZveu4eovmbOnBkcHCyEcHR0rOpjqTbef//93Nzc119/3WJ7ly5d7OzsateuXSVHVYotW7acOXNm1KhRa9asqVWr1r17oMaNG/fv379169b37iGqqejo6I8++sjR0XHo0KEdOnQoLCw8cODA8ePHhwwZ8uOPPw4fPvzuH4IgLM0vv/xS1YdQvPPnzwshXnjhhXuagkKIkSNHjhw58p4+RPX14osvvvrqq127dq1Xr563t3dVH071tmTJkqo+hOLFxMQIIYYPH35PU1AI4efnt3///nv6ENVU/fr1Z86c+dZbb7m5ucktZrN5ypQpCxYsmDhx4rBhw4zGu63xVfsgjI2NDQ8PT0hIMBqNbdq06devn4ODg3Uzs9l86tSpsLCwjIwMDw+P7t27P/LII0KIxMTEM2fOCCGys7PldQYhROPGjR966CEhxOnTp4UQjz32mMWuTpw4ERoampeX16JFi0GDBjVs2FDfID4+PjEx0dfX18XFJSws7MiRIyaTyc/Pz8/Pz8YnlZSUFBQUdP369fr16/fq1at9+/baTQkJCTdv3rx69ap87jk5OUKINm3a1KlTp/R9Xr58ed++fRkZGW3atBk0aJC9/f//6YuKisLDw+vUqdOmTZv09PRdu3YlJCT4+fn16dMnMTExPj7e29vb1dVVv7eCgoLff//93LlzhYWFTZs29ff3l5dqS1JUVHT69Gmz2SxfFhtfByFEcnLy0aNHr169mp+f7+3tPXDgQP2rff369Rs3bjRr1sz60eULZXHT7du39+3bd+3aNUdHx8cff7xbt276u2RmZsbExLi6unp7eyckJAQFBSUlJQ0bNqykk/Q333xTeyzbn1H1dfPmzePHj1+5cqWoqMjX13fgwIF169YttuWFCxcOHTp069Ytd3f3tm3bduvWzWAwpKenx8bGFhYWmkwmra85Ozs/+uijQoiYmJjMzMyOHTta9N9z584dPHgwNTW1SZMmTzzxhLwKrUlJSbl8+bKXl1eTJk1iY2ODg4Ozs7Pbtm07ePBgGz8cMzMz9+7de+XKlVq1anXp0qVHjx7ayeXt27fj4uLkSWdCQoI85oceeqhx48al7zM5OXn37t2JiYne3t5PPvmkRd+MiIi4c+dOly5d8vPz9+zZc+nSJW9v7+HDh2dkZFy4cMHd3b158+b69iaT6cSJE+Hh4dnZ2Z6enn5+fg8//HDpBxAREVFQUNCkSRMvLy9bXgQpKyvr8OHDV69eTUtL8/Ly6t+/v/7u8tXQPhv15E2y42gbc3Nz9+3bd/HiRYPB0L59+379+tnZ2Wm3FhYWnj59Wv7109LS5GdO7969e/bsaX1g7du3138GCiEMBsMnn3zy5ZdfXrt2LS4urswXpGyVdY31/svJyZFhpufj43PixAmLlmfPnu3evbtFyzfeeMNsNs+fP9/6NXn99dflHa1rhPHx8b1799Y3btCgwerVq/Vt3n//fSHE+vXrR4wYoW85atSowsLCMp/XZ599ZnGpbdiwYenp6fLWqVOnWh9wWFhYsbvSaoSfffaZ/nOhU6dO165d05qlpqbKjVu2bKlfv75sI2sVxdYIt23b1qxZM/0B2NnZffPNN/JW6xphbm6ufCleeeWVgoKCkp64dY1w1KhR+s4jhKhfv/7atWu1BoGBgUKIp59+2npvvXr1EkKEhobK/5pMps8//9ziI2nQoEHJycnaXfbt2yffGJ9//rn2uMUWtCzEx8eLml4jHDJkiMXlh0aNGv38888WzZKSkoYOHWrx/nz88cfNZvOvv/5q/dbt3r27vKN1jTArK+uFF17QN65Vq9Y///lPk8mktVm9erUQYubMmR9++KH+8Hr27JmWllbmk/r+++8bNWpkcTxxcXHy1u+++876gPVvPz2tRrhx40b926xZs2bHjx/Xt2zevLm9vX1oaGiLFi1km/79+5tLqBGGhYV16NDB4hgmTZqk3Sr+u0ZoMplmzJghX4Fbt26V9MSta4SzZs2yuC7t4ODw8ccfaw2uXbtmb2/v6+tbVFRksTd5Rqh/ZX744Qd3d3f93tq1a3fu3DmtQWJionxjbNq0STud0p6XjeRDxMTElOtexarGQZiRkdGhQ4fFixeHhIRcuHDh8OHDEydONBqNnp6eWmyYzebLly/LM7jXXnvt4MGDsbGxBw4cmDVr1vjx4+WtmzZtEkK0adNm7x+ioqLkfS2CMCcnp23btkKI55577tixYzExMcuWLatXr57BYPjpp5+0ZjIIfXx8WrduvX79+pMnT27YsEGW2VasWFH6k1q0aJEQwsvLa/369fJQ+/btK4R44okn5PvvwoULe/fulYPUb7/9Vh5wRkZGsXuTQejl5eXs7Lx06dLLly+fOnVq9OjRQohOnTppmSSD0M3NzdnZ+d13392xY8dvv/22f/9+c3FBuGPHDqPR6OjoOHPmzFOnTp07d27Xrl3jx4//6quvZAOLIExOTpanDhMmTNB/hFmzDsInn3xy2rRpe/bsiY6OPnny5KJFi1xcXOzs7I4ePSobmEym1q1b29nZXblyRb+r6OhoIUS3bt20LTNnzhRCyL9IVFTUwYMH//a3vwkh/P39tY4tg7BFixZ169adPXt2UFBQYGCgHMiWToUg9Pf3nzVr1t69e8+dO3fixIk5c+bUrVu3du3a0dHRWpusrKx27doJIQYPHrx79+6LFy8ePnx4yZIlQ4cONZvNycnJe/fubdCggZOTk9bXjh07pu1fH4Qmk0kGas+ePeXAYuPGjXKoNHv2bO0RZRD6+Pi4urp+9dVXJ06c2Llzp+wdEyZMKP0Z7d6922g0Ojs7f/nll+fPnz9x4sSoUaOEEL6+vvID5MaNG3v37pVTBz755BN5wNevXy92bzIIGzVq5OTk9PHHH8fExJw/f17Gs6ura1JSktayefPmRqOxWbNmI0aM2Lx58+HDh7dt22YuLgijo6Plx8tbb7115MiRCxcuBAcHT58+ffLkybKBRRDm5eXJp/Dss8/m5OSU8tytg/Dtt98eN27ctm3bIiIiIiMjV69e7ePjI4TQn+XLl2Lv3r36XWVmZtavX79hw4bZ2dlyy6ZNmwwGg5ub29KlS0+dOhUaGvrBBx/Y2dm1aNFCOzuRQejh4VGnTp333ntv586dISEhISEhpf7F/ot87q6urraMLspUjYOwWB988IEQYuXKldoWeVL5wQcflHSXmzdvCiF69OhhfZNFEH755ZdCiD59+ujPiWSO6k+UZBC6u7unpqZqzXbt2iWE+NOf/lTKwaenp8v3vTaOMZvNOTk58h0pe4s0YMAAIcSlS5dK2Zv5jyC0eEFMJlOfPn30Z3AyCIUQU6dOtdiDRRAWFBTI01j9wVjQB+HFixdlUC1btqz0QzXbNmt0x44dQoiXXnpJ27Jw4UIhxKxZs/TN3n33Xf2zvnjxop2dXdOmTVNSUvTNZJldey4yCIUQmzdvLvNo9VQIQmvr1q2zyJtZs2YJIYYOHVrKZ5Obm1vdunWtt1sEoZyF5OXllZmZqbWJjIyUJ2FarsggdHBw0E5ezWZzXFycvb29l5dX6ccvr7bpxzEmk2nw4MFCiDlz5mgb5XuplDe8JINQCDFx4kT99rFjx1p8/sg4t76MYR2E1gdjQR+Et2/flifNEyZMsB60WbBl1mhMTEytWrU6deqkbdmzZ48QYsSIEfpmcvGG9qxzcnLc3d0dHR0jIyP1zeSyE+25yCAUFZpebjabc3NzO3XqJIT4/PPPK3B3azUtCOVH/5gxY+R/s7Oza9Wq5eTkpO9OFmwPwv79+1t3iaKiolatWgndVTgZhB999JG+WUFBgdFobNWqVSkH/9NPPxUbljKAX331VW1LuYLQzc0tPz9fv/3nn38WQjzzzDPyvzIIjUbj7du3LfZgEYTy46lnz56lPKgWhEePHnV3d3d2dt6+fXvpxynZEoR37txxdHRs3bq1tiU1NbVOnTrNmjXTPnxzcnJcXFzq1q2rDZQ//fRTIcRnn31msTd5ZXXcuHHyvzIIW7ZsWfrI1ZqaQSg/+vUdR5YqwsPDS7mXjUH4zjvvFPsxN2zYMCHEmjVr5H9lEGrvZE3btm0NBkNubm5JhyErf82bN7fI7KCgICFE165dtS3lDUKLixNyrk3Lli21LTIIDx48aLEHiyBMSkoyGAyNGze26Lx6WhDGxcW1adPGYDDMmzev9OOUbFw+0alTJ6PRqL2M8gKMg4ODfljctWtXIYQWe1u3bhVCjBo1ymJXcuVfnz595H9lEDo4OOiv3tlOXozt3bv3nTt3KnB3a9V7sszFixfnzp175MiR+Ph47Y0ohEhOTpb/OHv2bEFBQYcOHUqq6peLvODWpUsX/Uaj0dilS5cLFy5ER0fL94RkMcPCwcGhUaNGMnTLtX8hhNxtVFRUxQ770UcftZjwJk+mLHbYpEmTMqexyNlDFgt6irVv37758+fXq1dv//791gVaG2VkZCxcuHDHjh0JCQnaKaQQIiUlRft3w4YNR4wYsXbt2t27dz/11FNCiE2bNqWmpo4bN65evXqyzalTp4QQJ0+e/PDDD/X7l2cAly9f1m+UHygVO+AaLCUlZf78+YGBgQkJCbdu3dJvl//Iy8uLiYlxcHCQV0fvkuwL1u+0rl27/vLLL/JWjfVcAQ8Pj+joaDldpZT9P/bYYxZFaDl/qsJ9rVGjRlrlT2rVqpWzs/PFixfz8vL0tf8yX6UzZ86YzeZ27dqVOVv1woULsia6efPm5557rmJHfufOna+//nrjxo1xcXGJiYlFRUXaTXKmkhDCYDCMGTNm8uTJ69atmzJlihAiPDw8LCysT58+2tORfS0hIcGirwkh7OzsLPpas2bNtEkJtps+ffqKFSseeeSRn376ST/p725U4yCMjIzs06dPVlaWv7//k08+6eLiYjQaExMTFy9erP0VMzIyhBAWM80qLCsrSwhhUQQWQsh5iZmZmfqN1tM4jUajudRViSXtX26x2L/tbNyhxbzQYtn+ep4/fz43N7dDhw4VXheVnZ3dq1evqKio9u3bjxw5snHjxvITYfbs2YWFhfqW48ePX7t27cqVK2UQrlixQggxZswYrYEMvL1798oRrZ6Li4tFX7LldVBNSkqKnEXSpUuXl156qVGjRnJu59SpU7W/hbzo4ubmVimfTeXqa05OThbN5NSwUrpbSftv0KBB7dq18/Ly7ty5U+z889Jp8/v13N3d4+LisrKytCC0t7e3mGpuzfa+duPGjZSUlGbNmtlyhloss9n83HPPbd++vUWLFk8//bSHh4d8SVesWHHp0iV9dwsICJgxY8aKFSsmT55sNBq/+uorIYS8/CvJvhYWFhYREWHxKPXr17cI9Qr0tdmzZ8+ZM6dly5bBwcGlz1Qvl2ochLNnz05PT//mm28CAgK0jcHBwYsXL9b+26BBAyFEZX0fT7169XJycpKSkiwWmMtxXgVObaz3L4TQD30kuaXC+7dxh7YMg+TractqgfHjx2dlZS1atGjAgAGBgYEVeMevXr06Kirq1VdfXbNmjbYxPz9/+vTpFp9Qfn5+Xbt23bFjx9WrV7Ozsw8fPvz444/rB9byhf3222/l1dfSMRy0tnTp0ri4uH/84x9yMpeUlJSkP+uvX7++wWBISkoqLCy8+ywsqS/c676WlpaWn59fp06dCqSgECIpKcl6Y2JiosFg0K5P2Mj2vta3b9+//OUv48aN6927d1BQUAVG5CEhIdu3b+/Vq1dwcLB+7qi+60kuLi7PP//8unXr9u/f7+fn98MPPzRs2PDZZ5/VGsinOW3aNHn1tXTl7Wvz58+fMWOGj4/Pvn37yrUypEzV+LtG5WU6i+Xe2vokqW3btrVr146NjZWnV8WS73iLQUax5DssNDRUv1FbFGWx0qUC5B4s9i+EkF8JaD2L2kZnz57Ny8vTbzl58qSo0AHLdJF3L53BYFi4cOGMGTNOnTrVt2/fCpyLFPv3PX36tP6ijWbcuHFFRUVr1qyxPkUVf1xh06YOobyK/VtYvA1q167dtm3bwsJCuTC3JA4ODrb0NfnmtOjO4o++UFl9LTw83OJg7nL/qampcXFx+i3nzp3Lyclp1apVeb80R9bnoqKi8vPzy2w8ZsyY7777Ljk5eeDAgaW//sUKDw8XQgwfPlx/kGlpaZcuXbJuPH78eCHEihUrNmzYkJGR8frrr+uvfsm+dvjw4fIeQ5mWLFkyZcqU5s2bBwUFWVx/vnvVOAjlIOPatWvalvT0dP0ZqxDC0dHxhRdeyMvLk2triuXi4uLk5JSQkGAymUp/xOeff14IsWDBAv1n8caNG+XcSIt19xUg1+YHBwcfP35c25idnS0ny1isSrRdSkqK/szOZDLJV6kC5YRevXo9/PDDx48fl/N6yjRz5sy5c+eePXt24MCBckaJ7eRVpitXrmhbzGZzSX/HUaNGNWzY8Jtvvvnuu+8aNGjw4osv6m99+eWXHRwcVq5cad2xTSZTdnZ2uQ5MQbKvya9xkIqKiqy/YPrll18WQkyfPr2UqGvatGleXp5WxS+J7GtLly7VXwU9ffr0r7/+WqdOHXkN/G48/PDDnTt3TkhI+Pbbb7WNcrGpuIu+JoSQ05g1X3zxhfjj6ZRLo0aNnnrqqdTU1Llz59rSftSoUT///HN6enr//v2PHTtWrsey7mtCiE8//bSgoMC6cY8ePTp37rx169bFixfLqqH+1iFDhnh6eu7atevAgQPW95VXpCtg5cqVkyZN8vDwCAwM9PX1rdhOSlMpU26qxPTp04UQHTt23Llz5/nz57ds2dKhQwf5GumnJickJHh6egohXnzxxcDAwMjIyD179kyfPv3vf/+71kbOWBsxYsSSJUuWL19+4MABud1i1mheXp5Mu6FDhwYHB0dERCxcuNDZ2dlgMOzYsUNrJmeN/vjjjxYH7O7uXux8Ob2lS5cKITw8PFatWhUZGblr1y75fTRDhgzRT2Us16zR5s2bOzk5ffHFF9HR0YcPH5ZrBrp3767Nl9MW1FvvwXodYVBQkL29fa1ataZMmXLw4MGIiIitW7e+8cYb//rXv2QD6wX1S5cuNRgM3t7esbGxpRytxaxROVe7cePGq1evPnv2bEhIyDPPPOPp6VmnTp0GDRpY3137nZC3337b+lb5zQlubm7z5s0LDg4+c+bMtm3bZs2a5evrq60B1RbUl3KQeoGBgW+++eabb74plyQ6Ojq++YezZ8/auJNq4fvvvxdCeHl5bdiw4dy5c0FBQYMHD/bx8TEYDD4+Plqz3Nxcec3A399/69atkZGR+/fvX7BggX4itBxP9OvX74svvli+fLm2JN96Qb0Mj27duu3cuTMyMnLt2rWyYKafGKktqLc44CeeeEIIoS2NL1ZwcLCdnZ2Tk9O8efPOnDkTEhIiu0br1q2zsrK0ZuWaNerq6urs7Pw///M/4eHhp06dku9JT09P/boduaDeeg/WyydiY2Pl/LXXXntt37598gNh8uTJ7733nmxgvaB+586djo6ODRo0OHToUClHazFr9PLlyw4ODg4ODgsWLIiIiDh+/Pg777zj6Ogoa0BXr161uLssw8u/o/XOt2/fbmdn5+joOHXq1N27d585c2bXrl2LFi3q0qWLtsxJW1BfykFqQkJC5EXUgQMHvmlFv5K1wqpxEGZnZ//5z3/Wh3q/fv3kl/VZrNGJjY2VK+c0BoPBYuGqn5+f9t0rpXyzzM2bN+XiHo2rq+vGjRv1be4mCM1m8+LFi/VzXA0Gw+jRo/U901zOIBw9evTChQv1ZRs/P78bN25ozcoVhGaz2fqkrHbt2uvWrZO3FvvrE8uXLzcajc2bNy/layCsl09MmzZN/4U43t7eoaGhrq6uxQZhdHS07C0lLYFftWqVdXW9Q4cO2rqX8gahPNkvVlBQkI07qRZMJtNbb72lr+g88sgj0dHRRqNRH4Rms/n27dsjRoywqP0MGDBAa5CUlPTXv/5Vq8CV8s0y8ru59W8AJyenuXPn6h/uboLQbDZv2bJFniVr+vXrZ/ELGOUKwo4dO27dulVfDvT19bVYT2J7EJrN5sjISIsvAjQajdOnT5e3FvvrE/v3769bt66zs7PFync96+UTa9as0U9qbdCgwdatW+WCMesgzMzMlCXM9evXF7v/wMBA66m83t7e2nlPuYJw8+bNJXU0IURgYKAtOymdwfxA/rqC7U6ePCk/Otu3b9+tW7eCgoL4+Pg6depYvL+FEFFRUWFhYbm5uZ6enp07d7a+ynznzp2bN2/euXOnXr168lqBvJJmPRKPiooKDQ3Nzc196KGH+vbtazFBNCUlJT093cPDw9nZWb9dLjCy/qY+a2lpaSEhITdu3KhXr17Pnj2tD+DGjRu5ubktWrQofVZCXl7e9evX69at6+7ufv369QMHDmRlZbVp06Z37976zxeTyXT58uVatWpZfHGaECI1NTU5OdnDw8NiekJhYeGxY8fOnz9vNpu9vLx69eolO4YQIisrKykpycXFxWIxRnx8fEFBgfbaWrtx40ZWVpa3t7d+allcXFxoaGhaWpqPj4/8ItmSXsbTp0936tSpR48eR44cKekFyc/PP3bsWGxsrMlk8vT0bNu2rf61zc3Nla95SUdoIT09Xb+QQ69JkybWUxmru5iYmJMnT2ZlZbVs2dLf39/Ozu7SpUv29vbWXenKlStHjhxJT09v3Lhxu3bt2rRpY9HAZDLdvHkzLy+vdu3actgRHx+fm5vr6+trsZ7hypUrhw4dkl8R3K9fP4tvRMvMzLx165b1m83GDiKEyM3NPXjw4KVLl2rXrt25c2frAkdycnJGRoa8FFHKfvSdKD09PSgoKDk52dvbe8CAARbVwatXrxYVFclvydDLyclJSEho2LChxdvPbDafPn369OnT+fn5np6e3bt316aS5ufnJyQkODs7W5zhJSUlZWVlaa+ttZSUlNu3bzdp0kR/zp2UlHTkyJGbN296eXkNHDjQ2dn5+vXr8huVLV7GjIwMLy8vJyen+Pj4kmqfRUVFp06dioqKysvL8/T09PX11c9yKCoqunLlSilHqJednW09rUlTKX2t2gchIAUEBKxatWr9+vXyO+QA3COLFy+eNGnS1KlT58yZU9XHUjkIQlRvt2/fTktL+/333wMCAry9vc+fP19Za2wB6MmLPbGxsSNHjszLy4uLi6vElXxVi48MVG/z58+XhUxHR8fVq1eTgsA9smXLlldeeUUIYTQaV6xYUWNSUDAiRHV34MCBY8eOubu7Dxo0yOKH3ABUoqioqB07djRs2FD/nWo1A0EIAFBaNV5QDwDA3SMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASiMIAQBKIwgBAEojCAEASrOv6gMoUea/A+5E/y7/3firuKo9GKBymc13qvoQ/l/22g/yj22V/6avoWZIGe8j/9FoWUyZjRkRAgCURhACAJRGEAIAlPbg1gj1tKu9ghoGUNneCk5et+7/uhV9DTWD9u41Lyu7MSNCAIDSCEIAgNIIQgCA0h7cGuGIHTf37CmmREENA7g/6GtQBCNCAIDSCEIAgNIIQgCA0h7cGqEtqGEAlaukfkRfQw3GiBAAoDSCEACgNIIQAKC06lcjpIYBVC36GmoYRoQAAKURhAAApRGEAAClVb8aoS20GgYFDKBSlFmbp6+h+mJECABQGkEIAFBazbk0WuyVGeZ5A/cHfQ3VFyNCAIDSCEIAgNIIQgCA0mpOjbBM1DCASkdtHjUAI0IAgNIIQgCA0ghCAIDSaniNkN9sAqoWfQ0PPkaEAAClEYQAAKURhAAApdXwGqEtqGEAlYvaPKoXRoQAAKURhAAApRGEAAClKVojpIYBVC36Gh4cjAgBAEojCAEASiMIAQBKUwZZgxoAAAeNSURBVLRGaAuthkEBA6gUZdbm6WuoEowIAQBKIwgBAErj0uh/KfbKDPO8gfuDvoYqwYgQAKA0ghAAoDSCEACgNGqE5UMNA6h01OZRtRgRAgCURhACAJRGEAIAlEaNsGz8ZhNQtehruKcYEQIAlEYQAgCURhACAJRGjbByUMMAKhe1edw3jAgBAEojCAEASiMIAQBKo0ZYcdQwgKpFX0OlYEQIAFAaQQgAUBpBCABQGjXCe0urYVDAACpFmbV5+hrKixEhAEBpBCEAQGlcGq18xV6ZYZ43cH/Q11BejAgBAEojCAEASiMIAQBKo0ZYBahhAJWO2jwqjBEhAEBpBCEAQGkEIQBAadQI7xN+swmoWvQ1lIQRIQBAaQQhAEBpBCEAQGnUCB8g1DCAykVtHrZgRAgAUBpBCABQGkEIAFAaNcIqRg0DqFr0NTAiBAAojSAEACiNIAQAKI0aYTWg1TAoYACVoszaPH1NKYwIAQBKIwgBAErj0ugDqtgrM8zzBu4P+ppSGBECAJRGEAIAlEYQAgCURo2wuqKGAVQ6avNqYkQIAFAaQQgAUBpBCABQGjXC6oTfbAKqFn2tRmJECABQGkEIAFAaQQgAUBo1wpqGGgZQuajN13iMCAEASiMIAQBKIwgBAEqjRlgTUMMAqhZ9rVpjRAgAUBpBCABQGkEIAFAaNUJVaDUMChhApSizNk9fqy4YEQIAlEYQAgCUxqXRmqzYKzPM8wbuD/padcGIEACgNIIQAKA0ghAAoDRqhEqjhgFUOmrz1Q4jQgCA0ghCAIDSCEIAgNKoESqH32wCqhZ97UHDiBAAoDSCEACgNIIQAKA0aoQoBjUMoHJRm3+QMSIEACiNIAQAKI0gBAAojRoh/k+ZNQwKGMA9RV+rKowIAQBKIwgBAErj0ihsxTxvoNLxm00PAkaEAAClEYQAAKURhAAApVEjRBmoYQBViL52HzAiBAAojSAEACiNIAQAKI0aIe4WNQygcvGbTfcZI0IAgNIIQgCA0ghCAIDSqBGiIqhhAFWLvlaJGBECAJRGEAIAlEYQAgCURo0Q9wo1DKByUZu/RxgRAgCURhACAJRGEAIAlEaNEJWpzBoGBQzgnqKvVQAjQgCA0ghCAIDSuDSK+4p53kClK7Yr0ddsx4gQAKA0ghAAoDSCEACgNGqEuB+oYQBViL5WOkaEAAClEYQAAKURhAAApVEjxAOBGgZQufjNJtsxIgQAKI0gBAAojSAEACiNGiGqDDUMoGrR1yRGhAAApRGEAAClEYQAAKVRI8QDjRoGULmozVtjRAgAUBpBCABQGkEIAFAaNUI8cMqsYahWwADuM9X6GiNCAIDSCEIAgNK4NIrqR+V53sA9UmxXUqSvMSIEACiNIAQAKI0gBAAojRohqg2VaxhAlavBfY0RIQBAaQQhAEBpBCEAQGnUCFFz1OAaBlAlFPnNJkaEAAClEYQAAKURhAAApVEjRPWmSA0DeGDVgL7GiBAAoDSCEACgNIIQAKA0aoSo+WpADQN4oNSw2jwjQgCA0ghCAIDSCEIAgNKoEaJmKrOGUY0KGEB1VI36GiNCAIDSCEIAgNK4NApFVdN53sCDrNiu9OD3NUaEAAClEYQAAKURhAAApVEjhFqqaQ0DqBkezL7GiBAAoDSCEACgNIIQAKA0aoTAf3kwaxhA9fXg/2YTI0IAgNIIQgCA0ghCAIDSqBEC1aCGAdRsVdvXGBECAJRGEAIAlEYQAgCURo0QsAn1QqByPTi1eUaEAAClEYQAAKURhAAApVEjBEpUZg2DYiFwT92fvsaIEACgNIIQAKA0Lo0CFceaCqDSFduV7mlfY0QIAFAaQQgAUBpBCABQGjVCoNzufw0DgKbS+xojQgCA0ghCAIDSCEIAgNKoEQKVj3ohULnu6W82MSIEACiNIAQAKI0gBAAojRohUDnuaQ0DQJkq3NcYEQIAlEYQAgCURhACAJRGjRC4f/Q1DAB3z5bafJkYEQIAlEYQAgCUZjCbzVV9DAAAVBlGhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKURhAAApRGEAAClEYQAAKX9L8J6FOFIsJ33AAAAAElFTkSuQmCC", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "p1 = plot(brick_layer1*initial_state, xzcomponents=:together, title=\"action of brick layer 1\", xlabel=\"index of physical qubit\", ylabel=\"index of time-evolved logical operator\")\n", + "p2 = plot(brick_layer2*initial_state, xzcomponents=:together, title=\"action of brick layer 2\", xlabel=\"index of physical qubit\")\n", + "plot(p1,p2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In between these brick layers we will put layers of random single-qubit unitaries." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finally, we can make a function that applies the layers (with a set of random single-qubit unitaries in between). We will try two different implementations.\n", + "\n", + "We use the `apply!(state, operator)` syntax instead of `operator*state`, as this performs the operation in-place, without copies and new memory allocations. We also turn off the calculation of relative phases. " + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "\"\"\"Applying just the random single-qubit operations.\"\"\"\n", + "function apply_random_singlequbitops!(state)\n", + " for i in 1:nqubits(state)\n", + " apply!(state, random_clifford1(i), phases=false)\n", + " end\n", + "end\n", + "\n", + "\"\"\"Applying also the brick layers, using a pre-computed dense tableau. An n³ operation.\"\"\"\n", + "function apply_single_layer_a!(state; random_single_q=true)\n", + " n = nqubits(state) # Find the size of the state\n", + " random_single_q && apply_random_singlequbitops!(state)\n", + " apply!(state, brick_layer1, phases=false)\n", + " random_single_q && apply_random_singlequbitops!(state)\n", + " apply!(state, brick_layer2, phases=false)\n", + " return state\n", + "end\n", + "\n", + "const l1 = [sCNOT(2i-1,2i) for i in 1:N÷2]\n", + "const l2 = [sCNOT(2i,(2i+1)%N) for i in 1:N÷2]\n", + "\n", + "\"\"\"Applying also the brick layers, using a symbolic sparse gates. A sequence of n operations of n² complexity.\"\"\"\n", + "function apply_single_layer_b!(state; random_single_q=true)\n", + " n = nqubits(state) # Find the size of the state\n", + " random_single_q && apply_random_singlequbitops!(state)\n", + " for i in 1:n÷2\n", + " apply!(state, l1[i], phases=false)\n", + " end\n", + " random_single_q && apply_random_singlequbitops!(state)\n", + " for i in 1:n÷2\n", + " apply!(state, l2[i], phases=false)\n", + " end\n", + " return state\n", + "end;" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "BenchmarkTools.Trial: 10000 samples with 1 evaluation.\n", + " Range \u001b[90m(\u001b[39m\u001b[36m\u001b[1mmin\u001b[22m\u001b[39m … \u001b[35mmax\u001b[39m\u001b[90m): \u001b[39m\u001b[36m\u001b[1m29.434 μs\u001b[22m\u001b[39m … \u001b[35m343.101 μs\u001b[39m \u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmin … max\u001b[90m): \u001b[39m0.00% … 0.00%\n", + " Time \u001b[90m(\u001b[39m\u001b[34m\u001b[1mmedian\u001b[22m\u001b[39m\u001b[90m): \u001b[39m\u001b[34m\u001b[1m30.585 μs \u001b[22m\u001b[39m\u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmedian\u001b[90m): \u001b[39m0.00%\n", + " Time \u001b[90m(\u001b[39m\u001b[32m\u001b[1mmean\u001b[22m\u001b[39m ± \u001b[32mσ\u001b[39m\u001b[90m): \u001b[39m\u001b[32m\u001b[1m31.705 μs\u001b[22m\u001b[39m ± \u001b[32m 4.395 μs\u001b[39m \u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmean ± σ\u001b[90m): \u001b[39m0.00% ± 0.00%\n", + "\n", + " \u001b[39m▆\u001b[39m▂\u001b[39m \u001b[39m \u001b[39m█\u001b[34m▆\u001b[39m\u001b[39m▃\u001b[39m▁\u001b[39m▃\u001b[39m▄\u001b[32m \u001b[39m\u001b[39m \u001b[39m \u001b[39m▃\u001b[39m▂\u001b[39m \u001b[39m \u001b[39m \u001b[39m▂\u001b[39m▂\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m▃\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m▂\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m▃\u001b[39m▂\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m▂\u001b[39m▁\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m▁\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m▁\u001b[39m \u001b[39m▂\n", + " \u001b[39m█\u001b[39m█\u001b[39m▆\u001b[39m▅\u001b[39m█\u001b[34m█\u001b[39m\u001b[39m█\u001b[39m█\u001b[39m█\u001b[39m█\u001b[32m▇\u001b[39m\u001b[39m▄\u001b[39m▅\u001b[39m█\u001b[39m█\u001b[39m▆\u001b[39m▄\u001b[39m▄\u001b[39m█\u001b[39m█\u001b[39m▄\u001b[39m▅\u001b[39m▄\u001b[39m▅\u001b[39m█\u001b[39m█\u001b[39m▃\u001b[39m▄\u001b[39m▄\u001b[39m▄\u001b[39m█\u001b[39m▆\u001b[39m▄\u001b[39m▃\u001b[39m▄\u001b[39m▄\u001b[39m█\u001b[39m█\u001b[39m▄\u001b[39m▁\u001b[39m▁\u001b[39m▃\u001b[39m▄\u001b[39m█\u001b[39m█\u001b[39m▄\u001b[39m▅\u001b[39m▄\u001b[39m▃\u001b[39m▄\u001b[39m▅\u001b[39m█\u001b[39m▇\u001b[39m▃\u001b[39m▅\u001b[39m▄\u001b[39m▄\u001b[39m▁\u001b[39m▄\u001b[39m█\u001b[39m \u001b[39m█\n", + " 29.4 μs\u001b[90m \u001b[39m\u001b[90mHistogram: \u001b[39m\u001b[90m\u001b[1mlog(\u001b[22m\u001b[39m\u001b[90mfrequency\u001b[39m\u001b[90m\u001b[1m)\u001b[22m\u001b[39m\u001b[90m by time\u001b[39m 43.7 μs \u001b[0m\u001b[1m<\u001b[22m\n", + "\n", + " Memory estimate\u001b[90m: \u001b[39m\u001b[33m576 bytes\u001b[39m, allocs estimate\u001b[90m: \u001b[39m\u001b[33m8\u001b[39m." + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "@benchmark apply_single_layer_a!(s; random_single_q=false) setup=(s=copy(initial_state))" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "BenchmarkTools.Trial: 10000 samples with 1 evaluation.\n", + " Range \u001b[90m(\u001b[39m\u001b[36m\u001b[1mmin\u001b[22m\u001b[39m … \u001b[35mmax\u001b[39m\u001b[90m): \u001b[39m\u001b[36m\u001b[1m24.451 μs\u001b[22m\u001b[39m … \u001b[35m93.532 μs\u001b[39m \u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmin … max\u001b[90m): \u001b[39m0.00% … 0.00%\n", + " Time \u001b[90m(\u001b[39m\u001b[34m\u001b[1mmedian\u001b[22m\u001b[39m\u001b[90m): \u001b[39m\u001b[34m\u001b[1m28.555 μs \u001b[22m\u001b[39m\u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmedian\u001b[90m): \u001b[39m0.00%\n", + " Time \u001b[90m(\u001b[39m\u001b[32m\u001b[1mmean\u001b[22m\u001b[39m ± \u001b[32mσ\u001b[39m\u001b[90m): \u001b[39m\u001b[32m\u001b[1m29.155 μs\u001b[22m\u001b[39m ± \u001b[32m 3.246 μs\u001b[39m \u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmean ± σ\u001b[90m): \u001b[39m0.00% ± 0.00%\n", + "\n", + " \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m▁\u001b[39m \u001b[39m \u001b[39m \u001b[39m▂\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[34m \u001b[39m\u001b[39m \u001b[32m \u001b[39m\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m█\u001b[39m▁\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \n", + " \u001b[39m▄\u001b[39m▂\u001b[39m▂\u001b[39m▇\u001b[39m▄\u001b[39m▂\u001b[39m▂\u001b[39m█\u001b[39m▄\u001b[39m▂\u001b[39m▂\u001b[39m█\u001b[39m▅\u001b[39m▃\u001b[39m▂\u001b[39m▇\u001b[39m▅\u001b[34m▃\u001b[39m\u001b[39m▂\u001b[32m▂\u001b[39m\u001b[39m▆\u001b[39m▃\u001b[39m▂\u001b[39m▂\u001b[39m▃\u001b[39m█\u001b[39m█\u001b[39m▄\u001b[39m▃\u001b[39m▂\u001b[39m▃\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▃\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▃\u001b[39m▂\u001b[39m▁\u001b[39m▂\u001b[39m▁\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▁\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▃\u001b[39m▃\u001b[39m \u001b[39m▃\n", + " 24.5 μs\u001b[90m Histogram: frequency by time\u001b[39m 39 μs \u001b[0m\u001b[1m<\u001b[22m\n", + "\n", + " Memory estimate\u001b[90m: \u001b[39m\u001b[33m32 bytes\u001b[39m, allocs estimate\u001b[90m: \u001b[39m\u001b[33m1\u001b[39m." + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "@benchmark apply_single_layer_b!(s; random_single_q=false) setup=(s=copy(initial_state))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We will use option \"a\" below and reimplement it / inline it in another function." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We will visualize the results of repeated applications of these brick layers below. Notice we use the `copy` function if we want to save intermediary results." + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "const apply_single_layer! = apply_single_layer_a!\n", + "test_state = copy(initial_state)\n", + "apply_single_layer!(test_state)\n", + "first_application = copy(test_state)\n", + "apply_single_layer!(test_state)\n", + "second_application = copy(test_state)\n", + "apply_single_layer!(test_state)\n", + "third_application = copy(test_state)\n", + "plot(\n", + " plot(initial_state, xzcomponents=:together, title=\"initial state\"),\n", + " plot(first_application, xzcomponents=:together, title=\"after first layer\"),\n", + " plot(second_application, xzcomponents=:together, title=\"after second layer\"),\n", + " plot(third_application, xzcomponents=:together, title=\"after third layer\"),\n", + ")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Extracting the stabilizer operators for the code\n", + "\n", + "We just need each odd row from the tableau." + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "code = test_state[1:2:end]\n", + "plot(code,xzcomponents=:together)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Extracting the generating set of syndromes\n", + "\n", + "The matrix S is the matrix of commutators between code stabilizer operators and error operators. Its rank carries information about the error correction probability of a perfect syndrome decoder." + ] + }, + { + "attachments": { + "image.png": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABeEAAAK3CAYAAAACrIT7AAAABHNCSVQICAgIfAhkiAAAIABJREFUeF7snQWYLcXx9nvxoMGJIAmBoAkWIDjBJWhwd7cQLAS/OBd3d0vQwMWT4ME1BAgWJIQQ3O32V7/Kv/frnTNzzpy9u3tX3nqe8+yeOT093W9X18y8VV3dEU2CRAgIASEgBISAEBACQkAICAEhIASEgBAQAkJACAgBISAEhIAQ6HEExujxGlWhEBACQkAICAEhIASEgBAQAkJACAgBISAEhIAQEAJCQAgIASHgCIiElyIIASEgBISAEBACQkAICAEhIASEgBAQAkJACAgBISAEhIAQ6CUERML3ErCqVggIASEgBISAEBACQkAICAEhIASEgBAQAkJACAgBISAEhIBIeOmAEBACQkAICAEhIASEgBAQAkJACAgBISAEhIAQEAJCQAgIgV5CQCR8LwGraoWAEBACQkAICAEhIASEgBAQAkJACAgBISAEhIAQEAJCQAiIhJcOCAEhIASEgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBISAEOglBETC9xKwqlYICAEhIASEgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBISASHjpgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBISAEBACQkAICIFeQkAkfC8Bq2qFgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBISAEBACQkAIiISXDggBISAEhIAQEAJCQAgIASEgBISAEBACQkAICAEhIASEgBDoJQREwvcSsKpWCAgBISAEhIAQEAJCQAgIASEgBISAEBACQkAICAEhIASEgEh46YAQEAJCQAgIASEgBISAEBACQkAICAEhIASEgBAQAkJACAiBXkJAJHwvAatqhYAQEAJCQAgIASEgBISAEBACQkAICAEhIASEgBAQAkJACIiElw4IASEgBISAEBACQkAICAEhIASEgBAQAkJACAgBISAEhIAQ6CUERML3ErCqVggIASEgBISAEBACQkAICAEhIASEgBAQAkJACAgBISAEhIBIeOmAEBACQkAICAEhIASEgBAQAkJACAgBISAEhIAQEAJCQAgIgV5CQCR8LwGraoWAEBACQkAICAEhIASEgBAQAkJACAgBISAEhIAQEAJCQAiIhJcOCAEhIASEgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBISAEOglBETC9xKwqlYICAEhIASEgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBISASHjpgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBISAEBACQkAICIFeQkAkfC8Bq2qFgBAQAkJACAgBISAEhIAQEAJCQAgIASEgBISAEBACQkAIiISXDggBISAEhIAQEAJCQAgIASEgBISAEBACQkAICAEhIASEgBDoJQREwvcSsKpWCAgBISAEhIAQEAJCQAgIASEgBISAEBACQkAICAEhIASEgEh46YAQEAJCQAgIASEgBISAEBACQkAICAEhIASEgBAQAkJACAiBXkJAJHwvAatqhYAQEAJCQAgIASEgBISAEBACQkAICAEhIASEgBAQAkJACIwlCISAEBACQkAICAEhIASEgBBojcDXX38d/vWvf4X33nsvjDHGGGGyySYL00wzTRhzzDHDq6++GqabbrrWlXSzxMcffxy++uor/3Ddscbq/mP8p59+Gr788kuva8IJJwzf+ta3utmq0Xca7f/888+9D8jkk08++hqjKw8KBPJ5McEEE4Txxx9/tPXrk08+6Zyjk0wySRh33HFrtaU/9aFWg7tRiHn/xRdf+NzH9k466aS1a8FujBw5slZ5MO/o6KhVVoWEgBAQAkJACNRBoCOa1CmoMkJACAgBISAEhIAQEAJCYKgiAOkzfPjw8PDDD4cZZpjBiRzI+Pnmmy+sv/76Yb311gu33nprr8Dz3//+N2y33XYBYg4y/qKLLgrTTz99rWv96U9/ctJ+rrnm6iy/6aabBuqkrr322iussMIKnb+988474Y477ghLLrlkmHLKKWtdY3QUOvvss8OIESMck2mnnTacdtppYeyxx+7zpvAqdd999wX+Lrzwwv2KtHvhhRfC3//+97DsssvWJnH7HMB+dMGtt946vPnmmz4vtt9++7DWWmuNttZhUz744ANvy1FHHRUWWGCBlm3BRu26667htdde83mx8847h9VXX73leT1RgLbeeeedYZlllul1p97hhx8e7r//fu8j9vfII4+s3YXDDjssPPvss7XKH3jggeGHP/xhrbIqJASEgBAQAkKgDgLdD6GpU7vKCAEh0G8QIPKDj2RoIkDE5uiM6BqaqKvXQkAIDBYEINz33ntvJzRvvPFGj75MwvGFFlrIybIyeffdd50EHxUhyhviCfL83nvv9QjwOvLkk086Kcb1n3rqKY/aR4YNGxYOPfTQcPrpp4ctttiiS1X7779/OPXUU8Pmm28ezjnnnDqXGS1l1l133TDjjDOGddZZJ4Bx3ejWnm7sc889F1ZZZRUfk1deeaVPHRcQ/xCv4403XkO3IChxDD3yyCPutNlggw0ayuhAVwQgXU844QQnvddcc83RCg9k8U477RTuuuuu8OGHH9ZqC5Hb++23X+Bc5jBzpK9kueWWCw888IBf87LLLuvVy+IswQmJPZx44onbutbVV18dHn/88TDnnHOGbbfd1p2NU001ldeBDUEHTjrpJCffv/vd77ZV92Au/J///Mdtm1YGDOZRVt+EgBDoCwREwvcFyrqGEOgHCJxxxhnh3HPP7QctURNGBwI/+MEPAi8eEiEgBISAEGgfgbvvvtvvoX/+85+7EPDUdPDBB4fXX3/dfysTCNrbbrttlKJDIT5+9KMfha222spJ+LqC85W0GqScyaPEv//974ff/e53TsIXhdQOXK+/p3ehT4suuminY6HYj776DgFOOh/SA+Hw7kthJcbtt98e1l577YbL4ij69re/7ePeLlHZUNkQOQDpesABBzgJP7qF1TY4wm644Ya2mkIfcLiceeaZbZ03qoV5znzwwQdrr9AZlethm1ZdddUw9dRTt10NDrtddtklHHLIIQ3BKS+//HK44oorwkQTTRSuvPLKUudW2xccJCfMO++87oTG7kqEgBAQAkKg+wiIhO8+djpTCAwoBFheS+SHZGgiUDdqcmiio14LASEgBJojQEoXyNbvfOc7DQXHGWccjzxdfvnlG3574403PDq6p7I/tptuBeL+mWeecTK2SJ5U1YVTgWjWH//4xw396W8HcBaM7shMyFKer8hP3deOC6KkP/vss9JhQV//+Mc/emoS9EBSD4GqeVHv7J4t1d19H0bHvCD6HTsIGd9X0h2nFytESDVUXB1KLn0i64n45u/cc8/dV93o99dhHxQczT11H+v3HVYDhYAQEAK9iIBI+F4EV1ULgf6KwFVXXTXaX1r7KzaDrV3k5zzxxBMHW7fUHyEgBIRAnyJAvmPITgiaMiIe8pXUKEW56aabiof6/DtR7+0IxNYcc8zRzilDvuwUU0wxWjAgFzYpNaoEIn6mmWaq+lnHhUCPItCXBHx3Gv7N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eO2113xzJvJtjhgxIpx00klOyJOLUyIEhIAQEAJCQAgIASEgBISAEBACQkAICAEhMDgQEAk/OMZRvRACQqAfIvDMM8+E+eabL0wyySTh6aefDjPOOGNDK3feeWePjId8X3311cPNN98cllxyyYZyOiAEhIAQEAJCQAgIASEgBISAEBACQkAICAEhMDAREAk/MMdNrRYCQqBNBP7973+Hk08+Ofz3v//1T0dHR5h++unD5JNP7pHq5GfvSfnqq6/CNttsEyaddFIn1ssI+HQ9rk0k/BZbbOFE/B133BHmnXfenmyO6hICQkAICAEhIASEgBAQAkJACAgBISAEhIAQGE0IKOfBaAJelxUCQqBvEZhmmmnCsGHDwiabbBKuvvrqMOWUU4Zjjjkm7LPPPj1OwNOzE088MTzyyCNOwM8555wtOzvxxBOHo446yvPEDx8+vGV5FRACQkAICAEhIASEgBAQAkJACAgBISAEhIAQGBgIiIQfGOOkVgoBIdBDCNxyyy0eBb/77rv3UI2N1Xz44YfhvPPO87Qys802W2OBiiM/+MEPwlZbbRVuu+22MHLkyIpSOiwEhIAQEAJCQAgIASEgBISAEBACQkAICAEhMJAQEAk/kEZLbRUCQmCUEPjyyy891cu0007bND3MKF3ETn7zzTcD6W+WWmqpMOaYY7ZVHTni33///fDnP/+5rfNUWAgIASEgBISAEBACQkAItELg66+/Dg899FCrYvpdCAgBISAEhIAQ6GEERML3MKCqTggIgf6LALng//nPf4bZZ5+9VxtJJPwnn3zSreuQJuc73/lOuP/++3u1japcCAgBISAERh8CX3zxRbjyyitHXwN0ZSEgBIYsAs8880xYf/31h2z/1XEhIASEgBAQAqMLAZHwowt5XVcICIE+R+Bf//pXePfdd8Ncc83Vq9cmlUyMMYw99tjdug7nff755906VycJASEgBIRA/0fgjTfeCLvuumv/b6haKASEwKBD4Lvf/a7vQSQRAkJACAgBISAE+haBsfr2crqaEBACQmD0IfDEE094hPr888/fq4341re+FcYdd9wAydIdIZ3NzDPP3J1TdY4QEAJCQAgMAAQmnXTS8KMf/WgAtLTnmvjxxx/3XGVW0zjjjOMfiRAQAu0hMMUUU+g5sz3IVFoICAEhIASEQI8gIBK+R2BUJUJACAwEBK6//np/Ye9tEn6aaaYJECx/+tOfwoYbbugbwdaVyy67zKPoV1lllbqnqJwQEAJCQAgMMASIQu3te9GoQMJ9iPRtaVXXGGOMEb766qtALmnSpk088cSd1eflWAnG/iukVRt//PG7NOGiiy4KO+64Y49sPM69nHvswgsv3NDNhx9+OJxxxhnh73//e2AFHG3+9re/Haaffvqw7LLLhi222KKhbQ2V/N8B+n/77bf7ZusvvvhieOuttxyTySef3Otbb731whprrBHGGqveKxUY3nDDDeHSSy8NL7/8cnj77bf9GWGqqaZyp8xGG20Ulllmmdr10bezzz47jBgxIrz66qu+2o+9aIh0nmmmmcLWW28dFlpooaruNRznfPoKttT33nvvBQILqG+OOeYI2267bZhzzjkbzqs68J///CecfPLJ4a9//Wt47bXXAo4Y6mNvnp/+9Kdhp512CmxKX1f+8Y9/hFNPPTUQVPH666+HTz/91HWR+hZZZBFvH/pZV5566imv7+mnn3ZdQXfRlemmm851ZfPNNw8TTTRRrerQi7vvvjuceeaZrivsDfTNN9+EySabzPuInqy99toepNEdIYUV481cRGe4HvON//O5Rh/Qs1SOMvyPzaG/jMXPf/5z1w/ywj/++OPerkkmmaQ7zerxcwhgOfbYY71d6OBnn33mOsOYYDPRGfSxrvztb38Lp512mvedutGZNMaLLrqoz5F2dAb8sC/PP/+818eY8Myf7As6WNc5yLnsVXXhhReGF154wXWG8cJJgs4wLquvvnptnaG+a6+9Nlx++eXhpZde6rQvU089dfjhD38YNt5447DiiivWfi8Be+z2H//4R78fYB+wdeD/4x//OGy11VauS3Xfcz744AOfH8m+sAcWevm9730vzDrrrGH77bd3u1BXwB/7gs1HV7AvzAXswTzzzOP3mxlmmKFudQH7gq489thjbq/of7IvCy64YNhhhx0CWNYV6jnllFPCs88+67rCvGSeocvLLbdc2GabbVy3JUJACAwtBDrsBh6HVpfVWyEwNBH47W9/Gw4//HDv/FCc9qR34SGbh7wHH3yw15WAF+m//OUv4ZFHHvGX6zrCw+N8883n5EVPbczKw/Mmm2ziD8sQEhIhIASEQH9BALvMizMEUSKMIK0gISA0ElkF+QQBQBkIxpTyqyqSnBd7yNJWAnHw/e9/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0PHLo0OYZXnLN6OEM0NSN9RpISAEhIAQ6DEE/vWvf3kaRIkQEAJCQAgIASHQtwiIhO9bvHU1ISAE+giBu+66y18wvv7663DggQeOFnL7jTfeCNttt10g9/v3v//9yp6PO+64YfbZZw8jRowIf/vb3yrL6QchMOgQGPl1CH+/McTfbxXC8DlDx2OXhY4lfhM6trwxdOzyQAgWAS8RAoMRgddff933KZEIASEgBPoagc8++yy8++67fX1ZXU8ICAEhIASEwJBHQCT8kFcBASAEBhcCRJLff//94U9/+lO44IILwowzzuj52CHE+1rOO+88z0c/zzzzNL00m8nOO++8XmazzTbzqHiJEBisCMSRI0P4xPK7P3V1iMN/GuI1O4eOj/4dwqonhgDxvvjuttHqzwZr99UvIeAIjDnmmOHDDz8UGkJACAiBPkeA9IjTTjttn19XFxQCQkAICAEhMNQR0MasQ10DVwA83gAAIABJREFU1H8hMMgQeOSRR8Ktt94a9t9//zDWWGMFcsMfffTR4c477wwbbLBBn/X25ZdfDsccc0yYY445wjTTWP7qFjLGGGOEhRZayFPXnH/++WGbbbZpcYZ+FgIDEIFP/hvCnceG+PxtIXz6buiYe50Q5tkwhCktBc0YeiQZgCOqJncTgYkmmqilg7abVQ/I01i1xkow7uH//e9/ww9+8AN3TrOSjPtju0Kk71NPPeX1ffrpp2GmmWby+tiHpUzee++9sM4664Svvvqq7Oe2j7HCjf1gZp111tJz33777fD44497n+nfT37ykzD33HOHSSaZpLR8q4NvvvlmePjhh8M//vGPMM4444T55psv/PSnPw3f+ta3Wp3a8DvBDP/85z/Do48+Gl588cUw2WSTua7ONttsgX61K9T3/PPPe/to5+STTx7mn39+r48ghHblm2++CX//+9/DQw89FMBxuumm87GFWMa51a4Q+PDkk0+6rnz88ceuez/72c+83u4IdTzxxBM+vp9//nn48Y9/7PWRInF0C2PBB51DR5CR5hjvzhzrzb7QxmeeeSb89a9/9TFmb6cFF1zQsezuGFNf0hkCdOg/OtOdvmNfGN8HH3zQx/hHP/qR63R3HRsffPCB1/fYY4+FL7/80lfHotN13h/KxgHMmG9PP/2044V9QQe7a18IZAI75jE2INmXCSecsOzyTY8xtrwj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ZoaAIWAIGAKGgCFgCBgChoAhYAiMDwSMhB8fqFqZhoAhUIgAEjTIrpD9nSTsIevJQkwj6Cl45MiR8uyzz/os87J27733eo15sh07wnr37i277rqr30yWthZtIov8wX333eclfZDkMeuBCDjVGn/6KpElNhWZacHmBGDMKJGb9xH54g2pbXujSHch4L/7WOQJDXy8/oA4bZv8SlforHHM2A1VZ/it1CaarDn7w2plCBgChoAhYAgYAoaAIWAIGAKGgCHQJRAwEr5LdJNV0hDofggsuuii8vTTT3ut+CmmaKt7/cknn/iNV2ecccY2DWfDPAzy/sEHHyxNwkPaDx8+XGaaaSZBKqaj7Nhjj5XXXntN7r//fkEOB037KaecslXmgAAEbUFD/4knnhBkfO6+++52y/7vqHbaddoJgQf6aua1yrv0Pq5p5V3cvSd5orq21XVjJVnaqemdUgwZ/e8+JfLyHSLDByrxrhn9cy4jtT4n+/+bGQKGgCFgCBgC3REBnj8/+uijDn0m7o44WpsMAUPAEDAEDIGqCBgJXxUxO94QMAQyEeChnr8ytvPOO/vMb+RallpqqdZTRo0aJc8884z079/fE9bBpppqKvnggw/8R45BT76sjRgxwuuzQ+xPN910ZU8b5+OQNrj55pu9NE3fvn39JrRsVksggE1o33//ffnxxx/930orrSRDhgwZ73r149woK2C8IOC+fEszsS+W2p8OEZlo0vFyjXEu9Fklqp+8XGob9hOZ/Y/jXFynFcAc9eLN4oaeKDLiM83mn1Fqm10h8pslRSYvP690Wv3twt0CAe6VrIDqyHtStwDOGmEIGALjjMB///tf2XLLLX2CipkhYAgYAoaAIWAIdBwCRsJ3HNZ2JUOgWyNANvcDDzzgM2vI+v7HP/4hq6yyinz88ceCHjsSM3feeacnHNZbbz3p06ePnHPOOZ6c3n333WWJJZaQV199VU466STZf//9vXZ7bBtttJFcccUV8uc//1mee+45WXzxxQvxhODn2BdeeEHQW4fUv/HGG+V3v/udkInfEQbp/ve//1022WQTGTRokPz73//27RwzZozMOeecsswyy8hyyy0nm222mZetMeuZCNSev2lsAIsNWZvRXn9Q5Ka9RVbaX2SRJq1jEW4/fCny7CBxw64VUfmZGlgvtJbIvH8qOtN+NwTaHQHumSuv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Ro2yzz77zBZaaCFbddVVbeTIkfbRRx/ZCiusYH369Olga0o3R5T+/fffb5MmTfLNKkl8IeBRsHuZZZZpvPn222+PUf0IeVzDa/3116860hYR8K233rJ33nnHvv/+e4PR3HPPbXPMMYf9+Mc/tkUWWaS0oUU+wZaXXnopcv3uu+9s4sSJNs8889icc85p6667bvzvWgq5+//73//a559/HuujfuqYa6657Kc//anNNttstVRn48aNs6eeesq+/vprGz58uM0wwwyxvwsvvLCts8461rdv35rq+/bbb+3ZZ5+N7Pjv3r17x74uuuiikR9/11K++uqr2F/6Sn39+vWLY7H88svbyiuvXJNgy1z44IMPYu5x5jo2zj777JHZiiuuGOc9/a+2ICC/++679sYbb9iIESNinelcWWONNYwIb+ZqtjCHDzjggNintijUf/bZZ9sWW2zRrDraev755+Mzjn2kfcE+Xuutt14cl5YW7GfOsIuGFyymTp0az5XYeOONGzm++eabce736tUrvpfa8JOf/MQuuOACO/PMM23PPfeM9vH/gwYNskceecR+9KMftdS0Nr0vO8aML88IzxrsmH/LLedn29Swg471hfkyePDgOKfpd//+/WOdPB+sxbXUxxi/+OKL9umnn8bnY/z48Tb//PPHZ4Tnl7prKaxP6Zz55ptv4voy33zzxdcGG2wQn79aCuvnM888Y9TFfGFdnnfeeeN6zByYeebaAgVgRn2MA/WxnmDbYostFvkxz2opPBsvvPBCHAfqgxtjseyyy9oqq6wS53a1hbnC+vLaa6/FtYU+p3OF+cyr1vXl7bffjt9H6Vyhr8y9NddcM/a5lrnCWL788svRRupj7Wcs6DNjscACC1TbVV0nAiLQhQgk/o+j6f+i7kKdUldEQAREQAREIFcCHDp6/1GWHPBY/jnPX73JwqAB023pVwf/4L9ofbOlf2a2+YBch6hFjU8cY+HqrcyGf2i25EaW7HSZWZ/afiC3qN0uehOi5tFHH90o8iEWILqMHj3aTj755CgiUhAF//KXv8QfrrzGjh0b8xlfeumlRQXBJ554wi6//PKK1Phxfuyxx0YhsJpy9dVXR/GUH+SIiPygxlYE2VNOOaWxihtvvNEeffTR+GO7Z8+eURzgx/sRRxwR+3vxxRdHoQABjcLn1P3rX/+6GjM65Bp+HiAw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REAEREAEREAEREAEREAEOhsBifCdbcRkrwiIgAiIQH0QmJSK8DPna8/wjyzM7Dnhcy7J+O+m56WfMUcRfti7lvTy8cg7T392LF66zmyRH7uDIkcuOc8NNS8CIiACIiACIiACIiACIiAC3Z2ARPjuPgPUfxEQAREQgZYRmDx2+n29ckwx4qlObPQX+R8O6yTChJGW9PB0NETD51WGDbbAzoS++aYIauy+OybC5y+6CF9H6XHyGhu1KwIiIAIiIAIiIAIiIAIiIALdmIBE+G48+Oq6CIiACIhAKwhM+kGEzzPPN9H4CPH1IDp7ypVAFPoMM7YCaitvHf6eWW9E+NlaWVHb3B6Gf2g2YbTZohLh24aoahEBERABERABERABERABERCBzkkgx1/KnROYrBYBERABERCBSCAV4XOMhA8TXeCl9M45JQ42kPd8lvmm25PT/4bRQ81mX7huUr8kX7/lJBrMFqyjHPU5jY2aFQEREAEREAEREAEREAEREIHuTECR8N159NV3ERABERCBlhP4QYQPPfMTwJNJP4jweR8OC8VJLsLP1r/lPNvizjFfm9XRoazh/Uct/Gh7syRpi96pDhEQAREQAREQAREQAREQAREQgU5KQCJ8Jx04mS0CIiACIpAzgSnjowFJzxwP3GzMS5+fI6BxFOogEt7GfmvJgqvmPDF+aH7aFEs+fc6SFV2EVxEBERABERABERABERABERABEejWBCTCd+vhV+dFQAREQARaTADRmZJnOprGvPR9W9yNtroxmTreklnmbavqaq+nocGSCSPM5v9R7fe2xx2fPW8h6WHWf6X2qF11ioAIiIAIiIAIiIAIiIAIiIAIdCICEuE70WDJVBEQAREQgToiwKGoPV38zvEg0uSHaPw8HQGNIzJlotlMc+Y3QMPesjCjj8esOafE+YFA+PhpT8+zgM+RmfJjopZFQAREQAREQAREQAREQAREQATqgoBE+LoYBhkhAiIgAiLQ6Qggwuct+KaR8IjPOZcwZYKL8HPlZ8UXL5vNuVh+7WdbDsGSz16wpJ87BHLcKVEfMGSFCIiACIiACIiACIiACIiACIiARHjNAREQAREQARFoAYHgInzSL8f0K25z4DBUSq/8Rfhk6iQX4edoAcm2uSV8/bYlsy/cNpW1thY/MDd4fnqbz1PjzOApaVREQAREQAREQAREQAREQAREQAS6NQGJ8N16+NV5ERABERCBFhPwVDChT47pVzB8CiJ8YlYXkfCko8lPhE++9nQ0pH+phzJxtNl4z0+/4Gr1YI1sEAEREAEREAEREAEREAEREAERyJmARPicB0DNi4AIiIAIdE4CyWQOIs1XhE+IhO8zS/7R1uOGuy/AnQG9Z8tnMD39iw0bXEeR8GMtmTjKD2VdOR8ealUEREAEREAEREAEREAEREAERKCuCEiEr6vhkDEiIAIiIAKdhUBwEd765hf5HTmRE36mefJH5qlXkl4z5+cMmDjSYk76WebPnwUWfDtk+qG9cyxSH/bIChEQAREQAREQAREQAREQAREQgVwJSITPFb8aFwEREAER6KwEkqku+vbNNxKevPTWb77cEYYxX3tqnn752UH+dS+h7+z52ZBt+fOXLCywan3YIitEQAREQAREQAREQAREQAREQARyJzBj7hbIABEQgQ4lMGnSJLvzzjtt4MCB9uSTT1r//v2tX79+tu2229ruu+9us802m11zzTW25JJL2oYbbtihttVrYzD74IMPbIUVVvCMG55yo47KN998Y//85z/t7rvvjmOHrVtuuWUcy6eeesoGDx5sxx57bB1ZXN4UbL7rrrtsxIgR9vnnn9sZZ5xha665ZvmbcvqUQ1GTnCPhE88JH2aaOycC/2s28fznobenxcmrTPD8616SHHPSN+n6l69assjaedFQuyIgAiIgAiIgAiIgAiIgAiIgAnVGQCJ8nQ2IzBGB9iTw/PPP2xZbbGEzzjij8d8XXXSR9erVy6ZOnRrF2kUWWcQuu+wy23///e2BBx5oT1M6Vd0HH3yw3XjjjfaXv/zFTjzxxLqxHaF68803t0033dQGDRpkPXv2tMmTJ9t///tfW2WVVWz8+PF2+OGH1429lQzB0YED4aGHHrJp06bZz372M9thhx2iGF+XJaY/mStf00iJM9tC+dpA654OJuk5U352TPD865Tes+ZnQ6blMOxts7X25MhcFREQAREQAREQAREQAREQAREQAREwpaPRJBCBbkIAUX3rrbeOUcWvv/66LbXUUjbLLLNEEX6mmWayNdZYwz755JMYNT1lypRuQmV6N7/44gs7+uijS/aZaPMJEybYyJEjS16Txwdnn3123MXwt7/9zfr06WM9evSwvn372kYbbWRXXnlldK60tlx88cWtraLq+3/961/b+uuvb+utt56tvPLKhvNjwIABVd/f4RcigPfJN/1JzIPeN6fDULPAEcF75SfChwk/PJu9c0yJk/IY5/nxp06qn0NiO/zBUIMiIAIiIAIiIAIiIAIiIAIiIAKFBCTCFxLR3yLQBQkMGTLE9tprL5t33nntkUcesQUXXLBoL+eYY46yYnTRm7rAm++++659++30nNLFunPbbbfZyy+/bOedd16xj3N5j7QzZ555pu20005FU+SSurYYAAAgAElEQVSw42HFFVdslW1wwQHREWXMmDH2yiuv2GqrrRabm3322e3888+33/3udx3RfMvamOIi/Mx5R8J7SpyZcrbB6UURPEcRPpk4avpzkGdKnHQWjfzcQs++7qCpA+dIy2a27hIBERABERABERABERABERABEWhjAhLh2xioqhOBeiRAXm1E5t/+9rcVzSOX+EIL1UF6i4qWtt0F5CAvV9gtsPrqq5e7pMM/++qrr6yhoSHmqi9WiIqvZryL3Zu+R4R9RxXSz1BIldQpSoPb69HOeR/MmkyZmLsNjFfi6WjCjC4851TC2OGek95T0SB+511Gfel2+K6AenAI5M1C7YuACIiACIiACIiACIiACIiACEQCEuE1EUSgixP47LPP7Lrrrou9JHd4pUI6k1/96ldlL/vuu+/s/ffft++//77kdSGEKBKnZeLEicZ7lQqR19Q9atQPOZ6L3IBgm9ZVql6uoe8ffvhhzJNeqnz00Ud2//33l/q4yful0rtk66ddotSrKaS4yTL58ssv7dlnn42pbyqVueeeO6agueSSS+yNN94oejmpXRZbbLGin8ENNqTiKTYur776ql177bVF7631TXLTv/fee4bjoMuUyWM9/Nvnc86pYMJUf6765HggajqgMR3NzLkNbzJ+uNlcS+TWfpOGRw91b1IfF+Lz41EfIGSFCIiACIiACIiACIiACIiACIhASkAivOaCCHRxAvfdd19jD5dffvmqevub3/wmHtJaWBCbt9122xhh/eijj8ZDQffee+/Gyz799FPbeOONY0oRXs8995yR0oT3fv/739taa61lJ510UmG18W8EbnLWc93DDz9sm2yyif3pT39qvJY0Omm9m222mQ0dOjSm2OG1wQYbNMljT5851JMI9zvuuCPmuy+WSmbnnXeO15ELn2vT+rmeQm58+pq+f9pppzXac8MNNzS+j62Ugw46KB4k+otf/CJ+9sILLzRen/0P7KMNdh2ss846dsABB9iRRx4ZRW8OxT3rrLOK3pd9c9ZZZ42pWuAGX9osjIonr/oee+zRrK4LLrjAfvKTnxh2HHbYYZEfjhXK8OHD47hus8028e8rrriisZ/77LNPTecFYNu+++4bD1tlvsCPdjmTIFu22mor++lPfxrfuuqqqxrbe/HFF5tcV1d/TB7nbuweHgLurzyLi/BJPRxG6ulokl45RqGP9/k715J5jsT/2h4zzEX43rmm56kPELJCBERABERABERABERABERABESgkYBHQKqIgAh0YQIuDBN+HmabbbZW9XL06NHBheXgAn3wKOrGujy6Pmy44YbBc3oHF12DR5YHF5JDkiSBtk899dT4PsXF1zDDDDOEm2++uYktHiUdPF99OOqooxrfd1E4uNMguAgeXPyPbb799tvBxdrgUeBhl112Ca+99lpsg/5ddNFF8d633noreG77cOGFFwaPSo/vuXMgeB784AJ/E9s9kj8MHjw41rfbbrsFF6Dji7bT4pH5wQ8nDb179479SsvYsWPDU089FRZeeOEwzzzzhFNOOSXQD4qL98GF5+CH3waPAm+8h/+4/PLLgx+EG22neMR/vG777bePf7tQHTwHffzvSsVTDAV3bMT+py/4umMhuKDfrG0YutMicqWfaYE7DBg7mI0YMSI89NBDsc4jjjiikQu2Vltg6w6bcMghhzSOA/fCe9FFFw3uxGisims9Kj+2x3in4wDHui3fvBcaTlk0f/POWCaEz1/O3Y6GizYIDYMG5GZHw9XbhvDoabm136Thuw4NDVdsUR+2yAoREAEREAEREAEREAEREAEREIG6IKBIeDlkRKCLE+DASwqR060pRLwTwUy0tgvSjVURjU0KFV7kIV988cVjtDz/TXqVY445Jv43hcjs+eef31yYb2IK0dikoXExuPH9OeecM0ah33333TE6mzZXWGEFW2+99eLfHDq6yiqrmIvvMSULUeiUkSNHGn2+6aabYpQ4hah+otWJdsemtHD4J4fRunAdU7vMNddc8UXbaXGB3X7+85/bzDM3TS3B36R7IaKdfPukfVl66aXjbeQ15x4i09kdkBbswU7s5kXp16+f7bffftE2dg4cffTR8bDVagopaYi2//Of/9x4OCspgB577LEYJb/j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BNOG2LSR4n1uHCQrltg6Y+13MVI0Bq8sWaz1duKZsWAdIocakqWZidIvjIRfmyR29gQRIw/kzf1HYq2MjE85sZdeeklGjRolr732mkyZMkWqVasmJ5xwgjRo0KCwh55xBk2cOFHeffddgSC8+eab5bLLLivTCNx7770yduxYefXVV2XhwoWyww47yM47r3VImZ7R58GDB8u8efPkmGOOkfPPP7/w3Zatjk+fPl1OP/10i/0999wj9eqZVTt5Yrfffru9/uDGez5f7bvvvpP33ntPNtpoI+nevbvUqlVLJkyYICNHjrR4gm8+27///iv333+/PProo7Jo0SLZd999pU6d9GS4Bg4cKIMGDZIbb7wxssvz58+Xp59+WmbNmiX169e3/91mm23k4IMPjjxnfdvBeGLsP//889K6dWs57bTT1jcItL+KgCKgCCgCioAiEIFAzEwa3GL2iEN0syKgCCgCmUFg5syZdqL233//yT777GOJ+D///FPuu+8+S2AwaXnuuecyU1kJStlzzz1l2LBhsnjxYjniiCPkhRdeKEFpemq5QOCB7WTN7L/Ep8BevFstukjs9C+Kb8/QFu/Fw0XGf7WuNDTp1xgSvJB+N/+sUElil48r0EPPUL3Filk4XTyDR7Fktf4DTTR+7BQTqV61drHTS7LB++cHkaf3XVcEmvghnzGxQ4zTpHMWSaGF/4l39xYFdddvLbETTMJYJIoe7CGxw58xpPxm4r1wqIgh4NHtj11opGuQFSpHNn78eGnfvr00b95cfvvttyIkvOvmnDlzpE+fPtKtWzd58skny0XvDzroIHnnnXfk/fffl759+xbr05VXXim33XabHHrooZawz6ZB9h14YIGz66effrI454s1adJEeOdfccUV1gnjt2nTpslNN90kDz/8cKk3l+8Oh6FrTAWzcoVxjVOlbdu2pd7GZBrQr18/+y01efJkadmyZTKn2GP4BiNiGxL/119/lR49esjQoUNDz1+yZIkl3HFWPPPMM+bRFhOcGL1795bHH39cjj/eOKzVChHo3LmzdYz8/fffiooioAgoAoqAIqAIKAIWgYJ17AqGIqAIKAJZRoBorZ122kmOPvpoIeKd6LjPPvtMfvnlFzuJO+6447LcguSLJ8qLaM+VK03SxxCCL/mS9MjygoDnpFDidCiW6cjvYF3osfvNyLIUIeDZ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WBbdeJOECgqiNo42fG2ja97wP2dLRvXqUffVL6MjQGT85pkzZfWrr0nhwkVG9qeXNDi1v2QYZ4eaIqAIKAKKgCKgCCgCioAioAgoAoqAIpBIBJSETySa2pYioAgoAoqAIhAPAiYCfumQofJ/7J0FuF3F9bcnThJCcG3KH3d3KJoiheIpVtzdnRIkEKS0SFvcihQvlEIJbsHdigV3CZIAISHJ/tY7Ze63z75773POPnLPzf2t57lPcraMvDN7ZM2aNT++mu2SJh4sbmmm320X13vQoCKx6Z04gcmT3ZgRI9zYEXc51727m96s4vsuuaT/v0QEREAEREAEREAEREAEREAEREAE6kFASvh6UFQYIiACIiACIlAjgZ/ee999fMSRpaF07+b6Lbe8G//qq27SmDGl98wSfkZTxPdfbbUaY9brEJj8/ffu679f4b4b+YibasEF3MyHHeq69e0rOCIgAiIgAiIgAiIgAiIgAiIgAiJQMwEp4WtGqABEQAREQAREoD4EPjn8SDfh/ffbAsND/HS/G+IGbr6ZmzxunJs8dqyb9OVo99Onn7pJo0e7ST/84H3ET7XQgrLcrk8RuHFPP+2+vuY6H9rALYa4/sstJ7Z1YqtgREAEREAEREAEREAEREAERKCrEpASvquWvPItAiIgAiLQcgS+ueoq9+1t/7F0oX7v5qZafDE34a233Rx//Yvr3le+yptZYF+cebYb98wzbsBvf+umG7KZHYbbs5nRKy4REAEREAEREAEREAEREAEREIEpiIAcnk5BhamsiIAIiIAIdG4CfZdf4ecMdHOuRw83/U47ut5zzuk+P+lkN/nH8Z07c50s9TPus5ebfped3ff33+8+O/kUN9F2H0hEQAREQAREQAREQAREQAREQAREoAgBKeGLUNM7IiACIiACItAAAn3mn8/1nnsuH3J380fevV8/N625RBn/9tvuh0ceaUCMCjKLQLfevd3Ua67hZj1+qIsmTHCfHHOsG/f8C1mP67oIiIAIiIAIiIAIiIAIiIAIiIAIZBKQEj4TjW6IgAiIgAiIQPMJTLfllj5SlPDd7PDVPvPP7was/Wv37S3/ctHEic1PUBePsedss7mZjz7S9V9hefflWWe7r//xDzvFdXIXp6Lsi4AIiIAIiIAIiIAIiIAIiIAIVENASvhqaOlZERABERABEWgwgd7zzO16zjyz64YSHj/k3bu76bffzrun+frSy1wkBXCDS6B98N3793fT776bGzhkc/fdHXe6ry6+xE22Q3ElIiACIiACIiACIiACIiACIiACIlAJASnhK6GkZ0RABERABESgSQRQ+PaZdx7XvX8/bwnvxZTx06y/nvv+0cfcxI8/blJKFE2SwDQbrO9mHX6S+/7Jp9xnx5/gJn/7bfIR/RYBERABERABERABERABERABERCBdgSkhG+HRBdEQAREQAREoAMJdOvmpl5rLdd71lmds/8HmXr11V3PX8zhvrnuBueiqAMT2IWjtvLoNWiQm/mIw6xsurvPTznNTTB//RIREAEREAEREAEREAEREAEREAERyCMgJXweHd0TAREQAREQgQ4gMNWii7h+K61UEnO3Pn3cjPvs7ca98IL7/oknOyBVijIQ6DPffG6WE45z3WzXwmen/dFNePc9wREBERABERABERABERABERABERCBTAJSwmei0Q0REAEREAER6DgCUy22aLvI8RXf1xT0Y2+73UU/jm93XxeaR6D7VFO5mQ4+0PVbckn32bCT3A+PPtq8yFswps8++8x9+OGHLZgyJUkEREAEREAEREAEREAEREAEOp6AlPAdXwZKgQiIgAiIgAi0JxBzRRNudrPDWQdutaWbYMpOLOIlHUvAH9i6846uryniR19ymfvpgw/aEvTNN9+4hx56yJ166qnu7S7gsmbEiBE+r51dJkyY4M4880x31113udGjR3f27Cj9IiACIiACIiACIiACIiACLUJASvgWKQglQwREQAREQAQqIdD7l790A9ZZ242++BI3acyYSl7RMw0kgJugGfbaw82w5+6u54wz+pg+MGX8euut5x544AG30047ubnmmquBKWiNoGeaaSY3n7np6ezSu3dvt/3227uP7QDkwYMHu0ceeaSzZ0npFwEREAEREAEREAEREAERaAEC3SKTFkiHkiACIiACIiACIlAhgYnm+uOTY451A9Zb1007ZPMK39JjzSKw8cYbuwEDBrirrrqqWVF2WDyTJ092WP2PGjXK/fTTT27RRRd1U5mrnj62ONGZhXztvvvu7rXXXnP33XefQzkvEQEREAEREAEREAEREAEREIGiBHoWfVHviYAIiIAIiIAIdAyBnrPM4qZe7Vfu+4dHSgnfMUWQG+vjjz/uTjjhhNRnvv76a3fggQe6MbaLYeqpp/aK6x9++MFtueWW7ve//71/57bbbnMXXXSR69evn0MZPH78eHf11Ve7/ub+Ji7PP/+8O+qoo/wzWbL44ou74cOHu169emU94j766CO36667ur59+/o4Q5qw4t9ss838e+eff777z3/+46aZZhp/n/RfeeWV7tVXX3W//vWv3aBBg9z000/vXnnlFbfDDju4c889NzO+rBvk89BDD3Vjx47NeqTt+jLLLOP222+/ss8VfaB79+5ulVVW8bsZJk6c2BJK+EmTJnk2lJEWBYqWrN4TAREQAREQAREQAREQgY4hICV8x3BXrCIgAiIgAiJQE4GBQ4a4H554yo35161umo03qiksvVxfAihLe/ZMH2INHDjQK8VvuOEGd8ghh7g//OEPbscdd3S4cwmyxhpreKX2Pvvs45XSS5rP+aQCnmdPO+0077d83333dUsttZS3vkd5jF/zgw46yD322GP+/TwFPOHMOuus7oILLnAXX3yxO+WUU/z/11xzTX89CIsE888/v9trr73cySef7JZddlmvdF9xxRW9Iv6dd95xbK7kGfJYRFAsH3DAAV65f+KJJ3rf7Lj16fbz+Qgowz/99FN//eGHH26oEp70w7IVZNy4cZ45XClnXOU89dRTbujQoSX1phXSqjSIgAiIgAiIgAiIgAiIgAikE0ifIaY/q6siIAIiIAIiIAItQqC7WcNOPXgt982117n+q6/mekw7bYukTMnII4Bid4455vCW5CitN9xww3Y+47GQX2KJJdwGG2zgNtlkk9TgsKh/5pln3L333usV9nEZNmyYt+C+7rrr3Nprr536fvxiDzvw95d21sAXX3zhZjS/9li28zsu0003nZt33nm9v/QhtgAUhPzMPffcPi1YwfNuUUHZThyfmbslFjG22WYbN/PMM5cEt8gii3jf82eccUbRaDrde9dee60bOXKkd4sTFgZgxYIFLo9aZbGg04FVgkVABERABERABERABESgiQRaw8SniRlWVCIgAiIgAiIwpRDov9qqjoNdfnjiySklS10mH/fff7+3JEepnCbvvvuuv58lKNlPPfXUdgr4s846yyuocQez7rrrZr3e7jrW8y+99JJfIEARnyYffviht5BPk2+//dZbaNcq7CLA7Q2W9kkFfAib67PPPnutUXWK91moOfvss/2OhriyfYUVVvALMOwIkIiACIiACIiACIiACIiACLQ+ASnhW7+MlEIREAEREAERSCXQ05SlA80VzZi77naR+emWdA4C+IDHncj666/v/bCnCdbPiy22WNqttmubbrppyX0s33Fxgyua7bbbzmHhXqng8uStt97y7k6y0vT666977zEG5AAAIABJREFUJX2aEFc5tzdp7yWvEQfK/OQOAFzk4DMewS866ewK8uabb/rFEVwSxYXdEhx+iyJeIgIiIAIiIAIiIAIiIAIi0PoEpIRv/TJSCkVABERABEQgk8DAIZu7yaaU/P7BhzKf0Y3WIvDQQw+577//3ivKs+SWW25xiy66aNZtr6QOvtJ56IknnnB77rmn4zBVDmutVv773/+6zz//3FvPx8ONh/Pss89mWufjz32qqaaqNtp2z2PZjSuatdZaq+0efuAffPBBr3RG8J9fiZuddoEXuIAlekcKbn4oD/z9xwXecMIXv0QEREAEREAEREAEREAERKD1CcgnfOuXkVIoAiIgAiIgApkEupkirp9ZyY65Y4Trt9KKrnv//pnP6kbjCeBXHdcus802W2Zkd955p8PH+vLLL5/6zEcffeR9o08zzTSp97kYV5SjqEUpj2L6wgsvLOQjHMt7lNxZ7mY4ABZreSyw04SDY/Pc56S9k7yGwvvxxx/36bj77ru9n3l85994443+8Nm4xF2zYCnOogbC4a3LLbecDwOOuPXBSr+fnaHAokY1/tMpA6zuv/vuO/9+JcIhtf/85z8redQ/Q9rwfZ/0wR8C+OSTT1LTTPnzR/okIiACIiACIiACIiACIiACrU9ASvjWLyOlUAREQAREQARyCQxY+9fuu0cecRPef99NtdBCuc/qZmMJnHbaaW6eeeZxv/rVr1IjwqXKk08+6Q8XzbIcxwXJFltskfp+8iK+2HFLg1L/8ssvT1XYTp482XFYK8++9957bocddvAHwgZFPvdRwi+++OJuhhlmSEbhf2OhTp6yrORRwmf5cE8NMOXiT+ZSCSX2QlaH999/f88HH/Gvvfaad92TJTw3fPhwd+utt/pFiBVXXNE/ilJ/q622cr/5zW/cHnvskZn2rHBXWWUVN3jwYLftttu622+/vSJ3O5Q9h9dWakGPEn6WWWbJSoJf+EiTUA7wkYiACIiACIiACIiACIiACLQ+ASnhW7+MlEIREAEREAERyCXQe955XF/zHz7m1n9LCZ9LqnE3cR9z/fXXe4Xvcccd1859SIgZi/IPPvjA/frXv3a4FEkTfLMn/b2nPff11197Zfqss87qFdBxa+177rnHrbbaag4F+zrrrON222037/6G+LEIR4nLuwiK7y+//NLtvPPOadH4axwke/TRR2feJ+4sa+7MlxI3fvzxR/fGG2/4dAaLe1yuYNkeDoslP/jT52DSICxocCAtLmuwdOcdBKv6Sy65xLOuxgI+nqyLL77YW+UfcMABntvee++dmx3KdNCgQbnPVHOTxQ3ynBSuoeivhx/+ZNj6LQIiIAIiIAIiIAIiIAIiUH8C8glff6YKUQREQAREQASaS8AUqgM328SNe/Fl99M77zY3bsXmCaAUnnbaad0dd9zhcCGSZQmNEhyXNSiWs6zKUdKjfM0T3LRsvfXW7n3b/XDNNdd4RXwQrKdx4YIyGuUz94LFNC5uuIbSPcgrr7zi07L00kunRslBsih78yy2sYLHgr0Wwa891vobbLBBSTCbbbZZ228s+eGTFNK23377uUMPPdS7sEFxPnDgQL8AUVQBTxyUF2WKi6F4OpLxx3+jIId3JX9pCvZ4WHPOOaevS0mLd37zbp7Lorw06p4IiIAIiIAIiIAIiIAIiEBzCcgSvrm8FZsIiIAIiIAINIRAr1/8wvWafVY3ZsQIN8Oee+A0vCHxKNB0AviA/9vf/ub+8Y9/eGv4u+66y7ulSQrKXNyuLLjggslb/jdW3n379m07hDT1Ibt44IEHerc2WMAn4/n3v//t3begfMYymzTh9gR54IEH/DXcrATBnzr3Z5999tTosJQPLl5SH7CLWKPXKldffbXfQbDSSiuVBBVX/t97773+8Ng0wYUP7oA4oHafffZpF07aO3nX8Le+0UYb+fDYJZC1cyEexn333edOOOGEzEWYZHwsbvzpT39yS9q5Dmmy8sor+3Jk4SHuc59dA9SlrHqUFpauiYAIiIAIiIAIiIAIiIAIdBwBKeE7jr1iFgEREAEREIG6Eehu7kD6L7e8+YYf6Sab5bIOaK0b2ooDwpp888039y5LOFQ0qRwnIHy38xcOEo0HjgX9eeed584888zMOFG+nnLKKQ5FO65Skr7nsbK/6qqrvCV8ECziP/zwQ4cCm3ssFsRdpoR04q8+Kbz317/+1f35z39O3qr4N4sFWG2zWyDL+h/rfSzOscZHEZ8UrMHxS8/fTjvtlLztf+MOB6U0h7Hizz1NHnvsMW89HizJl1hiicw0oVBnxwDucSpRwBMf5YFboqydEMk0oWDPO9CWBQjyQr5Ja5CvvvrKK+GTuwaS4eu3CIiACIiACIiACIiACIhAaxCQO5rWKAelQgREQAREQARqJjBgww3cxK++duPtIEtJxxDgkFCsm3GJkia4F8FS/oorrihxMTJq1Ch/GCkKdtyoZMk555zjD1lFUR93j4ISG6U8LmFwi5NUGmPljvsaDi7da6+9HMroICiOsZzHrU1csL4eOnSoV9qzcFBEJk6c6NZee223+uqr+wNWs4QdACwgrLrqqu0eYcHijDPOcBtvvLHfARCs+pMPkifS+8ILL7iHHnooedv/3nHHHb2FPM9xCG3WogDPfvPNN/5w2LxnkpHAHcU5LoAq+cONT/Bhnwwr/MYXP/WC9ARhMYX6spidBSERAREQAREQAREQAREQARFofQLdzFInav1kKoUiIAIiIAIiIAKVEBh90cVuwpuj3GynDnfmx6KSV/RMnQlwiOipp57qdt1119SQUZijTMffOMptlMocRLrlllt6xXCeHHnkkd5vOs8FX+couvHbjmU0wzrcsqy55po+GFzfvPPOO95dTFAm77HHHg4/8FhXh2ukCcU+il7SRNi4xdlmm23aDkXNS1fevQsuuMC9+eabXhmfdCWDoh83NFico2zHSj1uGU6eSBP5+4W5XEIhnVSKk+c777zTfffdd35hAvcxuN159tln2w54Den7+9//7vOE4jsZTjIPPMuCx4svvlhy6G3yuUb/ZhfBv/71L/f666+7eeed13322WeOXQvkM34Yb6PTofBFQAREQAREQAREQAREQASKE5A7muLs9KYIiIAIiIAItByB/iuv5L578EE34d33XO+552q59ClBziu3jzjiiEIoUO5XI48++qhbb731vJJ6tdVW86+ySIDyG+V1UESTJhTcjRCU/ijF0xTGuMVhYaGokIeXX37ZsRAxZMgQH8y2227rdwXgfgfr+bjAg8NsUWTvsMMO/oDcVhcWRDbddNNWT6bSJwIiIAIiIAIiIAIiIAIikENAJnI5cHRLBERABERABDobgd7mF7vHgGncuOef72xJV3obQAB3J1jFL7744j50fMqjkMclTbCkb0C0JUHif/22226ru+sUrOTPOussf/Bs3MIe3/P4h7/kkku8L/q4HHrooe7YY491w4cP9wzefvvtRmdf4YuACIiACIiACIiACIiACIiAkxJelUAEREAEREAEpiAC3e1Qy/7LLmtK+BemoFwpK0UJ4CP+sMMO8z7Vb775Zv9/FNb4Vm+WPP74495FDtb29ZK33nrLYWH/vC02cUgpLnqC/POf/3RrrbWWd9mD0h2rdwQ/6h9//LH/P25vcEkT7rW9rP+IgAiIgAiIgAiIgAiIgAiIQAMIyB1NA6AqSBEQAREQARHoSALTbL6p+2i/A9xEUz72tEMiJc0lwOGc+OxuFcESfpVVVvF+1VHAp7mFaWRaF1544dzDZovEPc8887jLLrss9VUOoOUvKbihwTc+gjJ+7NixjoNyswQf9fjrL+c7Put9XRcBERABERABERABERABERCBQECW8KoLIiACIiACIjCFEegx7bSu91z/58bc8q8pLGedIztYaF977bXu008/bZkEszAwrdWLZivgARAOeu1oGIcffrh74403/CGnuLDhb/bZZ09NFgr666+/3q200koOdhIREAEREAEREAEREAEREAERqIVANzvQKqolAL0rAiIgAiIgAiLQegS+ueFGN/Y/d7g5/nK26z711K2XwCk4RcFX+RVXXOEuvPBCt/LKK0/Bue18WeMQ1zwL96efftrtt99+bvXVV3dDhw7tkIWLzkdVKRYBERABERABERABERABEcgjIEv4PDq6JwIiIAIiIAKdlEDfRRd1k+3gygnvvttJc9B5k43lNFbXd999t/vggw/kd7zFihJf8FkuZlDQf/TRR+7KK690p5xyihTwLVZ2So4IiIAIiIAIiIAIiIAIdFYCsoTvrCWndIuACIiACIhAHoHJk92He+zlph68lpt2qy3zntQ9ERABERABERABERABERABERABERCBBhKQJXwD4SpoERABERABEegwAt27u2k2WN99/+STHZYERSwCIiACIiACIiACIiACIiACIiACIuCclPCqBSIgAiIgAiIwhRKYes013KQvR7sJb78zheZQ2RIBERABERABERABERABERABERCB1icgJXzrl5FSKAIiIAIiIAKFCHTr18/1HjTIjb3n3kLv6yUREAEREAEREAEREAEREAEREAEREIHaCUgJXztDhSACIiACIiACLUmgW69ervf887kfX3nFRT/+2JJpVKJEQAREQAREQAREQAREQAREQAREYEonICX8lF7Cyp8IiIAIiECXJtBv6aXcpG+/dRO/+aZLc1DmRUAEREAEREAEREAEREAEREAERKCjCEgJ31HkFa8IiIAIiIAINIFAnwUXdN2n6uOt4SUiIAIiIAIiIAIiIAIiIAIiIAIiIALNJyAlfPOZK0YREAEREAERaBoBXNL0X311N/bue5yLoqbFq4hEQAREQAREQAREQAREQAREQAREQAT+R0BKeNUEERABERABEZjCCfRfcUX300cfuwnvvT+F51TZEwEREAEREAEREAEREAEREAEREIHWIyAlfOuViVIkAiIgAiIgAnUl0HPmmVzPaQe6Hx57rK7hKjAREAEREAEREAEREAEREAEREAEREIHyBKSEL89IT4iACIiACIhApybQvX9/12fhhd2PL7/iop9+6tR5UeJFQAREQAREQAREQAREQAREQAREoLMRkBK+s5WY0isCIiACIiACBQhMs8H65pLmIzfx448LvK1XREAEREAEREAEREAEREAEREAEREAEihKQEr4oOb0nAiIgAiIgAp2IQO9f/tJNtdBC7qurru5EqVZSRUAEREAEREAEREAEREAEREAERKDzE5ASvvOXoXIgAiIgAiIgAhUR6L/mGm78f1914199raLn9ZAIiIAIiIAIiIAIiIAIiIAIiIAIiEDtBHrWHoRCEAEREAEREAER6AwEplpsUddjumnd2HvvdX0WWrClkzx+/Hg3cuRI99PPPuznmWceN99887V0mosmbujQoW7FFVd066+/ftEgWvK9H374wT1mhwGHMpxrrrncAgss0JJpVaJEQAREQAREQAREQAREQAREoJEEZAnfSLoKWwREQAREQARaiED3vn3djPvs7cY9/YxZw7/aQilrn5TRo0e7Sy+91KGM52/ixIntH5pCrowZM8ahsJ7SJIqitvJ788033YUXXjilZVH5EQEREAEREAEREAEREAEREIGKCMgSviJMekgEREAEREAEpgwCfcwvfN9ll3VfnPNXN9upw12PgQNbNmNzzz2323jjjVs2ffVK2PLLL+9mnHHGegXXMuH079+/zbr/lVde8YsqEhEQAREQAREQAREQAREQARHoigSkhO+Kpa48i4AIiIAIdGkC022zlfv4wIPdN3ZI6wxmGd+Z5KuvvnIff/yx6927t+vVq5ebMGGCw+J6wQX/515n0qRJ7q233vJZ4v6PP/7oZppppnZKbt5BMTx58uTM7BPH/PPP77p3z944yPuvv/66D6NPnz4+PNKEUn3mmWf217Hq/+yzz/x94uX+QrYYcv3117sHH3zQLbroom7UqFHuyiuvdH/4wx8cbluqlbFjxzrYlJNu3bq5X9ohvRIREAEREAEREAEREAEREAEREIHmEZASvnmsFZMIiIAIiIAItASBHtNP72Y+9hj3xR//5L667HI33e+3cd1M4dwZBGU2fsbPOussr9w+7LDD3JxzztmmhMf/+HPPPeeuueYa9/7777vtttvOrbfeeu2U8DfeeKPbfvvt3TrrrONWXnllrzDv0aOHR/DAAw94hfjBBx/sTj755FwlPPGhzMd//V//+le37rrrut/97nduWdttEJTwLBqMGDHCnX322W7TTTd1yy23nFfuk258waNAR2n/i1/8wg0YMKBQMTz//PPumWeecUcddZSbZZZZ3OGHH+569vzfMA/F/3fffeeeeuopd9ttt7l33323HY9CkXaylyjXZ5991s0+++x+waJfv35u66239osjEhEQAREQAREQAREQAREQARFoJAEp4RtJV2GLgAiIgAiIQIsS6GOHnE63/XZu9PkXuOiHcW6G3XZxZl7eoqn9/8nCgnzQoEHu/PPPd4sssojbb7/9vFV8kKmmmsptueWWXrHKIaA8nyZ/+ctf3Omnn+7fj8sLL7zg9tlnH6+8P+2009JeLblGPEOGDPE+3bHC33XXXb2iPS6LLbaYP1SWZ4477ri2Wyjg+Rs2bJhbeuml3QYbbFA2vqwHVl11VYf7nkMOOcQNHjzY7b13+x0OLBhsscUWhRX9WXF3hussUFA2TzzxhJthhhl8kvfcc0//74477tgZsqA0ioAIiIAIiIAIiIAIiIAIdGIC2furO3GmlHQREAEREAEREIHyBPr/ahU306EHu3Evv+w+OWGY+9EsujuDYDmOlTuK67gCPp72d955x80222yp2fnggw+81fnuu+9ecp93sI7Hih0FfTWChTXCwkCajBs3zivJ0wRL+q+//jrtVlXXgnsd0p8mWMYvvvjiXdLy+4wzznD77rtvmwIePiy2nHjiie7TTz9Nw6VrIiACIiACIiACIiACIiACIlA3AlLC1w2lAhIBERABERCBzkeg75JLutlOHua6mwX5Zyef4r6+4ko38YsvnTk3b9nM/Pe///WuaNZaa63UNGKR/uabb7qpp5469T7K9pNOOqlEGY0idpNNNvF+5P/9739X7a7l8ccf90r/LH/u+H7H/Uya5PmlT3s+69qLL77ob+FjPsi3337rvvnmG/8TtzRd0R88+b/lllscuwXigkX8xIkTfXlLREAEREAEREAEREAEREAERKCRBKSEbyRdhS0CIiACIiACnYCA9xF/5OFu1j8c48aZb/FPjjzKfXbqae7Hl15uSWX8P/7xD69AX2ONNVLpYhGOpXvwiZ58CBcwcWU5Vuq4sBkzZow/LDVLeZ8MJ/xGyYtP9t///vdeiZ8mpBk/8GmCb/Lgjz7tfqXXWAiAy8ILL9z2Cu5XUMQjHDC71VZbVRrcFPPck08+6XDFg9/9uFBW8IKRRAREQAREQAREQAREQAREQAQaSUA+4RtJV2GLgAiIgAiIQCch0A2F5MILuVmHn+y+f+RRN+7xJ9znZ57lek47reu3wvKuj/lX72WW3j1nMkWmKXM7Sn788Ud3xx13uFVWWcX17ds3NRkcgpplJc8LcRc2EyZM8G5JOKwUi+gslzGpEf188fbbb/cW1biySRNczXzxxRf+wNQ0md4WQbLc6qQ9n3YNa3qUyRw6+vTTT3urd+JkUeGKK65oe6V///5t/yfN+Knv1q2bbXyY7HmGdKC4R2nP9YEDB6ZF2bBrHCJLXkhfpYLfffKeJrgfIi/kMy5c4+/LL23nh0QEREAEREAEREAEREAEREAEGkhASvgGwlXQIiACIiACItDZCOCWZsDgtdyANVZ3k0wZ+t39D7jv7rzLffuvW113U9R3HzDA9TcFeL9llna95p3HdWuyQv7111/3PrwPOOCAVLQojbFKz7qffOnoo49211xzjbvnnnu8v/QswUoe5Xaacv+GG25ws846q0MRnCYvm899XN0klcDh2ZlmmslxoGwtgiuajz/+2A0fPtxNawsnuOR5+OGHvQV4lmX/qFGj3FlnneVuvvlm7yv90ksv9QfFhp0BcFx//fXdRRddVBdL/Urzx8IIuxlYcKlE4Iqrnywl/Pfff+/ZJ/mHazBi0SJ5v5K49YwIiIAIiIAIiIAIiIAIiIAIVEJASvhKKOkZERABERABEehqBHr0cD3MAnrgJhu7aTZY3/1k1sQT3nnXTTCL8R9fedmNNaW1mSq7nqZ87mkW3ljI9zRlco8ZZ3A9p5ve9TBFcPeB07hudhhoPQULaay1OZQ1Tb766is333zzVXT46J/+9Cf3l7/8xV144YXesj4IymmUurgrQfH+2muvuUsuucStsMIK7ZTwwRVN1oGshPnSSy+5TTfdNC25/tqgQYNc3EI988GcGywEYMm+9957uwG2UILgcue8885rc5GDshnr8rCDYMEFF3Tnn3++X9TA+nyZZZbx7/Hc4MGD/btZPu5zklLzLXYG7L///jWHEwLALRGLMyja48Jv/rCGl4iACIiACIiACIiACIiACIhAIwnUd2bcyJQqbBEQAREQAREQgQ4hgKua3nPP7f/axJSaP5nl9Y8vv+LGm3X6uGefc5PNt3pkClyU85PtXyyLe8w80//c2Mw8s+s1y8xeYd9r5llct75m+Y2LEFP2m5m1/z9W+PZSbh5RimPZPc8886Q+98knn7hll1029V64iEIWNy1Dhw51p556qtthhx3anseC/IgjjnDXXXedv0ZY/GEpnya4OsHdzJJ2wG2WcD/vQNQFzNVPLe5oUJrjogef80EBT1qwKMfXfZDLL7/crbnmmm7eeectSerOO+/sn3vqqacciwkwYYdAPKysvHWG6+xSCAr3eHqpB5Q39UlW8J2hJJVGERABERABERABERABEei8BKSE77xlp5SLgAiIgAiIQMcRMKV5Lzv8lL8B663rD3CdbP7FJ40Z6yL7l/9PtANLJ5m/7Yn8ffa5G//a626SWapPMtcuWMh3M4t2/2eHY3br09vNeuwfvLubPBk9erTjINOZTamfJrfeeqvbeuut0261XcP3+6677uoOOuggd+CBB5Y8++qrr3qr+KxDXZMBjx071luOo0hPE9JbTsGeZdWfFl7aNRYePvzwQ7feeuuV3MaaPwjP4F5ml112aRfEOuus49OPVfwSSyzhDjnkkA5VwGOZf+6553q3OJUICnQWEYIlf/KdwJeyiDOh3MaPH+8XHiQiIAIiIAIiIAIiIAIiIAIi0EgCUsI3kq7CFgEREAEREIGuQgBLdrMo5q+cRKb4nGQHf04yJf3kb8d4Zf1k+92tAr/oHG4aDtRMxnP//ff7g0bzXKigiN5zzz3dxhtv7I499tgSC2iUshxiut9++yWDzvyN//U+toiQprQnLcccc4xXaudJD3YCpAiuY9544w33C1vomGaaaVKe+N+l9957z7EYkKXMxwr8qquucoceemiq6xX80Z9++unut7/9rV+YmHFGO3w3RVBY4+5nNjugNwhhozRHYY5LnazDZ1OCy7yEZToLIVjyVyIo4eeYY47MR1G846//hRdeKGEEM/zOb7DBBpnv6oYIiIAIiIAIiIAIiIAIiIAI1IOAlPD1oKgwREAEREAEREAEKiaA5XtPs2Tnr1rB4pmDVDmgdamllmp7/dlnn/UHkR533HGZrkVwHbPFFlu45Zdf3l188cUlfuOxFEdZ/q75vB82bFjFycK1C77iH3zwQbf99tu3vYdC/+STT3Y77bST91FfRAhzyJAhbrvttnPnnHNOZhC4kUFBTr6Sgq938oNf+8MOOyx52/9GEc3uANzZ/O1vf/MHscbds5AXDm3l8Ff+jw/9ILgH4jrW9BdccIFbddVVvcubWgQl/Lrr2u6KOgl5Ofzww/0htNtuu22bj3xc+Gy44Ybe+l8iAiIgAiIgAiIgAiIgAiIgAo0kICV8I+kqbBEQAREQAREQgboSWH311b0S+IwzznCrrbaaw4r788/N1Y0poVEy57l+QbmMlTc+wk888USfLnyCY9395ptvegUz1uB5YSQzw7P4l0eBzwLA3OY3n3Deeustt8kmm3gFfVHBAh4XKxwUmyYozlGCP/74427FFVd0t912m1+ICPni0Fjc6+CGZd99900Lwh/UipU8Fvu4ZWHh4KOPPvLW90E4oHaPPfbwPuM5yDYI+cS6/rLLLvOHy+Lah4Nha1XCpya0xoubbbaZX7ih3qy00krefQ+LB6eddlrq7oAao9PrIiACIiACIiACIiACIiACIlBCQEp4VQgREAEREAEREIFOReB3v/ud469aQfEelO/Vvpv3PK5iUPDXW/DTfvfdd5covuNxYMXNX1FBiY5rnuHDh3s3MvjJRwn/97//3SvlywnKetzlhANc4YBrnFYUXAYdf/zxJUnDKl4iAiIgAiIgAiIgAiIgAiIgAs0g0L0ZkSgOERABERABERABEejMBPBPjtK62YI7mbgP9nrFjwKdBQms94Mfd/zaH3300d5tC657yglubJKCZb1EBERABERABERABERABERABESglICU8KoRIiACIiACIiACIpBBAJcv+GR/++233RNPPOF23HFH99BDD2U8Xd/LHHp63333uUUXXbSuAZ9wwglu8803d7fffrt3yxLklVdecTfccIM/5HSXXXZx9957b268WL7jb33y5Mn+OdKLxblEBERABERABERABERABERABESglIDc0ahGiIAIiIAIiIAIiEAGgVpdvmQEW9Fl/NXPPvvsbsEFF6zo+Uofwvqdv6TgEx6lf6WCb/2VV17ZffHFF96anoUKDneViIAIiIAIiIAIiIAIiIAIiIAIlBKQJbxqhAiIgAiIgAiIgAi0IAHcwyy33HLe2rwjBUv3O+64w40YMcJbvV8QKwtCAAAgAElEQVRyySU+Od27d/f+6u+55x6/O+DSSy+tyJd8R+ZFcYuACIiACIiACIiACIiACIhARxCQJXxHUFecIiACIiACIiACZQmMHj3avfzyy/65mWaaqc13edkX9UBdCaBsX2eddfwfgtuZIPir32effdz48eO9VTwLB0Hwo//WW285LPpHjRpV1zQpMBEQAREQAREQAREQAREQARHoTASkhO9MpaW0ioAIiIAIiEAXITBgwAB/IOk111zjc7zGGmu4tddeu4vkvvWy2aNHj8xE9erVy/GXFA6Vvemmm9y4ceP8rcGDBycf0W8REAEREAEREAEREAEREAER6BIEupk10/83Z+oSWVYmRUAEREAEREAEREAEREAEREAEREAEREAEREAEREAERKA5BOQTvjmcFYsIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEAXJCAlfBcsdGVZBERABERABERABERABERABERABERABERABERABESgOQSkhG8OZ8UiAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiLQBQlICd8FC11ZFgEREAEREAEREAEREAEREAEREAEREAEREAEREAERaA4BKeGbw1mxiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIdEECUsJ3wUJXlkVABERABERABERABERABERABERABERABERABERABJpDQEr45nBWLCIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAl2QgJTwXbDQlWUREAEREAEREAEREAEREAEREAEREAEREAEREAEREIHmEJASvjmcFYsIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEAXJCAlfBcsdGVZBERABERABERABERABERABERABERABERABERABESgOQSkhG8OZ8UiAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiLQBQlICd8FC11ZFgEREAEREAEREAEREAEREAEREAEREAEREAEREAERaA4BKeGbw1mxiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIdEECUsJ3wUJXlkVABERABERABERABERABERABERABERABERABERABJpDQEr45nBWLCIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAl2QgJTwXbDQlWUREAEREAEREAEREAEREAEREAEREAEREAEREAEREIHmEJASvjmcFYsIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEAXJCAlfBcsdGVZBERABERABERABERABERABERABERABERABERABESgOQSkhG8OZ8UiAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiLQBQlICd8FC11ZFgEREAEREAEREAEREAEREAEREAEREAEREAEREAERaA4BKeGbw1mxiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIdEECUsJ3wUJXlkVABERABERABERABERABERABERABERABERABERABJpDQEr45nBWLCIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAl2QgJTwXbDQlWUREAEREAEREAEREAEREAEREAEREAEREAEREAEREIHmEJASvjmcFYsIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEAXJCAlfBcsdGVZBERABERABERABERABERABERABERABERABERABESgOQSkhG8OZ8UiAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiLQBQlICd8FC11ZFgEREAEREAEREAEREAEREAEREAEREAEREAEREAERaA4BKeGbw1mxiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIdEECUsJ3wUJXlkVABERABERABERABERABERABERABERABERABERABJpDQEr45nBWLCIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAl2QgJTwXbDQlWUREAEREAEREAEREAEREAEREAEREAEREAEREAEREIHmEJASvjmcFYsIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEAXJCAlfBcsdGVZBERABERABERABERABERABERABERABERABERABESgOQSkhG8OZ8UiAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiLQBQlICd8FC11ZFgEREAEREAEREAEREAEREAEREAEREAEREAEREAERaA4BKeGbw1mxiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIdEECUsJ3wUJXlkVABERABERABERABERABERABERABERABERABERABJpDQEr45nBWLCIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAl2QgJTwXbDQlWUREAEREAEREAEREAEREAEREAEREAEREAEREAEREIHmEJASvjmcFYsIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEAXJCAlfBcsdGVZBERABERABERABERABERABERABERABERABERABESgOQSkhG8OZ8UiAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiLQBQlICd8FC11ZFgEREAEREAEREAEREAEREAEREAEREAEREAEREAERaA6Bns2JpnPG8s0337iXXnrJffTRR65fv35uvvnmcwsttFBJZrjXp08fN+OMM3bOTDYo1ePGjXN9+/bNDL3c/cwXdUMEjMAbb7zhXnjhBTfddNO5Nddc0/Xo0aMqLqp/VeHSwyIgAjUSmDhxops8ebLr3bt3jSFNea/X2p63MpFyfU25+62ct45K2/jx412vXr1c9+7F7IjEvFjJRVHkfvzxx9yxfbGQ9ZYIiMCUToDxz08//eR1JpJSAnDp1q2b69lTarlWrRs//PCD1wVKRKBeBLrZoCqqV2C1hrPZZpv5BrqIbLnllm7bbbf1r55xxhnujjvu8A09g3QaNrLJH4P3+eef35177rmZ0dx9993uj3/8o3vsscfccsst5xZZZBE/6Hz++efdd9995w4//HC3ySab+LRy/8QTT3QbbbRRZnj1vEH6X3nlFbf00kvXM9jMsO655x530kknuammmsp3DnGW5J8B+f333+/fX2aZZdzo0aP9H5McWPXv39/fe+qpp9yOO+7o73311VduiSWW8NckxQjA8eGHH3brrrtul5oQffLJJ27PPff0C2P77ruv/9bpFB988MFc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FnNH4Q+yl4iACIiACLQmAXZ7aA7QmmUzpadKda9zl3D3zp18pV4EREAEREAEOoYAVvDmm9KZv1PvpiFL2BqHywjzYefMp37WY7ouAiIgAhUTwF0JgqskSeclwHZ8dkrRj4QyxQrefDl7F2YSERABERCB1iRgfrKdnd3jbrvttswE4rKFHU24ZLLzLzKf0w0RqIaA6l41tFrv2R52iOnxrZcspUgEREAEREAEWp+AHXjsz6qwQ968f2Q7WNQn2g6H8r4f7YBox0BpnXXWcXaIVUUWM62fa6VQBESgowjYwaj+DAraExTwbHPnvAKsoqYkX7MdxbfZ8WIB/5///MfZYafODiL05Tpy5Eg3bNiwZidF8YmACIiACFRBAJcgc889t7MDpt1jjz3WNgewAyu9H/mbbrrJ+4rHWt4OePXn10lEoB4EVPfqQbHjwpBP+I5jr5hFQAREQASmEAIcvmSnuPtBN8p43NRwuBlKsY033rguB49NIaiUDREQgRoIPProo2706NH+QF8OhuOgRSztmNynHfpdQ1R6tUkEWLRlwRar+FVWWcVts802dTtktklZUDQiIAIi0GUJMObHfdgzzzzj5wBjxozxh3b+8pe/dBtuuKE/PFwiAo0goLrXCKqND1NK+MYzVgwiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAJdlIB8wnfRgle2RUAEREAEREAEREAEREAEREAEREAEREAEREAEREAEGk9ASvjGM1YMIiACIiACIiACIiACIiACIiACIiACIiACIiACIiACXZSAlPBdtOCVbREQAREQAREQAREQAREQAREQAREQAREQAREQAREQgcYTkBK+8YwVgwiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIQBclICV8Fy14ZVsEREAEREAEREAEREAEREAEREAEREAEREAEREAERKDxBKSEbzxjxSACIiACIiACIiACIiACIiACIiACIiACIiACIiACItBFCUgJ30ULXtkWAREQAREQAREQAREQAREQAREQAREQAREQAREQARFoPIGejY9iyo1h3Lhxrm/fvlNuBjtBzj799FP3zDPPuIkTJ7o11ljDDRw4sKVSPX78eNerVy/XvbvWu5IF0+pll0xvJb/VJlRCSc+IgAiIgAiIgAh0dQI//PCD69evX5fFMHnyZPfTTz+5Pn36TPEMOnteNb5vbBWdMGGCnyv37CnVVGNJK3QREIFWINAtMmmFhHSGNDz11FNuxx13dKNHj3ZfffWVW2KJJRzXOlIefPBBN/3007vFFlusI5PR9LgZtB5zzDHu6quvdkcccYR75JFH3H333edGjhzpFlhggaanJx7hqquu6t577z1fR77//ns3atQoN88883RomrIi74j608pll8Up6zr1bffdd/dlTbuw7LLLusceeyzrcV0XgS5BgG/h4Ycfduuuu26nW6hmIjhixAi3wgoruFlmmaVLlFelmezM5RrP40033eQuv/zySrNd8lyPHj3cBRdc0JC6ceWVV7qLLrrIL9zzhzICAwP+6DfXWWcdP+5BrrnmGnfeeeeVPDtp0iT/XPLZQhnVSyJQhsAbb7zh3n//fTd48GDXrVu3Mk//7zZjJQxmaEv4C3W2openkIf4bs8880yf/2+++cYdfPDB7o9//OMUkrvSbAwfPtxddtllbXkdNmxYWxvW6hnW+L7xJbTpppu65557zs+hxo4d6+fwq6yySruIO2Ku2i4RTbrQ2cegzS6rIv1Qo4sSA8xXXnnFLb300qlR3Xzzze70009PvZe8OMMMM7i5557bbbTRRm7NNdd0jEElUwgBlPCSygjYxCb66KOPoqFDh7Jw8f/YOxO43abqj+8mZSxFUYhK6RqSSoaoRJKI0pWrwawuiVBEqGQohCgRZQ4ZMySiQUUDKUWjZqVZKo3nv76r9vPfz372mc95nud971qfz/u59zlnnz389t5rrb322mtnYnCr9mFPqcQArfXg7zvf+U5PpUxntvvuu28mO+bZ7bffrhUURqc4HH744ROv8G9+85vss5/9bCanJLROYoSfeJ1SFZjU+JnmvkvhVPRMlKXs5z//eXbggQdqX6+zzjpFye2dIbBAICAboToftt122xnX3l133VXr/oQnPCFD5hv9PwIzuV/DfrzvvvtUZ7rwwgsHOhT9/s1vfjO76667Bn933nlndsstt2RXXnllNn/+/OwRj3iEpofn90EPPPBAhv7wjW98I1t55ZW1rMUXXzwTw0QmJ8cy8RoeFJtKu9hii2Wy+TWSto+6Wp4LNgJifM/EGKBjVIzKlcEQb2gdn+edd55+KxtNlb+dLQnFOSf74Q9/mG2++eaKwX777TdbmjbSjvvvvz/77ne/mz3/+c/X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AoaAIWAIGAKGgCFgCBgChoAhYAgYAoaAITDdCJgRfrr7x2pnCBgChoAhYAgYAoaAIWAIGAKGgCFgCBgChoAhYAgYAoaAITCDETAj/AzuPKu6IWAIGAKGgCFgCBgChoAhYAgYAoaAIWAIGAKGgCFgCBgChsB0I2BG+Ib9k2WZe+CBBxp+bZ9NAwL//Oc/3b/+9a9pqIr7z3/+4/7+979PRV3GVQnm0N/+9rdxFWflLEAI2LhagDr7f021Ph/t82mScaO1syezEYEFUZeZjf1obTIEDAFDwBAwBAwBQ8AQ6AcBM8LXwPX88893q6yyilt66aXdwx72MLfrrrvW+LpZUgwLN998s7vlllvcfffd1ywT+2qAwGte8xq30koruSWWWMIttNBC7jOf+UxtdH73u9+5yy67rLUB+fjjj3dPfepT3WMe8xgdT4cddljtulT94Hvf+567/vrrHYbvSdJ1113nnv70p7vHPe5xiv+WW245yepY2SUI/OMf/3BXXHGF+/Wvf12ScrKv4ZPPeMYz3HLLLecWXnhht8giizTa1Opqbk8WjQWj9H//+99uzTXXdMsvv7z2N39/+ctfZnTjP/e5z7lvfetbrdrQhYxrVQH7WBH4wQ9+UKiz3XHHHbMGqSOOOMKtvPLK7tGPfrR76EMf6o455phO2gY/vvHGG3VOIIuM+kXg6KOPdvfcc0+/hVjuhoAhYAgYAoaAIWAILOAImBG+xgDYeuut3bXXXus222wzhwGgT8Lotc0226iR8pxzznEHHnigW2aZZdzaa6/tbrrppj6LntV5n3TSSe7SSy9VI3xTWn/99R1jYccdd2yahX632267uWuuucY95znPUU/4vuhnP/uZmzNnjttkk03chz/84b6KqZTv85//fIchft68eVNzCqFSxRfQRHvuuad7+ctf7p71rGdNdX9heP/0pz/tTj755FYnlLqa2wvocBlrsx/ykIdon59yyimt+nyslS4o7LzzznMveMEL3BprrOHuvPPOgpTFr7qQccUl2NsqCLzrXe9ySy21lNt4443dvvvu6zBwHnrooW6HHXbQjaNddtmldz2ySj27SPPmN7/ZXXXVVTp2u9jov/XWWx28GB3poosucq9//evd4osv7ubOnet+8pOfdFFlyyNC4OMf/7g74IADHA4bRoaAIWAIGAKGgCFgCBgC/SFgRvga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" + } + }, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "syndrome_mat = zeros(Bool, 2*N, N÷2) # 2N possible errors for rows vs N÷2 possible code stabilizers for columns\n", + "for i in 1:N\n", + " for j in 1:N÷2\n", + " syndrome_mat[i,j] = comm(code[j],single_z(N,i))\n", + " end\n", + "end\n", + "for i in 1:N\n", + " for j in 1:N÷2\n", + " syndrome_mat[i+N,j] = comm(code[j],single_x(N,i))\n", + " end\n", + "end" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Consider an error rate of 0.25. We randomly select 1/4 of the qubits to be erased and extract the corresponding submatrix." + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "32×32 Matrix{Bool}:\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 … 0 0 1 1 0 0 0 0 0 0 0 0\n", + " 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0\n", + " 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0\n", + " 0 0 0 1 0 1 0 0 0 0 0 0 0 … 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 1 1 0 0 0 0 0 0 … 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0\n", + " ⋮ ⋮ ⋮ ⋱ ⋮ ⋮ ⋮ \n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 … 0 0 0 0 0 1 0 1 0 0 0 0\n", + " 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 … 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1\n", + " 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 1 1 0 0 0 0 0 0 … 0 0 0 0 0 0 0 0 0 0 0 0\n", + " 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "using Random # part of the standard library, it contains the `randperm` function\n", + "indices_of_erased_qubits = randperm(N)[1:N÷4]\n", + "S = syndrome_mat[[indices_of_erased_qubits...,indices_of_erased_qubits.+N...],:]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The `AbstractAlgebra` package contains convenient functions for dealing with vector spaces over arbitrary fields. We will use that package to find the rank of the above binary matrix. We could have used `AbstractAlgebra` to do the entirety of this project given that the tableaux we work with are simply matrices over $\\mathrm{GF}(2,2)$, but we would have sacrificed multiple low-level optimizations available in `QuantumClifford`." + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING: using AbstractAlgebra.comm in module Main conflicts with an existing identifier.\n" + ] + } + ], + "source": [ + "using AbstractAlgebra # Consider Nemo.jl instead of AbstractAlgebra.jl as it is much faster (same interface)" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "23" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "binary_field = GF(2)\n", + "Sbinary = matrix(binary_field, S) # TODO probably not the fastest way to convert the type of this matrix\n", + "r = rank(Sbinary)" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.001953125" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "recovery_probability = 2.0^(r-N÷2)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Observing the threshold depth at which error correction becomes possible\n", + "\n", + "We will perform the derivation described in the previous section for various depths and sampling over multiple different random circuits and multiple different random patterns." + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [], + "source": [ + "Ns = [2^4, 2^5, 2^6, 2^7] # number of qubits for which we will perform the analysis\n", + "max_depth = 25 # depth to which we will test each circuit\n", + "nb_circuits = 100 # number of circuits we will average over\n", + "nb_error_samples = 10; # number of random error pattenrs over which we will average" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "using ProgressMeter # A library that provides the convenient @showprogress macro\n", + "using Base.Threads # A library that can turn ordinary loops into parallel multi-threaded \"loops\"" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "get_all_samples (generic function with 1 method)" + ] + }, + "execution_count": 21, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "function get_all_samples(Ns,max_depth,nb_circuits,nb_error_samples)\n", + " # an array that will contain the computed recovery probability for each circuit\n", + " samples = zeros(length(Ns), max_depth, nb_circuits, nb_error_samples)\n", + "\n", + " for (index_N,N) in enumerate(Ns)\n", + " println(\"Sampling from circuits of size $(N)\")\n", + " brick_layer1 = tensor_pow(tCNOT, N÷2)\n", + " brick_layer2 = permute(brick_layer1, [(2:N)...,1])\n", + " @showprogress for index_circuit in 1:nb_circuits\n", + " state = one(Stabilizer, N)\n", + " for index_depth in 1:max_depth\n", + " apply_random_singlequbitops!(state)\n", + " apply!(state, brick_layer1, phases=false)\n", + " apply_random_singlequbitops!(state)\n", + " apply!(state, brick_layer2, phases=false)\n", + " code = state[1:2:end]\n", + " syndrome_mat = zeros(Bool, 2*N, N÷2)\n", + " for i in 1:N\n", + " for j in 1:N÷2\n", + " syndrome_mat[i,j] = comm(code[j],single_z(N,i))\n", + " end\n", + " end\n", + " for i in 1:N\n", + " for j in 1:N÷2\n", + " syndrome_mat[i+N,j] = comm(code[j],single_x(N,i))\n", + " end\n", + " end\n", + " @threads for index_sample in 1:nb_error_samples\n", + " indices_of_erased_qubits = randperm(N)[1:N÷4] # error rate of 0.25\n", + " S = syndrome_mat[[indices_of_erased_qubits...,indices_of_erased_qubits.+N...],:]\n", + " Sbinary = matrix(binary_field, S)\n", + " r = rank(Sbinary)\n", + " recovery_probability = 2.0^(r-N÷2) # N_erased = N÷4\n", + " samples[index_N,index_depth,index_circuit,index_sample] = recovery_probability\n", + " end\n", + " end\n", + " end\n", + " end\n", + " return samples\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sampling from circuits of size 16\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\u001b[32mProgress: 100%|█████████████████████████████████████████| Time: 0:00:02\u001b[39m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sampling from circuits of size 32\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\u001b[32mProgress: 100%|█████████████████████████████████████████| Time: 0:00:02\u001b[39m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sampling from circuits of size 64\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\u001b[32mProgress: 100%|█████████████████████████████████████████| Time: 0:00:09\u001b[39m\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sampling from circuits of size 128\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "\u001b[32mProgress: 100%|█████████████████████████████████████████| Time: 0:00:52\u001b[39m\n" + ] + } + ], + "source": [ + "samples = get_all_samples(Ns,max_depth,nb_circuits,nb_error_samples);" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Based on these samples we can calculate means and standard errors." + ] + }, + { + "cell_type": "code", + "execution_count": 23, + "metadata": {}, + "outputs": [], + "source": [ + "using Statistics" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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ERGRk5MDAKIoGo3Gd999V2r25ptvhoeHf/fdd1FRUb6+vosWLQKAhoaGp59+2svLy2g0qtXqUaNGSdcYMzMzDQZDeXm5ay0dah566KGVK1cCwPbt25csWQIAo0aNMhgMBoOhrKzs+iAZhlm6dKmXl1dgYGBoaGhWVlaHBidPnpw8ebJOpzMajX5+fm+99ZZrqMWtW7caDIYjR44MHz7cz89Pr9cnJiY2NzcDQFlZWXh4OAC88sor0tr/9re/uZa5a9eukJAQf39/nU63cuVKHLsR9SN4RojQbZg/f35WVtbq1asff/xxAMjPz7fb7QAgimJNTY3NZpOaORyO6urqp59+etWqVWPGjOF53uFwxMfHl5eXZ2RkTJw40WazHTx4sK2tDQAYhmlqahIEwbWWDjV1dXVSKpoxY8ZLL730xz/+cfPmzQEBAQAg/dlBamrqjh07/vCHPzz22GOnT59etmyZNLvk559/njx58ujRo3NzcwMDA/fv3//GG29QFCW9UNfpdDY1NS1YsOD111+fPHlyfn7+Sy+9tGDBguzs7MDAwB07dsyZMyclJUX6+sOGDZOWef78+bVr127atMlkMn344Yfr16+fMmWK1AahfkBECHXNd999BwBvv/329R/xPA8AGRkZ0uSrr74KADt37nQ1kE4W9+7de/28u3btAoDS0tLOaoYOHbpo0SKp/MknnwBAWVlZZ0HW19fL5fIVK1a4anbu3AkAL774ojQ5b968kJAQm83mapCamurt7S0IgiiKGzZsAIB169a5PpVqCgsLRVFsamoCgC1btrRfY0JCglwuv3jxojTJcVxISMizzz7bWYQI9TV4aRShrjpw4AAALF68uIvt258SHThwwN/fPyEhoVcia+fMmTMsyyYlJblqEhMT29+0y83NjY6Ozs/PP/hver2+qampsrLS1ab97FK5qKjoJiuNjIyMjIyUyhRFRUVFVVRU3KlvhFBvw0ujCHVVQ0ODUqn08/PrSmOdTte+K01DQ4PJZOq10H5hNpsBIDAw0FWjUCh8fHykMk3Tzc3NR44cOXHiRPu5vL296+vrXa/5bj+70WgkCKJ9mryewWBoP6lUKltbW3v2PRC6e/CMEKGu8vLyomlaujx4Sx16Tnp5edXW1t6wpdRpk+M4V83tPibYnr+/PwA0NDS4anied8WsUChUKtWTTz7ZeJ0xY8a4Zmk/e319vSiKPXn9N0J9HCZChLpq8uTJACDdwOvGvGaz+YbDu0ivdC8tLXXVHD58uLPlSA8zOByOzhoMHz6cJEmpL6skNzfXlWUJgpg0aVJ2dvbNc2372aXyiBEjAECj0ZAk6XQ6bzIvQv0OJkKEuuqRRx6ZOHHiqlWrduzY0dDQYLFYsrKy8vLyujLv4sWLQ0NDFy5cmJWV1draWl1d/dFHH505cwYARo4cGRQUtGbNmpKSksrKyoyMjD179nS2nJiYGJIkN27cePTo0cLCQpqmOzQICgqaO3fuhg0bPv/887a2th9//HHFihVKpdLVYO3atXV1db/+9a+PHz/ucDjMZvPevXtXrFjRfiEZGRn79++32+0HDx5cvXr1+PHj4+LiAEChUAwdOvTTTz89dOhQYWFhXV1d17ceQn0WJkKEuoogiD179syYMSMlJcXPz8/X13f+/PldvFKq1+vz8vJCQ0MTEhL0en1QUNDKlSsZhgEAlUr197///fLlyzExMSEhIXv37n377bc7W86QIUPWr1+/f//+KVOmxMbG3rBPynvvvffggw8+8cQTWq122rRp0oOPrk8nTJiQnZ1dW1s7YcIEjUZjMpkWLFjQ4SRvw4YNTz31lIeHx8MPP2wymb744gvXU/nbtm3jOC4hISE2NvaODNuGkNsRIj73itBtslgspaWlHh4eERERarVaquR5niTJzoZxcamsrKyqqtLr9ZGRkRRFueoZhikpKdFoNEOHDu0wiyAIBEHccskdlJaWNjY2RkVFeXp63rBBWVlZfX29l5dXWFiYQqGQKt95553U1FS73U4QxLlz59RqdXR09G2tF6F+BxMhQugXrkToSvAIDXh4aRQhhNCghokQIfSL+Pj49957Ty6XuzsQhO4evDSKEEJoUMMzQoQQQoMaJkKEEEKDGiZChBBCg9r/B6H6MM+am8TIAAAAAElFTkSuQmCC", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 24, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "sample_means = mean(samples, dims=(3,4))\n", + "sample_errs = std(samples, dims=(3,4)) / sqrt(nb_circuits*nb_error_samples)\n", + "sample_means = dropdims(sample_means, dims=(3,4))\n", + "sample_errs = dropdims(sample_errs, dims=(3,4))\n", + "plot(1:max_depth,sample_means', yerror=sample_errs',\n", + " label=[\"$(N)\" for N in Ns'],legend=:bottomright,legendtitle=\"# of qubits\",\n", + " xlabel=\"circuit depth\",ylabel=\"recovery probability\")" + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 25, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "plot((1:max_depth) ./ sqrt.(Ns)', 0.610322 .- sample_means', yerror=sample_errs',\n", + " label=[\"$(N)\" for N in Ns'],legend=:topright,legendtitle=\"# of qubits\",\n", + " xlabel=\"circuit depth / √N\",ylabel=\"0.610322 - recovery probability\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Reproducibility information" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Julia Version 1.10.2\n", + "Commit bd47eca2c8a (2024-03-01 10:14 UTC)\n", + "Build Info:\n", + " Official https://julialang.org/ release\n", + "Platform Info:\n", + " OS: Linux (x86_64-linux-gnu)\n", + " CPU: 8 × Intel(R) Core(TM) i7-10510U CPU @ 1.80GHz\n", + " WORD_SIZE: 64\n", + " LIBM: libopenlibm\n", + " LLVM: libLLVM-15.0.7 (ORCJIT, skylake)\n", + "Threads: 1 default, 0 interactive, 1 GC (on 8 virtual cores)\n", + "\u001b[32m\u001b[1mStatus\u001b[22m\u001b[39m `~/Documents/ScratchSpace/quantumjulia/Project.toml`\n", + " \u001b[90m[0525e862] \u001b[39mQuantumClifford v0.8.21 `QuantumClifford.jl`\n" + ] + } + ], + "source": [ + "versioninfo()\n", + "using Pkg\n", + "Pkg.status(\"QuantumClifford\")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.10", + "language": "julia", + "name": "julia-1.10" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.10.2" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/v0.9.12/notebooks/Symbolic_Perturbative_Expansions.ipynb b/v0.9.12/notebooks/Symbolic_Perturbative_Expansions.ipynb new file mode 100644 index 000000000..1f6831eb1 --- /dev/null +++ b/v0.9.12/notebooks/Symbolic_Perturbative_Expansions.ipynb @@ -0,0 +1,660 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`Last edit on Mar 18 2024 with QuantumClifford 0.9.0 and Julia 1.10.2`" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "using Revise\n", + "using QuantumClifford\n", + "using QuantumClifford.Experimental.NoisyCircuits\n", + "using Plots # Makie is a good alternative plotting library\n", + "using Quantikz\n", + "using ProgressMeter\n", + "using BenchmarkTools" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The perturbative expansion code supports symbolic calculation. Simply use one of the many symbolic packages in Julia and set the various parameters of interest to symbolic values instead of numeric ones. Here we show an example of a typical purification circuit that uses various computer algebra system available in Julia." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The circuit we will study is:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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", + "text/plain": [ + "5-element Vector{QuantumClifford.AbstractOperation}:\n", + " NoiseOpAll(UnbiasedUncorrelatedNoise{Float64}(0.1))\n", + " sCNOT(1,3)\n", + " sCNOT(2,4)\n", + " BellMeasurement(Union{sMX, sMY, sMZ}[sMX(3, 0), sMX(4, 0)], false)\n", + " VerifyOp(Stabilizer 2×2, [1, 2])" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "good_bell_state = S\"XX\n", + " ZZ\"\n", + "initial_state = MixedDestabilizer(good_bell_state⊗good_bell_state)\n", + "\n", + "g1 = sCNOT(1,3) # CNOT between qubit 1 and qubit 3 (both with Alice)\n", + "g2 = sCNOT(2,4) # CNOT between qubit 2 and qubit 4 (both with Bob)\n", + "m = BellMeasurement([sMX(3),sMX(4)]) # Bell measurement on qubit 3 and 4\n", + "v = VerifyOp(good_bell_state,[1,2]) # Verify that qubit 1 and 2 indeed form a good Bell pair\n", + "epsilon = 0.1 # The error rate\n", + "n = NoiseOpAll(UnbiasedUncorrelatedNoise(epsilon))\n", + "\n", + "# This circuit performs a depolarization at rate `epsilon` to all qubits,\n", + "# then bilater CNOT operations\n", + "# then a Bell measurement\n", + "# followed by checking whether the final result indeed corresponds to the correct Bell pair.\n", + "circuit = [n,g1,g2,m,v] # Drawing the circuit out can be a bit slow as it uses LaTeX" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## If you want to use `Symbolics`" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "using Symbolics\n", + "@variables e\n", + "unity = one(e);" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Dict{CircuitStatus, Num} with 3 entries:\n", + " true_success:CircuitStatus(1) => (1 - 3e)^4 + 2e*((1 - 3e)^3)\n", + " failure:CircuitStatus(3) => 4e*((1 - 3e)^3)\n", + " false_success:CircuitStatus(2) => 6e*((1 - 3e)^3)" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "good_bell_state = S\"XX\n", + " ZZ\"\n", + "initial_state = MixedDestabilizer(good_bell_state⊗good_bell_state)\n", + "\n", + "g1 = sCNOT(1,3) # CNOT between qubit 1 and qubit 3 (both with Alice)\n", + "g2 = sCNOT(2,4) # CNOT between qubit 2 and qubit 4 (both with Bob)\n", + "m = BellMeasurement([sMX(3),sMX(4)]) # Bell measurement on qubit 3 and 4\n", + "v = VerifyOp(good_bell_state,[1,2]) # Verify that qubit 1 and 2 indeed form a good Bell pair\n", + "epsilon = 3e # The error rate\n", + "n = NoiseOpAll(UnbiasedUncorrelatedNoise(epsilon))\n", + "\n", + "# This circuit performs a depolarization at rate `epsilon` to all qubits,\n", + "# then bilater CNOT operations\n", + "# then a Bell measurement\n", + "# followed by checking whether the final result indeed corresponds to the correct Bell pair.\n", + "circuit = [n,g1,g2,m,v]\n", + "\n", + "pe_symbolic = petrajectories(initial_state, circuit, branch_weight=unity) # perturbative expansion" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "BenchmarkTools.Trial: 6633 samples with 1 evaluation.\n", + " Range \u001b[90m(\u001b[39m\u001b[36m\u001b[1mmin\u001b[22m\u001b[39m … \u001b[35mmax\u001b[39m\u001b[90m): \u001b[39m\u001b[36m\u001b[1m631.701 μs\u001b[22m\u001b[39m … \u001b[35m 13.019 ms\u001b[39m \u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmin … max\u001b[90m): \u001b[39m0.00% … 92.65%\n", + " Time \u001b[90m(\u001b[39m\u001b[34m\u001b[1mmedian\u001b[22m\u001b[39m\u001b[90m): \u001b[39m\u001b[34m\u001b[1m694.707 μs \u001b[22m\u001b[39m\u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmedian\u001b[90m): \u001b[39m0.00%\n", + " Time \u001b[90m(\u001b[39m\u001b[32m\u001b[1mmean\u001b[22m\u001b[39m ± \u001b[32mσ\u001b[39m\u001b[90m): \u001b[39m\u001b[32m\u001b[1m748.245 μs\u001b[22m\u001b[39m ± \u001b[32m508.144 μs\u001b[39m \u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmean ± σ\u001b[90m): \u001b[39m4.83% ± 6.63%\n", + "\n", + " \u001b[39m \u001b[39m \u001b[39m \u001b[39m▁\u001b[39m█\u001b[39m \u001b[39m \u001b[39m▄\u001b[39m▁\u001b[34m \u001b[39m\u001b[39m \u001b[39m▁\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[32m \u001b[39m\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \n", + " \u001b[39m▃\u001b[39m▃\u001b[39m▂\u001b[39m█\u001b[39m█\u001b[39m▇\u001b[39m▅\u001b[39m█\u001b[39m█\u001b[34m▆\u001b[39m\u001b[39m▇\u001b[39m█\u001b[39m▆\u001b[39m▄\u001b[39m▅\u001b[39m▆\u001b[39m▄\u001b[32m▄\u001b[39m\u001b[39m▄\u001b[39m▅\u001b[39m▄\u001b[39m▃\u001b[39m▃\u001b[39m▃\u001b[39m▃\u001b[39m▃\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▁\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▁\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m \u001b[39m▃\n", + " 632 μs\u001b[90m Histogram: frequency by time\u001b[39m 1.05 ms \u001b[0m\u001b[1m<\u001b[22m\n", + "\n", + " Memory estimate\u001b[90m: \u001b[39m\u001b[33m260.19 KiB\u001b[39m, allocs estimate\u001b[90m: \u001b[39m\u001b[33m5613\u001b[39m." + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "@benchmark petrajectories(initial_state, circuit, branch_weight=unity)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$$ \\begin{equation}\n", + "0.3087\n", + "\\end{equation}\n", + " $$" + ], + "text/plain": [ + "0.3086999999999999" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# How to evaluate numerically\n", + "substitute(pe_symbolic[true_success_stat], Dict(e=>0.1))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## If you want to use `AbstractAlgebra`" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "using AbstractAlgebra # Consider using Nemo.jl which can be much faster while having the same interfaces\n", + "R, (e,) = polynomial_ring(RealField, [\"e\"])\n", + "unity = R(1);" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Dict{CircuitStatus, AbstractAlgebra.Generic.MPoly{BigFloat}} with 3 entries:\n", + " true_success:CircuitStatus(1) => 27.0*e^4 - 54.0*e^3 + 36.0*e^2 - 10.0*e + 1\n", + " failure:CircuitStatus(3) => -108.0*e^4 + 108.0*e^3 - 36.0*e^2 + 4.0*e\n", + " false_success:CircuitStatus(2) => -162.0*e^4 + 162.0*e^3 - 54.0*e^2 + 6.0*e" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "good_bell_state = S\"XX\n", + " ZZ\"\n", + "initial_state = MixedDestabilizer(good_bell_state⊗good_bell_state)\n", + "\n", + "g1 = sCNOT(1,3) # CNOT between qubit 1 and qubit 3 (both with Alice)\n", + "g2 = sCNOT(2,4) # CNOT between qubit 2 and qubit 4 (both with Bob)\n", + "m = BellMeasurement([sMX(3),sMX(4)]) # Bell measurement on qubit 3 and 4\n", + "v = VerifyOp(good_bell_state,[1,2]) # Verify that qubit 1 and 2 indeed form a good Bell pair\n", + "epsilon = 3e # The error rate\n", + "n = NoiseOpAll(UnbiasedUncorrelatedNoise(epsilon))\n", + "\n", + "# This circuit performs a depolarization at rate `epsilon` to all qubits,\n", + "# then bilater CNOT operations\n", + "# then a Bell measurement\n", + "# followed by checking whether the final result indeed corresponds to the correct Bell pair.\n", + "circuit = [n,g1,g2,m,v]\n", + "\n", + "pe_symbolic = petrajectories(initial_state, circuit, branch_weight=unity) # perturbative expansion" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "BenchmarkTools.Trial: 6821 samples with 1 evaluation.\n", + " Range \u001b[90m(\u001b[39m\u001b[36m\u001b[1mmin\u001b[22m\u001b[39m … \u001b[35mmax\u001b[39m\u001b[90m): \u001b[39m\u001b[36m\u001b[1m585.893 μs\u001b[22m\u001b[39m … \u001b[35m 9.417 ms\u001b[39m \u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmin … max\u001b[90m): \u001b[39m0.00% … 90.27%\n", + " Time \u001b[90m(\u001b[39m\u001b[34m\u001b[1mmedian\u001b[22m\u001b[39m\u001b[90m): \u001b[39m\u001b[34m\u001b[1m657.003 μs \u001b[22m\u001b[39m\u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmedian\u001b[90m): \u001b[39m0.00%\n", + " Time \u001b[90m(\u001b[39m\u001b[32m\u001b[1mmean\u001b[22m\u001b[39m ± \u001b[32mσ\u001b[39m\u001b[90m): \u001b[39m\u001b[32m\u001b[1m728.558 μs\u001b[22m\u001b[39m ± \u001b[32m596.243 μs\u001b[39m \u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmean ± σ\u001b[90m): \u001b[39m7.02% ± 7.90%\n", + "\n", + " \u001b[39m \u001b[39m \u001b[39m▃\u001b[39m▅\u001b[39m█\u001b[34m▇\u001b[39m\u001b[39m▅\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[32m \u001b[39m\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \n", + " \u001b[39m▃\u001b[39m▄\u001b[39m█\u001b[39m█\u001b[39m█\u001b[34m█\u001b[39m\u001b[39m█\u001b[39m█\u001b[39m▆\u001b[39m▄\u001b[39m▃\u001b[32m▃\u001b[39m\u001b[39m▃\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▁\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▁\u001b[39m▁\u001b[39m▂\u001b[39m \u001b[39m▃\n", + " 586 μs\u001b[90m Histogram: frequency by time\u001b[39m 1.4 ms \u001b[0m\u001b[1m<\u001b[22m\n", + "\n", + " Memory estimate\u001b[90m: \u001b[39m\u001b[33m358.09 KiB\u001b[39m, allocs estimate\u001b[90m: \u001b[39m\u001b[33m7016\u001b[39m." + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "@benchmark petrajectories(initial_state, circuit, branch_weight=unity)" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0.30870000000000000209472196532889398667975910939276218414306640625" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# How to evaluate numerically\n", + "pe_symbolic[true_success_stat](0.1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## If you want to use `SymPy`" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "using SymPy\n", + "e = Sym(\"e\")\n", + "unity = Sym(1);" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "Dict{CircuitStatus, Sym{PyCall.PyObject}} with 3 entries:\n", + " true_success:CircuitStatus(1) => 2.0*e*(1 - 3*e)^3 + 1.0*(1 - 3*e)^4\n", + " failure:CircuitStatus(3) => 4.0*e*(1 - 3*e)^3\n", + " false_success:CircuitStatus(2) => 6.0*e*(1 - 3*e)^3" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "good_bell_state = S\"XX\n", + " ZZ\"\n", + "canonicalize_rref!(good_bell_state)\n", + "initial_state = MixedDestabilizer(good_bell_state⊗good_bell_state)\n", + "\n", + "g1 = sCNOT(1,3) # CNOT between qubit 1 and qubit 3 (both with Alice)\n", + "g2 = sCNOT(2,4) # CNOT between qubit 2 and qubit 4 (both with Bob)\n", + "m = BellMeasurement([sMX(3),sMX(4)]) # Bell measurement on qubit 3 and 4\n", + "v = VerifyOp(good_bell_state,[1,2]) # Verify that qubit 1 and 2 indeed form a good Bell pair\n", + "epsilon = 3e # The error rate\n", + "n = NoiseOpAll(UnbiasedUncorrelatedNoise(epsilon))\n", + "\n", + "# This circuit performs a depolarization at rate `epsilon` to all qubits,\n", + "# then bilater CNOT operations\n", + "# then a Bell measurement\n", + "# followed by checking whether the final result indeed corresponds to the correct Bell pair.\n", + "circuit = [n,g1,g2,m,v]\n", + "\n", + "pe_symbolic = petrajectories(initial_state, circuit, branch_weight=unity) # perturbative expansion" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "BenchmarkTools.Trial: 1454 samples with 1 evaluation.\n", + " Range \u001b[90m(\u001b[39m\u001b[36m\u001b[1mmin\u001b[22m\u001b[39m … \u001b[35mmax\u001b[39m\u001b[90m): \u001b[39m\u001b[36m\u001b[1m2.776 ms\u001b[22m\u001b[39m … \u001b[35m54.780 ms\u001b[39m \u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmin … max\u001b[90m): \u001b[39m0.00% … 45.97%\n", + " Time \u001b[90m(\u001b[39m\u001b[34m\u001b[1mmedian\u001b[22m\u001b[39m\u001b[90m): \u001b[39m\u001b[34m\u001b[1m3.006 ms \u001b[22m\u001b[39m\u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmedian\u001b[90m): \u001b[39m0.00%\n", + " Time \u001b[90m(\u001b[39m\u001b[32m\u001b[1mmean\u001b[22m\u001b[39m ± \u001b[32mσ\u001b[39m\u001b[90m): \u001b[39m\u001b[32m\u001b[1m3.396 ms\u001b[22m\u001b[39m ± \u001b[32m 3.603 ms\u001b[39m \u001b[90m┊\u001b[39m GC \u001b[90m(\u001b[39mmean ± σ\u001b[90m): \u001b[39m3.56% ± 3.27%\n", + "\n", + " \u001b[39m \u001b[39m \u001b[39m \u001b[39m▆\u001b[39m█\u001b[39m \u001b[39m▁\u001b[34m▂\u001b[39m\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[32m \u001b[39m\u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \u001b[39m \n", + " \u001b[39m▄\u001b[39m▅\u001b[39m▄\u001b[39m█\u001b[39m█\u001b[39m▇\u001b[39m█\u001b[34m█\u001b[39m\u001b[39m▆\u001b[39m▅\u001b[39m▆\u001b[39m▄\u001b[39m▃\u001b[39m▃\u001b[39m▃\u001b[39m▃\u001b[39m▄\u001b[39m▄\u001b[32m▃\u001b[39m\u001b[39m▃\u001b[39m▃\u001b[39m▃\u001b[39m▂\u001b[39m▂\u001b[39m▃\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▁\u001b[39m▁\u001b[39m▁\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▁\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▁\u001b[39m▂\u001b[39m▁\u001b[39m▁\u001b[39m▁\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m▂\u001b[39m \u001b[39m▃\n", + " 2.78 ms\u001b[90m Histogram: frequency by time\u001b[39m 4.82 ms \u001b[0m\u001b[1m<\u001b[22m\n", + "\n", + " Memory estimate\u001b[90m: \u001b[39m\u001b[33m271.91 KiB\u001b[39m, allocs estimate\u001b[90m: \u001b[39m\u001b[33m5914\u001b[39m." + ] + }, + "execution_count": 13, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "@benchmark petrajectories(initial_state, circuit, branch_weight=unity)" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$0.3087$" + ], + "text/plain": [ + "0.308700000000000" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# How to evaluate numerically\n", + "pe_symbolic[true_success_stat].subs(e,0.1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Comparison to numeric result" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "text/latex": [ + "$2.0 e \\left(1 - 3 e\\right)^{3} + 1.0 \\left(1 - 3 e\\right)^{4}$" + ], + "text/plain": [ + " 3 4\n", + "2.0⋅e⋅(1 - 3⋅e) + 1.0⋅(1 - 3⋅e) " + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "true_success_symbolic = pe_symbolic[true_success_stat]" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAIAAAD9V4nPAAAABmJLR0QA/wD/AP+gvaeTAAAgAElEQVR4nOzdZ1wTWdcA8DtJCAklJDTpARSxIKIUu4AUGyq6othXUXFxZe1l197RVVbXjmJZRbFhVwSxo4hKtQIiIh0htFDS3g/32bzZECkKCcj5f/BHbq6Tk0kyZ+bOLYRIJEIAAABAW0VSdAAAAACAIkEi/MElJyf7+PiEhIQoOpD6paWlRUdHx8XFZWVlCYVCOb/6q1evfH19T5061SRbi4mJ8fHxuXz5srjk5MmTPj4+r1+/bpLtt0bV1dW+vr7r1q1r7hf65ZdfFi1a1Nyv0nZER0f7+PhcvXpV0YE0I0iE/3Hq1CmCIAiCmDBhQu1njYyMCILIy8uTf2DfLDMzMzg4ODo6WtGBfJVQKNy1a5eRkVGHDh369evXs2dPIyMjHR2d0aNHv3v3Tm5hZGZmHjp06NGjR02ytdTU1ODg4BcvXohLHj9+HBwc/Pnz5+/csrOzMyGBxWLZ2Nj88ccfxcXF37llsYsXLx46dKi6urqpNojx+fxDhw6dP3++SbZWVlZ26NCha9eu1X7q2LFjp0+fbpJXaYiNGzdSv47D4cgtkmaSkpISHBwcFxen6ECaEUXRAbRQoaGhS5Ys6dmzp6ID+V5aWlpOTk4dO3ZUdCBf9dtvv+3Zs0dZWXnSpEldunQhk8lpaWmPHz++dOnSzJkzLS0tFR1g07C0tHRyctLU1GySrdnY2GhrayOEOBxOUlJSQkJCSEjI48ePDQwMvn/jGzdujIuL8/LyUlZW/v6tNZPCwkJfX19nZ2cPDw+ppxwdHdXV1eUWiUAg4PF4xsbG7du3r/0shdLqj7H6+vpOTk6mpqaKDqQZtfoPqTmwWKzi4uKVK1feuHFD0bF8LwcHh7t37yo6iq96+/bt3r17VVVVHz16ZGNjI/lUTEyMjo6OogJrcvPnz58/f35TbW3jxo3Dhw/Hf6elpQ0dOjQlJWXVqlVHjhxpqpdovW7duiX/F/Xy8tqxY4f8X1cO3N3d3d3dFR1F84JEKIOHh0diYuLNmzfv3r3r7Oz8tWo1NTVJSUnq6upS11u5ublZWVlsNhufsyOEXr16VVVV1bNnz5qamlu3bn348EFPT8/Dw0N83vrixYuYmBiBQODs7GxlZVX7tQQCQXR0dGJiYk1Njbm5uZubm4qKimSFpKSkmpoaW1vb6urq27dvp6WlmZiYjBkzprS0NCUlRVdX19jYWLK+UCh8/vx5XFxcRUWFnp5er169ZJ7PYq9fv66srOzatSuNRpN6Cr81KysrfPUgFApjYmJSUlLy8/O1tLTYbHbfvn1r/y+xx48fi0QiZ2dnqSyIEOrVq5f475cvXyKEZF6gv3jxgiAI/FROTk52djbe8y9fvnzy5AmZTHZ0dOzcuTOuXFBQcOvWrfz8fEtLyyFDhnztbD01NfXu3bsVFRVWVlaDBg0ikWTcQUhOTo6Oji4tLTUwMHB1ddXV1f3ae8Q+ffpUUFDQsWNHqYuVioqKe/fupaWlEQTBZrMHDhzIZDLr3pSU9u3br1+/fsKECVLnbbm5uXfu3MnJyWEwGP379+/SpYvks1++fPn48aO+vr6BgUFKSsr9+/c5HM6YMWOKi4u5XC5CKD4+nsFgIISUlJSsra2RxNeYIAjxdrhc7ps3b1gslrm5OS7JzMzMz8/v0KGDhoZGbGxsbGxsTU2Nn5+f1KvfvHkzLy+PzWYPGzZM6suMECotLY2Ojv706VNZWZmhoeGgQYMk93BOTk5ycjJCqKysTNz+rKOjY2JighCKi4ujUCjdunVDCGVnZ+fk5BgaGurp6Um9hMyniouL79y5k5mZSaVS7e3tHRwcGvgp1A3vbTqdLvUpcDictLQ0KpWKo8W/Vm1tbTabnZaWFhUVVV5ejr+EZDK5dvyxsbGfPn0SCoXm5uaDBg1SVVWVrFBYWJiRkWFgYKCvr5+SkhIVFcXlcq2srFxcXKS+0iKR6MWLF2/evMnLy9PU1DQ2Nu7Xr5/4QykqKkpPT8fbkQo+MjLy06dPNBrNzs7O3t5e8ouBEHr58qWSklK3bt0qKipu3LiRkZGhp6c3ePDglniCKwISTp48iRCaNm3apUuXEEIODg5CoVD8rKGhIUIoNzcXP/z06RNCyMnJSWojmzZtQggdPnxYXILb9168eGFmZibe87q6ugkJCRUVFWPHjhUXkkikrVu3Sm0wJiamU6dOkp9au3btbt26JVnHxMSERCI9f/4cHwsQQgMHDhSJRPjgOHfuXMnKcXFx+NAmacGCBV/bLbNnz0YIHTt2TKq8sLCQSqXq6enxeDy8Q2rnMwaDUccOP378OELIzc2tjjoikcjFxQUh9OjRI6ny+/fvI4RcXV3xww0bNiCE9u3b5+3tLblLAwICRCJRcHCwZEru27dvWVmZeFM3b95ECM2ZM2fFihWSv+devXrl5eVJviiHwxk5cqTke6TRaFu2bJGsg79Iq1atEpfMmTMHIRQeHi5ZLSgoSKqxlEql3r59u45d4eTkhBC6du2aZGF8fDx+p/ghj8dbuHChkpKS5Ja9vb0rKirE/+Xo0aMIodWrV8+bN0/8foOCglAt+vr6+L/gg3hVVZXkS8fGxiKExo8fLy7x9/dHCJ06dWrIkCHijRQVFZWXlyOErKyszp07J3nINjIyiomJkdzmkiVLpIJXVlaW/F2sXbu2dpziLzmNRhPHjK8OR44cWXtP4i/Vw4cPxSXbt2+XyiXOzs75+fl1fBziYBYuXFhHneLiYjMzMxKJJPkFEAgErq6uCKG//voLl9y+fRshNGvWrJUrV0p+CR0cHMSHHQzfKpYMVVtbW+pbgT/NjRs3LlmyRLJy//79S0pKxNXy8/P79esntTOVlZXFv45jx44hhNatWye58aNHj2poaEj+l379+n3+/FmyDplMNjExefTokeSphrq6utSvoCWARPgf4kQoEon69u2LELp8+bL42e9MhGw229vbOyIi4unTpz4+PgihHj16+Pj4dOzY8fTp0y9fvjxw4ICqqiqZTE5OThb/3+TkZFVVVRqNtnLlyqdPnyYlJe3evVtdXZ1GoyUmJoqrmZiYEARhbGw8duzYc+fORUdHX7lyRSQrEb5580ZdXZ0giDlz5kRHR+NTxZUrVy5evPhru+Xx48f4oCBVvmvXLoTQsmXL8EPcWOfn5/fixYtPnz69fPnyxIkTHh4edezwxMREhBBBEH/++afkYVoK7mGBPxdJkydPRgidO3cOP8SJkM1mt2/fPiQk5OXLlwcPHsRv9q+//qLT6Rs2bHj69Ont27dtbW0RQr///rt4UzgRGhgYaGhoHD58OCMj4/nz556envgXLhAIcDWBQDBo0CD8ud+/fz81NfXkyZP4d75z507x1hqSCPft24cQYrFYgYGBycnJr169unTp0qRJk/AH9zUyE+HFixfxoRA/nDFjBkLI1tY2LCzszZs3UVFRgwcPRghNmDBB/F9wIjQxMdHV1d2xY8f9+/evXbuWlJQUERHRoUMHhFBYWFhERERERMSDBw/wf2lUIjQxMenSpUtQUFB0dHRISEhFRQVOhJqamnQ6/Y8//nj37t27d+9+//13giC0tLQkD/TTp0/39/e/du1acnJyYmJiUFCQkZERQuj8+fO4Qlpa2j///IMQ6t69e8S/3rx5g5+VTIQCgcDY2JhCoUglkszMTDKZbGZmJj7TxT/bDh06/PPPP69evXr8+PHUqVMRQn369OHz+XV8Ig1JhCKR6NmzZ1QqVVdXNysrC5esWbMGITR8+HBxDDgRGhgYMBiMoKCgjIyMFy9ejBkzBiHUu3dv8ZdQJBL17t17w4YNkZGRb9++jY2NXb9+vYqKCp1OT01NFdfBidDMzExXV/fAgQOxsbFXr17Fl56LFi0SV8Nvc8qUKTExMZ8+fUpISDh9+vTIkSPrSIQXL14kCILBYOzbt+/9+/cxMTE4yM6dO0v+islksoaGhpaWlq+vb2Rk5NOnT/F3Q0dHh8vl1r275AwS4X9IJsIHDx4ghKysrMQ/g+9MhJIHC6FQiA8rWlpaX758EZfjH9WGDRvEJbht9syZM5IvgS9Yx4wZIy7BF4K1s07tRIiPiRs3bmz4bhGJRJ06dSII4sOHD5KFuEEyKSkJP1RRUTE1NW3UZkX/HrURQlQqtX///gsXLgwPD6+urpasw+PxDA0N6XS65L4qLi5WUVFp165dTU0NLsGJkMlkSl7Dbd68GW//n3/+ERempKSQSKSOHTuKS3AilNrVfD4fX+OGhYXhEjwion379pWVleJqMTExCCEGg1FaWopL6k2EhYWFqqqqVCr1+fPnjdpdtRNhfn5+9+7dxXnu4cOHCCFra2vJjCUQCOzt7RFCcXFxuAQnQoIgnj59KvUSPXr0QAgVFRVJlTcqETKZzIKCAsmaOBEihH799VfJctxqKnlori0pKYlEIg0YMEBc8uHDB5knZ6L/JkKRSLRixQqEUGBgoGSdjRs3Sv7QMjIylJSU9PT0pGL28vJCCF24cKGO2PBvVl9fv3ctfn5+kjV37tyJEHJ0dOTz+ffu3SOTycbGxoWFheIKOBEihE6dOiUu5PP5+LxNfB4g06FDhxBCS5cuFZfgREilUt++fSsuTE1NJZPJbDZbXGJkZMRgMCSzrBSpRCgQCPBtFPEJKC7s378/kri6FYlEuDlXfKKM4duNUg1aCgfDJ75qwIABQ4YMSU5ObqpBeAsXLhT/TRDEwIEDEUJTp06VbBxzdHRECKWnp+OHWVlZd+/etbCwGD9+vOSmRo0aZWhoePv2bYFAIFm+dOnSumMoLCy8ffu2pqbm4sWLGxX8lClTRP8e37FXr169fPmyV69e4puaTCazsLAwJSWlUVs+cuTI6dOne/XqxefzHz16tHPnzsGDB7dr1+6vv/4S16FQKDNnzqysrJQM4OjRo1wud8aMGVLNaJMnT5a8n4T3s66u7qRJk8SFHTp0MDAwyMjIkBqwyGazJVuqyWQy7uGCL7kQQmFhYQihBQsWSLayOjg4uLi4lJaWRkRENPBdX758GbeK42NcY+3Zs8fX19fX13f48OEWFhYJCQna2tr4PABfKi1dulSyzyeJRPL19UUIifM95uTkJHkvtgn5+PiI75FLkRrkhx+K97BMVlZWZmZmsbGxosbPhPXzzz8TBIEb4cVOnjxJEIT4K3HmzBkej/fLL79IxYyTdEM6zX358uVVLR8/fpSsM3/+/JEjR96/f3/hwoUTJkwgkUhnzpzR0tKS2pSxsbHk7732l1CmUaNGIYSePXsmVT5y5EjJrtft27c3Nzf//Pkzj8fDJSwWi8vl4raZhkhISEhLS7OwsPjpp5/EhSQSCR98age5ZMkSyYdubm4IIXwe03JAZ5m6BAQE3L59e/Xq1ePGjfv+ruQWFhaSD/EdY6mONrhQPFQRdxIhCGL58uW1N1heXl5YWNiuXTtxSdeuXeuOAbemdunSpbFvZ9q0aatXrz5x4oT47gW+pJg2bZq4zowZMzZu3GhlZeXm5ubi4uLq6orbYerl7e3t7e2dn58fHR39+PHjsLCwtLS0BQsW1NTUiFO7r6/v5s2bDxw4gC84EEJHjhwhCEJ8QSkmc5daWFhI3VPR0dH5/Pkzh8ORPBGxsrKS6pWArwjFA+HxH/iaSZKtre2dO3devXqF24jqlZCQIN74N5DsGGlgYDB27NjVq1eLu4oghO7cuZOUlCT5XzIyMhBCUodmqb4bTehrW9bQ0JDqiG9ubs5gMNLT07lcLu6gUV1dvWfPngsXLmRkZOTm5kqerFRUVKipqTUqko4dO/bu3fvJkycJCQn40jk6Ovrt27eurq7ie/Z4p8XHx0v90EpKSlCtnSbTr7/+Wm+vUYIgjh071rNnz927dyOEAgIC8P0XKV27dq37S4gQys/P37ZtW2RkZFZWVmFhobhc8m+s9gCkdu3apaSkFBQU4ME2M2bMWLBggZ2dncu/pPpDSRH/BKTq4FO6V69eSRZqa2tLZXp8vGppo7EhEdbF2tp63LhxZ86cOXTo0Lx5875za1Jd43DHLTqdXrtQfNqLR+NmZGTgdg8pLBarqqpK8v/WO0yttLQUISTV+6shDA0NXVxcbt++HR0d3a9fPz6fHxISQqVSx40bJ66zbt06Q0PD/fv3X79+/fr16wihjh07/vXXX0OHDm3IS+jq6np6enp6em7evNnf3//AgQObN2+eP38+lUrFMXt4eISFhUVHR/ft2/fhw4evXr0aPHgwvqElSeYurd0vUWpXi2OoHRVCqKysDD/E7Xu1q+Gft7havfAH8c3D/s6cOYObmHD7quRT+DsTFhZW+1jGYrFq97D4tgDq9bWegTK71+rq6paWlpaVlamoqAiFwmHDhkVFRZmZmXl6eurq6uKL77///jsrK4vP539DMNOmTXvy5MmJEydwrsJXh5LncHg6gsjIyHv37kn9XxaL1YRjAVkslp2d3cePH5WVlfHNudrq/RLm5eXZ29tnZmba2dnhJiUKhcLn81euXCnVRIRq/RxQrW/+/PnztbS0du/eHRERgdtm2Wz2n3/+Kdk0IulrPwFdXV2CIKR+Ag383SkcNI3WY/369UpKShs2bKh9jMOfaO1vXkVFRVO9Ou5qP2zYsKKvYLPZjdog7uiVnZ39DcHgAwc+iISHh+fk5IwePVrydI9EIs2ZMychISEzM/PEiROjR49OTU0dNWoU7tPYcEpKSgEBAQRBlJSUpKamist/+eUXhBA+J8D/4ua+JlT7RBWX4IEE6N9PpHa13NxcyWr1wmMksrKyvi1ONTU1FovFYrGksiB+CiF09+5dmV+YAwcOfNsrIoRwEpVqTG7st13mpUBeXh5BEHjf3rhxIyoqysXF5f3793v37l2zZs2yZcuWLVv2zWEjhLy9vVVUVE6ePMnj8aqqqs6ePaumpoZ7QmH4pY8ePSpzpzXhwMSjR4+eP39eU1Ozurr6559/ljmVYL1fwl27dmVmZi5fvjw2NnbHjh1//PHHsmXLpkyZ8s1RTZkyJTY2Njs7+/Tp0xMmTMjKyho3blztcwIM76v8/PzaQYpEIqmupK0FJMJ6WFhYzJgxo6CgAPeQlKSjo0MikWp/a9+8edNUr46b4PAQwybZYPfu3UkkEh4Q1tj/O2bMGCaTGRoayuVya59TSzIyMpoyZcrFixeXL1/O4/Ekp9xsICUlJdw6JDngydXVtWPHjmfPnv3w4cPFixfxWMzGbrluSUlJUrsat06L25zxH8+fP5f6j7jPSAObgtG/n6zkHGxNBW/5eybVw/dca1974YYEqS98Y2dPLS0tlTy5QQi9f/++rKzM3NwcXz3g06axY8dKXofl5uZKnb19LUiZNDQ0Ro0alZ+ff+vWrUuXLnE4HG9vb8km1u/faQ3x/v373377DQ+v9PDwCA8P37ZtW+1qSUlJUu9L6kuI29UlxwiJ63wPPT09b2/vkJAQPNzoa7ckcZ+Aly9fSmVx/BOo9+5MywSJsH6rV6+m0+l//vmnuNsbRqVSjY2N09LSJLuHJCUlNeHstGw2e9CgQdnZ2fimghSpeBpCU1PTw8ODw+Fs2bKlsf+XRqONGzeutLT02LFjV65c0dPTw/e9MT6fXzu54kNnHbNWPn/+XOYP+MSJE3w+n8ViSQ7zJwhi9uzZlZWVo0eP5nK5Pj4+Ut1kvl9mZuaZM2fED3k8Hu6zI24mwn/s3r27srJSXC06OvrevXtMJhMPC2uIUaNGMRiMsLAw3OO0CU2fPh0htH379i9fvkg9JfMzqg032NaeFhXfUZPsblNVVSXZp6mBpO6l4YfiPYzbVHGXbLE1a9ZINabp6emRyeSGz90qbs+QeQ43adIkKpV65MiR2l29RCJRk7TxVFVVjRs3rqysbP/+/ebm5sHBwQYGBqtWrcJjkyRlZ2dLdtDj8/lSX8Lau4jH4+GuUt+g9mGk7p9tt27dLC0tU1NTJaeNFQgEOKnjfratDtwjrJ+BgYG/v39AQEDtp7y9vQMCAkaOHLl+/Xp9ff3Y2NgNGzaYm5u/f/++qV59//79vXv3XrRoUWJi4qhRo9q3b19YWIi/hSoqKrgTY6MEBgY+fPhw/fr1GRkZU6ZM0dPTy8zMjIqKqqmpqfegNm3atEOHDi1ZsqS6unrq1KmS5+zFxcWWlpZTpkxxdnY2NzcnkUgxMTFr164lkUiSvcukJCUlzZgxo3fv3h4eHjY2Nqqqqjk5OTdu3MDZ6I8//pBKdT4+PqtXr05MTCSRSDNnzmzse6+XiYnJnDlziouLXV1dCwoKtmzZkpSU5OTkJJ7PbMiQIUOGDLl165arq+vq1auNjIyePn2KO+hv2rRJajh2HTQ0NHbt2jVjxgx3d/dly5a5ubkpKSmlpKScO3du4sSJkq12jdW/f/+5c+fu3bvXzs5u0aJFNjY2ampq6enpMTExJ06cuHLlip2dXd1bsLe3v3Tpko+Pj7e3N5PJVFFRweM1x48fHxQUtGzZMh6PZ2tr+/HjRzzIvVHhaWlp/fPPP3Q6HQ9SOn78+KFDh3R1dcXdmAcOHEgikQIDA/X09FxdXcvKyg4fPnz69Ol27dpJXoxSKBQbG5sXL15MmjSpV69eNBqta9eutQeGi7m6uhoZGV29elUgEODp3SWfZbPZW7duXbhwYd++fRcvXmxvb6+jo5ORkREXF3f8+PHNmzdL3guXKSoq6tdff61dPn/+fHwbe968eQkJCX5+fnhCfx0dnZCQEBcXF29v7/j4eMlbDCYmJn5+fhwOx93dvbCwcOvWrfHx8QMHDhwxYgSu4OzsfPz48blz51ZWVtrY2GRkZGzZsuXbZvcWCoWGhoYTJkxwd3c3NzdXUlKKi4vDPYa+ltIIgtixY8eIESN8fHyysrLc3NwKCgp27Njx5MkTa2trPEK69VHAkI0WTHIcoaTi4mJxPxTJkbnl5eWSV0UkEmn16tVfG0coNQALD6eVmq4FNzQNGzZMsvDt27cDBgyQ+uC0tLQkZzPBM8vUfkcyZ5ZJTk7Go8okI5ccXV4H8Rw34uGDGIfDqX3DUltb+/Tp03Vs7fnz525ubrW7sOro6Pz9998y/ws+lx86dGjtp/BJcVBQkGQhPsevPXkN7uQmHsUlnllm/fr1ku2xTk5OkoMXRSJRWVmZt7e3ZK8TNTW1Xbt2SdZp4Mwyp06dkuz0izcVFRVVxx6TOaBeilAoDAgIkLpbQxCEg4PDx48fcR3c6RdfaUmpqKiYOHGieHyI5Ji81atXS+6cIUOG3LlzB8kaR1h7WgDxzDJXrlyRvJlqZmYmHt2I7du3T/Lep7a29q1bt/DnVVxcLK4WHx9va2sr/iBkziwjCZ+voP+O05V0/Pjx2v3IunbtKjXxjRSZ09yI3bt3TyQShYaG4vcuNZB89erVSGJMvXhmmY0bN0ru54EDB0oONxQIBFJngV27dsVzznXu3FlcTTyzjFTAeEARngVGKBTW7m6moaFx8OBBcX2ZM8ucOXNGqqeVm5ub1KwFeGYZqVfHP43Vq1fXsUvljxC1sN47ilVeXp6fn6+url67z1tubi6eg5HNZkt2bhaJRE+ePElKSlJRUXF0dDQxMeFwOEVFRTo6OuJZJTMzM3k8npmZmeTRs7i4uLi4WLIaQojH42VmZqqoqNSeGvHdu3cvXrwoLS3V0tIyMTGxtbWVvCD79OkTn88Xz/coxuVys7KymEym1DsSiUSJiYnx8fHV1dV6enp2dnYN7MGYn59fXl5OIpFkzkafnp6enJycm5tLo9FMTU3t7e3rmGhUrKKiIi4uDg9moNPplpaWtra2X2v2nDRpUkhIyKVLl/DAKUm19zz6d5fS6XSpY1xWVlZ1dbX40+Ryubm5uQwGQ1tbOzMz8/79+5WVlVZWVr1795bZlfzDhw/R0dHl5eX6+vqOjo5SE4SWlZXl5uZqaWmJz58KCgo4HI6hoaFUP7qqqqro6Oi0tDQlJSUjI6N+/frV7uYnKTs7u6qqSk9Pr3Z/PCkVFRXR0dEfP36kUCh6enrdu3eX/IjLysoKCgpwj5uvbQF/5/H4a3Fhamrqw4cPBQKBtbW1g4NDdXV1VlaWmpqauBvhly9fSkpKakcoEonS09OpVKqRkVFJSUlkZGRhYaGJicmgQYNqnwnl5OQ8ffo0Pz/f2NjY2dmZTqfjz8vU1FRqnsyampq8vDwej4c/O4RQWloaiUSSnM5QvEPwNaW+vv7XdnJNTc3Tp09TU1MFAoG+vn7nzp3rmIMXKyoqqt0KLWZkZESn0/GnpqWlJXV2IhAI8LAWExMTCoUSERHh7u4+a9asQ4cOib+EXbt27dOnT+0v4du3b+Pi4rhcroWFRb9+/UgkUnp6upKSknhWYfwRa2pqSn05cTD4FXHJ58+f4+Pj8/LyKBQKm812cHCQ/Oxqf5kxLpf78OHD9PR0Op1uZ2dX++7ghw8fKBSKeNJHDB9j6/7iyR8kQtCaZGdnm5mZ4Xmif4AFbgCQJJkIFR1L2wKHEtA6fPjwgcvlLl68uKamZvHixZAFAQBNBY4moHUQt1C5ubk1+fBBAEBbBokQtA5bt26lUql4HUGZCwQC0NpZWFhs3boVzwMH5AnuEQIAAGjT4MwaAABAmwaJEAAAQJsGiRAAAECbBokQAABAmwaJEAAAQJsGiRAAAECb1goSYURERMPXCcMzqDZrPEAm2O2KInNxVyAHsOcVpcmPNq0gEd65c+fhw4cNrMzn8+tY/Q40Hy6XC8cFhWiS1fLAN4A9rxANXFazUVpBIgQAAACaDyRCAAAAbRokQgAAAG1aM066nZ2d/e7du/bt20stzChWXFx88+ZNEok0bNgwyRWrAQAAALlpritCd3f3jh07jhw58sKFCzIrZGZmWllZXbp0KTQ01NraOj8//ztfMScnZ9aUib2sOvex7jJpzKjU1NTv3CAAAIC2oLkS4ZEjR6x50mcAACAASURBVEpKSgYMGPC1Cn/99ZeLi8vZs2fDwsLs7Oz27t37PS+Xmpo6uH9vx4qUy0M7XB3WcaxSntfgQbHPnn3PNgEAALQFzZUIjY2NyWRyHRWuX7/+008/4b/HjBlz7dq173m5VYsXrLPVdzLRIhBCCNnrM/cMNF06z+97tgkAAKAtUNjCvFlZWYaGhvhvQ0PD7Ozsr9UsLCyMj48XCAT4obKy8qxZs+h0umSd18lJ9h6dJEvYGiolXzKqqqrqzsegqfB4PAqFAkvmyh+Px+PxeIqOoi2CPa8QfD4fH20aWJ9MJtd7XFJYIhQKhQSBr98QmUzm8/lfq1lZWVlZWVlUVIQfkkikyspKKpVa70uQEIKvqdwIBAKBQADzy8gf3vOKjqItgj2vEIJ/NbB+Q87OFZYI9fX1xR1k8vLyDAwMvlbT2NjY2tp62bJldWyNbWr2trCsk7a6uKSAW01RVVdXV6/jf4EmJBAIaDQaXBHKH4/Ho9Foio6iLfq2Pb9jx47Tp083Rzw/PDMzs3PnzvH5fDKZ3LTfebkmwpqamtLSUm1tbYSQk5NTeHj40KFDEULh4eHOzs7fs+V123fO9PIM6G2Ec2FmaaXv3fR2s3Zx+UhFYbkeAACkxcfHe3p64kMfaLiioqLJkyc308abK0scO3bsyZMnycnJHA7n7du3Pj4+Dg4Od+7cmThxYnFxMUJo4cKFffv2VVFR4fF458+ff/78+fe8XI8ePY5evLrcf25uzFsSQgwt7d3HQ/7h2Q6/WnZ6iLoevf4tAACAfJiamtra2io6ilbm+4fY1aG5EqGpqWlNTY34w9bU1EQIWVtb79mzB5d06dIlNjY2NDSURCK9fPnS1NT0O1/R2tr6xr2H1dXVfD5fVVUVIeSI0Pa4GpfznJPDNHr8rz8pAAAA8B/NlQidnJycnJykCg0NDSdNmiR+aGFhsXLlyqZ9XRKJJO4mSiC0tAfVXIM8+XJ+gIuOBxtuXwEAAJD2499AG2tONlLT/flWSXoPlXnd6u9rCgAAoE1pExdJvXWJm6M1Tryumnu/kg9L5gEAAJDQJhIhQshMnYgaw8ipEPx0s7ykRtHRAAAAaDHaSiJECKkrobND1MzVCY+wLxnlMO4bAAAUhsfjCYVChJBAIKhjQhX5aEOJECFEIaHAgarjujCGhnFiCyAXAgBAk/H391+3bl0DK7u4uOApprdv3z537tzmjKt+P35nmdrmdVOyYGpMvMHZ0I/h3QFmIgUAAIUZM2ZMRUWFYmNoi4kQITTEmHRhBPPna4UpxWqr7GG8PQCgjeLxeIcPH3769KmysnL//v2nTp168OBBe3v7nj174gr79+/v06ePqalpYGDg+PHj9+7dSxDEokWLVFVVAwMDv3z5MmvWLHt7e1xZKBTu27cvNjbWwcHB19cXz7lYXl6+b9++t2/fdurUae7cuXict1h+fn5xcXGPHj0QQmVlZQcOHHj9+rW2tvb06dO7dOkin53QtppGJVlrEtfGakd84vverayBrqQAgDZp69atly5dmjBhwogRI3JzcxFCXC53y5Yt+Nnc3NylS5caGhqWlJRs3bp1xYoVLi4uCCEPD4+ZM2d269atc+fO7u7uHA4H1z948GBOTs5PP/10+vTpBQsWIIQEAoGzs3NycvKYMWMSExOdnZ3xrUGxR48e4TbSiooKOzu7lJQULy+vzp07v3//Xm47oY1eEWIGKsTNUeozIrnDrpSdGaKuDRMXAwDk7o/ngjNpcuqy4KRPHBn4n/tB796969Wrl7u7O4lEGjFiBEJo+vTp69aty8nJ0dfXDw4OHjVqlI6OTkZGRk1Nzd69e42MjEaMGKGqqrply5aRI0cihE6ePPns2TN3d3eEUI8ePTZs2IAQ6t69e4cOHTZu3Pjo0aMvX74cPXqUTCYPGTKkQ4cOt2/fHjJkSO3Yjh49amBgcOjQIXnsiP9q04kQIaRKQWeGqGyMrXINKwkdxrDUgJnYAABytcSa7GMpp0TIUJI+xC1cuHDixIlHjhwZMmTI3Llze/bsyWQyx4wZc/z48WXLlgUHBwcHB+OaqqqqRkZGCCElJSUGg9GxY0dcrq2tLV4mz8bGBv9hbGysoaGRnp6ekpJiY2ODJ/yiUCg2Njbv3r2TmQhfv37dp0+fZnjT9WvriRAhRCC0yp5mqEaacCFr51BDJ33IhQAA+WFSEZOqsMNOz5493759++bNmzNnzjg5OaWnp2tpaf3yyy/e3t7du3dXUlIaMGAArim1yJrMNddKSkrwHwKBoKysTENDg8lkihtOEULFxcUsFktmJCwW68uXL03zrhqp7d4jlDKjM3XbYMOfI8tPvFPwiBYAAJCbt2/fikSizp07L126FP2byezt7Vks1ty5c319fcUrqDdEWFgYXibi2LFj5ubmxsbGTk5OsbGxCQkJCKGXL1++ePGi9jTU2KhRo86dO5eSkoIQEolE8kyKcEX4/1wNiYiRat43SuIK6Tv6KpPgyhAA8KPbtm3b7du3TUxMPn/+PHfuXHNzc1w+Z86cefPmTZ06tVFbGzhwoKurK4VCKSgouHDhAolEMjExOXjw4JAhQ9q1a5eXlxcUFGRiYoIQolAo+JqSTCbjhlMHB4eAgIABAwYYGBgUFxf//vvvs2bNauq3KxshErX0ceXLly9nsVh1r1AvxuPx8FLp3/xyX6rR1BvFLBXKIRd1WNS34SoqKuh0OqxQL39lZWXq6uqKjqIt+rY9P2XKlMGDBzffGrPfgMvl5ufn6+npSR45V61a9enTp+PHjzd2a3w+Pzc318DAQPJoIBQKc3Nz9fT06j1ECIXCrKwsLS0tFRUVyfL8/Pxu3brl5eXx+Xwej0enN+WwNzhsSdNSRhdHspQplOFXy/IqFR0NAAA0MxUVFVNTU3EWTE9PX7ly5b59+xp4+SGFQqEYGRnVvqEolRq/hkQiGRsbS2XB5gaJUAZlMjrsQh9qqux8gRP/paVfMQMAQNPS0tKKiIiQ23h2hYNEKBte1Hd9X/XJV/KvZcB4ewBAi5CXl7dm9eo+dj3NjY1sra2WLF708ePHpn0JMzOzBQsWiGeWaQ4cDqdF3ZWDRFiXsebkw8N1Fz0o3ZMESzcBABTs/v37XSw73g85PJbF22SvP82A9ObG2a6dO58/f17RoTWOnp5eXl6eoqP4f9AbpB69dYlbnhrjbpS9KRLsGkCnwJkDAEARPn/+PGL4sOUOplOtjcWFYzoZ3ErLmzp5cocOHcSD2Vu+q1evampqKjqK/wfH9fpJLupbylN0NACANmnH9u39jViSWRAb0r7dhK4GG9au/rbNBgUFPXv2bM2aNRMmTNi/fz9usXzz5s2BAwfEddauXYvnjgkODo6Ojl6zZs348eNPnDghEokOHDjg7e29fft2gUCAK5eWlm7cuHHSpEkrV64UzzizdevW+Pj4hQsXzp49GyF09+7d6upq/NTNmzfnzJkzadKkHTt2fNtb+H6QCBtEvKjv8IuwqC8AQAHCb1zz7KAj8ylPi3YRkXe+bbNnzpyZOnWqiYnJxIkT//zzz1OnTiGEUlNT8R/Yrl278ED7c+fOTZs2jc1mjxs3btGiRZ6ensXFxT///PPJkyf379+PEKqqqurdu3dlZSVeesLR0REvurt///5p06bZ2NiMHj0aIbRz50689NLff/89b968QYMGzZo1q7y8/NvewveDptGGwov6/p1EHRrGOT6Eaa8D4+0BAE1AWMXlF2TVWy0vP1/fVlfmU4bqtLIKLud9okp9o+somu1IqgypwqlTp/r4+CCE3r17FxUVVfcYx8mTJ8+YMQMhdOfOnezs7BUrViCEMjMzb9269euvv546dYrNZm/atAkhNHDgwIiIiHv37rm6uiKEFi1aJDU8XyQSrV69+tq1a/369UMIfW3GGTmARNg487opddDQmHCds6k/Yzws6gsA+G4kmgrV2KLeahoMjZJq2fdmiqt4ykpKGhbdGjUdmpiFxf9eXUtLq7i4uO7KHTp0wH8wmUzxqHYWi4UnFH3z5k1cXJydnR0uz8vLy87Oxn/XHoyRm5tbUlIiXstQgSARNtpQE9LFkcxp1wrfw6K+AAB56TdwYNSbJ05s7dpPRX0s7G1v921ZECFU+z9SqdSamv91lefz+ZIryIsrEwRRe4C8pqbm4MGDZc5HQ6FIpxsWi0UikQoLCw0MDL4t8qYC9wi/hbUmcX2s9u1P/DmwqC8AQC7mL1x05lX28xyOVHlaccW+uE8Lly1vwtfq2LHjmzdv8MXcgQMHeLyG9hL09PS8evXqixcv8MPU1FTxehS10Wi0ESNGrF27Fne0EV87yh8kwm9koELcGqVeVC0afrWssErR0QAAfnS2trYB27dPvBy3MyYtrbiiki/ILK0MissYdf6Fr99cvEbuN1BTU6NSqfhvZWVlVVVVhJCZmZmfn1+XLl3at2/P4XBMTU3xxZ9kZRqNJm4apVKpampqCKEuXbocO3ZswoQJlpaWbDbby8sLX01qaGjgmbUxJpOJN3jgwIGcnBxjY+POnTu7ubl921v4fjDp9ncRIbQxtupCajUs6guTbisKTLqtKAqZdPv+/fsb1qx68DiaxxeQSSSHnj2Wr1r9zVmwblVVVQKBAKfGxiorK1NSUmrgobimpqayslJDQ6OOOs066TbcI/wueFFfAzXShAtZgUMNHWFRXwBAc3J0dHS896CqqqqoqIjFYjVtPpDyPVcUjTpFoFKp4gtNhYDz9ybg05m6bbDh1MiKf2BRXwBA86PRaAYGBs2aBdsUSIRNw9WQiBypGviyfMHjamFLb2wGAADw/yARNhkLDSJiDPN9Pnfq7bJKuDIEAIBWAhJhU8KL+lIplGGwqC8AALQSkAibmDIZHXGhD/vvor5VVVWfPn0SCmHIIQAAtDjQa7TpEQgt6UE1ZZAnX8lf1Il7ee2snI9pOirKGZyKET95rd64WW6jOwAAANQLEmFz8WpP1iTokwb23t+vnf1QS4SQUCQ6Ghc5Y+KHkIuXFB0dAEAx6HT6nDlz/P39FR1IKyMSieoeaPg9IBE2o1dXDvtZqtvrM/FDEkH4dDP4+U5yamqqeOJaAECbsmfPnoCAAEVH0SopKys305YhETajxNiYn9qpSRXaa6skJiZCIgSgbVL44HFQG3SWaUZ0FVUuTyBVWCEQwTBYAABoOSARNqMho8ZcziiVLKkWCCM+lfTt21dRIQEAAJACibAZDRs+vFq/w9qYT5mllXyhKD63ZEp4itDttw2JFB6MpAAAgJYBEmEzIggi9PJV13krAz5Txt/NPCc02Hc27MmeRSmlopHXYMQ9AAC0CNBZptl5T5zoPXGiZMml4Wp/xtW4XOAED9Zw0IEFKwAAQJHgilAB8Ij7rQMYk25wgt82dOlnAAAAzQESocJ4sEk3PJkHErlz71fWwC1DAABQEEiEimShQUSN1uBUi1zCyj6Vw+pNAACgAJAIFUxNCZ10VxnXXmn0ueyobMiFAAAgb5AIFY9AaJ4NbecQg9lRFdviahQdDgAAtC2QCFsKR33i7mjVGx+qfo7kcmFdXwAAkBdIhC2IsSpxy5NBpxCuYSUfyqCZFAAA5AESYctCI6P9TvQZVioe5/KvfJSepxQAAECTgwH1LdHMzkqdNXV9Ikqe5tE3OiiTYMw9AAA0G7gibKH6tSMejmXG59WMu1XOgQ40AADQbCARtlw6NHTFQ92SRRl0gZNcDLcMAQCgWUAibNEoJLSpN22JndroK5zzH+CWIQAAND24R9gKTLCgdNZkzrpR+DRLdWs/FQqcvQAAQNOBY2rrYKNFhI/T+VBSM+oKB9ZvAgCAJgSJsNXQVEYXPJhObBWXC5xnBXDLEAAAmgYkwtZEcv2mo7B+EwAANAVIhK2PB5t03ZO5H9ZvAgCApgCJsFXq+O/6Ta6wfhMAAHwfSIStFV6/aaSp0uizWbB+EwAAfDNIhK0YgdBiW9qOoYazoriwfhMAAHwbSIStnpM+cW+0ynVYvwkAAL4JJMIfgbEqEe7JoJFh/SYAAGg0SIQ/CBoZHXCmz7BS8byQH54JfUkBAKChIBH+UGZ2Vto/VPe3+6W/x1QL4coQAAAaABLhjwbWbwIAgEaBRPgDEq/f5HKB8wrWbwIAgDpBIvwx4fWbFtmqecL6TQAAUCdYhulHNrEjpYsW8+dbJdE5tG19aLB+EwAA1AaHxh+cjRYRNZb5sahq1BVOPqzfBAAAtUAi/PFpKqMLI5hObJVBsH4TAADUAk2jbQJev6mTJnnSDc4KB/UZnSkikejhw4fv3r5tp6fn6OiooaGh6BgBAEAx6kqEAoHg06dPZWVl1tbWcgsINJ8RbLKlJ3NyeOndhOz07RM6KPE6q5Pe8dCqhWWrt2z7yWucogMEAAAFkJ0IhULh2rVrAwMDy8vLDQ0NP3/+jBD67bffqqqqDh48KN8IQVPqqEFEejKsu/bdb6/RTZeBC2d1FUz5fYmVdXdLS0vFhgcAAPIn+x7hmjVrtm3b5ufnt3nzZnGhq6trSEhITQ0M0m7dUpPjejFF4iyIEFJVIv/SRftEEJziAADaIhmJkM/n7969e8uWLQEBAX379hWX9+jRo7y8PDMzU47hgaaXmZnJVpVuCTDVUElPS1FIPAAAoFgyEmF+fn5paengwYOlynF/iqKiInnEBZqNnp5edpX0EPusskoDIxOFxAMAAIolIxGqq6uTSKScnByp8uTkZISQvr5+Q7bL5/N37tzp4eHxyy+/fPz4sXYFoVAYFBQ0bty4cePGBQUFCYWwYIKc2NnZvS6p+cjhikv4QtG2+AKz4T4KjAoAABRFRmcZdXX1/v37r1+/vlevXgRB4MKSkpLly5d3797dyMioIdtds2ZNeHj4pk2b7ty54+Tk9O7dO2VlZckKf/7555EjRwIDAxFCCxYsKC4uXrp06Xe/HVA/Mpl8LPTC9PE/OepQu7NouVzeuY+lg2ct2l3YIe1x1dY+NCoMLgUAtCWye43u2rXL0dGxc+fOXbt2LS0tnT59enh4eHFxcUREREM2WlVVtX///lu3bjk4OAwePDg8PPzixYsTJkyQrHPv3r3Zs2cPGzYMIfTu3bvw8HBIhHJjbW0dHZ98+fLlV3EvDNhmlzw8jIyMllWhOXfL3cJKg93U2zMIRccIAAByIvvk38bG5vnz5wMHDnz58mVZWdmFCxfs7OweP37cv3//hmw0LS2Ny+Xa29vjh/369YuNjZWq4+TkFB4eXlpaWlpaevPmzUGDBn3P2wCNpaysPG7cuHVbAnznzMFX+do0dG6o2tiO9MEXOWdSYZ5uAEBb8dUB9RYWFqdOnfq2jebl5bFYLHGzqpaWVlpamlSdBQsWREVFMZlMgiBcXV0XLFjwta29e/cuMTExPDwcPyQI4vDhw9ra2jIr83g8gUDA4/G+LXLwsynqoUGd97DkRiple2+SCrmhU7JxuVw+n08iQbuqvJWXlys6hDYK9rxC8Pl8Ho/H5/MbWJ9GoykpKdVdR3YinDVr1uLFi6WGV79//37lypVnz56t94VVVVWrq6vFDysrK9XU1KTq/PLLL2pqahwOByE0c+ZMX1/f4OBgmVszMTHR1tYeP348fkij0dhs9tcOuDgR0mi0eoMEX9NfHT0cp/rbg8rh4TVH3BjdNRvUTEoikeh0OiRChVBXV1d0CG0U7Hn5w4mQTqc34TZlJ8KrV69Onz5dqvDLly/nzp1ryEaNjY1LSkqKi4tZLBZC6OPHj927d5eqc+XKlTNnzjAYDISQn5+fl5fX17ZGp9MNDAxcXV0b8tKgSagpoSMu9PNpSmOvcvx7qs3rVs/5FAAAtF6NOH/PysrS0tJqSE0DA4M+ffrgK7zPnz9HRETgPJeVlSW+7GOz2U+ePMF/R0dHm5qaNipuIAdj21MixjDDUiq9b1UUVddfHwAAWqP/XBFev379+PHjCKGSkpJVq1ZJpr3KysrHjx/369evgdsNDAwcNWrUxYsXU1JS/P39O3XqhBB68+bNvHnzZsyYgRD666+/xo8ff/XqVYTQ58+fQ0NDm+otgSZkqk6EezK2vqhyPMfZ56oxQA96kwIAfjT/SYQlJSUfPnxACAkEgqysrJKSEvFTKioqEydOXLFiRQO3a29v/+HDh9evX+vp6RkYGOBCJyenrKws/He/fv3S09NTUlJEIlHHjh3rvZkJFEWJhFbZ03rrU+eF54/twlhhRydDNgQA/EAIkUhGt8BevXrt37+/Z8+e8g+otuXLl7NYrGXLljWkMnSWaT55lcgvspgnEO13YxmqSifDiooK6CyjEGVlZdBlQyFgzytEc3SWkX3YiomJaSFZELQc7ejo/AiWm6nK6NDP1zNgSjwAwA+iroV5a2pqMjIySktLJQttbW2bOSTQchEIzbOh9TI0mnur8K6pyqa+qspkRccEAADfR3Yi5HA4vr6+Fy5cEAikZxiR2ZQK2hQHHSJyvM5v90qHXvxy0F3TQgPuGQIAWjHZTaN+fn63b9/euXOnm5vbxIkTT548OWHCBAaDcfjwYTnHB1omDSo65s6Ybq0x7BLn5PuGTvEAAAAtkIxEKBKJrly5smPHDn9/f0NDQ1NT00mTJoWEhCxduvTAgQPyDxG0WFMsKZdHMfckVPjc4Vbw4boQANAqyV6Yt6KiAq9NT6VSxfPpzZ49+/nz53h8BQBYFyZxd7QGU5kYcq0q7gs0mwMAWh8ZiZDBYBAEgfOfgYFBSkoKLsd3ByUHFwKAEKJT0I7+9CW2tAk3SrfF1QghGwIAWhUZiZBOp1tYWMTHxyOEXFxcIiMjg4OD4+Li/P39VVRULCws5B4kaAVGGovCRzMiMqpHXyvLq1R0NAAA0GCye40uXLiwoKAAIdS/f/9x48b5+PgghJSUlPbs2VN7HQkAMLYacXOk+uaX1a6h+TvcdNwN4a4hAKAVkJ0IfX19xX+fPHly1apV6enp3bp1MzQ0lFdgoFWikNBqO+X+Bjq+dytGmFIC+tCUYKoZAEDL1qCjlKWl5ZAhQ/T19c+fP9/cAYEfwCADIvontfQSvvvlsvQyuGcIAGjRGpQIRSLR1atX7e3t61g1EABJOjR0cZja6PbKbhc4Z9Okp2UAAICWQzoR/v3339bW1ioqKp06dcJLIyUmJvbt23fkyJFFRUVBQUGKCBK0SgRC/tbUMx7MLTFlPncquTDsHgDQIv0nEZ47d87f3z8/P79v377l5eUTJ07cvXu3vb19VlZWUFDQ+/fvZ86cqahAQStlp03c92IKRMjpQklSETSTAgBanP90lgkJCbG0tHz27BmDwaiqqnJ1df3tt9/GjBnzzz//qKioKCpE0NoxlNAxV/o/75Q8r3Dm26rN6wZrTwIAWpD/XBGmp6d7eXkxGAyEEI1GmzRpEkJo9+7dkAXB95tiSbnuyTzzjjvxNre4WtHRAADAv/6TCDkcjqampvihpqYmhUKBIROgqXRiEndGa+irEI7nOdF50EwKAGgR6uk1ShAwJho0JRoZ7ehPX99Pfdotzvrn1TAfGwBA4aQH1P/xxx8bNmzAf9fU1PB4PMlrRIRQUVGRnEIDPy5PU7KtDnNmZPnI7JogV3V9aHoHACjOfxLh8OHD8cxqADQ3Y1Xixkj1TS+qXc4W7hikOdQEZqABACjGfxLh3r17FRUHaIPIBFptpzzQkOp7pyzCjLq1D42ChGdDzzy5F0WmUAa6Dh7l6QmN8wCA5gan4UDBnPSJx2MZn0r5zv9k9LW3e7xvs1NxUp+8lze2r3Qf2E+8HCYAADQTSIRA8bRp6NxQNaXzy2YYEMtsjewNWH2MNFc7GA9W5a7/Y4WiowMA/OAgEYIWgUCoMDl6WHsdyUIvy3a3b95QVEgAgDYCEiFoEYRCIZUsfTuQTBCEECbsBgA0L0iEoEUgkUgCErlGIJQsLKvmU+kwtAIA0LwgEYKWYuqMWQHPM4Wi/42x5wtFK5584vSd87wQRt0DAJqR7BXqExISCIKwtrZGCFVXVwcEBDx79szOzu7333+nUqnyjRC0FQuXLV9bwvnpfGhffYYQoeic0gnTZ032njvhOmecJX2NA40Kp20AgGYgOxGOHTv2l19+wYlw48aNGzdu7NGjx7Zt2z5//nz48GH5RgjaCoIg1m0J+HXh4ri4ODKZvL5nTxaLhRAaoM/yv1c+8ELJ/kGMHlowrBAA0MRknGNXVFSkpqY6OjoihIRC4eHDh+fOnfvy5cuzZ8+eOHGirKxM7kGCNkRHR8fd3d3FxQVnQYRQOzoKHaq2uKfquGuc32OqecK6NwAAAI0jIxGWlJQghLS1tRFCCQkJubm53t7eCCFXV1cej5eeni7nEAFACI1tT3ngxXr/pcb9UslbDtw1BAA0GRmJUFtbm0Qi4YR34cIFNTU1BwcHhBCXy0WwHgVQHH0VdG6Y+sROqh6XONvjagSQDQEATUFGIqRSqS4uLr/++uvGjRsPHDgwatQo3EEmOTmZRCIZGxvLPUgA/odAaFYXSuRPzIcZ5cMvFr0vgWQIAPhesvvhHTp0SEdHJyAgwMrKKiAgABceP37cysqKyWTKMTwAZDBVJy57av7UWW1oGGd7PA8WNQQAfA/ZvUZNTU3v3r0rVRgYGEgiQQd20CIQCM3qQnUxVvK7UxaRUbXfWa09AxrtAQDfokGJjcPhPH36FCGkpqbWzPEA0Ajm6sSNUQwPM+XBFzmH3/DgyhAA8A1kJ8LZs2dv2bIF//3s2TMzM7M+ffoYGhpGRETIMTYA6kcikL819fIo5olXlaOvl32ugGwIAGgcGYlQIBCcPHmye/fu+OHSpUt1dXWvXLkydOhQPz8/oRCGcYEWpyuLiBrD6K+vNDg0P+g1X9HhAABaExn3CIuKiiorKy0sLPDfjx49OnLkyIgRI2xsbExMTDIzM9lsttzjBKAes+v4KAAAIABJREFUFBJa3JM22FTZ707JzY+UPU6qBipw1xAAUD8ZV4S4Rwy+8gsPDxcIBK6urgihdu3aIYQKCgrkGyEAjdBNk4j6idlHT2nQ+ZKLH2AJJwBA/WQkQi0tLV1d3ZCQEKFQGBwc3K1bN0NDQ4TQp0+f8LPyjhGAxlAioSU9lY8P0dj8rGzy7YrCKkUHBABo2WR3llm1atX69etpNFpkZOTixYtxYXh4OIvFgnZR0Cr00iUeeTHZDLJLaN7lj3BpCAD4KtnjCH/99dfu3bu/ePHC1tZ2wIABuJBOp2/duhWGEoLWgkZGm3rThpsp/xpVcu49dbejiqayomMCALQ8shMhQmjAgAHiFIjNmDGj+eMBoIn1bUc89mJufF7pdLZws6OWhwn0oAEA/MdXE+GXL19Onjz5+vVrgiAOHDiAELp79666urqdnZ0cwwOgCdApaFNvurMxzf9e+U0jyta+dHUlRccEAGgxZCfCV69eubq6cjgcAwOD6upqXPjgwYOLFy8mJCTIMTwAmoyrIfF0nPqK6MpBofnbXHSc9eHSEACAUB0zy7DZ7PT09CNHjogLPT09ExMTCwsL5RUbAE2MoYT2OtI3OOnMi+TMu1deASPvAQBfW5j3yZMnW7du1dPTk1x90MzMDCGUlZUlv+gAaAZDjIhH41kiROoXynmQC1OyAdDWyUiEXC5XJBLhFeollZaWyiUkAJodk4r2OKlsGsDwjShZ9KiyGoZXANCGyUiEurq6LBYrMjIS/Xc9+rCwMBqN1rFjR/lFB0BzGm5CeuDFzOGKHM9znhfCpSEAbZSMzjJkMtnPz2/VqlXKysq6uroIodzc3NDQ0D/++GPWrFl0Ol3uQQLQXHRoKMRd5fwH5elX80d1Ul/dS4UKA2UBaGNk9xpdu3Ztdna2n58ffqivr48QGjlypHi1egB+JGPNyQP02/nfKx94oWT/IEYPLehQCkAbIjsRUiiU4ODgBQsWREZG5uXlMRgMJyenvn37yjk4AOSmHR2FDlU7n8Yfd43j1Ullnb2yElwaAtA2fHVAPUKoW7du3bp1k1soACjc2PaUfvqseffK3C9V7R/E6MSES0MAfnyyE2FISAifz586dapk4aVLl/Lz82fPni2XwABQDH0VdG6Y+uHXfI9LnNndVRfZUMkESkhIuH4pLD8nq5tdr4mTJsGdcgB+JLJbfxYvXszj8aQK6XT6ggULuFxu80cFgCIRCM3qQon8ifkoo3z4xSK/X+cvnDRGO/bywC+J6ad29bWxSkpKUnSMAIAmIyMRFhUV5eTk2NvbS5Xb2dlxudz09HS5BAaAgpmqE5c9NTsVPEy9e/24q8WwDu0cDFlzuhvu7mPoM2GcSATDLQD4QchIhPhasKpKej1TPOmoeOpRAH54BELFd44v6K4jWWjGVDGiobdv3yoqKgBA05KRCHV0dHR0dM6dOydVfvbsWSUlpQ4dOsglMABahMKCfD016WUMdWmU/Px8hcQDAGhyMjrLkEikefPmrV27VigUTp8+3djYGA+o37Jly4wZMxgMhvyjBEBRzDpYvP/ySkflP7nwTXGVubm5okICADQt2b1Gf//998+fPwcGBu7cuVNc6OXlFRgYKK/AAGgRZvsv8B07ons7hhr1fz+W2+mFKRT9rR+0t+ghBqxrCEDrJzsRksnkgwcPLliw4M6dOwUFBZqamo6Ojt27d5dzcAAonLW19dItO8YvW9JXT02LSrz8UqWsz350K3RvGhoYkreoj/aUjmRFxwgA+C51Dajv1KlTp06d5BYKAC3T6J/Gug8ZGhMT8+XLl8nduuEfxQ599LADbdG9ksup5B0D1dhqMPQegNZKdiIMCgri8XjiuUax06dPZ2dnL1q0SC6BAdCCqKqqDho0SKpwgB7xeBwzMKFmcGi+Tw/mAhtlCszKBkArJPuHu3LlShUVFalCXV3dlStXVlRUNH9UALQOSiS0tAf1upfuo+wax/OcmHwYXAhA6yN7QH1+fr6tra1Uec+ePauqqj5+/CiPuABoPdoziMse6gvs1Kfc5My9X1kqPSkTAKBFk5EI+Xw+Qqj2lR8ugQH1AMg01pz8bAKLRka9znD+eQ9r3gPQasgeUK+np3f69Gmp8pCQECqVCivUA/A1TCra0Z8e5KaxN67sp+tlGeXQUgpAKyCjswxBEPPnz1+xYkVNTc306dONjIxyc3PPnj0bGBjo6+urpqYm/ygBaEX66xEPvZj7k2tcznOmWqks76kMq94D0JLJ7jW6ZMmS3Nzcv//++8CBA7iEIIipU6du375djrEB0FopkZC/NdXDTGnhg3Kn85U7nTR668L4CgBaKNmJkEQiBQYGzp8///79+zk5OTo6OgMGDLCwsJBzcAC0aubqxKXh6uc/CGZfz+9lrBowQE1TetZSAIDi1TWgns1mS63NCwBorLHmZFejdhueVfY7y/m9lzrMRANASyM7EWZkZAgEsru9wVzDADQW7kQzxoK2+F7JpRTyjoFqpurQUgpASyE7Efbq1SsvL0/mU7AeKQDfpl874oEXc39yjesF6EQDQAvy1SnWJBfm5XK59+/fv3jx4qZNm+QVGAA/IHEnmkUPyp3OV+5w0ugDnWgAUDTZiXDEiBFSJdOmTbO0tAwNDZ07d27zRwXAj8xcnQgbrn41QzAzvKS3AXVbfxUt6EQDgOI0omlm4sSJDx8+TEtLa75oAGg7RrDJj8czmcpEv1CYiQYARWpEIuRwOAghySbTevF49c+62JA6APyQcCeaU8M0jscXjbxU9L4EbsADoACyE2FGRsYHCW/fvr169eq0adOYTGYDp1hLTU21t7fX1NQ0NDS8du2azDoXLlxo3769urq6lpbW5cuXv/1NANCa2WoTt8bquJqrDQvjrH9eXSNUdEAAtDGN6DVqZGR06tQpJSWlhmx31qxZbm5uMTExkZGRXl5emZmZDAZDssKDBw/mzJkTGhrq5OTE4XDKy8u/7Q0A8AOgkJC/NXWEmdKiB+WO5yt3OGr0bQedaACQkwb1GqVSqcbGxl27dlVWbtA9/Y8fPz5+/PjixYskEsnd3b1Tp04XLlyYPn26ZJ3t27f7+/vjxU41NTU1NTW/410A8CMwUycuDle/miGYHVHSSx860QAgJw3tNdooqamp+vr6LBYLP+zatWtqaqpUnaSkJFtbW1tb27y8PHd398DAQA0NDZlbEwqFlZWVxcXF+CGJRPpaTQB+ACPY5IH6zPXPKvuFcv7oDTPRANDs6ppiDXv79m18fLy6urqzs3PtZetl4nA4qqqq4ofq6upFRUVSdfCKFuHh4QwGw8vLa+nSpQcPHpS5tcTExAcPHuzatet/EVMoMTExurq6MivzeDyBQICXVATyxOVyBQIBiQRDxJsAGaF1Nmi0idKKmNJTr4gtvZUs1L/aj6aiooIgoB1VAWDPKwSfz8fH+QbWp9FoFEo9me4/TwcHBz948CA4OFh8OFu1atXmzZuFQiFCyMjIKDIy0tLSst4X1tbWLi0tFT8sLi6uPTGbtrb2zJkzjY2NEUKLFi2aOXPm17ZmY2Pj7Oy8bNmyel8X/ZsIaTRaQyqDJkQQBJ1Oh0TYhPqrobtGqvuSa7zCK6ZaqSzroaws6+JQJBLB4mgKAXteIXAipNPpTbjN/xy2Dh48KBQKxceye/fubdq0qXv37idPnty+fTuHw2ngaHpLS8v8/Pzc3Fz8MD4+vlOnTlJ1unbtivMrQkgoFJLJ0P4DgDTciea+FzOloNLxTEFUNoyvAKDp/X8iFIlECQkJbm5u4pJTp06RyeTLly9PmjRp8eLF27dvj4qKqqioqHej+vr6w4YN+/333wsKCoKCgvLy8jw9PRFCjx49mjx5Mq7j5+d38ODBN2/eZGdnb926dcyYMU391gD4QRiqEv8MZf7RX9M/qsTnDrdQYihvRUXF69ev8RhfAMC3+f+m0ZKSkurqajabLS65c+dOr169cOslQmjQoEEikSgzM7P25V1thw4dmjdvnq2tLZvNvnbtGm6rFAgE1dXVuMKoUaMyMjLGjh0rEAhGjhy5bt26pnxbAPxwcCeajTHlLmfyFvfRGq5btnjuLwnPnnTQVM0qq2IZsvccOSb5+wUANND/J0JVVVUKhSLu1ZKdnZ2eni55oYZHEFZWVjZku7q6uqGhoVKFjo6Ojo6O4of+/v7+/v7fHDoAbY0GFW0foDahs+qC/2vvTgOauPY2gJ8hCZCQQCACYVWR4oosggii4hUFN9wAF6pVVGxd6lVbbW1t69LWVu3q1VqtV1Cr1bcuFTcWFbEVUVFwX7iKCiUIhARIgCTM+2HaSCMurYYk5Pl9Iicn4Z9JmIeTOXPmhOz9Dwct9mpcNqwzc9fZkqpRUZGn8vKfc0YbAGg9+mqUw+H4+Phs2bKFOXS3c+dOQkh0dLS2w61btwghbm5uLV4kADwS2IZaIb4aYFUztIOjtjHYVRjlYr3rp50GLAzARP1l1ujChQsnT54cGBjo5uaWlpbm6+sbERGhvffw4cOenp5POm8BAFrMjWtXQhx055cFirg5586SKYkGKQnAdP1l1uhrr722Zs0auVx+5syZgQMH7tmzR3v6hUKh2Lt3LzPnBQAMy4bPr1HrnsEmq1fxsdYEwN+ne5rh/Pnz58+f/3g/Ho939+7dlqgIAJ6lf//+q5e8M83XhcN69L/sDzflXjHDZA3EztKApQGYHpz+DGB6xGLxtLnzX0u/dbZEWl2vvvKwetaJwh6R0S6dAoN2SL+9pNLghEOA54YgBDBJb8yZ++1P+45Ye79+rmKHSvzvLzas/c9/Vvfh7RomPFio7L+7Kut3hCHAc3n2WqMAYJz8/Pw2pGyvrq4WCATaxgARdWSk7YEizZvHZD4OrM/C+V4CrIcJ8DQYEQK0QsPbss6OF/Z1sxq6q+yt7Fq5ytAFARgxBCFA62RpQeZ0t8wc71SnoUJ2Vm28qsaBQ4BmIQgBWjNXHrU2grdtsN3um4p//V9VdinCEEDXE4Pw/PnzkyZN6tGjR/fu3ZmWzZs3P75qGgAYvx5tqLSRtm/1FMzKlMUerrlbjTgEeKT5IDx8+HBoaOjZs2ednJy0q48qlcpFixbRNP6EAEzS8LasnLHCELHlwD1V7+XUVePAIQAh5ElBOHfu3DFjxly6dKnp5XAjIyOLiop+//33lqoNAF4yHpu8HWB5IlZYWtvYc2fVxqvqRvxnC2avmSB8+PDhrVu3FixYwGazKerRxGt3d3dCCIIQwNS52VA/DOClRNvtulHzr72y3yQIQzBrzQQh8+Wn9jr1WkwE4iIvAK1DsCOVNko4258/I132alptUQ3iEMxUM0Ho5OTUtm3bHTt2EEKajgg3bNggEol8fHxarjoA0CeKkFgv1plxQh8Hdv/dVcvP1inVhq4JoMU1v7LMBx98MG3aNKlU6uXlpVKpUlNTd+3atW3bttWrV7NYuhd/AQCTxmOTD4KsEjtbfpSjCNpR9U6I4FUfFlajAfPRfBAmJiYqlcolS5ZIpVJCyPDhw7lc7tKlS+fNm9ey5QFAC3G3oTYNsDlTRi8+Jdt8mfo03LaXE9IQzMIT1xqdNWtWYmLiuXPnSktL7ezsQkJC7HCpM4DWLsSJSh8l3H5LlXSorKcHf0WYjZhr6JoA9Oxpi25zudw+ffq0WCkAYAwsKDLRhzPay/mLC8qwndLJvryFAVbWOCQCrVfzQXjy5MmGhoZm74qMjNRnPQBgFGzYZEkw97XO1stzaoN3KN7uaTvJB2EIrVPzQRgfHy+RSJq9CyvLAJgPTz61MZJ//Hf6vVPyndfIp31s/Rxw4BBam+aDMC0tTaV6tP5SdXV1VlbW+vXrv/7665YqDACMRX8X6lSs3fab6rgDVX3dLT8Os3HGgUNoRZoPQu1C21oRERGurq4rVqyIj49venIhAJgDC4pM7Mge3t5+VZ4ydKd0si9vUYCVFb4rhVbhb1yGaejQoZcvX75+/br+qgEAYya0JB/34h4dLbxVoerzU8Xu/2kMXRHAS/A3gvDevXukuaXXAMCsvGJHbY3ifxrhsOa8Yugv8oJKzBsA0/Zcs0ZVKlVhYeGaNWtcXV29vb1bqjYAMF4DXKl+YwRbbqjiUqsi21p/FMJ1tP7jLolEUlBQwOPx/Pz8+Hy+QcsEeLa/MWs0KCho/fr1WGINABhsCzKtM2eMl/3qC8qwn6TTu9vM7mrx/rw5v6UfCXERKNR0bqn83+++N2VakqErBXia55o1ymaz3d3dRSJRS1UFACbD3op83Is7qbP1ByelAe8tjKnN2T2kIzOhrk4tnv3VZ2JX98FDhhi4SoAna+aAX11dXU5OjkAg6PEnPz8/pCAAPEVHO2r7YFvqatocfzfttHJrNuvDnu7ffv6JISsDeJZmglAqlc6YMaOysrLlqwEA01VeXu5pZ23x19OrPGy5paWlhioJ4Hk0E4SOjo4ODg4lJSUtXw0AmC5bW1upQndpxpoGNcfKutn+AEaimSBks9lLliz56KOPiouLW74gADBRPB5P3Lb92d+rmjb+cFki6Riz4qyyWvWkxwEY2F8my9y+fdve3l4kEl25ckUikXh7e/fo0cPFxaXpUjK7du1q8SIBwDT8Z3Py6MGDIstq+4oFCrX6l3vVcnv39PUffnNZHfijdHp3m7ndLbEeDRibvwThgAEDXn/99XfffbeoqMjDw4MQUldXd+fOHQPVBgAmxtPT87cLBVuTt+w7eZxvbzt+yghmvui3/awud+d9nlsbtEPxZiA/sTObhYUawWg88fSJFq4DAFoHS0vLqdOTpk7XPXewmz2VEsU/XUYvPy3fkq/+d4gw1gtpCEYB66UBQMsJdaIOjbBb2tfh6wuKyD1VmSVYng0MD0EIAC0t0o3KHiN43V+wMEs2/ID8XDniEAxJ96vRpUuXrly58ikPkMlk+qwHAMwCRUicF2tkO+HO26o3DpeJhdyPewu646q/YAi6Qejt7d2xY0eDlAIA5oZjQSb6cMZ6O6fcUMUeqAoRc5aG2XgJEIfQonSDMCEh4d133zVIKQBgniwtyLTOnHHe9usvNwz8uSq6vfWSnlwx19BlgdnAMUIAMAp8Dnk7wDJ3vL3QioTtlL6XU1elu0wNgF4gCAHAiIisyMe9uFnxQlldY/AO6ecXGpRqQ9cErd1fgtDFxcXW1tZQpQAAMDxsqLURvNSRwqsSRfBWyecXGuo1hq4JWq+/HCPMyckxVB0AADo62lFbooWXKulVZ7EkDegRvhoFAKPm60ClRPE3DLTbc6u2787y3XcacdYhvFwIQgAwAWHO1OERdkv7ir46Xxu5p+oYlqSBlwdBCAAmQ7skzdtZsuEH5OexJA28DAhCADAlFhSJ82LljBXGdOC9elgWe6j6UiXiEF4IghAATA/Hgkzvwj4/XtjPw3rMgapX02r/V404hH8IQQgAporHJnN8OXkT7P0cOQN/rpqVpSxVGromMEEIQgAwbcySNGfGPVqSRoYlaeDvQBACQGvQxvrRkjRBWJIG/g4EIQC0HsySNAdGCC+VNfTYUfXNJXVDIyGENDQ0fPHZyoFhIaH+3d6Y8trdu3cNXCgYEwQhALQ2nYTU1ih+crRdTpGs93bJ2vOyfiHBsrQdX3Tnb+/j2ld+bfSAvlnHjxu6TDAWupdhAgBoHYIdqR+HiX6V0DPmvRPvQBJ9XZj2Ph4OHR1skma9fu7qDcNWCEYCI0IAaM16O1MOt9JifRybNjrZWLXhkAcPHhiqKjAqCEIAaOUa6uu5bN19nQ2HpVAoDFIPGBsEIQC0ct39A3JLqpq2qBvp3BL5KZWHBmfhA4IQAFq9t97/8LN8SaG0lrmpVGuWnL47KCEp5aa6966qrTc16kbDFggGhskyANDK+fj4/LB73/zXp6vkJTaW7N9r6mfOf2vGzFkURZ0qpT8/K199lp7anZ/UhW3NMnStYAgIQgBo/QICAo6fOVdTU1NTUyMWi7Xt4WIqfLjdqVL667zq7/Mbk7rzpnWx5GG/aGbwhgOAueDz+Xw+//H2cDEVPsQ2v5Jem1frf6H21a68ud2t7CxbvkAwDBwjBAAghBA/B2pjJH9vjPCeTO2/XfpeTl1lvaFrghaBIAQAeKSrPbVpgM2xWGG9ShO8Q7rglLJEgamlrRyCEABAV3sBtbqPzfFYISEkdGfV7BOK+7WIw1YLQQgA0DxPPrUmnHtugr2zjUX/3VVTMxU3ZYjDVghBCADwNI7WZEmwdV6CfScH9uC9VROP1lytQhy2KghCAIBns+WQtwMs8xPsg10sxxyQxR2uPl+J/WcrgTcSAOB58Tnkze6WFycIo9pZz8xqGLRPdqwEo0OTh/MIAQD+HisWmdaZM8qVfUjCeztLJrImc3rYDvfEuMJU4Z0DAPgnLC3IRB/W2XHC6X6CFb/J+//0cPedRgwPTRGCEADgn7OgSJwXK2eccH6o6NsLivBd0pSbGlzUwrQgCAEAXhRFyHBPi5Oj+Z/1Fe66XtPjx6pvLqnrNYYuC54PghAA4KUJF1OpMXZrB9hl31cE7aj65pJaqTZ0TfAsCEIAgJcsXEztHmK7dbDduZK67tuly87VyxoMXRM8GYIQAEAv/EVUShR/z3DhPZk6aId0+dk6KVbxNko4fQIAQI98HahNA2z+V81bd1ERtEM60tv6rUCuC++Pe0tLS3ft3Pm/61c6dO42dvx4JycngxZrpvQ4Irx+/fru3bsvXrz49G7Xrl27deuW/soAADA4LwG1uo/NsVghISR8l3TBKeWDWnrXjh+H9ulVf+iHPhUFitRNUWHBe3/+P0NXao70FYQbNmzo16/fL7/8Mnz48OXLlz+pW25urr+//8yZM/VUBgCA8WjLp9aEc0+PtRdakfCN199f9M7OqFfGd3ELcbNP6Oq2Y9AryxYuePjwoaHLNDt6CUKlUrl48eKff/5569atx48f//TTT8vKyh7v1tDQ8MYbb0yZMkUfNQAAGCcnLlkSzJ1tcWLiK0Ium6Vt51uyR7S1PZiaasDazJNegvDUqVM8Hi88PJwQ4u3t3a1btyNHjjzebfny5SNHjuzSpYs+agAAMGbK8mJXnu4sDWcuS1JSbJB6zJleJssUFxd7eHhob3p4eDx48ECnT35+/v79+8+ePbthw4anP1tlZeWNGze+++475iaXy42Li7Oysmq2s+ZPL1A+/BPMZqdprKjR0vCBN5QX3PLtvH2uZu+P+mvjZalaze1QU6/hYiLjE/zdnbyFhQVFUU/vo5eNrVKpWKxH4302m61SqZp2UKvV06dPX79+/ZPyrCm5XF5cXHzu3DnmJovFioqKEgqFT/rVGo2m6W+HlqFSqdhstoUFTshpaSqVSufvC1rGC2756MGDVy39YHg7pacdl2n5n7T2WGlt9/YRATtko705M7pwXHlPfw5zpFarmb3Nc/bncDjPTAS9BKGLi0vT471lZWUDBgxo2uHQoUP3799PSUlJSUm5fPlyUVHR7Nmz165d2+yztWvXLiAgYNGiRc/zq1kslkajsba2fpH64R9gNjuCsOWpVCp84A3iBbe8tbV18u49MyYldOFbtLexKKxtvKkgu/b/4uvrcltOf5ev/Nd+Zbib5ZsBvJ6OzxjQmBW1Ws1isV7uZ14vQdizZ8+7d+/eu3fP09Ozuro6Nzd33bp1hBCNRqNWq62srHx9fZcuXcp0lslkUqk0MDBQH5UAABitgMDA3y5eys3NvXPnTlSHDsHBwczYxduWWt2H90Ev3pZrDYlHZW25qsmBotHtLFgIRP3QSxA6OTklJibGxsZOnz59586dUVFRnTt3JoR8//33GzZsuHjxYvv27ZOSkpjOdXV1FRUViYmJ+qgEAMCYsdnssLCwsLCwx++y5ZA3u1vO9rU8eL/xqzzlR2eo1zpZJXVhCS1bvsxWTl8HZL/99tuUlJQLFy6MGTNm6tSpTGN4eLidnZ1Oz969ezs7O+upDAAAk2ZBkeGeFsM9bc6X099drA3Yrhr9ivWb/tZt+RgevjSU8U/ze+edd+zt7Z/zGCEzWQaHTFpebW0tl8vFMcKWV11dLRAIDF2FOTLIlv9dQTZdqdtyRRnoxJrhJ4h0M7s4ZCbLcLncl/ic2G0BAJgMFx5ZEmydn2A/qB1vcbas3/9JU25qVI2GLsvEIQgBAEwMn0Omd2HnjBUuCRUeuF3bbZt02bn6Clza4p9CEAIAmCQLikS6UbuH2P4yQihXanr8KJ2WWXtFauxHu4wQghAAwLR1tKNW9+HljrPvaM+OT5WNOFB14F4j8vD5IQgBAFoDJy55O9DqQoJwYlfBl7nyoB1V31xSK9SGLssUIAgBAFoPSwsS68U6Fiv8ur/d2RJlt61/XPvQ0HUZNQQhAEArFC6mtkYJMmKFXDaJ2F016WhNThnisHkIQgCAVstLQK3oxc1LsA92tUpKl0XuLk+51ajG6RZ/hSAEAGjlbDlkji/n4gTh3BCHXTcUPXZUfX6hQYrTLf6EIAQAMAvMam2pw/j/jbK7VdEQ+KN09gnFDRm+L9XbWqMAAGCcAttQGyP5pUqy8XLd0L1VAc2t1nbixIn8CxfsHRwi+vf39PQ0VKktA0EIAGCOxFyyJNh6YaD1rkLN+6dkyygysRt/Yke2vKJs3Ihhbo01PezZ99Qk7uMPR09KXPT+B4auV48QhAAA5suKRSb6sF71EWYW09/ny1edbeSui3vXgwp3/2MUOKmry6zdKd0DgwYPGWLYUvUHxwgBAMwdRUikG7VriN3WcJVFxf1wd3vtXRYUNd9P/N913xqwPH1DEAIAwB+4taVd2vB0Gj3teA8e3DdIPS0DQQgAAH9wcXG5L1fqNN6TKWr5rpcqW+38UgQhAAD8wdHRUSB2//VBpbalkaa/yC/tGT9z3EFZ/92V31/TtL71SzFZBgAAHtm8Y9fYmKHUB9ilAAASMElEQVSHHtwLtufI1fQvRdUjX538zpsjNTQ5XkKnXK5dmaMa7GX9uq+1rwP17KczBQhCAAB4xNnZ+XjO2RMnTlw4d9ZF1GZXZCRzHiGLIpFuVKQb/0EtveNGw7iDMifrxvHd7F59hcUz8SQx8fIBAOBloyiqf//+/fv3b/Zedxvq7UCr+QFWx0vo5Ms1K3PUpj5ARBACAMDf9ucAUVBcS/94o2H8IZmjlakOEDFZBgAA/jk3G+rtQKv8BOF7YfbZ9xTdtkpnZSkLTGqKqakFNwAAGB+dAeKEQ7I21vSErrYmMUDEiBAAAF4aZoBYkCB8P1TIDBBnn1AY+QDR6JMaAABMjYVJDRAxIgQAAH1pOkA8da+WGSDmG9kA0fiiGQAAWpc/B4i2zADx1UMykRWZ0E2Q8ArLxghSCCNCAABoIdoppu+H2Z26V+trHANEI8hiAAAwJ9oBYomC3n694dVDMgHPcnJnK0MNEDEiBAAAw3Dl/TFAXBbCPfFA1XaH6o2T9S0/QMSIEAAADOnPAaJ1iYLedlMTf0TpwmlI6Mqf4MPWGSBKJJKcnJyamprQ0FAvL6+XVQCCEAAAjIIrj1roz37Lj32shJt8uebTM+qhXpZTu/H8RRQh5LMVy3Ynb45wFVhZkO8/ru0YHLZ242ZLS8sX/70IQgAAMCLacxBLFPT2G6pJR2QOlsSncF/V3m0/D+nIoihCyBuEfF9Q8P7bCz7/+tuX8Btf/CkAAABeOlce9XaA5cUJwvfD7I6lfLW4hzuTgoxpvi6HD+xvbGx88V+EIAQAAOPFDBAFankbnuVf2ylHnlVVVdVL+BUv/hQAAAB6ZWVtrVBpdBorlfW2trYv/uQIQgAAMHZjxif8cKW0aUvG3Yqu/oFs9kuY6YLJMgAAYOz+/dbC186effPktWHuNlw260Rp7TWV9d4jP7yUJ29tI8KioqIrV64YugpzdObMmYqKCkNXYY6OHj1K08a1hLE5qK+vP3bsmKGrMCMcDufHPfvmfb3pSruwNG6Hoe+szMo9LxKJXsqTt7Yg3L9/f3JysqGrMEdff/31qVOnDF2FOXr99dfxL0jLKywsfOeddwxdhdnp06fPK126sbj8mJgYqskM0hfU2oIQ/xobEDY+AOibPvYzrS0IAQAA/hYEIQAAmDXK+L/Oio2NLSgoaNu27fN0vnfvXl1dnY+Pj76rAh35+fmurq6Ojo6GLsTsnDx5MjQ0lMPhGLoQ81JbW1tQUBAaGmroQszOgwcPqqurO3fu/Jz9R40aNXPmzKf3MYEgvHjxYmFhoZ2d3fN0lsvlDQ0Nbdq00XdVoKOkpEQkEllZWRm6ELNz586d9u3bG7oKs0PTdFFRUbt27QxdiNmpqalRKpXP/z93+/btO3To8PQ+JhCEAAAA+oNjhAAAYNYQhAAAYNYQhAAAYNYQhAAAYNZMY9FtiUSSnp4uEAiio6ObnZfY0NBw9OjRqqqqyMhIFxcXbXthYWF2drabm9uAAQMsLP5IfY1Gk56eLpFIIiIinvOsDLN19+7drKwssVgcGRnJYrEe71BTU3PkyBGVShUdHW1vb880Pnz48Ndff62pqQkKCurUqRPTWFpaevnyZe0Dg4KChEJhC7wEE3Xy5MnCwsKQkJAuXbo02+H27dunTp3y8PD417/+xaw1VVlZmZeXp+3g6+vr7OzM/Hz//v1jx445OTkNHDjwpazW31ppNJqMjIzS0tJ+/fo9aUZoQUHB+fPnO3bsGBYWpm0pKyvTdrC2tg4PDyeEnD59ura2lmkUCoVBQUH6rd6UPXz4MD09ncvlRkdHc7ncxzuo1eorV66Ul5cPGDCgaXtRUdGJEyecnZ0HDhyo3Uc1NjZmZmYWFxf37dvXy8vr2b+eNnr5+fkikWjSpEkRERE9evRQKBQ6Herq6kJCQvr06TN58mQHB4dz584x7ampqSKRaNq0aQEBASNHjmQaNRpNVFRUcHDw1KlTHRwcMjMzW/TFmJSMjAwHB4epU6cGBwcPHjy4sbFRp0NFRcUrr7wyZMiQsWPHuri43Llzh6bpnJwcOzu7YcOGTZw40d7efsWKFUzn7du3i0SiyD8VFBS08MsxIUlJSR07dpwxY4aTk1NycvLjHfbt2ycSiaZPn+7n5xcfH880ZmZmCgQC7RbOyspi2k+cOGFvb5+YmBgSEjJgwAC1Wt1yr8SkNDY2DhkypEePHtOmTROJRGlpaY/3WbdunVgsnjFjRocOHRYsWMA0fvTRR9rN7u7u3rt3b6a9a9euQUFBTPu8efNa7pWYmuvXrzs6OiYkJAwcONDX11cul+t0OH36NJfLbdOmDYfDadredB8VHR2t0WiY9hEjRvj7+zPv48GDB59ZgAkEYVxc3OLFi2ma1mg0PXv2/OGHH3Q6bNu2zc/PT6VS0TS9bNmymJgYpt3Pz2/Lli00TVdXV7u4uGRnZ9M0feTIkXbt2jFpun79+rCwsJZ8LaalV69e69evp2laoVC0a9fu8f3CJ598MnjwYObnadOmzZo1i6bp8vLyyspKpjE7O5vNZtfW1tI0vX379ujo6Jar3mTduHHDxsamrKyMpukjR464ubkxn+2munTpsn37dpqmZTKZo6PjmTNnaJrOzMz09/d//An79u371Vdf0TRdV1fn7e2dmpqq99dgmjIyMjw8PJiP68aNG3v27KnTQalUikQiZk/y4MEDLpd7//59nT5+fn4bN25kfu7atevJkyf1X7jJe+211+bOnUvTdGNjY79+/b755hudDnK5XCKRFBQU6ARhaGjounXr6D/3UcyVWLKzs8VicXV1NU3TycnJzf5R6DCBY4QHDx4cM2YMIcTCwmLUqFGpqak6HVJTU0eOHMl84RMbG3v48GGNRnPv3r2CggLmgXw+PyoqinlgamrqkCFDmKF3bGzsb7/9hpX7m/Xw4cOcnBxmA3K53CFDhjS75ZkOhJDY2Fimg0gk0n5H6uLi0tjYqFarmZvV1dVHjhw5f/68tgUed/Dgwb59+zLnC0dGRtbU1Fy4cKFph8LCwps3b44aNYoQYmtrO2jQIO1bU1dXl5aWdubMmfr6eqZFJpOdPHkyNjaWEGJlZTVs2LDH30dgpKamDh48mMfjEULGjBmTm5srkUiadsjJyeFwOMzXnm5ubsHBwYcOHWraITc39/bt2/Hx8dqWy5cvp6WllZSUtMgrMFWpqanMR5SiqNGjRz/+ERUIBE5OTjqN5eXlp0+f1u6jhg4dqt3JR0dH8/l8Qsjo0aPz8/Pv37//9AKMPQilUqlCoXB3d2duurm5FRcX6/QpLi52c3PTdlCpVGVlZSUlJUKhkNkWTR/YtHObNm2srKwef0IghJSUlFhaWmqXb3ieLV9SUtLY2Ni0w7Jly+Li4mxtbZmb1dXV69atGzt2bGBg4IMHD/T8CkxVcXGx9gPPYrHEYrHOli8pKXFwcNAeR9F5a9auXTtlypQuXbpcvXqV6WxhYaE9cN7s+wiMpp9ne3t7Ho+ns62adiB/fuabdti8eXPTD7xAINi3b9+qVat8fHxWrlyp5/JNVX19fWVlZdM9yXN+REtKSjgcjjYgm+7ktX9BfD7fzs7umU9o7IfNNRoNIUR73SkWi/X4YEKj0WgnwjAHS9VqtUajaXq1Ku0Dm3Z+0hMCeb4NpbPlmYOI2ns/++yz3Nzc7Oxs5ubYsWMnTJjAPCo+Pn7x4sUpKSn6fQ2mSeejy2azdbb8kz7b/fr1u3btGiGEpumZM2fOnTs3PT2d6fz0vyBg6Hzmn7nldToolcqffvrpwIED2pZTp04xe6S8vLywsLCYmJgnTX0yZ8xB63/wEX3SPkqtVj/9L+hxxj4iFIlElpaWDx8+ZG5KJBJXV1edPi4uLtopWxKJxMLCQiwWi8XiqqqqhoYGbTvzT3HTztXV1QqF4vEnBEKIWCyuq6urrq5mbmo3YFM6W97Z2Vk7a+ubb77ZtGlTRkaGdt1X7V0sFisuLk7n6z7QarpVSXOfebFYLJVKtX/b2rdGu4Upiho3btzFixeZzhqNRvv9f7PvIzCabnmFQiGXy3W2vM5bU1pa2nRj7t6928nJqXfv3toW7TsSGBjo4+OTn5+vx+pNlo2Nja2t7dN38s0Si8X19fVyuVz7QObtcHV11b5NDQ0NUqn0mU9o7EFIUVTfvn2PHj3K3ExLS4uIiCCE0DRdUVHBfBEXERHRtEPv3r05HE779u09PT0zMjIIIRqNJjMzs3///kznjIwM5oFpaWmdO3fWTjGHplxcXDp16pSWlkYIaWxszMjIYDagWq3W7lUjIiKYDqTJW0MI2bRp0xdffJGent70e6Sm8vLyPDw89P0STFRERMTJkyeVSiUhhDme6u/vTwhRKBQ1NTWEEG9vbycnp+PHjxNC1Gr1sWPHmLemqfPnzzNbuE2bNr6+vszbRNN0enr6452B0XTnkJ6e7uPjw3yAmf+YCSHBwcHl5eXXr18nhNTU1Jw+fVr7mSeEbN68OTExsdnLpldUVBQVFeEz/yTN7kmYnTzzpWCzxGJx586dtfso7WebeR+ZB2ZkZHh6ej57bfQXn/Cjb5mZmXZ2dp988smMGTPc3NwqKipomma+mmfm61dVVXl6eiYmJq5cudLBweHw4cPMAzds2ODm5rZmzZpRo0YFBgYyA/D6+vquXbvGx8evXr1aLBZv27bNcK/M2G3dulUsFq9evTo+Pr5bt2719fU0TZ85c4YQwkxTvnv3roODw4IFCz788ENbW9u8vDyapn/99VeKoqKiopL+xMysS0pKmjdv3qpVqyZOnCgQCH777TfDvjpjNmjQoMjIyC+//NLHx2f58uVM4+zZsydMmMD8vHbtWg8PjzVr1sTExISEhDBvx6JFi2bOnLlq1aqkpCQbG5tffvmF6bxz504nJ6dVq1ZNmDChU6dOSqXSIC/K+DU0NPj6+sbGxq5Zs8bFxYWZc07TdExMzKJFi5ifFy5c2LVr1y+//LJv376jR4/WPrawsJDD4RQXF2tbLl68OHTo0GXLli1btszHx2fYsGGPn4AEjF9//dXW1nb58uVz5sxxdnb+/fffaZqWyWSEkCtXrtA0LZfLk5KSYmNjLSwskpKStG9H031U165dmX2UWq0ODAwcOXLkmjVr3N3dv//++2cWYBpXnzh//vz+/fv5fP6kSZPEYjEhRKlUbtu2bfz48cx0mLKysuTkZLlcPnz48J49e2ofmJGRcfz4cbFYPHnyZIFAwDRWVVVt2bKlvLx84MCB/fr1M8grMhUnTpxIT093dHScMmUKcyWshw8f7tu3b/r06UyHu3fvbt++Xa1Wx8XFMcc/ioqKtAN0xpgxY0QiUV5eXmZmZkVFhZub2+jRo580WARCSF1dXXJy8t27d3v16jVixAim8fTp03V1ddrx3NGjR7OyslxdXadMmWJjY0MIuXr1alpaWmlpqZOTU0xMjLe3t/YJs7Ozjx49KhKJJk+erJ3TC4+TyWRbtmwpKyuLjIzUbur09HShUBgcHEwIoWn6559/PnfunI+Pz8SJE7WXgbx27drVq1e1k6gJIQqFYs+ePTdv3rSwsAgMDBw+fHizg0Vg5Ofn79mzh8vlTpw4kdk5qFSqLVu2xMXFCYVCpVK5detWbWcbG5uEhATm56ysrLS0tKb7KEJIdXX1f//7X4lE0r9//8jIyGf+dtMIQgAAAD0x9mOEAAAAeoUgBAAAs4YgBAAAs4YgBAAAs4YgBAAAs4YgBAAAs4YgBAAAs4YgBAAAs4YgBAAAs4YgBDBtEomkvLwcS0QB/GMIQgBTtWzZMqFQKBaLHR0dmYXpDV0RgEky9gvzAkCz9u7d++GHH86ZM2fy5MkURd2+fdvS0tLQRQGYJAQhgEm6c+cOh8NZs2YNcwGEgIAAQ1cEYKpw9QkAkySRSCIiItzd3ceNG2draxsdHa290BgA/C0YEQKYJAcHh4SEhE8//fTSpUs2NjaBgYEIQoB/BkEIYJI+/vjjL774IiMjIzQ01NC1AJg2zBoFMEl5eXkBAQFIQYAXhyAEMEk9e/Y8ffr0d999J5PJNBrN/fv3t23bZuiiAEwSJssAmCSlUjlv3rzk5OS6ujqmxd/f/8KFC4atCsAUIQgBTFhtbW1RUVFNTY2rq6u7u7uhywEwSQhCAAAwazhGCAAAZg1BCAAAZg1BCAAAZg1BCAAAZg1BCAAAZg1BCAAAZu3/AdeqF3+Yvy9EAAAAAElFTkSuQmCC", + "image/svg+xml": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ], + "text/html": [ + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + " \n", + " \n", + " \n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "es_num = 0:0.01:0.1\n", + "symbolic_evaluations = [Float64(true_success_symbolic.subs(e,e_num)) for e_num in es_num]\n", + "\n", + "numeric_evaluations = []\n", + "for epsilon in es_num\n", + " n = NoiseOpAll(UnbiasedUncorrelatedNoise(3epsilon))\n", + " circuit = [n,g1,g2,m,v]\n", + " pe_symbolic = petrajectories(initial_state, circuit)\n", + " push!(numeric_evaluations, pe_symbolic[true_success_stat])\n", + "end\n", + "\n", + "plot(es_num, symbolic_evaluations, label=\"symbolic\")\n", + "plot!(es_num, numeric_evaluations, line=false, marker=true, label=\"numeric\")\n", + "plot!(xlabel=\"ε\", ylabel=\"True Success Rate\", title=\"Numeric vs Symbolic Perturbative Expansion\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Reproducibility information" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Julia Version 1.10.2\n", + "Commit bd47eca2c8a (2024-03-01 10:14 UTC)\n", + "Build Info:\n", + " Official https://julialang.org/ release\n", + "Platform Info:\n", + " OS: Linux (x86_64-linux-gnu)\n", + " CPU: 8 × Intel(R) Core(TM) i7-10510U CPU @ 1.80GHz\n", + " WORD_SIZE: 64\n", + " LIBM: libopenlibm\n", + " LLVM: libLLVM-15.0.7 (ORCJIT, skylake)\n", + "Threads: 1 default, 0 interactive, 1 GC (on 8 virtual cores)\n", + "\u001b[32m\u001b[1mStatus\u001b[22m\u001b[39m `~/Documents/ScratchSpace/quantumjulia/Project.toml`\n", + " \u001b[90m[0525e862] \u001b[39mQuantumClifford v0.8.21 `QuantumClifford.jl`\n", + "\u001b[32m\u001b[1mStatus\u001b[22m\u001b[39m `~/Documents/ScratchSpace/quantumjulia/Project.toml`\n", + "\u001b[32m⌃\u001b[39m \u001b[90m[0c5d862f] \u001b[39mSymbolics v5.22.1\n", + "\u001b[36m\u001b[1mInfo\u001b[22m\u001b[39m Packages marked with \u001b[32m⌃\u001b[39m have new versions available and may be upgradable.\n", + "\u001b[32m\u001b[1mStatus\u001b[22m\u001b[39m `~/Documents/ScratchSpace/quantumjulia/Project.toml`\n", + " \u001b[90m[c3fe647b] \u001b[39mAbstractAlgebra v0.40.3\n", + "\u001b[32m\u001b[1mStatus\u001b[22m\u001b[39m `~/Documents/ScratchSpace/quantumjulia/Project.toml`\n", + " \u001b[90m[24249f21] \u001b[39mSymPy v2.0.1\n" + ] + } + ], + "source": [ + "versioninfo()\n", + "using Pkg\n", + "Pkg.status(\"QuantumClifford\")\n", + "Pkg.status(\"Symbolics\")\n", + "Pkg.status(\"AbstractAlgebra\")\n", + "Pkg.status(\"SymPy\")" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Julia 1.10", + "language": "julia", + "name": "julia-1.10" + }, + "language_info": { + "file_extension": ".jl", + "mimetype": "application/julia", + "name": "julia", + "version": "1.10.2" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/v0.9.12/objects.inv b/v0.9.12/objects.inv new file mode 100644 index 000000000..25e607ec2 Binary files /dev/null and b/v0.9.12/objects.inv differ diff --git a/v0.9.12/plotting/07c9f185.svg b/v0.9.12/plotting/07c9f185.svg new file mode 100644 index 000000000..ccc7f3ea1 --- /dev/null +++ b/v0.9.12/plotting/07c9f185.svg @@ -0,0 +1,201 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/v0.9.12/plotting/76fd7a24.svg b/v0.9.12/plotting/76fd7a24.svg new file mode 100644 index 000000000..5c5181661 --- /dev/null +++ b/v0.9.12/plotting/76fd7a24.svg @@ -0,0 +1,330 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/v0.9.12/plotting/7c8b7612.png b/v0.9.12/plotting/7c8b7612.png new file mode 100644 index 000000000..626f316d6 Binary files /dev/null and b/v0.9.12/plotting/7c8b7612.png differ diff --git a/v0.9.12/plotting/8abb43fb.svg b/v0.9.12/plotting/8abb43fb.svg new file mode 100644 index 000000000..2f51bfea2 --- /dev/null +++ b/v0.9.12/plotting/8abb43fb.svg @@ -0,0 +1,331 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/v0.9.12/plotting/c77eddd0.svg b/v0.9.12/plotting/c77eddd0.svg new file mode 100644 index 000000000..31b1e7231 --- /dev/null +++ b/v0.9.12/plotting/c77eddd0.svg @@ -0,0 +1,261 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/v0.9.12/plotting/dcc5dfca.svg b/v0.9.12/plotting/dcc5dfca.svg new file mode 100644 index 000000000..d73548a3f --- /dev/null +++ b/v0.9.12/plotting/dcc5dfca.svg @@ -0,0 +1,273 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/v0.9.12/plotting/index.html b/v0.9.12/plotting/index.html new file mode 100644 index 000000000..38d05af93 --- /dev/null +++ b/v0.9.12/plotting/index.html @@ -0,0 +1,50 @@ + +Visualizations · QuantumClifford.jl

Visualizations

Stabilizers have a plot recipe that can be used with Plots.jl or Makie.jl. It simply displays the corresponding parity check matrix (extracted with stab_to_gf2) as a bitmap image. Circuits can be visualized with Quantikz.jl.

Importing the aforementioned packages together with QuantumClifford is necessary to enable the plotting functionality (implemented as package extensions).

Plots.jl

In Plots.jl we have a simple recipe plot(s::Stabilizer; xzcomponents=...) where xzcomponents=:split plots the tableau heatmap in a wide form, X bits on the left, Z bits on the right; or xzcomponents=:together plots them overlapping, with different colors for I, X, Z, and Y.

using QuantumClifford, Plots
+plot(random_stabilizer(20,30), xzcomponents=:split)
Example block output
using QuantumClifford, Plots
+plot(canonicalize!(random_stabilizer(20,30)))
Example block output
using QuantumClifford, Plots
+plot(canonicalize_gott!(random_stabilizer(30))[1], xzcomponents=:split)
Example block output
using QuantumClifford, Plots
+plot(canonicalize_gott!(random_stabilizer(30))[1]; xzcomponents=:together)
Example block output
using QuantumClifford, Plots
+plot(canonicalize_rref!(random_stabilizer(20,30),1:30)[1]; xzcomponents=:together)
Example block output

Makie.jl

Makie's heatmap can be directly called on Stabilizer.

using QuantumClifford, CairoMakie
+s = S"IIXZ
+      ZZIZ
+      YYIZ
+      IIIZ
+      ZZXZ"
+f, ax, p = CairoMakie.heatmap(s)
+hidedecorations!(ax); hidespines!(ax); # remove ticks and spines
+ax.aspect = DataAspect(); # set a one-to-one aspect ratio
+f

A full Makie recipe is available as well (supporting xzcomponents)

using QuantumClifford, CairoMakie
+s = S"IIXZ
+      ZZIZ
+      YYIZ
+      IIIZ
+      ZZXZ"
+f, ax, p = stabilizerplot(s, xzcomponents=:together)
+hidedecorations!(ax); hidespines!(ax)
+ax.aspect = DataAspect()
+f

You can easily add colorbars (and change the colormap) as well:

using QuantumClifford, CairoMakie
+fig = Figure()
+ax, p = stabilizerplot(fig[1, 1], s, colormap=cgrad(:heat, 4, categorical = true))
+hidedecorations!(ax)
+hidespines!(ax)
+xlims!(ax, 0.5, size(s,2)+0.5) # otherwise there is padding
+ylims!(ax, 0.5, size(s,1)+0.5) # otherwise there is padding
+# set the aspect ratio of the plot
+ax.aspect = DataAspect()
+# set the aspect ratio of the layout
+colsize!(fig.layout, 1, Aspect(1, size(s,2)/size(s,1)))
+Colorbar(fig[1, 2], p, ticks = (0:3, ["I", "X", "Z", "Y"]))
+fig
Example block output

Or set a completely custom set of colors:

fig = Figure()
+ax, p = stabilizerplot(fig[1, 1], s, colormap=cgrad([:lightgray,RGBf(1,0.4,0.4),RGBf(0.3,1,0.5),RGBf(0.4,0.4,1)], 4, categorical = true))
+hidedecorations!(ax)
+hidespines!(ax)
+xlims!(ax, 0.5, size(s,2)+0.5)
+ylims!(ax, 0.5, size(s,1)+0.5)
+ax.aspect = DataAspect()
+colsize!(fig.layout, 1, Aspect(1, size(s,2)/size(s,1)))
+Colorbar(fig[2, 1], p, ticks = (0:3, ["I", "X", "Z", "Y"]), vertical = false, flipaxis = false)
+fig
Example block output

You might have noticed, Makie recipes do not let you edit the axes or figure, rather they only permit you to set the plot content. Which is why we use hidedecorations!, hidesplines!, and DataAspect to further modify the plot. However, these defaults are also available in stabilizerplot_axis.

using QuantumClifford, CairoMakie
+f=Figure()
+stabilizerplot_axis(f[1,1],random_stabilizer(100))
+f
Example block output

Quantikz.jl

With the Quantikz library you can visualize gates or sequences of gates.

using QuantumClifford, Quantikz
+circuit = [sCNOT(1,2), SparseGate(random_clifford(4), [1,4,5,6]), sMZ(4)]
Example block output
diff --git a/v0.9.12/references.bib b/v0.9.12/references.bib new file mode 100644 index 000000000..29500a034 --- /dev/null +++ b/v0.9.12/references.bib @@ -0,0 +1,489 @@ +% The basis of the tableaux algorithm + +@inproceedings{gottesman1998heisenberg, + title={The Heisenberg representation of quantum computers}, + author={Gottesman, Daniel}, + booktitle={International Conference on Group Theoretic Methods in Physics}, + year={1998}, + organization={Citeseer}, + url={https://arxiv.org/abs/quant-ph/9807006} +} + +@article{aaronson2004improved, + title={Improved simulation of stabilizer circuits}, + author={Aaronson, Scott and Gottesman, Daniel}, + journal={Physical Review A}, + volume={70}, + number={5}, + pages={052328}, + year={2004}, + publisher={APS}, + doi={10.1103/PhysRevA.70.052328} +} + +% Random Stabilizers + +@article{koenig2014efficiently, + title={How to efficiently select an arbitrary Clifford group element}, + author={Koenig, Robert and Smolin, John A}, + journal={Journal of Mathematical Physics}, + volume={55}, + number={12}, + pages={122202}, + year={2014}, + publisher={AIP Publishing}, + doi={10.1063/1.4903507} +} + +@article{bravyi2020hadamard, + title={Hadamard-free circuits expose the structure of the Clifford group}, + author={Bravyi, Sergey and Maslov, Dmitri}, + journal={IEEE Transactions on Information Theory}, + volume={67}, + number={7}, + pages={4546--4563}, + year={2021}, + publisher={IEEE}, + doi={10.1109/TIT.2021.3081415} +} + +@inproceedings{berg2020simple, + title={A simple method for sampling random Clifford operators}, + author={Van Den Berg, Ewout}, + booktitle={2021 IEEE International Conference on Quantum Computing and Engineering (QCE)}, + pages={54--59}, + year={2021}, + organization={IEEE}, + doi={10.1109/QCE52317.2021.00021} +} + +@article{li2019measurement, + title={Measurement-driven entanglement transition in hybrid quantum circuits}, + author={Li, Yaodong and Chen, Xiao and Fisher, Matthew PA}, + journal={Physical Review B}, + volume={100}, + number={13}, + pages={134306}, + year={2019}, + publisher={APS}, + doi={10.1103/PhysRevB.100.134306} +} + +% Canonicalization Methods + +@article{garcia2012efficient, + title={Efficient inner-product algorithm for stabilizer states}, + author={Garcia, Hector J and Markov, Igor L and Cross, Andrew W}, + journal={arXiv preprint arXiv:1210.6646}, + year={2012}, + url={https://arxiv.org/abs/1210.6646} +} + +@article{audenaert2005entanglement, + title={Entanglement on mixed stabilizer states: normal forms and reduction procedures}, + author={Audenaert, Koenraad MR and Plenio, Martin B}, + journal={New Journal of Physics}, + volume={7}, + number={1}, + pages={170}, + year={2005}, + publisher={IOP Publishing}, + doi={10.1088/1367-2630/7/1/170} +} + +@phdthesis{gottesman1997stabilizer, + title={Stabilizer codes and quantum error correction}, + author={Gottesman, Daniel}, + year={1997}, + school={California Institute of Technology}, + publisher={California Institute of Technology}, + url={https://arxiv.org/abs/quant-ph/9705052} +} + +@article{gullans2020dynamical, + title={Dynamical purification phase transition induced by quantum measurements}, + author={Gullans, Michael J and Huse, David A}, + journal={Physical Review X}, + volume={10}, + number={4}, + pages={041020}, + year={2020}, + publisher={APS} +} + +@article{hein2006entanglement, + title={Entanglement in graph states and its applications}, + author={Hein, Marc and D{\"u}r, Wolfgang and Eisert, Jens and Raussendorf, Robert and Nest, M and Briegel, H-J}, + journal={arXiv preprint quant-ph/0602096}, + url={https://arxiv.org/abs/quant-ph/0602096}, + doi={10.48550/arXiv.quant-ph/0602096}, + year={2006} +} + +@article{wilde2009logical, + title={Logical operators of quantum codes}, + author={Wilde, Mark M}, + journal={Physical Review A}, + volume={79}, + number={6}, + pages={062322}, + year={2009}, + publisher={APS}, + doi={10.1103/PhysRevA.79.062322} +} + +% Encoding circuits + +@article{cleve1997efficient, + title={Efficient computations of encodings for quantum error correction}, + author={Cleve, Richard and Gottesman, Daniel}, + journal={Physical Review A}, + volume={56}, + number={1}, + pages={76}, + year={1997}, + publisher={APS} +} + +@inproceedings{grassl2011variations, + title={Variations on encoding circuits for stabilizer quantum codes}, + author={Grassl, Markus}, + booktitle={International Conference on Coding and Cryptology}, + pages={142--158}, + year={2011}, + organization={Springer} +} + +@article{grassl2002algorithmic, + title={Algorithmic aspects of quantum error-correcting codes}, + author={Grassl, Markus}, + journal={Mathematics of Quantum Computation}, + pages={223--252}, + year={2002}, + publisher={CRC Press Boca Raton, FL} +} + +% Examples of results that employ the tableaux formalism + +@article{gullans2021quantum, + title = {Quantum {{Coding}} with {{Low-Depth Random Circuits}}}, + author = {Gullans, Michael J. and Krastanov, Stefan and Huse, David A. and Jiang, Liang and Flammia, Steven T.}, + year = {2021}, + month = sep, + journal = {Physical Review X}, + volume = {11}, + number = {3}, + pages = {031066}, + issn = {2160-3308}, + doi = {10.1103/PhysRevX.11.031066} +} + +@article{krastanov2020heterogeneous, + title={Heterogeneous Multipartite Entanglement Purification for Size-Constrained Quantum Devices}, + author={Krastanov, Stefan and de la Cerda, Alexander Sanchez and Narang, Prineha}, + journal={arXiv preprint arXiv:2011.11640}, + year={2020} +} + +@article{nahum2017quantum, + title = {Quantum Entanglement Growth under Random Unitary Dynamics}, + volume = {7}, + url = {https://link.aps.org/doi/10.1103/PhysRevX.7.031016}, + doi = {10.1103/PhysRevX.7.031016}, + pages = {031016}, + number = {3}, + journal = {Physical Review X}, + author = {Nahum, Adam and Ruhman, Jonathan and Vijay, Sagar and Haah, Jeongwan}, + year = {2017} +} + +% codes + +@article{mackay2004sparse, + title={Sparse-graph codes for quantum error correction}, + author={MacKay, David JC and Mitchison, Graeme and McFadden, Paul L}, + journal={IEEE Transactions on Information Theory}, + volume={50}, + number={10}, + pages={2315--2330}, + year={2004}, + publisher={IEEE}, + doi={10.1109/TIT.2004.834737} +} + +@article{calderbank1998quantum, + title={Quantum error correction via codes over GF (4)}, + author={Calderbank, A Robert and Rains, Eric M and Shor, PM and Sloane, Neil JA}, + journal={IEEE Transactions on Information Theory}, + volume={44}, + number={4}, + pages={1369--1387}, + year={1998}, + publisher={IEEE}, + doi={10.1109/18.681315} +} + +@inproceedings{steane2007tutorial, + title={A tutorial on quantum error correction}, + author={Steane, Andrew M}, + booktitle={PROCEEDINGS-INTERNATIONAL SCHOOL OF PHYSICS ENRICO FERMI}, + volume={162}, + pages={1}, + year={2007}, + organization={IOS Press; Ohmsha; 1999}, + doi={10.3254/978-1-61499-018-5-1} +} + +@article{yu2013all, + author={Yu, Sixia and Bierbrauer, Jürgen and Dong, Ying and Chen, Qing and Oh, C. H.}, + journal={IEEE Transactions on Information Theory}, + title={All the Stabilizer Codes of Distance 3}, + year={2013}, + volume={59}, + number={8}, + pages={5179-5185}, + keywords= {Generators;Frequency modulation;Vectors;Educational institutions;Error correction codes;Physics;Indexes;1-error correcting stabilizer codes;optimal codes;quantum error correction;quantum Hamming bound}, + doi={10.1109/TIT.2013.2259138} +} + +@article{chao2018quantum, + title={Quantum Error Correction with Only Two Extra Qubits.}, + author={Rui Chao and Ben W Reichardt}, + journal={Physical review letters}, + year={2017}, + volume={121 5}, + pages={ + 050502 + }, + url={https://api.semanticscholar.org/CorpusID:206314271} +} + +@article{gottesman1996class, + title={Class of quantum error-correcting codes saturating the quantum Hamming bound}, + author={Gottesman, Daniel}, + journal={Physical Review A}, + volume={54}, + number={3}, + pages={1862}, + year={1996}, + publisher={APS} +} + +@article{kitaev2003fault, + title = {Fault-tolerant quantum computation by anyons}, + volume = {303}, + issn = {00034916}, + url = {https://linkinghub.elsevier.com/retrieve/pii/S0003491602000180}, + doi = {10.1016/S0003-4916(02)00018-0}, + abstract = {A two-dimensional quantum system with anyonic excitations can be considered as a quantum computer. Unitary transformations can be performed by moving the excitations around each other. Measurements can be performed by joining excitations in pairs and observing the result of fusion. Such computation is fault-tolerant by its physical nature.}, + pages = {2--30}, + number = {1}, + year = {2003}, + journal={Annals of Physics}, + journaltitle = {Annals of Physics}, + shortjournal = {Annals of Physics}, + author = {Kitaev, A.Yu.} +} + +@article{fowler2012surface, + title = {Surface codes: Towards practical large-scale quantum computation}, + volume = {86}, + issn = {1050-2947, 1094-1622}, + url = {https://link.aps.org/doi/10.1103/PhysRevA.86.032324}, + doi = {10.1103/PhysRevA.86.032324}, + shorttitle = {Surface codes}, + pages = {032324}, + number = {3}, + year = {2012}, + journal={Physical Review A}, + journaltitle = {Physical Review A}, + shortjournal = {Phys. Rev. A}, + author = {Fowler, Austin G. and Mariantoni, Matteo and Martinis, John M. and Cleland, Andrew N.}, +} + +@article{muller1954application, + title={Application of Boolean algebra to switching circuit design and to error detection}, + author={Muller, David E}, + journal={Transactions of the IRE professional group on electronic computers}, + number={3}, + pages={6--12}, + year={1954}, + publisher={IEEE} +} + +@article{reed1954class, + title={A class of multiple-error-correcting codes and the decoding scheme}, + author={Reed, Irving S}, + journal={IEEE Transactions on Information Theory}, + volume={4}, + number={4}, + pages={38--49}, + year={1954} +} + +@article{raaphorst2003reed, + title={Reed-muller codes}, + author={Raaphorst, Sebastian}, + journal={Carleton University, May}, + volume={9}, + year={2003}, + publisher={Citeseer} +} + +@article{abbe2020reed, + title={Reed--Muller codes: Theory and algorithms}, + author={Abbe, Emmanuel and Shpilka, Amir and Ye, Min}, + journal={IEEE Transactions on Information Theory}, + volume={67}, + number={6}, + pages={3251--3277}, + year={2020}, + publisher={IEEE} +} + +@book{djordjevic2021quantum, + title={Quantum information processing, quantum computing, and quantum error correction: an engineering approach}, + author={Djordjevic, Ivan B}, + year={2021}, + publisher={Academic Press} +} + +@article{hocquenghem1959codes, + title={Codes correcteurs d'erreurs}, + author={Hocquenghem, Alexis}, + journal={Chiffers}, + volume={2}, + pages={147--156}, + year={1959} +} + +@article{bose1960class, + title={On a class of error correcting binary group codes}, + author={Bose, Raj Chandra and Ray-Chaudhuri, Dwijendra K}, + journal={Information and control}, + volume={3}, + number={1}, + pages={68--79}, + year={1960}, + publisher={Elsevier} +} + +@article{bose1960further, + title={Further results on error correcting binary group codes}, + author={Bose, Raj Chandra and Ray-Chaudhuri, Dwijendra K}, + journal={Information and Control}, + volume={3}, + number={3}, + pages={279--290}, + year={1960}, + publisher={Elsevier} +} + +@book{error2024lin, + title={Error Control Coding}, + author={Lin, Shu and Costello, Daniel}, + year={2024}, + publisher={Pearson} +} + +@article{knill1996concatenated, + title={Concatenated quantum codes}, + author={Knill, Emanuel and Laflamme, Raymond}, + journal={arXiv preprint quant-ph/9608012}, + year={1996} +} + +@inproceedings{brown2013short, + title = {Short Random Circuits Define Good Quantum Error Correcting Codes}, + booktitle = {2013 {{IEEE International Symposium}} on {{Information Theory}}}, + author = {Brown, Winton and Fawzi, Omar}, + year = {2013}, + month = jul, + pages = {346--350}, + doi = {10.1109/ISIT.2013.6620245} +} + +@article{panteleev2021degenerate, + title = {Degenerate {{Quantum LDPC Codes With Good Finite Length Performance}}}, + author = {Panteleev, Pavel and Kalachev, Gleb}, + year = {2021}, + month = nov, + journal = {Quantum}, + volume = {5}, + eprint = {1904.02703}, + primaryclass = {quant-ph}, + pages = {585}, + issn = {2521-327X}, + doi = {10.22331/q-2021-11-22-585}, + archiveprefix = {arXiv} +} + + +@inproceedings{panteleev2022asymptotically, + title = {Asymptotically Good {{Quantum}} and Locally Testable Classical {{LDPC}} Codes}, + booktitle = {Proceedings of the 54th {{Annual ACM SIGACT Symposium}} on {{Theory}} of {{Computing}}}, + author = {Panteleev, Pavel and Kalachev, Gleb}, + year = {2022}, + month = jun, + pages = {375--388}, + publisher = {ACM}, + address = {Rome Italy}, + doi = {10.1145/3519935.3520017}, + isbn = {978-1-4503-9264-8} +} + +@article{roffe2023bias, + title = {Bias-Tailored Quantum {{LDPC}} Codes}, + author = {Roffe, Joschka and Cohen, Lawrence Z. and Quintavalle, Armanda O. and Chandra, Daryus and Campbell, Earl T.}, + year = {2023}, + month = may, + journal = {Quantum}, + volume = {7}, + pages = {1005}, + doi = {10.22331/q-2023-05-15-1005} +} + +@article{raveendran2022finite, + title = {Finite {{Rate QLDPC-GKP Coding Scheme}} That {{Surpasses}} the {{CSS Hamming Bound}}}, + author = {Raveendran, Nithin and Rengaswamy, Narayanan and Rozp{\k e}dek, Filip and Raina, Ankur and Jiang, Liang and Vasi{\'c}, Bane}, + year = {2022}, + month = jul, + journal = {Quantum}, + volume = {6}, + pages = {767}, + issn = {2521-327X}, + doi = {10.22331/q-2022-07-20-767}, +} + +@article{steane1999quantum, + title={Quantum reed-muller codes}, + author={Steane, Andrew M}, + journal={IEEE Transactions on Information Theory}, + volume={45}, + number={5}, + pages={1701--1703}, + year={1999}, + publisher={IEEE} +} + +@article{campbell2012magic, + title={Magic-state distillation in all prime dimensions using quantum reed-muller codes}, + author={Campbell, Earl T and Anwar, Hussain and Browne, Dan E}, + journal={Physical Review X}, + volume={2}, + number={4}, + pages={041021}, + year={2012}, + publisher={APS} +} + +@article{anderson2014fault, + title={Fault-tolerant conversion between the steane and reed-muller quantum codes}, + author={Anderson, Jonas T and Duclos-Cianci, Guillaume and Poulin, David}, + journal={Physical review letters}, + volume={113}, + number={8}, + pages={080501}, + year={2014}, + publisher={APS} +} diff --git a/v0.9.12/references/index.html b/v0.9.12/references/index.html new file mode 100644 index 000000000..47af12ac3 --- /dev/null +++ b/v0.9.12/references/index.html @@ -0,0 +1,2 @@ + +Suggested Readings & References · QuantumClifford.jl

Suggested reading

For the basis of the tableaux methods first read (Gottesman, 1998) followed by the more efficient approach described in (Aaronson and Gottesman, 2004).

The tableaux can be canonicalized (i.e. Gaussian elimination can be performed on them) in a number of different ways, and considering the different approaches provides useful insight. The following methods are implemented in this library:

For the use of these methods in error correction and the subtle overlap between the two fields consider these resources. They are also useful in defining some of the specific constraints in commutation between rows in the tableaux:

These publications describe the uniform sampling of random stabilizer states:

For circuit construction routines (for stabilizer measurements for a given code):

For quantum code construction routines:

For classical code construction routines:

References

  • Aaronson, S. and Gottesman, D. (2004). Improved simulation of stabilizer circuits. Physical Review A 70, 052328.
  • Abbe, E.; Shpilka, A. and Ye, M. (2020). Reed–Muller codes: Theory and algorithms. IEEE Transactions on Information Theory 67, 3251–3277.
  • Anderson, J. T.; Duclos-Cianci, G. and Poulin, D. (2014). Fault-tolerant conversion between the steane and reed-muller quantum codes. Physical review letters 113, 080501.
  • Audenaert, K. M. and Plenio, M. B. (2005). Entanglement on mixed stabilizer states: normal forms and reduction procedures. New Journal of Physics 7, 170.
  • Bose, R. C. and Ray-Chaudhuri, D. K. (1960). Further results on error correcting binary group codes. Information and Control 3, 279–290.
  • Bose, R. C. and Ray-Chaudhuri, D. K. (1960). On a class of error correcting binary group codes. Information and control 3, 68–79.
  • Bravyi, S. and Maslov, D. (2021). Hadamard-free circuits expose the structure of the Clifford group. IEEE Transactions on Information Theory 67, 4546–4563.
  • Brown, W. and Fawzi, O. (Jul 2013). Short Random Circuits Define Good Quantum Error Correcting Codes. In: 2013 IEEE International Symposium on Information Theory; pp. 346–350.
  • Calderbank, A. R.; Rains, E. M.; Shor, P. and Sloane, N. J. (1998). Quantum error correction via codes over GF (4). IEEE Transactions on Information Theory 44, 1369–1387.
  • Campbell, E. T.; Anwar, H. and Browne, D. E. (2012). Magic-state distillation in all prime dimensions using quantum reed-muller codes. Physical Review X 2, 041021.
  • Chao, R. and Reichardt, B. W. (2017). Quantum Error Correction with Only Two Extra Qubits. Physical review letters 121 5, 050502.
  • Cleve, R. and Gottesman, D. (1997). Efficient computations of encodings for quantum error correction. Physical Review A 56, 76.
  • Djordjevic, I. B. (2021). Quantum information processing, quantum computing, and quantum error correction: an engineering approach (Academic Press).
  • Fowler, A. G.; Mariantoni, M.; Martinis, J. M. and Cleland, A. N. (2012). Surface codes: Towards practical large-scale quantum computation. Physical Review A 86, 032324.
  • Garcia, H. J.; Markov, I. L. and Cross, A. W. (2012). Efficient inner-product algorithm for stabilizer states, arXiv preprint arXiv:1210.6646.
  • Gottesman, D. (1996). Class of quantum error-correcting codes saturating the quantum Hamming bound. Physical Review A 54, 1862.
  • Gottesman, D. (1997). Stabilizer codes and quantum error correction. Ph.D. Thesis, California Institute of Technology.
  • Gottesman, D. (1998). The Heisenberg representation of quantum computers. In: International Conference on Group Theoretic Methods in Physics (Citeseer).
  • Grassl, M. (2002). Algorithmic aspects of quantum error-correcting codes. Mathematics of Quantum Computation, 223–252.
  • Grassl, M. (2011). Variations on encoding circuits for stabilizer quantum codes. In: International Conference on Coding and Cryptology (Springer); pp. 142–158.
  • Gullans, M. J.; Krastanov, S.; Huse, D. A.; Jiang, L. and Flammia, S. T. (2021). Quantum Coding with Low-Depth Random Circuits. Physical Review X 11, 031066.
  • Hocquenghem, A. (1959). Codes correcteurs d'erreurs. Chiffers 2, 147–156.
  • Knill, E. and Laflamme, R. (1996). Concatenated quantum codes, arXiv preprint quant-ph/9608012.
  • Koenig, R. and Smolin, J. A. (2014). How to efficiently select an arbitrary Clifford group element. Journal of Mathematical Physics 55, 122202.
  • Krastanov, S.; de la Cerda, A. S. and Narang, P. (2020). Heterogeneous Multipartite Entanglement Purification for Size-Constrained Quantum Devices, arXiv preprint arXiv:2011.11640.
  • Li, Y.; Chen, X. and Fisher, M. P. (2019). Measurement-driven entanglement transition in hybrid quantum circuits. Physical Review B 100, 134306.
  • Lin, S. and Costello, D. (2024). Error Control Coding (Pearson).
  • MacKay, D. J.; Mitchison, G. and McFadden, P. L. (2004). Sparse-graph codes for quantum error correction. IEEE Transactions on Information Theory 50, 2315–2330.
  • Muller, D. E. (1954). Application of Boolean algebra to switching circuit design and to error detection. Transactions of the IRE professional group on electronic computers, 6–12.
  • Nahum, A.; Ruhman, J.; Vijay, S. and Haah, J. (2017). Quantum Entanglement Growth under Random Unitary Dynamics. Physical Review X 7, 031016.
  • Panteleev, P. and Kalachev, G. (2021). Degenerate Quantum LDPC Codes With Good Finite Length Performance. Quantum 5, 585, arXiv:1904.02703 [quant-ph].
  • Panteleev, P. and Kalachev, G. (Jun 2022). Asymptotically Good Quantum and Locally Testable Classical LDPC Codes. In: Proceedings of the 54th Annual ACM SIGACT Symposium on Theory of Computing (ACM, Rome Italy); pp. 375–388.
  • Raaphorst, S. (2003). Reed-muller codes. Carleton University, May 9.
  • Raveendran, N.; Rengaswamy, N.; Rozpędek, F.; Raina, A.; Jiang, L. and Vasić, B. (2022). Finite Rate QLDPC-GKP Coding Scheme That Surpasses the CSS Hamming Bound. Quantum 6, 767.
  • Reed, I. S. (1954). A class of multiple-error-correcting codes and the decoding scheme. IEEE Transactions on Information Theory 4, 38–49.
  • Roffe, J.; Cohen, L. Z.; Quintavalle, A. O.; Chandra, D. and Campbell, E. T. (2023). Bias-Tailored Quantum LDPC Codes. Quantum 7, 1005.
  • Steane, A. M. (1999). Quantum reed-muller codes. IEEE Transactions on Information Theory 45, 1701–1703.
  • Steane, A. M. (2007). A tutorial on quantum error correction. In: PROCEEDINGS-INTERNATIONAL SCHOOL OF PHYSICS ENRICO FERMI, Vol. 162 (IOS Press; Ohmsha; 1999); p. 1.
  • Van Den Berg, E. (2021). A simple method for sampling random Clifford operators. In: 2021 IEEE International Conference on Quantum Computing and Engineering (QCE) (IEEE); pp. 54–59.
  • Wilde, M. M. (2009). Logical operators of quantum codes. Physical Review A 79, 062322.
  • Yu, S.; Bierbrauer, J.; Dong, Y.; Chen, Q. and Oh, C. H. (2013). All the Stabilizer Codes of Distance 3. IEEE Transactions on Information Theory 59, 5179–5185.
diff --git a/v0.9.12/search_index.js b/v0.9.12/search_index.js new file mode 100644 index 000000000..104fe02d5 --- /dev/null +++ b/v0.9.12/search_index.js @@ -0,0 +1,3 @@ +var documenterSearchIndex = {"docs": +[{"location":"references/#Suggested-reading","page":"Suggested Readings & References","title":"Suggested reading","text":"","category":"section"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"For the basis of the tableaux methods first read (Gottesman, 1998) followed by the more efficient approach described in (Aaronson and Gottesman, 2004).","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"The tableaux can be canonicalized (i.e. Gaussian elimination can be performed on them) in a number of different ways, and considering the different approaches provides useful insight. The following methods are implemented in this library:","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"The default one: (Garcia et al., 2012)\nUseful when in need of tracing out a set of qubits: (Audenaert and Plenio, 2005)\nUseful when defining logical operators of codes: (Gottesman, 1997)","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"For the use of these methods in error correction and the subtle overlap between the two fields consider these resources. They are also useful in defining some of the specific constraints in commutation between rows in the tableaux:","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"(Steane, 2007)\n(Calderbank et al., 1998)\n(MacKay et al., 2004)\n(Wilde, 2009)","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"These publications describe the uniform sampling of random stabilizer states:","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"(Koenig and Smolin, 2014)\n(Bravyi and Maslov, 2021)\n(Van Den Berg, 2021)\n(Li et al., 2019)","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"For circuit construction routines (for stabilizer measurements for a given code):","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"(Cleve and Gottesman, 1997)\n(Gottesman, 1997) (and its erratum)\n(Grassl, 2002)\n(Grassl, 2011)","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"For quantum code construction routines:","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"(Cleve and Gottesman, 1997)\n(Gottesman, 1996)\n(Gottesman, 1997)\n(Yu et al., 2013)\n(Chao and Reichardt, 2017)\n(Kitaev, 2003)\n(Fowler et al., 2012)\n(Knill and Laflamme, 1996)\n(Steane, 1999)\n(Campbell et al., 2012)\n(Anderson et al., 2014)","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"For classical code construction routines:","category":"page"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"(Muller, 1954)\n(Reed, 1954)\n(Raaphorst, 2003)\n(Abbe et al., 2020)\n(Djordjevic, 2021)\n(Hocquenghem, 1959)\n(Bose and Ray-Chaudhuri, 1960)\n(Bose and Ray-Chaudhuri, 1960)\n(Lin and Costello, 2024)","category":"page"},{"location":"references/#References","page":"Suggested Readings & References","title":"References","text":"","category":"section"},{"location":"references/","page":"Suggested Readings & References","title":"Suggested Readings & References","text":"Aaronson, S. and Gottesman, D. (2004). Improved simulation of stabilizer circuits. Physical Review A 70, 052328.\n\n\n\nAbbe, E.; Shpilka, A. and Ye, M. (2020). Reed–Muller codes: Theory and algorithms. IEEE Transactions on Information Theory 67, 3251–3277.\n\n\n\nAnderson, J. T.; Duclos-Cianci, G. and Poulin, D. (2014). Fault-tolerant conversion between the steane and reed-muller quantum codes. Physical review letters 113, 080501.\n\n\n\nAudenaert, K. M. and Plenio, M. B. (2005). Entanglement on mixed stabilizer states: normal forms and reduction procedures. New Journal of Physics 7, 170.\n\n\n\nBose, R. C. and Ray-Chaudhuri, D. K. (1960). Further results on error correcting binary group codes. Information and Control 3, 279–290.\n\n\n\nBose, R. C. and Ray-Chaudhuri, D. K. (1960). On a class of error correcting binary group codes. Information and control 3, 68–79.\n\n\n\nBravyi, S. and Maslov, D. (2021). Hadamard-free circuits expose the structure of the Clifford group. IEEE Transactions on Information Theory 67, 4546–4563.\n\n\n\nBrown, W. and Fawzi, O. (Jul 2013). Short Random Circuits Define Good Quantum Error Correcting Codes. In: 2013 IEEE International Symposium on Information Theory; pp. 346–350.\n\n\n\nCalderbank, A. R.; Rains, E. M.; Shor, P. and Sloane, N. J. (1998). Quantum error correction via codes over GF (4). IEEE Transactions on Information Theory 44, 1369–1387.\n\n\n\nCampbell, E. T.; Anwar, H. and Browne, D. E. (2012). Magic-state distillation in all prime dimensions using quantum reed-muller codes. Physical Review X 2, 041021.\n\n\n\nChao, R. and Reichardt, B. W. (2017). Quantum Error Correction with Only Two Extra Qubits. Physical review letters 121 5, 050502.\n\n\n\nCleve, R. and Gottesman, D. (1997). Efficient computations of encodings for quantum error correction. Physical Review A 56, 76.\n\n\n\nDjordjevic, I. B. (2021). Quantum information processing, quantum computing, and quantum error correction: an engineering approach (Academic Press).\n\n\n\nFowler, A. G.; Mariantoni, M.; Martinis, J. M. and Cleland, A. N. (2012). Surface codes: Towards practical large-scale quantum computation. Physical Review A 86, 032324.\n\n\n\nGarcia, H. J.; Markov, I. L. and Cross, A. W. (2012). Efficient inner-product algorithm for stabilizer states, arXiv preprint arXiv:1210.6646.\n\n\n\nGottesman, D. (1996). Class of quantum error-correcting codes saturating the quantum Hamming bound. Physical Review A 54, 1862.\n\n\n\nGottesman, D. (1997). Stabilizer codes and quantum error correction. Ph.D. Thesis, California Institute of Technology.\n\n\n\nGottesman, D. (1998). The Heisenberg representation of quantum computers. In: International Conference on Group Theoretic Methods in Physics (Citeseer).\n\n\n\nGrassl, M. (2002). Algorithmic aspects of quantum error-correcting codes. Mathematics of Quantum Computation, 223–252.\n\n\n\nGrassl, M. (2011). Variations on encoding circuits for stabilizer quantum codes. In: International Conference on Coding and Cryptology (Springer); pp. 142–158.\n\n\n\nGullans, M. J.; Krastanov, S.; Huse, D. A.; Jiang, L. and Flammia, S. T. (2021). Quantum Coding with Low-Depth Random Circuits. Physical Review X 11, 031066.\n\n\n\nHocquenghem, A. (1959). Codes correcteurs d'erreurs. Chiffers 2, 147–156.\n\n\n\nKitaev, A. (2003). Fault-tolerant quantum computation by anyons. Annals of Physics 303, 2–30.\n\n\n\nKnill, E. and Laflamme, R. (1996). Concatenated quantum codes, arXiv preprint quant-ph/9608012.\n\n\n\nKoenig, R. and Smolin, J. A. (2014). How to efficiently select an arbitrary Clifford group element. Journal of Mathematical Physics 55, 122202.\n\n\n\nKrastanov, S.; de la Cerda, A. S. and Narang, P. (2020). Heterogeneous Multipartite Entanglement Purification for Size-Constrained Quantum Devices, arXiv preprint arXiv:2011.11640.\n\n\n\nLi, Y.; Chen, X. and Fisher, M. P. (2019). Measurement-driven entanglement transition in hybrid quantum circuits. Physical Review B 100, 134306.\n\n\n\nLin, S. and Costello, D. (2024). Error Control Coding (Pearson).\n\n\n\nMacKay, D. J.; Mitchison, G. and McFadden, P. L. (2004). Sparse-graph codes for quantum error correction. IEEE Transactions on Information Theory 50, 2315–2330.\n\n\n\nMuller, D. E. (1954). Application of Boolean algebra to switching circuit design and to error detection. Transactions of the IRE professional group on electronic computers, 6–12.\n\n\n\nNahum, A.; Ruhman, J.; Vijay, S. and Haah, J. (2017). Quantum Entanglement Growth under Random Unitary Dynamics. Physical Review X 7, 031016.\n\n\n\nPanteleev, P. and Kalachev, G. (2021). Degenerate Quantum LDPC Codes With Good Finite Length Performance. Quantum 5, 585, arXiv:1904.02703 [quant-ph].\n\n\n\nPanteleev, P. and Kalachev, G. (Jun 2022). Asymptotically Good Quantum and Locally Testable Classical LDPC Codes. In: Proceedings of the 54th Annual ACM SIGACT Symposium on Theory of Computing (ACM, Rome Italy); pp. 375–388.\n\n\n\nRaaphorst, S. (2003). Reed-muller codes. Carleton University, May 9.\n\n\n\nRaveendran, N.; Rengaswamy, N.; Rozpędek, F.; Raina, A.; Jiang, L. and Vasić, B. (2022). Finite Rate QLDPC-GKP Coding Scheme That Surpasses the CSS Hamming Bound. Quantum 6, 767.\n\n\n\nReed, I. S. (1954). A class of multiple-error-correcting codes and the decoding scheme. IEEE Transactions on Information Theory 4, 38–49.\n\n\n\nRoffe, J.; Cohen, L. Z.; Quintavalle, A. O.; Chandra, D. and Campbell, E. T. (2023). Bias-Tailored Quantum LDPC Codes. Quantum 7, 1005.\n\n\n\nSteane, A. M. (1999). Quantum reed-muller codes. IEEE Transactions on Information Theory 45, 1701–1703.\n\n\n\nSteane, A. M. (2007). A tutorial on quantum error correction. In: PROCEEDINGS-INTERNATIONAL SCHOOL OF PHYSICS ENRICO FERMI, Vol. 162 (IOS Press; Ohmsha; 1999); p. 1.\n\n\n\nVan Den Berg, E. (2021). A simple method for sampling random Clifford operators. In: 2021 IEEE International Conference on Quantum Computing and Engineering (QCE) (IEEE); pp. 54–59.\n\n\n\nWilde, M. M. (2009). Logical operators of quantum codes. Physical Review A 79, 062322.\n\n\n\nYu, S.; Bierbrauer, J.; Dong, Y.; Chen, Q. and Oh, C. H. (2013). All the Stabilizer Codes of Distance 3. IEEE Transactions on Information Theory 59, 5179–5185.\n\n\n\n","category":"page"},{"location":"noise/#noise","page":"Noise Processes","title":"Noise Processes","text":"","category":"section"},{"location":"noise/","page":"Noise Processes","title":"Noise Processes","text":"DocTestSetup = quote\n using QuantumClifford\n using StableRNGs\n rng = StableRNG(42)\nend","category":"page"},{"location":"noise/","page":"Noise Processes","title":"Noise Processes","text":"As seen in the list of possible gates, the simulator is capable of modeling different types of noise. If that is your goal, please consider using the available Monte Carlo simulator or the Symbolic Perturbative Expansion system.","category":"page"},{"location":"noise/","page":"Noise Processes","title":"Noise Processes","text":"The implemented types of noise include:","category":"page"},{"location":"noise/","page":"Noise Processes","title":"Noise Processes","text":"UnbiasedUncorrelatedNoise\nPauliNoise","category":"page"},{"location":"noise/","page":"Noise Processes","title":"Noise Processes","text":"The low-level functionality to work with noise is applynoise!, but most of the time you would probably just want to use PauliError, NoisyGate, NoiseOp and NoiseOpAll.","category":"page"},{"location":"ecc_example_sim/#noisycircuits_pf_ecc_example","page":"ECC example","title":"ECC example with Pauli Frames","text":"","category":"section"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"DocTestSetup = quote\n using QuantumClifford\n using Quantikz\nend","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"warning: The documentation is incomplete\nWaiting for a better documentation than the small example below. Check out also the page on ECC performance evaluators","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"Consider Steane 7-qubit code:","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"using QuantumClifford\nusing QuantumClifford.ECC: Steane7, naive_syndrome_circuit, naive_encoding_circuit, parity_checks, code_s, code_n\nusing Quantikz\n\ncode = Steane7()\nH = parity_checks(code)","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"... and the corresponding encoding circuit","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"ecirc = naive_encoding_circuit(code)","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"... and the corresponding syndrome measurement circuit (the non-fault tolerant one)","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"scirc, _ = naive_syndrome_circuit(code)","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"The most straightforward way to start sampling syndromes is to set up a table of Pauli frames.","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"circuit = [ecirc..., scirc...]\nnframes = 4\nframes = pftrajectories(circuit; trajectories=nframes) # run the sims\npfmeasurements(frames) # extract the measurements","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"The pftrajectories function is multithreaded. If you want more low-level control over these Pauli frame simulations, check out the PauliFrame structure, the other methods of pftrajectories, and the circuit compactifaction function compactify_circuit.","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"If you want to model Pauli errors, use:","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"The helper PauliError for unbiased Pauli noise operation acting on a given qubit\nThe lower level NoiseOp (for a single qubit) or NoiseOpAll (for all qubits) parameterized with a particular noise type, e.g. UnbiasedUncorrelatedNoise","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"errprob = 0.1\nerrors = [PauliError(i,errprob) for i in 1:code_n(code)]\nfullcircuit = [ecirc..., errors..., scirc...]","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"And running this noisy simulation:","category":"page"},{"location":"ecc_example_sim/","page":"ECC example","title":"ECC example","text":"frames = pftrajectories(fullcircuit; trajectories=nframes)\npfmeasurements(frames)","category":"page"},{"location":"stab-algebra-manual/#Stabilizer-Tableau-Algebra-Manual","page":"Manual","title":"Stabilizer Tableau Algebra Manual","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"DocTestSetup = quote\n using QuantumClifford\nend","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"The library consists of two main parts: Tools for working with the algebra of Stabilizer tableaux and tools specifically for efficient Circuit Simulation. This chapter discusses the former \"lower level\" Stabilizer tableau algebra tools.","category":"page"},{"location":"stab-algebra-manual/#Pauli-Operators","page":"Manual","title":"Pauli Operators","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"The PauliOperator object represents multi-qubit Pauli operator (1iIZXY^otimes n). It is stored in memory as a phase (a single byte where 0x0,0x1,0x2,0x3 corresponds to 1i-1-i) and two bit-arrays, for X and for Z components.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"You can create them with a P string.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> P\"-iXZ\"\n-iXZ","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Or by specifying phase and X/Z components:","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> PauliOperator(0x0,Bool[0,1,0],Bool[0,0,1])\n+ _XZ","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Both underscore and I can be used for identity.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> P\"I_XYZ\"\n+ __XYZ","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Multiplication with scalars or other Pauli operators works as expected, as well as tensor products of Pauli operators.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> -1im*P\"X\"\n-iX\n\njulia> P\"X\" * P\"Z\"\n-iY\n\njulia> P\"X\" ⊗ P\"Z\"\n+ XZ","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"One can check for commutativity with comm.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> comm(P\"X\",P\"Z\")\n0x01\n\njulia> comm(P\"XX\",P\"ZZ\")\n0x00","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"And check the phase of a product with prodphase.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> prodphase(P\"X\", P\"Z\")\n0x03\n\njulia> prodphase(P\"X\", P\"iZ\")\n0x00\n\njulia> prodphase(P\"X\",P\"Y\")\n0x01","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Indexing operations are available.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> p = P\"IXYZ\";\n\njulia> p[1], p[2], p[3], p[4]\n((false, false), (true, false), (true, true), (false, true))\n\njulia> p = P\"III\";\n\njulia> p[2] = (true, true);\n\njulia> p\n+ _Y_","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Including fancy indexing:","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> P\"IXYZ\"[[2,3]]\n+ XY\n\njulia> P\"IXYZ\"[[false,true,true,false]]\n+ XY","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"The operator is represented in memory by bit arrays (much denser than using byte arrays).","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> p = P\"-IXYZ\";\n\njulia> p.nqubits, p.xz\n(4, UInt64[0x0000000000000006, 0x000000000000000c])","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Views that give just the X or Z components of the xz bitarray are available through xview and zview.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> xview(P\"XYZI\")\n1-element view(::Vector{UInt64}, 1:1) with eltype UInt64:\n 0x0000000000000003","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"The convenience methods xbit and zbit give you Bool (GF2) vectors.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> xbit(P\"XYZI\")\n4-element Vector{Bool}:\n 1\n 1\n 0\n 0","category":"page"},{"location":"stab-algebra-manual/#Stabilizers","page":"Manual","title":"Stabilizers","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"A Stabilizer object is a tableau of Pauli operators. When the tableau is meant to represent a (pure or mixed) stabilizer state, all of these operators should commute (but that is not enforced, rather Stabilizer is a generic tableau data structure). It is stored in memory as a phase list and a bit-matrix for X and Z components. It can be instantiated by an S string, or with a number of different constructors.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"tip: Stabilizers and Destabilizers\nIn many cases you probably would prefer to use the MixedDestabilizer data structure, as it caries a lot of useful additional information, like tracking rank and destabilizer operators. Stabilizer has mostly a pedagogical value, and it is also used for slightly faster simulation of a particular subset of Clifford operations. See also the data structures discussion page.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> S\"-XX\n +ZZ\"\n- XX\n+ ZZ\n\njulia> Stabilizer([P\"-XX\",P\"+ZZ\"])\n- XX\n+ ZZ\n\njulia> Stabilizer([0x2, 0x0],\n Bool[1 1;\n 0 0],\n Bool[0 0;\n 1 1])\n- XX\n+ ZZ","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Direct sums can be performed,","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> S\"-XX\" ⊗ S\"ZZ\"\n- XX__\n+ __ZZ","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Indexing operations are available, including fancy indexing. Be careful about how phase information gets transferred during sub-indexing.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> s = S\"-XYZ\n -ZIX\n +XIZ\";\n\njulia> s[1]\n- XYZ\n\njulia> s[1,2]\n(true, true)\n\njulia> s[[3,1]]\n+ X_Z\n- XYZ\n\njulia> s[[3,1],[2]]\n+ _\n- Y","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Consistency at creation is not verified so nonsensical stabilizers can be created, both in terms of content and shape.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> S\"iX\n +Z\"\n+iX\n+ Z","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Similarly to the Pauli operators, a bit array representation is used.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> s = S\"-XXX\n +ZZI\n -IZZ\"\n- XXX\n+ ZZ_\n- _ZZ\n\njulia> phases(s), tab(s).xzs\n(UInt8[0x02, 0x00, 0x02], UInt64[0x0000000000000007 0x0000000000000000 0x0000000000000000; 0x0000000000000000 0x0000000000000003 0x0000000000000006])","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"And there are convenience functions that can extract the corresponding binary check matrix.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> stab_to_gf2(s)\n3×6 Matrix{Bool}:\n 1 1 1 0 0 0\n 0 0 0 1 1 0\n 0 0 0 0 1 1","category":"page"},{"location":"stab-algebra-manual/#Canonicalization-of-Stabilizers","page":"Manual","title":"Canonicalization of Stabilizers","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Canonicalization (akin to Gaussian elimination over F(2,2)) is implemented in the canonicalize! function. Besides the default canonicalization prescription, alternative ones are available as described in the canonicalization page.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> s = S\"-XXX\n +ZZX\n +III\";\n\njulia> canonicalize!(s)\n+ YY_\n+ ZZX\n+ ___","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"If phases are inconsequential, the operations can be faster by not tracking and updating them.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> s = S\"-XXX\n +ZZX\n +III\";\n\njulia> canonicalize!(s; phases=false)\n- YY_\n+ ZZX\n+ ___","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"These operations are in place (as customarily signified by \"!\").","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> s = S\"-XXX\n +ZZX\n +III\";\n\njulia> canonicalize!(s; phases=false);\n\njulia> s\n- YY_\n+ ZZX\n+ ___","category":"page"},{"location":"stab-algebra-manual/#Projective-Measurements","page":"Manual","title":"Projective Measurements","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"The project! function is used to perform generic projective measurements.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"tip: Single qubit projections\nIf you know your Pauli measurement operator acts on a single qubit, there are much faster projection functions available, discussed in the next section. Namely projectX!, projectY!, and projectZ!.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"To observe the effect of different projections, we will start with a GHZ state.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> s = S\"-XXX\n +ZZI\n -IZZ\";","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"The project! function returns the new stabilizer, the index where the anticommutation was detected, and the result of the projection (nothing being an undetermined result). For instance here we project on an operator that does not commute with all stabilizer generators.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> project!(copy(s), P\"ZII\")[1]\n+ Z__\n+ ZZ_\n- _ZZ","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Importantly, when there is an undetermined result, we return nothing and leave the phase of the new stabilizer the same as the phase of the projection operator. If you want to perform a Monte Carlo simulation, you need to randomize the phase of the stabilizer at the anticommuting index yourself. For instance, one can do:","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> newstate, anticomindex, result = project!(copy(s), P\"XII\")\n if isnothing(result)\n phases(newstate)[anticomindex] = rand([0x0,0x2])\n end\n result, anticomindex\n(nothing, 2)","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Of course, this is a rather cumbersome way to run a simulation, so we also provide projectrand! which does the necessary randomization automatically, for cases where you do not need the fine grained control of project!.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"We can project on a commuting operator, hence no anticommuting terms (the index is zero), and the result is perfectly determined (-1, or in our convention to represent the phase, 0x2).","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> project!(copy(s), P\"-ZZI\")\n(Stabilizer 3×3, 0, 0x02)","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"When the projection is consistent with the stabilizer (i.e. the measurement result is not nothing), this would trigger an expensive canonicalization procedure in order to calculate the measurement result (unless we are using more advanced data structures to represent the state, which are discussed later). If all you want to know is whether the projection is consistent with the stabilizer, but you do not care about the measurement result, you can skip the canonicalization and calculation of the result.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> project!(copy(s), P\"-ZZI\", keep_result=false)\n(Stabilizer 3×3, 0, nothing)","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Lastly, in either case, you can skip the calculation of the phases as well, if they are unimportant.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> project!(copy(s), P\"ZZI\", phases=false)\n(Stabilizer 3×3, 0, 0x00)","category":"page"},{"location":"stab-algebra-manual/#Sparse-single-qubit-measurements","page":"Manual","title":"Sparse single-qubit measurements","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"In many circumstances only a single-qubit operator is being measured. In that case one should use the projectX!, projectY!, and projectZ! functions as they are much faster thanks to tracking only a single qubit. They have versions that randomize the phase as necessary as well: projectXrand!, projectYrand!, and projectZrand!.","category":"page"},{"location":"stab-algebra-manual/#Gate-like-interface","page":"Manual","title":"Gate-like interface","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"If you do not need all this boilerplate, and especially if you want to perform the randomization automatically, you can use the gate-like \"symbolic\" objects sMX, sMY, and sMZ, that perform the measurement and the necessary randomization of phase. If the measurement result is to be stored, you can use the Register structure that stores both stabilizer tableaux and bit values.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> state = Register(ghz(3), [false,false])\nRegister{Vector{UInt8}, Matrix{UInt64}}(Rank 3 stabilizer\n+ Z__\n+ _X_\n+ __X\n═════\n+ XXX\n+ ZZ_\n+ Z_Z\n═════\n, Bool[0, 0])\n\njulia> apply!(state, sMX(3,2)) # which qubit is measured and in which bit it is stored\nRegister{Vector{UInt8}, Matrix{UInt64}}(Rank 3 stabilizer\n+ Z__\n+ _X_\n+ Z_Z\n═════\n+ XXX\n+ ZZ_\n- __X\n═════\n, Bool[0, 1])\n\njulia> bitview(state)\n2-element Vector{Bool}:\n 0\n 1","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Or you can use the projectXrand!, projectYrand!, and projectZrand! if you prefer a function-call interface.","category":"page"},{"location":"stab-algebra-manual/#Partial-Traces","page":"Manual","title":"Partial Traces","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Partial trace (using traceout!) over even a single qubit might cause many of them to decohere due to entanglement.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> ghz = S\"XXX\n ZZ_\n _ZZ\";\n\njulia> traceout!(ghz, [1])\n+ _ZZ\n+ ___\n+ ___","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"This is somewhat more elegant when the datastructure being used explicitly supports mixed states.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> ghz = MixedStabilizer(S\"XXX\n ZZ_\n _ZZ\");\n\njulia> traceout!(ghz, [1])\n+ _ZZ","category":"page"},{"location":"stab-algebra-manual/#Generating-a-Pauli-Operator-with-Stabilizer-Generators","page":"Manual","title":"Generating a Pauli Operator with Stabilizer Generators","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"The generate! function attempts to generate a Pauli operator by multiplying together the operators belonging to a given stabilizer (or reports their independence). This particular function requires the stabilizer to be already canonicalized.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> s = S\"-XXX\n +ZZI\n -IZZ\";\n\njulia> s = canonicalize!(s)\n- XXX\n- Z_Z\n- _ZZ","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"It modifies the Pauli operator in place, reducing it to identity if possible. The leftover phase is present to indicate if the phase itself could not have been canceled. The list of indices specifies which rows of the stabilizer were used to generated the desired Pauli operator.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> generate!(P\"XYY\", s)\n(- ___, [1, 3])","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Phases can be neglected, for higher performance.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> generate!(P\"XYY\", s, phases=false)\n(+ ___, [1, 3])","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"If the Pauli operator can not be generated by the stabilizer, nothing value is returned.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> generate!(P\"ZZZ\", s)\n\njulia> generate!(P\"XZX\", s)\n\njulia> generate!(P\"YYY\", s)","category":"page"},{"location":"stab-algebra-manual/#Clifford-Operators","page":"Manual","title":"Clifford Operators","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"The CliffordOperator structure represents a linear mapping between stabilizers (which should also preserve commutation relationships, but that is not checked at instantiation). These are n-qubit dense tableaux, representing an operation on n-qubit states. For single- or two-qubit gates, it is much more efficient to use small sparse symbolic clifford operators. A number of predefined Clifford operators are available, their name prefixed with t to mark them as dense tableaux.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> tHadamard\nX₁ ⟼ + Z\nZ₁ ⟼ + X\n\njulia> tPhase\nX₁ ⟼ + Y\nZ₁ ⟼ + Z\n\njulia> tCNOT\nX₁ ⟼ + XX\nX₂ ⟼ + _X\nZ₁ ⟼ + Z_\nZ₂ ⟼ + ZZ\n\njulia> tId1\nX₁ ⟼ + X\nZ₁ ⟼ + Z","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Chaining and tensor products are possible. Same for qubit permutations.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> tHadamard ⊗ tPhase\nX₁ ⟼ + Z_\nX₂ ⟼ + _Y\nZ₁ ⟼ + X_\nZ₂ ⟼ + _Z\n\njulia> tHadamard * tPhase\nX₁ ⟼ - Y\nZ₁ ⟼ + X\n\njulia> permute(tCNOT, [2,1])\nX₁ ⟼ + X_\nX₂ ⟼ + XX\nZ₁ ⟼ + ZZ\nZ₂ ⟼ + _Z","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"You can create custom Clifford operators with C-strings or with a list of Pauli operators.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> C\"-ZZ\n +_Z\n -X_\n +XX\"\nX₁ ⟼ - ZZ\nX₂ ⟼ + _Z\nZ₁ ⟼ - X_\nZ₂ ⟼ + XX\n\njulia> CliffordOperator([P\"-ZZ\", P\"_Z\", P\"-X_\", P\"XX\"])\nX₁ ⟼ - ZZ\nX₂ ⟼ + _Z\nZ₁ ⟼ - X_\nZ₂ ⟼ + XX","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Naturally, the operators can be applied to stabilizer states. This includes high performance in-place operations (and the phase can be neglected with phases=false for faster computation).","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> tCNOT * S\"X_\"\n+ XX\n\njulia> s = S\"X_\";\n\njulia> apply!(s,tCNOT)\n+ XX","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Sparse applications where a small Clifford operator is applied only on a particular subset of a larger stabilizer is also possible, but in such circumstances it is useful to consider using symbolic operators too.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> s = S\"Z_YX\";\n\njulia> apply!(s, tCNOT, [4,2]) # Apply the CNOT on qubits 4 and 2\n+ ZXYX","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Pauli operators act as Clifford operators too (but they are rather boring, as they only change signs).","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> P\"XII\" * S\"ZXX\"\n- ZXX","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Internally, the CliffordOperator structure simply stores the tableau representation of the operation.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"The apply! function is efficiently multithreaded for CliffordOperators. To start multithreaded Julia, use julia -t where specifies the number of threads.","category":"page"},{"location":"stab-algebra-manual/#Symbolic-Clifford-Operators","page":"Manual","title":"Symbolic Clifford Operators","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Much faster implementations for a number of common Clifford operators are available. They are stored as special named structs, instead of as a full tableau. These are the subtypes of AbstractSingleQubitOperator and AbstractTwoQubitOperator. Currently these are:","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"using QuantumClifford # hide\nusing InteractiveUtils # hide\nsubtypes(QuantumClifford.AbstractSingleQubitOperator)","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"subtypes(QuantumClifford.AbstractTwoQubitOperator)","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Generally, they have the prefix s for symbolic/small/sparse. They are used slightly differently, as one needs to specify the qubits on which they act while instantiating them:","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> sHadamard(2)\nsHadamard on qubit 2\nX₁ ⟼ + Z\nZ₁ ⟼ + X\n\njulia> sHadamard(2)*S\"XXX\"\n+ XZX\n\njulia> sCNOT(2,3)*S\"XYY\"\n- XXZ","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"The apply! function is efficiently multithreaded for these symbolic operators as well. To start multithreaded Julia, use julia -t where specifies the number of threads.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Symbolic projectors on single qubits also exist: sMX, sMY, sMZ. When used with the Register state representation, they can store the measurement results in the corresponding classical register.","category":"page"},{"location":"stab-algebra-manual/#Destabilizers","page":"Manual","title":"Destabilizers","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Slightly abusing the name: What we call \"destabilizers\" here is a stabilizer and its destabilizing operators saved together. They are implemented with the Destabilizer object and are initialized from a stabilizer.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> s=S\"-XXX\n -ZZI\n +IZZ\";\n\njulia> d = Destabilizer(s)\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ Z__\n+ _X_\n+ __X\n𝒮𝓉𝒶𝒷━\n- XXX\n- ZZ_\n- Z_Z","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"They have convenience methods to extract only the stabilizer and destabilizer pieces:","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> stabilizerview(d)\n- XXX\n- ZZ_\n- Z_Z\n\njulia> destabilizerview(d)\n+ Z__\n+ _X_\n+ __X","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Importantly commuting projections are much faster when tracking the destabilizer as canonicalization is not necessary (an mathcalO(n^2) complexity because it avoids the expensive mathcalO(n^3) canonicalization operation).","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> project!(d,P\"ZZI\")\n(Destablizer 3×3, 0, 0x02)","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Non-commuting projections are just as fast as when using only stabilizers.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> project!(d,P\"ZZZ\")\n(Destablizer 3×3, 1, nothing)","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Clifford operations can be applied the same way they are applied to stabilizers.","category":"page"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"julia> apply!(d,tCNOT⊗tHadamard)\n𝒟ℯ𝓈𝓉𝒶𝒷\n- X_Z\n+ XXZ\n+ X__\n𝒮𝓉𝒶𝒷━\n+ _ZX\n- _Z_\n- Z_X","category":"page"},{"location":"stab-algebra-manual/#Mixed-States","page":"Manual","title":"Mixed States","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"Both the Stabilizer and Destabilizer structures have more general forms that enable work with mixed stabilizer states. They are the MixedStabilizer and MixedDestabilizer structures, described in Mixed States. More information that can be seen in the data structures page, which expands upon the algorithms available for each structure.","category":"page"},{"location":"stab-algebra-manual/#Random-States-and-Circuits","page":"Manual","title":"Random States and Circuits","text":"","category":"section"},{"location":"stab-algebra-manual/","page":"Manual","title":"Manual","text":"random_clifford, random_stabilizer, and enumerate_cliffords can be used for the generation of random states.","category":"page"},{"location":"tutandpub/#tutandpub","page":"Tutorials and Publications","title":"Tutorials and Publications","text":"","category":"section"},{"location":"tutandpub/","page":"Tutorials and Publications","title":"Tutorials and Publications","text":"This list has a number of notebooks with tutorials, examples, and reproduction of published results (some of these results originally obtained with this very library).","category":"page"},{"location":"tutandpub/#On-the-topic-of-explicit-use-of-the-Tableaux-formalism-for-Stabilizer-states","page":"Tutorials and Publications","title":"On the topic of explicit use of the Tableaux formalism for Stabilizer states","text":"","category":"section"},{"location":"tutandpub/","page":"Tutorials and Publications","title":"Tutorials and Publications","text":"Quantum coding with low-depth random circuits reproducing results from (Gullans et al., 2021). view on nbviewer.jupyter.org","category":"page"},{"location":"tutandpub/#On-the-Monte-Carlo-and-Perturbative-Expansions-for-**Noisy**-Clifford-circuits","page":"Tutorials and Publications","title":"On the Monte Carlo and Perturbative Expansions for Noisy Clifford circuits","text":"","category":"section"},{"location":"tutandpub/","page":"Tutorials and Publications","title":"Tutorials and Publications","text":"In-depth study of multi-partite entanglement purification circuits reproducing results from (Krastanov et al., 2020). view on nbviewer.jupyter.org\nComparing the Monte Carlo and Perturbative method for noisy circuit simulations. view on nbviewer.jupyter.org\nShowcasing symbolic perturbative expansions of noisy circuits. view on nbviewer.jupyter.org","category":"page"},{"location":"noisycircuits_API/#Full-API-(autogenerated)","page":"API","title":"Full API (autogenerated)","text":"","category":"section"},{"location":"noisycircuits_API/","page":"API","title":"API","text":"warning: Unstable\nThis is experimental functionality with an unstable API.","category":"page"},{"location":"noisycircuits_API/","page":"API","title":"API","text":"Modules = [QuantumClifford.Experimental.NoisyCircuits]\nPrivate = false","category":"page"},{"location":"noisycircuits_API/#QuantumClifford.Experimental.NoisyCircuits.ConditionalGate","page":"API","title":"QuantumClifford.Experimental.NoisyCircuits.ConditionalGate","text":"A conditional gate that either performs truegate or falsegate, depending on the value of controlbit.\n\n\n\n\n\n","category":"type"},{"location":"noisycircuits_API/#QuantumClifford.Experimental.NoisyCircuits.DecisionGate","page":"API","title":"QuantumClifford.Experimental.NoisyCircuits.DecisionGate","text":"A conditional gate that performs one of the gates, depending on the output of decisionfunction applied to the entire classical bit register.\n\n\n\n\n\n","category":"type"},{"location":"noisycircuits_API/#QuantumClifford.Experimental.NoisyCircuits.NoisyBellMeasurement","page":"API","title":"QuantumClifford.Experimental.NoisyCircuits.NoisyBellMeasurement","text":"A Bell measurement in which each of the measured qubits has a chance to have flipped.\n\n\n\n\n\n","category":"type"},{"location":"noisycircuits_perturb/#noisycircuits_perturb","page":"Perturbative Expansions","title":"Perturbative expansions for simulating noisy Clifford circuits","text":"","category":"section"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"DocTestSetup = quote\n using QuantumClifford\n using QuantumClifford.Experimental.NoisyCircuits\n using Quantikz\nend","category":"page"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"warning: Unstable\nThis is experimental functionality with an unstable API.","category":"page"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"Import with using QuantumClifford.Experimental.NoisyCircuits.","category":"page"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"This module enables the simulation of noisy Clifford circuits through a perturbative expansion in the noise parameter (assuming the noise is small). Instead of simulating many Monte Carlo trajectories, only the leading order trajectories are exhaustively enumerated and simulated.","category":"page"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"Here is an example of a purification circuit (the same circuit seen in the Monte Carlo example)","category":"page"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"using QuantumClifford # hide\nusing QuantumClifford.Experimental.NoisyCircuits # hide\nusing Quantikz # hide\ngood_bell_state = S\"XX\n ZZ\"\ncanonicalize_rref!(good_bell_state)\ninitial_state = MixedDestabilizer(good_bell_state⊗good_bell_state)\n\ng1 = sCNOT(1,3) # CNOT between qubit 1 and qubit 3 (both with Alice)\ng2 = sCNOT(2,4) # CNOT between qubit 2 and qubit 4 (both with Bob)\nm = BellMeasurement([sMX(3),sMX(4)]) # Bell measurement on qubit 3 and 4\nv = VerifyOp(good_bell_state,[1,2]) # Verify that qubit 1 and 2 indeed form a good Bell pair\nepsilon = 0.01 # The error rate\nn = NoiseOpAll(UnbiasedUncorrelatedNoise(epsilon))\n\n# This circuit performs a depolarization at rate `epsilon` to all qubits,\n# then bilater CNOT operations\n# then a Bell measurement\n# followed by checking whether the final result indeed corresponds to the correct Bell pair.\ncircuit = [n,g1,g2,m,v]\n\npetrajectories(initial_state, circuit)","category":"page"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"For more examples, see the notebook comparing the Monte Carlo and Perturbative method or this tutorial on entanglement purification.","category":"page"},{"location":"noisycircuits_perturb/#Symbolic-expansions","page":"Perturbative Expansions","title":"Symbolic expansions","text":"","category":"section"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"The perturbative expansion method works with symbolic variables as well. One can use any of the symbolic libraries available in Julia and simply plug symbolic parameters in lieu of numeric parameters. A detailed example is available as a Jupyter notebook.","category":"page"},{"location":"noisycircuits_perturb/#Interface-for-custom-operations","page":"Perturbative Expansions","title":"Interface for custom operations","text":"","category":"section"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"If you want to create a custom gate type (e.g. calling it Operation), you need to definite the following methods.","category":"page"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"applyop_branches!(s::T, g::Operation; max_order=1)::Vector{Tuple{T,Symbol,Real,Int}} where T is a tableaux type like Stabilizer or a Register. The Symbol is the status of the operation, the Real is the probability for that branch, and the Int is the order of that branch.","category":"page"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"There is also applynoise_branches! which is convenient for use in NoisyGate, but you can also just make up your own noise operator simply by implementing applyop_branches! for it.","category":"page"},{"location":"noisycircuits_perturb/","page":"Perturbative Expansions","title":"Perturbative Expansions","text":"You can also consult the list of implemented operators.","category":"page"},{"location":"graphs/#Graph-States","page":"Graph States","title":"Graph States","text":"","category":"section"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"warning: The `graphstate` API is not considered stable\ngraphstate returns a lot of information about encoding a given stabilizer state in a graph. A different API is being designed that streamlines the work with graph states.","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"Conversion to and from graph states is possible.","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"Consider a GHZ state:","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"using QuantumClifford # hide\nghz(4)","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"It can be converted to a graph state with graphstate","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"graphstate(ghz(4))[1]","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"using Random; Random.seed!(1); using QuantumClifford, GraphMakie, CairoMakie;\nf = Figure(size=(200,200))\na = Axis(f[1,1])\ngraphplot!(a,graphstate(ghz(4))[1])\nhidedecorations!(a); hidespines!(a)\na.aspect = DataAspect()\nsave(\"ghz4graph.png\", f); nothing","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"(Image: )","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"Notice that the initial GHZ state was not in the typical graph state form. We can see that explicitly by converting back and forth between the two forms:","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"julia> using Graphs, QuantumClifford\n\njulia> ghz(4)\n+ XXXX\n+ ZZ__\n+ _ZZ_\n+ __ZZ\n\njulia> Stabilizer(Graph(ghz(4)))\n+ XZZZ\n+ ZX__\n+ Z_X_\n+ Z__X","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"There is a set of single-qubit operations that can convert any stabilizer tableau into a state representable as a graph. These transformations are performed implicitly by the Graph constructor when converting from a Stabilizer. If you need the explicit transformation you can use the graphstate function that specifies which qubits require a Hadamard, Inverse Phase, or Phase Flip gate. The graph_gatesequence or graph_gate helper functions can be used to generate the exact operations:","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"julia> s = ghz(4)\n+ XXXX\n+ ZZ__\n+ _ZZ_\n+ __ZZ\n\njulia> g, h_idx, ip_idx, z_idx = graphstate(s);\n\njulia> gate = graph_gate(h_idx, ip_idx, z_idx, nqubits(s))\nX₁ ⟼ + X___\nX₂ ⟼ + _Z__\nX₃ ⟼ + __Z_\nX₄ ⟼ + ___Z\nZ₁ ⟼ + Z___\nZ₂ ⟼ + _X__\nZ₃ ⟼ + __X_\nZ₄ ⟼ + ___X\n\njulia> canonicalize!(apply!(s,gate)) == canonicalize!(Stabilizer(g))\ntrue","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"These converters also provides for a convenient way to create graph and cluster states, by using the helper constructors provided in Graphs.jl.","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"julia> Stabilizer(grid([4,1])) # Linear cluster state\n+ XZ__\n+ ZXZ_\n+ _ZXZ\n+ __ZX\n\njulia> Stabilizer(grid([2,2])) # Small 2D cluster state\n+ XZZ_\n+ ZX_Z\n+ Z_XZ\n+ _ZZX","category":"page"},{"location":"graphs/","page":"Graph States","title":"Graph States","text":"Graphs are represented with the Graphs.jl package and plotting can be done both in Plots.jl and Makie.jl (with GraphMakie).","category":"page"},{"location":"ECC_API/#Full-ECC-API-(autogenerated)","page":"API","title":"Full ECC API (autogenerated)","text":"","category":"section"},{"location":"ECC_API/","page":"API","title":"API","text":"Modules = [QuantumClifford.ECC]\nPrivate = false","category":"page"},{"location":"ECC_API/#QuantumClifford.ECC.CSS","page":"API","title":"QuantumClifford.ECC.CSS","text":"An arbitrary CSS error correcting code defined by its X and Z checks.\n\njulia> CSS([0 1 1 0; 1 1 0 0], [1 1 1 1]) |> parity_checks\n+ _XX_\n+ XX__\n+ ZZZZ\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.CircuitCode","page":"API","title":"QuantumClifford.ECC.CircuitCode","text":"CircuitCode is defined by a given encoding circuit circ.\n\nn: qubit number\ncirc: the encoding circuit\nencode_qubits: the qubits to be encoded\n\nSee also: random_all_to_all_circuit_code, random_brickwork_circuit_code\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.Cleve8","page":"API","title":"QuantumClifford.ECC.Cleve8","text":"A pedagogical example of a quantum error correcting [8,3] code used in (Cleve and Gottesman, 1997).\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.CommutationCheckECCSetup","page":"API","title":"QuantumClifford.ECC.CommutationCheckECCSetup","text":"Configuration for ECC evaluator that does not simulate any ECC circuits, rather it simply checks the commutation of the parity check and the Pauli error.\n\nThis is much faster than any other simulation method, but it is incapable of noisy-circuit simulations and thus useless for fault-tolerance studies.\n\nSee also: NaiveSyndromeECCSetup, ShorSyndromeECCSetup\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.Concat","page":"API","title":"QuantumClifford.ECC.Concat","text":"Concat(c₁, c₂) is a code concatenation of two quantum codes (Knill and Laflamme, 1996).\n\nThe inner code c₁ and the outer code c₂. The construction is the following: replace each qubit in code c₂ with logical qubits encoded by code c₁. The resulting code will have n = n₁ × n₂ qubits and k = k₁ × k₂ logical qubits.\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.Gottesman","page":"API","title":"QuantumClifford.ECC.Gottesman","text":"The family of [[2ʲ, 2ʲ - j - 2, 3]] Gottesman codes, also known as quantum Hamming codes, as described in Gottesman's 1997 PhD thesis and in (Gottesman, 1996).\n\nYou might be interested in consulting (Yu et al., 2013) and (Chao and Reichardt, 2017) as well.\n\nThe ECC Zoo has an entry for this family\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.NaiveSyndromeECCSetup","page":"API","title":"QuantumClifford.ECC.NaiveSyndromeECCSetup","text":"Configuration for ECC evaluator that runs the simplest syndrome measurement circuit.\n\nThe circuit is being simulated (as opposed to doing only a quick commutation check). This circuit would give poor performance if there is non-zero gate noise.\n\nSee also: CommutationCheckECCSetup, ShorSyndromeECCSetup\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.QuantumReedMuller","page":"API","title":"QuantumClifford.ECC.QuantumReedMuller","text":"The family of [[2ᵐ - 1, 1, 3]] CSS Quantum-Reed-Muller codes, as discovered by Steane in his 1999 paper (Steane, 1999).\n\nQuantum codes are constructed from shortened Reed-Muller codes RM(1, m), by removing the first row and column of the generator matrix Gₘ. Similarly, we can define truncated dual codes RM(m - 2, m) using the generator matrix Hₘ (Anderson et al., 2014). The quantum Reed-Muller codes QRM(m) derived from RM(1, m) are CSS codes. \n\nGiven that the stabilizers of the quantum code are defined through the generator matrix of the classical code, the minimum distance of the quantum code corresponds to the minimum distance of the dual classical code, which is d = 3, thus it can correct any single qubit error. Since one stabilizer from the original and one from the dual code are removed in the truncation process, the code parameters are [[2ᵐ - 1, 1, 3]].\n\nYou might be interested in consulting (Anderson et al., 2014) and (Campbell et al., 2012) as well.\n\nThe ECC Zoo has an entry for this family.\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.ShorSyndromeECCSetup","page":"API","title":"QuantumClifford.ECC.ShorSyndromeECCSetup","text":"Configuration for ECC evaluators that simulate the Shor-style syndrome measurement (without a flag qubit).\n\nThe simulated circuit includes:\n\nperfect noiseless encoding (encoding and its fault tolerance are not being studied here)\none round of \"memory noise\" after the encoding but before the syndrome measurement\nperfect preparation of entangled ancillary qubits\nnoisy Shor-style syndrome measurement (only two-qubit gate noise)\nnoiseless \"logical state measurement\" (providing the comparison data when evaluating the decoder)\n\nSee also: CommutationCheckECCSetup, NaiveSyndromeECCSetup\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.Surface","page":"API","title":"QuantumClifford.ECC.Surface","text":"The planar surface code refers to the code (Kitaev, 2003) in a 2D lattice with open boundaries.\n\nIllustration of a 3×2 surface code, where qubits are located on the edges:\n\n|---1--(Z)--2---|---3---|\n| (X) 7 8 o\n|---4---|---5---|---6---|\n| o o o\n| | | |\n\nThe surface code has open boundary conditions, unlike the toric code. To this end, we remove qubits (denoted by \"o\") and parity checks on the right and bottom sides.\n\nFaces like (1,4,7) have X checks, and crosses like (1,2,7) have Z checks. Due to the removal of the bottom and right sides, we have some 3-qubit checks on the boundaries.\n\njulia> parity_checks(Surface(3,2))\n+ X__X__X_\n+ _X__X_XX\n+ __X__X_X\n+ ZZ____Z_\n+ _ZZ____Z\n+ ___ZZ_Z_\n+ ____ZZ_Z\n\nMore information can be seen in (Fowler et al., 2012).\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.TableDecoder","page":"API","title":"QuantumClifford.ECC.TableDecoder","text":"A simple look-up table decoder for error correcting codes.\n\nThe lookup table contains only weight=1 errors, thus it is small, but at best it provides only for distance=3 decoding.\n\nThe size of the lookup table would grow exponentially quickly for higher distances.\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.Toric","page":"API","title":"QuantumClifford.ECC.Toric","text":"The Toric code (Kitaev, 2003).\n\nIllustration of a 2x2 toric code, where qubits are located on the edges:\n\n|--1-(Z)-2--|\n| (X) 5 6\n|--3--|--4--|\n| 7 8\n| | |\n\nIt is important to note that the toric code has periodic boundary conditions, which means that the top and bottom sides are essentially glued together, as are the left and right sides.\n\nFaces like (1,3,5,6) have X checks, and crosses like (1,2,5,7) have Z checks.\n\njulia> parity_checks(Toric(2,2))\n+ X_X_XX__\n+ _X_XXX__\n+ X_X___XX\n+ ZZ__Z_Z_\n+ ZZ___Z_Z\n+ __ZZZ_Z_\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumClifford.ECC.BeliefPropDecoder-Tuple","page":"API","title":"QuantumClifford.ECC.BeliefPropDecoder","text":"A simple Belief Propagation decoder built around tools from LDPCDecoders.jl.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.BitFlipDecoder-Tuple","page":"API","title":"QuantumClifford.ECC.BitFlipDecoder","text":"An Iterative Bitflip decoder built around tools from LDPCDecoders.jl.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.LPCode-Tuple","page":"API","title":"QuantumClifford.ECC.LPCode","text":"Lifted product codes ((Panteleev and Kalachev, 2021), (Panteleev and Kalachev, Jun 2022))\n\nImplemented as a package extension with Hecke. Check the QuantumClifford documentation for more details on that extension.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.LiftedCode-Tuple","page":"API","title":"QuantumClifford.ECC.LiftedCode","text":"Classical codes lifted over a group algebra, used for lifted product code construction ((Panteleev and Kalachev, 2021), (Panteleev and Kalachev, Jun 2022))\n\nImplemented as a package extension with Hecke. Check the QuantumClifford documentation for more details on that extension.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.PyBeliefPropDecoder-Tuple","page":"API","title":"QuantumClifford.ECC.PyBeliefPropDecoder","text":"A Belief Propagation decoder built around tools from the python package ldpc available from the julia package PyQDecoders.jl.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.PyBeliefPropOSDecoder-Tuple","page":"API","title":"QuantumClifford.ECC.PyBeliefPropOSDecoder","text":"A Belief Propagation decoder with ordered statistics decoding, built around tools from the python package ldpc available from the julia package PyQDecoders.jl.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.PyMatchingDecoder-Tuple","page":"API","title":"QuantumClifford.ECC.PyMatchingDecoder","text":"A perfect matching decoder built around tools from the python package pymatching available from the julia package PyQDecoders.jl.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.bicycle_codes","page":"API","title":"QuantumClifford.ECC.bicycle_codes","text":"Implemented in a package extension with Hecke.\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.code_k-Tuple{Stabilizer}","page":"API","title":"QuantumClifford.ECC.code_k","text":"The number of logical qubits in a code.\n\nNote that when redundant rows exist in the parity check matrix, the number of logical qubits code_k(c) will be greater than code_n(c) - code_s(c), where the difference equals the redundancy.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.code_n","page":"API","title":"QuantumClifford.ECC.code_n","text":"The number of physical qubits in a code.\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.code_s","page":"API","title":"QuantumClifford.ECC.code_s","text":"The number of stabilizer checks in a code. They might not be all linearly independent, thus code_s >= code_n-code_k. For the number of linearly independent checks you can use LinearAlgebra.rank.\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.distance","page":"API","title":"QuantumClifford.ECC.distance","text":"The distance of a code.\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.evaluate_decoder-Tuple{QuantumClifford.ECC.AbstractSyndromeDecoder, QuantumClifford.ECC.AbstractECCSetup, Int64}","page":"API","title":"QuantumClifford.ECC.evaluate_decoder","text":"Evaluate the performance of a given decoder (e.g. TableDecoder) and a given style of running an ECC code (e.g. ShorSyndromeECCSetup)\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.evaluate_decoder-Tuple{QuantumClifford.ECC.AbstractSyndromeDecoder, Vararg{Any, 5}}","page":"API","title":"QuantumClifford.ECC.evaluate_decoder","text":"Evaluate the performance of an error-correcting circuit.\n\nThis method requires you give the circuit that performs both syndrome measurements and (probably noiseless) logical state measurements. The faults matrix that translates an error vector into corresponding logical errors is necessary as well.\n\nThis is a relatively barebones method that assumes the user prepares necessary circuits, etc. It is a method that is used internally by more user-frienly methods providing automatic conversion of codes and noise models to the necessary noisy circuits.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.faults_matrix-Tuple{Stabilizer}","page":"API","title":"QuantumClifford.ECC.faults_matrix","text":"Error-to-logical-observable map (a.k.a. fault matrix) of a code.\n\nFor a code with n physical qubits and k logical qubits this function returns a 2k × 2n binary matrix O such that O[i,j] is true if the logical observable of index i is flipped by the single physical qubit error of index j. Indexing is such that:\n\nO[1:k,:] is the error-to-logical-X-observable map (logical X observable, i.e. triggered by logical Z errors)\nO[k+1:2k,:] is the error-to-logical-Z-observable map\nO[:,1:n] is the X-physical-error-to-logical-observable map\nO[n+1:2n,:] is the Z-physical-error-to-logical-observable map\n\nE.g. for k=1, n=10, then if O[2,5] is true, then the logical Z observable is flipped by a X₅ error; and if O[1,12] is true, then the logical X observable is flipped by a Z₂ error.\n\nOf note is that there is a lot of freedom in choosing the logical operations! A logical operator multiplied by a stabilizer operator is still a logical operator. Similarly there is a different fault matrix for each choice of logical operators. But once the logical operators are picked, the fault matrix is fixed.\n\nBelow we show an example that uses the Shor code. While it is not the smallest code, it is a convenient choice to showcase the importance of the fault matrix when dealing with degenerate codes where a correction operation and an error do not need to be the same.\n\nFirst, consider a single-qubit error, potential correction operations, and their effect on the Shor code:\n\njulia> using QuantumClifford.ECC: faults_matrix, Shor9\n\njulia> state = MixedDestabilizer(Shor9())\n𝒟ℯ𝓈𝓉𝒶𝒷━━━━━\n+ Z________\n+ ___Z_____\n+ _X_______\n+ __X______\n+ ____X____\n+ _____X___\n+ ______X__\n+ _______X_\n𝒳ₗ━━━━━━━━━\n+ ______XXX\n𝒮𝓉𝒶𝒷━━━━━━━\n+ XXX___XXX\n+ ___XXXXXX\n+ ZZ_______\n+ Z_Z______\n+ ___ZZ____\n+ ___Z_Z___\n+ ______Z_Z\n+ _______ZZ\n𝒵ₗ━━━━━━━━━\n+ Z__Z____Z\n\njulia> err_Z₁ = single_z(9,1) # the error we will simulate\n+ Z________\n\njulia> cor_Z₂ = single_z(9,2) # the correction operation we will perform\n+ _Z_______\n\njulia> err_Z₁ * state # observe that one of the syndrome bits is now flipped\n𝒟ℯ𝓈𝓉𝒶𝒷━━━━━\n+ Z________\n+ ___Z_____\n+ _X_______\n+ __X______\n+ ____X____\n+ _____X___\n+ ______X__\n+ _______X_\n𝒳ₗ━━━━━━━━━\n+ ______XXX\n𝒮𝓉𝒶𝒷━━━━━━━\n- XXX___XXX\n+ ___XXXXXX\n+ ZZ_______\n+ Z_Z______\n+ ___ZZ____\n+ ___Z_Z___\n+ ______Z_Z\n+ _______ZZ\n𝒵ₗ━━━━━━━━━\n+ Z__Z____Z\n\njulia> cor_Z₂ * err_Z₁ * state # we are back to a good code state\n𝒟ℯ𝓈𝓉𝒶𝒷━━━━━\n+ Z________\n+ ___Z_____\n- _X_______\n+ __X______\n+ ____X____\n+ _____X___\n+ ______X__\n+ _______X_\n𝒳ₗ━━━━━━━━━\n+ ______XXX\n𝒮𝓉𝒶𝒷━━━━━━━\n+ XXX___XXX\n+ ___XXXXXX\n+ ZZ_______\n+ Z_Z______\n+ ___ZZ____\n+ ___Z_Z___\n+ ______Z_Z\n+ _______ZZ\n𝒵ₗ━━━━━━━━━\n+ Z__Z____Z\n\njulia> bad_Z₆Z₉ = single_z(9,6) * single_z(9,9) # a different \"correction\" operation\n+ _____Z__Z\n\njulia> bad_Z₆Z₉ * err_Z₁ * state # the syndrome is trivial, but now we have a logical error\n𝒟ℯ𝓈𝓉𝒶𝒷━━━━━\n+ Z________\n+ ___Z_____\n+ _X_______\n+ __X______\n+ ____X____\n- _____X___\n+ ______X__\n+ _______X_\n𝒳ₗ━━━━━━━━━\n- ______XXX\n𝒮𝓉𝒶𝒷━━━━━━━\n+ XXX___XXX\n+ ___XXXXXX\n+ ZZ_______\n+ Z_Z______\n+ ___ZZ____\n+ ___Z_Z___\n+ ______Z_Z\n+ _______ZZ\n𝒵ₗ━━━━━━━━━\n+ Z__Z____Z\n\nThe success of cor_Z₂ and the failure of bad_Z₆Z₉ can be immediately seen through the fault matrix, as the wrong \"correction\" does not result in the same logical flips ad the error:\n\njulia> O = faults_matrix(Shor9())\n2×18 BitMatrix:\n 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1\n 1 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0\n\njulia> O * stab_to_gf2(err_Z₁)\n2-element Vector{Int64}:\n 0\n 0\n\njulia> O * stab_to_gf2(cor_Z₂)\n2-element Vector{Int64}:\n 0\n 0\n\njulia> O * stab_to_gf2(bad_Z₆Z₉)\n2-element Vector{Int64}:\n 1\n 0\n\nWhile its use in this situation is rather contrived, the fault matrix is incredibly useful when running large scale simulations in which we want a separate fast error sampling process, (e.g. with Pauli frames) and a syndrome decoding process, without coupling between them. We just gather all our syndrome measurement and logical observables from the Pauli frame simulations, and then use them with the fault matrix in the syndrome decoding simulation.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.generalized_bicycle_codes","page":"API","title":"QuantumClifford.ECC.generalized_bicycle_codes","text":"Implemented in a package extension with Hecke.\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.iscss-Union{Tuple{Type{T}}, Tuple{T}} where T<:QuantumClifford.ECC.AbstractECC","page":"API","title":"QuantumClifford.ECC.iscss","text":"Check if the code is CSS.\n\nReturn nothing if unknown from the type.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.isdegenerate","page":"API","title":"QuantumClifford.ECC.isdegenerate","text":"Check if the code is degenerate with respect to a given set of error or with respect to all \"up to d physical-qubit\" errors (defaulting to d=1).\n\njulia> using QuantumClifford.ECC\n\njulia> isdegenerate(Shor9(), [single_z(9,1), single_z(9,2)])\ntrue\n\njulia> isdegenerate(Shor9(), [single_z(9,1), single_x(9,1)])\nfalse\n\njulia> isdegenerate(Steane7(), 1)\nfalse\n\njulia> isdegenerate(Steane7(), 2)\ntrue\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.naive_encoding_circuit-Tuple{Any}","page":"API","title":"QuantumClifford.ECC.naive_encoding_circuit","text":"Encoding physical qubits into a larger logical code.\n\nThe initial physical qubits to be encoded have to be at indices n-k+1:n.\n\ninfo: Encoding circuits are not fault-tolerant\nEncoding circuits are not fault-tolerant, and thus should not be used in practice. Instead, you should measure the stabilizers of the code and the logical observables, thus projecting into the code space (which can be fault-tolerant).\n\nThe canonicalization operation performed on the code may permute the qubits (see canonicalize_gott!). That permutation is corrected for with SWAP gates by default (controlled by the undoperm keyword argument).\n\nBased on (Cleve and Gottesman, 1997) and (Gottesman, 1997), however it seems the published algorithm has some errors. Consult the erratum, as well as the more recent (Grassl, 2002) and (Grassl, 2011), and be aware that this implementation also uses H instead of Z gates.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.naive_syndrome_circuit","page":"API","title":"QuantumClifford.ECC.naive_syndrome_circuit","text":"Generate the non-fault-tolerant stabilizer measurement cicuit for a given code instance or parity check tableau.\n\nUse the ancillary_index and bit_index arguments to offset where the corresponding part the circuit starts.\n\nReturns the circuit, the number of ancillary qubits that were added, and a list of bit indices that will store the measurement results.\n\nSee also: shor_syndrome_circuit\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.parity_checks","page":"API","title":"QuantumClifford.ECC.parity_checks","text":"Parity check tableau of a code.\n\nSee also: parity_checks_x and parity_checks_z\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.parity_checks_x-Tuple{QuantumClifford.ECC.AbstractECC}","page":"API","title":"QuantumClifford.ECC.parity_checks_x","text":"Parity check boolean matrix of a code (only the X entries in the tableau, i.e. the checks for Z errors).\n\nOnly CSS codes have this method.\n\nSee also: parity_checks\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.parity_checks_z-Tuple{QuantumClifford.ECC.AbstractECC}","page":"API","title":"QuantumClifford.ECC.parity_checks_z","text":"Parity check boolean matrix of a code (only the Z entries in the tableau, i.e. the checks for X errors).\n\nOnly CSS codes have this method.\n\nSee also: parity_checks\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.random_all_to_all_circuit_code","page":"API","title":"QuantumClifford.ECC.random_all_to_all_circuit_code","text":"Random all-to-all Clifford circuit code (Brown and Fawzi, Jul 2013).\n\nThe code of n qubits is generated by an all-to-all random Clifford circuit of ngates gates that encodes a subset of qubits encode_qubits into logical qubits.\n\nBecause of the random picking, the size of encode_qubits is the only thing that matters for the code, referred to as k.\n\nSee also: random_all_to_all_clifford_circuit, CircuitCode\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.random_brickwork_circuit_code","page":"API","title":"QuantumClifford.ECC.random_brickwork_circuit_code","text":"Random brickwork Clifford circuit code (Brown and Fawzi, Jul 2013).\n\nThe code is generated by a brickwork random Clifford circuit of nlayers layers that encodes a subset of qubits encode_qubits into logical qubits.\n\nSee also: random_brickwork_clifford_circuit, CircuitCode\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.rate-Tuple{Any}","page":"API","title":"QuantumClifford.ECC.rate","text":"The rate of a code.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.shor_syndrome_circuit","page":"API","title":"QuantumClifford.ECC.shor_syndrome_circuit","text":"Generate the Shor fault-tolerant stabilizer measurement cicuit for a given code instance or parity check tableau.\n\nUse the ancillary_index and bit_index arguments to offset where the corresponding part the circuit starts. Ancillary qubits\n\nReturns:\n\nThe ancillary cat state preparation circuit.\nThe Shor syndrome measurement circuit.\nThe number of ancillary qubits that were added.\nThe list of bit indices that store the final measurement results.\n\nSee also: naive_syndrome_circuit\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#QuantumClifford.ECC.two_block_group_algebra_codes","page":"API","title":"QuantumClifford.ECC.two_block_group_algebra_codes","text":"Implemented in a package extension with Hecke.\n\n\n\n\n\n","category":"function"},{"location":"ECC_API/#Implemented-in-an-extension-requiring-Hecke.jl","page":"API","title":"Implemented in an extension requiring Hecke.jl","text":"","category":"section"},{"location":"ECC_API/","page":"API","title":"API","text":"Modules = [QuantumCliffordHeckeExt]\nPrivate = true","category":"page"},{"location":"ECC_API/#QuantumCliffordHeckeExt.LPCode","page":"API","title":"QuantumCliffordHeckeExt.LPCode","text":"struct LPCode <: QuantumClifford.ECC.AbstractECC\n\nLifted product codes ((Panteleev and Kalachev, 2021), (Panteleev and Kalachev, Jun 2022))\n\nA lifted product code is defined by the hypergraph product of a base matrices A and the conjugate of another base matrix B'. Here, the hypergraph product is taken over a group algebra, of which the base matrices are consisting.\n\nThe binary parity check matrix is obtained by applying repr to each element of the matrix resulted from the hypergraph product, which is mathematically a linear map from each group algebra element to a binary matrix.\n\nConstructors\n\nMultiple constructors are available:\n\nTwo base matrices of group algebra elements.\nTwo lifted codes, whose base matrices are for quantum code construction.\nTwo base matrices of group elements, where each group element will be considered as a group algebra element by assigning a unit coefficient.\nTwo base matrices of integers, where each integer represent the shift of a cyclic permutation. The order of the cyclic permutation should be specified.\n\nExamples\n\nA [[882, 24, d ≤ 24]] code from Appendix B of (Roffe et al., 2023). We use the 1st constructor to generate the code and check its length and dimension. During the construction, we do arithmetic operations to get the group algebra elements in base matrices A and B. Here x is the generator of the group algebra, i.e., offset-1 cyclic permutation, and GA(1) is the unit element.\n\njulia> import Hecke: group_algebra, GF, abelian_group, gens; import LinearAlgebra: diagind;\n\njulia> l = 63; GA = group_algebra(GF(2), abelian_group(l)); x = gens(GA)[];\n\njulia> A = zeros(GA, 7, 7);\n\njulia> A[diagind(A)] .= x^27;\n\njulia> A[diagind(A, -1)] .= x^54;\n\njulia> A[diagind(A, 6)] .= x^54;\n\njulia> A[diagind(A, -2)] .= GA(1);\n\njulia> A[diagind(A, 5)] .= GA(1);\n\njulia> B = reshape([1 + x + x^6], (1, 1));\n\njulia> c1 = LPCode(A, B);\n\njulia> code_n(c1), code_k(c1)\n(882, 24)\n\nA [[175, 19, d ≤ 0]] code from Eq. (18) in Appendix A of (Raveendran et al., 2022), following the 4th constructor.\n\njulia> base_matrix = [0 0 0 0; 0 1 2 5; 0 6 3 1]; l = 7;\n\njulia> c2 = LPCode(base_matrix, l .- base_matrix', l);\n\njulia> code_n(c2), code_k(c2)\n(175, 19)\n\nCode subfamilies and convenience constructors for them\n\nWhen the base matrices of the LPCode are 1×1, the code is called a two-block group-algebra code two_block_group_algebra_codes.\nWhen the base matrices of the LPCode are 1×1 and their elements are sums of cyclic permutations, the code is called a generalized bicycle code generalized_bicycle_codes.\nWhen the two matrices are adjoint to each other, the code is called a bicycle code bicycle_codes.\n\nThe representation function\n\nWe use the default representation function Hecke.representation_matrix to convert a GF(2)-group algebra element to a binary matrix. The default representation, provided by Hecke, is the permutation representation.\n\nWe also accept a custom representation function as detailed in LiftedCode.\n\nSee also: LiftedCode, two_block_group_algebra_codes, generalized_bicycle_codes, bicycle_codes.\n\nA::Union{LinearAlgebra.Adjoint{<:Hecke.GroupAlgebraElem, <:Matrix{<:Hecke.GroupAlgebraElem}}, Matrix{<:Hecke.GroupAlgebraElem}}: the first base matrix of the code, whose elements are in a group algebra.\nB::Union{LinearAlgebra.Adjoint{<:Hecke.GroupAlgebraElem, <:Matrix{<:Hecke.GroupAlgebraElem}}, Matrix{<:Hecke.GroupAlgebraElem}}: the second base matrix of the code, whose elements are in the same group algebra as A.\nGA::Hecke.GroupAlgebra: the group algebra for which elements in A and B are from.\nrepr::Function: a function that converts a group algebra element to a binary matrix; default to be the permutation representation for GF(2)-algebra.\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumCliffordHeckeExt.LiftedCode","page":"API","title":"QuantumCliffordHeckeExt.LiftedCode","text":"struct LiftedCode <: QuantumClifford.ECC.ClassicalCode\n\nClassical codes lifted over a group algebra, used for lifted product code construction ((Panteleev and Kalachev, 2021), (Panteleev and Kalachev, Jun 2022))\n\nThe parity-check matrix is constructed by applying repr to each element of A, which is mathematically a linear map from a group algebra element to a binary matrix. The size of the parity check matrix will enlarged with each element of A being inflated into a matrix. The procedure is called a lift (Panteleev and Kalachev, Jun 2022).\n\nConstructors\n\nA lifted code can be constructed via the following approaches:\n\nA matrix of group algebra elements.\nA matrix of group elements, where a group element will be considered as a group algebra element by assigning a unit coefficient.\nA matrix of integers, where each integer represent the shift of a cyclic permutation. The order of the cyclic permutation should be specified.\n\nThe default GA is the group algebra of A[1, 1], the default representation repr is the permutation representation.\n\nThe representation function repr\n\nWe use the default representation function Hecke.representation_matrix to convert a GF(2)-group algebra element to a binary matrix. The default representation, provided by Hecke, is the permutation representation.\n\nWe also accept a custom representation function (the repr field of the constructor). Whatever the representation, the matrix elements need to be convertible to Integers (e.g. permit lift(ZZ, ...)). Such a customization would be useful to reduce the number of bits required by the code construction.\n\nFor example, if we use a D4 group for lifting, our default representation will be 8×8 permutation matrices, where 8 is the group's order. However, we can find a 4×4 matrix representation for the group, e.g. by using the typical 2×2 representation and converting it into binary representation by replacing \"1\" with the Pauli I, and \"-1\" with the Pauli X matrix.\n\nSee also: LPCode.\n\nA::Union{LinearAlgebra.Adjoint{<:Hecke.GroupAlgebraElem, <:Matrix{<:Hecke.GroupAlgebraElem}}, Matrix{<:Hecke.GroupAlgebraElem}}: the base matrix of the code, whose elements are in a group algebra.\nGA::Hecke.GroupAlgebra: the group algebra for which elements in A are from.\nrepr::Function: a function that converts a group algebra element to a binary matrix; default to be the permutation representation for GF(2)-algebra.\n\n\n\n\n\n","category":"type"},{"location":"ECC_API/#QuantumCliffordHeckeExt.LiftedCode-Tuple{Matrix{Hecke.GroupAlgebraElem{Nemo.FqFieldElem, <:Hecke.GroupAlgebra}}}","page":"API","title":"QuantumCliffordHeckeExt.LiftedCode","text":"LiftedCode constructor using the default GF(2) representation (coefficients converted to a permutation matrix by representation_matrix provided by Hecke).\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.bicycle_codes-Tuple{Array{Int64}, Int64}","page":"API","title":"QuantumClifford.ECC.bicycle_codes","text":"Bicycle codes are a special case of generalized bicycle codes, where a and b are conjugate to each other. The order of the cyclic group is l, and the shifts a_shifts and b_shifts are reverse to each other.\n\nSee also: two_block_group_algebra_codes, generalized_bicycle_codes.\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.generalized_bicycle_codes-Tuple{Array{Int64}, Array{Int64}, Int64}","page":"API","title":"QuantumClifford.ECC.generalized_bicycle_codes","text":"Generalized bicycle codes, which are a special case of 2GBA codes (and therefore of lifted product codes). Here the group is chosen as the cyclic group of order l, and the base matrices a and b are the sum of the group algebra elements corresponding to the shifts a_shifts and b_shifts.\n\nSee also: two_block_group_algebra_codes, bicycle_codes.\n\nA [[254, 28, 14 ≤ d ≤ 20]] code from (A1) in Appendix B of (Panteleev and Kalachev, 2021).\n\njulia> c = generalized_bicycle_codes([0, 15, 20, 28, 66], [0, 58, 59, 100, 121], 127);\n\njulia> code_n(c), code_k(c)\n(254, 28)\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumClifford.ECC.two_block_group_algebra_codes-Tuple{Hecke.GroupAlgebraElem, Hecke.GroupAlgebraElem}","page":"API","title":"QuantumClifford.ECC.two_block_group_algebra_codes","text":"Two-block group algebra (2GBA) codes, which are a special case of lifted product codes from two group algebra elements a and b, used as 1x1 base matrices.\n\nSee also: LPCode, generalized_bicycle_codes, bicycle_codes\n\n\n\n\n\n","category":"method"},{"location":"ECC_API/#QuantumCliffordHeckeExt.group_algebra_conj-Union{Tuple{Hecke.GroupAlgebraElem{T}}, Tuple{T}} where T","page":"API","title":"QuantumCliffordHeckeExt.group_algebra_conj","text":"Compute the conjugate of a group algebra element. The conjugate is defined by inversing elements in the associated group.\n\n\n\n\n\n","category":"method"},{"location":"allops/#all-operations","page":"All Gates","title":"Operations - Gates, Measurements, and More","text":"","category":"section"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"DocTestSetup = quote\n using QuantumClifford\n using StableRNGs\n rng = StableRNG(42)\nend","category":"page"},{"location":"allops/#Operations","page":"All Gates","title":"Operations","text":"","category":"section"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"Acting on quantum states can be performed either:","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"In a \"linear algebra\" language where unitaries, measurements, and other operations have separate interfaces. This is an explicitly deterministic lower-level interface, which provides a great deal of control over how tableaux are manipulated. See the Stabilizer Tableau Algebra Manual as a primer on these approaches.\nOr in a \"circuit\" language, where the operators (and measurements and noise) are represented as circuit gates. This is a higher-level interface in which the outcome of an operation can be stochastic. The API for it is centered around the apply! function. Particularly useful for Monte Carlo simulations and Perturbative Expansion Symbolic Results.","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"In the circuit language, all operations can be applied on a state with the apply! function. Whether they are deterministic and their computational complexity is listed in the table below. A list of lower-level \"linear algebra style\" functions for more control over how an operation is performed is also given.","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"Type Deterministic 𝒪(nˣ) Low-level functions\nAbstractOperation \n├─ AbstractCliffordOperator \n│ ├─ AbstractSymbolicOperator \n│ │ ├─ AbstractSingleQubitOperator \n│ │ │ ├─ SingleQubitOperator ✔️ n \n│ │ │ ├─ sHadamard ✔️ n \n│ │ │ ├─ sId1 ✔️ n \n│ │ │ ├─ sInvPhase ✔️ n \n│ │ │ ├─ sPhase ✔️ n \n│ │ │ ├─ sX ✔️ n \n│ │ │ ├─ sY ✔️ n \n│ │ │ └─ sZ ✔️ n \n│ │ └─ AbstractTwoQubitOperator \n│ │ ├─ sCNOT ✔️ n \n│ │ ├─ sCPHASE ✔️ n \n│ │ └─ sSWAP ✔️ n \n│ │ \n│ ├─ CliffordOperator ✔️ n³ \n│ ├─ PauliOperator ✔️ n² \n│ └─ SparseGate ✔️ kn² \n├─ AbstractMeasurement \n│ ├─ PauliMeasurement ❌ n² project!, projectrand!\n│ ├─ sMX ❌ n² projectX!\n│ ├─ sMY ❌ n² projectY!\n│ └─ sMZ ❌ n² projectZ!\n│ \n├─ BellMeasurement ❌ n² \n├─ NoiseOp ❌ ? applynoise!\n├─ NoiseOpAll ❌ ? applynoise!\n├─ NoisyGate ❌ ? applynoise!\n└─ Reset ✔️ kn² reset_qubits!","category":"page"},{"location":"allops/#Details-of-Operations-Supported-by-[apply!](@ref)","page":"All Gates","title":"Details of Operations Supported by apply!","text":"","category":"section"},{"location":"allops/#Unitary-Gates","page":"All Gates","title":"Unitary Gates","text":"","category":"section"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"We distinguish between symbolic gates like sCNOT that have specialized (fast) apply! methods (usually just for single and two qubit gates) and general tableau representation of gates like CliffordOperator that can represent any multi-qubit gate.","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"Predefined unitary gates are available, like sCNOT, sHadamard, etc.","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"using QuantumClifford # hide\nusing QuantumClifford.Experimental.NoisyCircuits # hide\nusing Quantikz # hide\n[sCNOT(2,4),sHadamard(2),sCPHASE(1,3),sSWAP(2,4)]","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"Any arbitrary tableaux can be used as a gate too. ","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"They can be specified by giving a Clifford operator tableaux and the indices on which it acts (particularly useful for gates acting on a small part of a circuit):","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"using QuantumClifford # hide\nusing QuantumClifford.Experimental.NoisyCircuits # hide\nusing Quantikz # hide\nSparseGate(tCNOT, [2,4])","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"The Clifford operator tableaux can be completely arbitrary.","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"SparseGate(random_clifford(3), [2,4,5])","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"If the Clifford operator acts on all qubits, we do not need to specify indices, just use the operator.","category":"page"},{"location":"allops/#Noisy-Gates","page":"All Gates","title":"Noisy Gates","text":"","category":"section"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"Each gate can be followed by noise applied to the qubits on which it has acted. This is done by wrapping the given gate into a NoisyGate","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"ε = 0.03 # X/Y/Z error probability\nnoise = UnbiasedUncorrelatedNoise(ε)\nnoisy_gate = NoisyGate(SparseGate(tCNOT, [2,4]), noise)","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"In circuit diagrams the noise is not depicted, but after each application of the gate defined in noisy_gate, a noise operator will also be applied. The example above is of Pauli Depolarization implemented by UnbiasedUncorrelatedNoise.","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"One can also apply only the noise operator by using NoiseOp which acts only on specified qubits. Or alternatively, one can use NoiseOpAll in order to apply noise to all qubits.","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"[NoiseOp(noise, [4,5]), NoiseOpAll(noise)]","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"The machinery behind noise processes and different types of noise is detailed in the section on noise","category":"page"},{"location":"allops/#Coincidence-Measurements","page":"All Gates","title":"Coincidence Measurements","text":"","category":"section"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"Global parity measurements involving single-qubit projections and classical communication are implemented with BellMeasurement. One needs to specify the axes of measurement and the qubits being measured. If the parity is trivial, the circuit continues, if the parity is non-trivial, the circuit ends and reports a detected failure. This operator is frequently used in the simulation of entanglement purification.","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"BellMeasurement([sMX(1), sMY(3), sMZ(4)])","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"There is also NoisyBellMeasurement that takes the bit-flip probability of a single-qubit measurement as a third argument.","category":"page"},{"location":"allops/#Stabilizer-Measurements","page":"All Gates","title":"Stabilizer Measurements","text":"","category":"section"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"A measurement over one or more qubits can also be performed, e.g., a direct stabilizer measurement on multiple qubits without the use of ancillary qubits. When applied to multiple qubits, this differs from BellMeasurement as it performs a single projection, unlike BellMeasurement which performs a separate projection for every single qubit involved. This measurement is implemented in PauliMeasurement which requires a Pauli operator on which to project and the index of the classical bit in which to store the result. Alternatively, there are sMX, sMZ, sMY if you are measuring a single qubit.","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"[PauliMeasurement(P\"XYZ\", 1), sMZ(2, 2)]","category":"page"},{"location":"allops/#Reset-Operations","page":"All Gates","title":"Reset Operations","text":"","category":"section"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"The Reset operations lets you trace out the specified qubits and set their state to a specific tableau.","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"new_state = random_stabilizer(3)\nqubit_indices = [1,2,3]\nReset(new_state, qubit_indices)","category":"page"},{"location":"allops/","page":"All Gates","title":"All Gates","text":"It can be done anywhere in a circuit, not just at the beginning.","category":"page"},{"location":"noisycircuits/#Simulation-of-Noisy-Clifford-Circuits","page":"Simulation of Noisy Circuits","title":"Simulation of Noisy Clifford Circuits","text":"","category":"section"},{"location":"noisycircuits/","page":"Simulation of Noisy Circuits","title":"Simulation of Noisy Circuits","text":"DocTestSetup = quote\n using QuantumClifford\n using QuantumClifford.Experimental.NoisyCircuits\nend","category":"page"},{"location":"noisycircuits/","page":"Simulation of Noisy Circuits","title":"Simulation of Noisy Circuits","text":"warning: Unstable\nThis is unfinished experimental functionality that will change significantly.","category":"page"},{"location":"noisycircuits/","page":"Simulation of Noisy Circuits","title":"Simulation of Noisy Circuits","text":"We have experimental support for simulation of noisy Clifford circuits which can be imported with using QuantumClifford.Experimental.NoisyCircuits.","category":"page"},{"location":"noisycircuits/","page":"Simulation of Noisy Circuits","title":"Simulation of Noisy Circuits","text":"Both Monte Carlo and Perturbative Expansion approaches are supported. When performing a perturbative expansion in the noise parameter, the expansion can optionally be performed symbolically, to arbitrary high orders.","category":"page"},{"location":"noisycircuits/","page":"Simulation of Noisy Circuits","title":"Simulation of Noisy Circuits","text":"Multiple notebooks with examples are also available. For instance, see this tutorial on entanglement purification for many examples.","category":"page"},{"location":"ECC_evaluating/#ecc_evaluating","page":"Evaluating codes and decoders","title":"Evaluating an ECC code and decoders","text":"","category":"section"},{"location":"ECC_evaluating/","page":"Evaluating codes and decoders","title":"Evaluating codes and decoders","text":"DocTestSetup = quote\n using QuantumClifford\n using QuantumClifford.ECC\nend\nCurrentModule = QuantumClifford.ECC","category":"page"},{"location":"ECC_evaluating/","page":"Evaluating codes and decoders","title":"Evaluating codes and decoders","text":"warning: The documentation is incomplete\nWhile waiting for a better documentation than the small example below, consider looking into evaluate_decoder, TableDecoder, BeliefPropDecoder, PyBeliefPropDecoder, PyMatchingDecoder, CommutationCheckECCSetup, NaiveSyndromeECCSetup, ShorSyndromeECCSetup","category":"page"},{"location":"ECC_evaluating/","page":"Evaluating codes and decoders","title":"Evaluating codes and decoders","text":"This is a quick and durty example on how to use some of the decoders.","category":"page"},{"location":"ECC_evaluating/","page":"Evaluating codes and decoders","title":"Evaluating codes and decoders","text":"A function to plot the results of ","category":"page"},{"location":"ECC_evaluating/","page":"Evaluating codes and decoders","title":"Evaluating codes and decoders","text":"using CairoMakie\n\nfunction make_decoder_figure(phys_errors, results, title=\"\")\n minlim = min(minimum(phys_errors),minimum(results[results.!=0]))\n maxlim = min(1, max(maximum(phys_errors),maximum(results[results.!=0])))\n\n fresults = copy(results)\n fresults[results.==0] .= NaN\n\n f = Figure()\n a = Axis(f[1,1],\n xscale=log10, yscale=log10,\n limits=(minlim,maxlim,minlim,maxlim),\n aspect=DataAspect(),\n xlabel=\"physical error rate\",\n ylabel=\"logical error rate\",\n title=title)\n lines!(a, [minlim,maxlim],[minlim,maxlim], color=:black)\n for (i,sresults) in enumerate(eachslice(fresults, dims=1))\n scatter!(a, phys_errors, sresults[:,1], marker=:+, color=Cycled(i))\n scatter!(a, phys_errors, sresults[:,2], marker=:x, color=Cycled(i))\n end\n f\nend","category":"page"},{"location":"ECC_evaluating/","page":"Evaluating codes and decoders","title":"Evaluating codes and decoders","text":"Testing out a lookup table decoder on a small code.","category":"page"},{"location":"ECC_evaluating/","page":"Evaluating codes and decoders","title":"Evaluating codes and decoders","text":"using QuantumClifford\nusing QuantumClifford.ECC\n\nmem_errors = 0.001:0.0005:0.01\ncodes = [Shor9()]\nresults = zeros(length(codes), length(mem_errors), 2)\n\nfor (ic, c) in pairs(codes)\n for (i,m) in pairs(mem_errors)\n setup = CommutationCheckECCSetup(m)\n decoder = TableDecoder(c)\n r = evaluate_decoder(decoder, setup, 10000)\n results[ic,i,:] .= r\n end\nend\n\nmake_decoder_figure(mem_errors, results, \"Shor's code with a lookup table decoder\")","category":"page"},{"location":"ECC_evaluating/","page":"Evaluating codes and decoders","title":"Evaluating codes and decoders","text":"Testing out the toric code with a decoder provided by the python package pymatching (provided in julia by the meta package PyQDecoders.jl).","category":"page"},{"location":"ECC_evaluating/","page":"Evaluating codes and decoders","title":"Evaluating codes and decoders","text":"import PyQDecoders\n\nmem_errors = 0.001:0.005:0.1\ncodes = [Toric(4,4), Toric(6,6)]\nresults = zeros(length(codes), length(mem_errors), 2)\n\nfor (ic, c) in pairs(codes)\n for (i,m) in pairs(mem_errors)\n setup = ShorSyndromeECCSetup(m, 0)\n decoder = PyMatchingDecoder(c)\n r = evaluate_decoder(decoder, setup, 1000)\n results[ic,i,:] .= r\n end\nend\n\nmake_decoder_figure(mem_errors, results, \"Toric code with a MWPM decoder\")","category":"page"},{"location":"canonicalization/#Canonicalization-operations","page":"Canonicalization","title":"Canonicalization operations","text":"","category":"section"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"Different types of canonicalization operations are implemented. All of them are types of Gaussian elimination.","category":"page"},{"location":"canonicalization/#[canonicalize!](@ref)","page":"Canonicalization","title":"canonicalize!","text":"","category":"section"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"First do elimination on all X components and only then perform elimination on the Z components. Based on (Garcia et al., 2012). It is used in logdot for inner products of stabilizer states.","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"The final tableaux, if square should look like the following (Image: )","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"If the tableaux is shorter than a square, the diagonals might not reach all the way to the right.","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"using QuantumClifford, CairoMakie\nf=Figure()\nstabilizerplot_axis(f[1,1], canonicalize!(random_stabilizer(20,30)))\nf","category":"page"},{"location":"canonicalization/#[canonicalize_rref!](@ref)","page":"Canonicalization","title":"canonicalize_rref!","text":"","category":"section"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"Cycle between elimination on X and Z for each qubit. Particularly useful for tracing out qubits. Based on (Audenaert and Plenio, 2005). For convenience reasons, the canonicalization starts from the bottom row, and you can specify as a second argument which columns to be canonicalized (useful for tracing out arbitrary qubits, e.g., in traceout!).","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"The tableau canonicalization is done in recursive steps, each one of which results in something akin to one of these three options (Image: )","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"using QuantumClifford, CairoMakie\nf=Figure()\nstabilizerplot_axis(f[1,1], canonicalize_rref!(random_stabilizer(20,30),1:30)[1])\nf","category":"page"},{"location":"canonicalization/#[canonicalize_gott!](@ref)","page":"Canonicalization","title":"canonicalize_gott!","text":"","category":"section"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"First do elimination on all X components and only then perform elimination on the Z components, but without touching the qubits that were eliminated during the X pass. Unlike other canonicalization operations, qubit columns are reordered, providing for a straight diagonal in each block. Particularly useful as certain blocks of the new created matrix are related to logical operations of the corresponding code, e.g. computing the logical X and Z operators of a MixedDestabilizer. Based on (Gottesman, 1997).","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"A canonicalized tableau would look like the following (the right-most block does not exist for square tableaux). (Image: )","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"using QuantumClifford, CairoMakie\nf=Figure()\nstabilizerplot_axis(f[1,1], canonicalize_gott!(random_stabilizer(30))[1])\nf","category":"page"},{"location":"canonicalization/#[canonicalize_clip!](@ref)","page":"Canonicalization","title":"canonicalize_clip!","text":"","category":"section"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"Convert to the \"clipped\" gauge of a stabilizer state resulting in a \"river\" of non-identity operators around the diagonal.","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"using QuantumClifford, CairoMakie\nf=Figure()\nstabilizerplot_axis(f[1,1], canonicalize_clip!(random_stabilizer(30)))\nf","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"The properties of the clipped gauge are:","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"Each qubit is the left/right \"endpoint\" of exactly two stabilizer rows.\nFor the same qubit the two endpoints are always different Pauli operators.","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"This canonicalization is used to derive the bigram a stabilizer state, which is also related to entanglement entropy in the state.","category":"page"},{"location":"canonicalization/","page":"Canonicalization","title":"Canonicalization","text":"Introduced in (Nahum et al., 2017), with a more detailed explanation of the algorithm in Appendix A of (Li et al., 2019).","category":"page"},{"location":"noisycircuits_mc/#noisycircuits_mc","page":"Monte Carlo","title":"Monte Carlo simulations of noisy Clifford circuits","text":"","category":"section"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"DocTestSetup = quote\n using QuantumClifford\n using QuantumClifford.Experimental.NoisyCircuits\n using Quantikz\nend","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"warning: Unstable\nThis is experimental functionality with an unstable API.","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"Import with using QuantumClifford.Experimental.NoisyCircuits.","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"This module enables the simulation of noisy Clifford circuits through a Monte Carlo method where the same circuit is evaluated multiple times with random errors interspersed through it as prescribed by a given error model.","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"Below is an example of a purification circuit. We first prepare the circuit we desire to use, including a noise model. Quantikz.jl was is used to visualize the circuit.","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"using QuantumClifford # hide\nusing QuantumClifford.Experimental.NoisyCircuits # hide\nusing Quantikz # hide\ngood_bell_state = S\"XX\n ZZ\"\ninitial_state = MixedDestabilizer(good_bell_state⊗good_bell_state)\n\ng1 = sCNOT(1,3) # CNOT between qubit 1 and qubit 3 (both with Alice)\ng2 = sCNOT(2,4) # CNOT between qubit 2 and qubit 4 (both with Bob)\nm = BellMeasurement([sMX(3),sMX(4)]) # Bell measurement on qubit 3 and 4\nv = VerifyOp(good_bell_state,[1,2]) # Verify that qubit 1 and 2 indeed form a good Bell pair\nepsilon = 0.01 # The error rate\nn = NoiseOpAll(UnbiasedUncorrelatedNoise(epsilon))\n\n# This circuit performs a depolarization at rate `epsilon` to all qubits,\n# then bilater CNOT operations\n# then a Bell measurement\n# followed by checking whether the final result indeed corresponds to the correct Bell pair.\ncircuit = [n,g1,g2,m,v]","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"And we can run a Monte Carlo simulation of that circuit with mctrajectories.","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"mctrajectories(initial_state, circuit, trajectories=500)","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"For more examples, see the notebook comparing the Monte Carlo and Perturbative method or this tutorial on entanglement purification for many examples.","category":"page"},{"location":"noisycircuits_mc/#Interface-for-custom-operations","page":"Monte Carlo","title":"Interface for custom operations","text":"","category":"section"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"If you want to create a custom gate type (e.g. calling it Operation), you need to definite the following methods.","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"applywstatus!(s::T, g::Operation)::Tuple{T,Symbol} where T is a tableaux type like Stabilizer or a Register. The Symbol is the status of the operation. Predefined statuses are kept in the registered_statuses list, but you can add more. Be sure to expand this list if you want the trajectory simulators using your custom statuses to output all trajectories.","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"There is also applynoise! which is convenient wait to create a noise model that can then be plugged into the NoisyGate struct, letting you reuse the predefined perfect gates and measurements. However, you can also just make up your own noise operator simply by implementing applywstatus! for it.","category":"page"},{"location":"noisycircuits_mc/","page":"Monte Carlo","title":"Monte Carlo","text":"You can also consult the list of implemented operators.","category":"page"},{"location":"commonstates/#Useful-States-and-Operators","page":"Useful States","title":"Useful States and Operators","text":"","category":"section"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"DocTestSetup = quote\n using QuantumClifford\n using StableRNGs\n rng = StableRNG(42)\nend","category":"page"},{"location":"commonstates/#States","page":"Useful States","title":"States","text":"","category":"section"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"Stabilizer states can be represented with the Stabilizer, Destabilizer, MixedStabilizer, and MixedDestabilizer tableau data structures. You probably want to use MixedDestabilizer which supports the widest set of operations.","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"Moreover, a MixedDestabilizer can be stored inside a Register together with a set of classical bits in which measurement results can be written.","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"Below are convenience constructors for common types of states and operators, already implemented in this library.","category":"page"},{"location":"commonstates/#Pauli-Operators","page":"Useful States","title":"Pauli Operators","text":"","category":"section"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"Single qubit PauliOperator is implemented in [single_z] and [single_x].","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"julia> single_z(4,2)\n+ _Z__\n\njulia> single_x(4,3)\n+ __X_","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"All identity operators use zero.","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"julia> zero(PauliOperator, 3)\n+ ___\n\njulia> zero(P\"XYZXYZ\")\n+ ______","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"Random Pauli operators are implemented as well (with or without a random phase).","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"julia> using StableRNGs; rng = StableRNG(42);\n\njulia> random_pauli(rng, 4)\n+ ZYY_\n\njulia> random_pauli(rng, 4; nophase=false)\n- YZ_X","category":"page"},{"location":"commonstates/#Stabilizer-States","page":"Useful States","title":"Stabilizer States","text":"","category":"section"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"An all-identity stabilizer can be created with zero.","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"julia> zero(Stabilizer, 3)\n+ ___\n+ ___\n+ ___\n\njulia> zero(Stabilizer, 2, 3)\n+ ___\n+ ___\n\njulia> zero(S\"XIZ\n YZX\")\n+ ___\n+ ___","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"Diagonal stabilizers in different bases are available as well, through one.","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"julia> one(Stabilizer, 3)\n+ Z__\n+ _Z_\n+ __Z\n\njulia> one(Stabilizer, 3; basis=:Y)\n+ Y__\n+ _Y_\n+ __Y\n\njulia> one(S\"XX\n ZZ\")\n+ Z_\n+ _Z","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"A random stabilizer (or destabilizers or Clifford operators) can be created as well. We use the algorithm described in (Bravyi and Maslov, 2021).","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"julia> random_stabilizer(rng, 2,5)\n+ YZXZZ\n- XZYYY","category":"page"},{"location":"commonstates/#Mixed-States","page":"Useful States","title":"Mixed States","text":"","category":"section"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"Similarly, one can create a diagonal mixed state.","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"julia> one(MixedDestabilizer, 2, 3)\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ X__\n+ _X_\n𝒳ₗ━━━\n+ __X\n𝒮𝓉𝒶𝒷━\n+ Z__\n+ _Z_\n𝒵ₗ━━━\n+ __Z","category":"page"},{"location":"commonstates/#Enumerating-all-Clifford-Operations","page":"Useful States","title":"Enumerating all Clifford Operations","text":"","category":"section"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"The algorithm from (Koenig and Smolin, 2014) can be used to enumerate all Clifford operations on a given number of qubits through enumerate_cliffords. Or one can use random_clifford, random_stabilizer to directly sample from that set.","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"julia> length(enumerate_cliffords(1))\n6\n\njulia> length(enumerate_cliffords(2))\n720","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"To also enumerate possible phases, you can use enumerate_phases.","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"julia> length(collect(enumerate_phases(tCNOT)))\n16\n\njulia> length(collect(enumerate_phases(enumerate_cliffords(2))))\n11520","category":"page"},{"location":"commonstates/#Common-entangled-states","page":"Useful States","title":"Common entangled states","text":"","category":"section"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"Bell states and GHZ states have convenience constructors:","category":"page"},{"location":"commonstates/","page":"Useful States","title":"Useful States","text":"julia> bell()\n+ XX\n+ ZZ\n\njulia> bell(2)\n+ XX__\n+ ZZ__\n+ __XX\n+ __ZZ\n\njulia> ghz(4)\n+ XXXX\n+ ZZ__\n+ _ZZ_\n+ __ZZ","category":"page"},{"location":"API/#Full-API","page":"API","title":"Full API","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"","category":"page"},{"location":"API/#States","page":"API","title":"States","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Stabilizer states can be represented with the Stabilizer, Destabilizer, MixedStabilizer, and MixedDestabilizer tableau data structures. You probably want to use MixedDestabilizer which supports the widest set of operations.","category":"page"},{"location":"API/","page":"API","title":"API","text":"Moreover, a MixedDestabilizer can be stored inside a Register together with a set of classical bits in which measurement results can be written.","category":"page"},{"location":"API/","page":"API","title":"API","text":"Lastly, for Pauli frame simulations there is the PauliFrame type, a tableau in which each row represents a different Pauli frame.","category":"page"},{"location":"API/","page":"API","title":"API","text":"There are convenience constructors for common types of states and operators.","category":"page"},{"location":"API/#Operations","page":"API","title":"Operations","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Acting on quantum states can be performed either:","category":"page"},{"location":"API/","page":"API","title":"API","text":"In a \"linear algebra\" language where unitaries, measurements, and other operations have separate interfaces. This is an explicitly deterministic lower-level interface, which provides a great deal of control over how tableaux are manipulated. See the Stabilizer Tableau Algebra Manual as a primer on these approaches.\nOr in a \"circuit\" language, where the operators (and measurements and noise) are represented as circuit gates. This is a higher-level interface in which the outcome of an operation can be stochastic. The API for it is centered around the apply! function. Particularly useful for Monte Carlo simulations and Perturbative Expansion Symbolic Results.","category":"page"},{"location":"API/","page":"API","title":"API","text":"See the full list of operations for a list of implemented operations.","category":"page"},{"location":"API/#Autogenerated-API-list","page":"API","title":"Autogenerated API list","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"Modules = [QuantumClifford]\nPrivate = false","category":"page"},{"location":"API/#QuantumClifford.QuantumClifford","page":"API","title":"QuantumClifford.QuantumClifford","text":"A module for using the Stabilizer formalism and simulating Clifford circuits.\n\n\n\n\n\n","category":"module"},{"location":"API/#QuantumClifford.continue_stat","page":"API","title":"QuantumClifford.continue_stat","text":"Returned by applywstatus! if the circuit simulation should continue.\n\n\n\n\n\n","category":"constant"},{"location":"API/#QuantumClifford.failure_stat","page":"API","title":"QuantumClifford.failure_stat","text":"Returned by applywstatus! if the circuit reports a failure.\n\nSee also: VerifyOp, BellMeasurement.\n\n\n\n\n\n","category":"constant"},{"location":"API/#QuantumClifford.false_success_stat","page":"API","title":"QuantumClifford.false_success_stat","text":"Returned by applywstatus! if the circuit reports a success, but it is a false positive (i.e., there was an undetected error).\n\nSee also: VerifyOp, BellMeasurement.\n\n\n\n\n\n","category":"constant"},{"location":"API/#QuantumClifford.true_success_stat","page":"API","title":"QuantumClifford.true_success_stat","text":"Returned by applywstatus! if the circuit reports a success and there is no undetected error.\n\nSee also: VerifyOp, BellMeasurement.\n\n\n\n\n\n","category":"constant"},{"location":"API/#QuantumClifford.AbstractSingleQubitOperator","page":"API","title":"QuantumClifford.AbstractSingleQubitOperator","text":"Supertype of all single-qubit symbolic operators.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.AbstractSymbolicOperator","page":"API","title":"QuantumClifford.AbstractSymbolicOperator","text":"Supertype of all symbolic operators. Subtype of AbstractCliffordOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.AbstractTwoQubitOperator","page":"API","title":"QuantumClifford.AbstractTwoQubitOperator","text":"Supertype of all two-qubit symbolic operators.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.BellMeasurement","page":"API","title":"QuantumClifford.BellMeasurement","text":"A Bell measurement performing the correlation measurement corresponding to the given pauli projections on the qubits at the selected indices.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.CircuitStatus","page":"API","title":"QuantumClifford.CircuitStatus","text":"A convenience struct to represent the status of a circuit simulated by mctrajectories\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.ClassicalXOR","page":"API","title":"QuantumClifford.ClassicalXOR","text":"Applies an XOR gate to classical bits. Currently only implemented for functionality with pauli frames.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.CliffordOperator","page":"API","title":"QuantumClifford.CliffordOperator","text":"Clifford Operator specified by the mapping of the basis generators.\n\njulia> tCNOT\nX₁ ⟼ + XX\nX₂ ⟼ + _X\nZ₁ ⟼ + Z_\nZ₂ ⟼ + ZZ\n\njulia> phase_gate = C\"Y\n Z\"\nX₁ ⟼ + Y\nZ₁ ⟼ + Z\n\njulia> stab = S\"XI\n IZ\";\n\n\njulia> entangled = tCNOT*stab\n+ XX\n+ ZZ\n\njulia> CliffordOperator(T\"YY\")\nERROR: DimensionMismatch: Input tableau should be of size 2n×n (top half is the X mappings and the bottom half are the Z mappings).\n[...]\n\nDestabilizer can also be converted.\n\njulia> d = Destabilizer(S\"Y\")\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ Z\n𝒮𝓉𝒶𝒷\n+ Y\n\njulia> CliffordOperator(d)\nX₁ ⟼ + Z\nZ₁ ⟼ + Y\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.Destabilizer","page":"API","title":"QuantumClifford.Destabilizer","text":"A tableau representation of a pure stabilizer state. The tableau tracks the destabilizers as well, for efficient projections. On initialization there are no checks that the provided state is indeed pure. This enables the use of this data structure for mixed stabilizer state, but a better choice would be to use MixedDestabilizer.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.MixedDestabilizer","page":"API","title":"QuantumClifford.MixedDestabilizer","text":"A tableau representation for mixed stabilizer states that keeps track of the destabilizers in order to provide efficient projection operations.\n\nThe rank r of the n-qubit tableau is tracked, either so that it can be used to represent a mixed stabilizer state, or so that it can be used to represent an n-r logical-qubit code over n physical qubits. The \"logical\" operators are tracked as well.\n\nWhen the constructor is called on an incomplete Stabilizer it automatically calculates the destabilizers and logical operators, following chapter 4 of (Gottesman, 1997). Under the hood the conversion uses the canonicalize_gott! canonicalization. That canonicalization permutes the columns of the tableau, but we automatically undo the column permutation in the preparation of a MixedDestabilizer so that qubits are not reindexed. The boolean keyword arguments undoperm and reportperm can be used to control this behavior and to report the permutations explicitly.\n\nSee also: stabilizerview, destabilizerview, logicalxview, logicalzview\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.MixedStabilizer","page":"API","title":"QuantumClifford.MixedStabilizer","text":"A slight improvement of the Stabilizer data structure that enables more naturally and completely the treatment of mixed states, in particular when the project! function is used.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.NoiseOp","page":"API","title":"QuantumClifford.NoiseOp","text":"An operator that applies the given noise model to the qubits at the selected indices.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.NoiseOpAll","page":"API","title":"QuantumClifford.NoiseOpAll","text":"An operator that applies the given noise model to all qubits.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.NoisyGate","page":"API","title":"QuantumClifford.NoisyGate","text":"A gate consisting of the given noise applied after the given perfect Clifford gate.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.PauliChannel","page":"API","title":"QuantumClifford.PauliChannel","text":"A Pauli channel datastructure, mainly for use with StabMixture\n\nSee also: UnitaryPauliChannel\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.PauliFrame","page":"API","title":"QuantumClifford.PauliFrame","text":"struct PauliFrame{T, S} <: QuantumClifford.AbstractQCState\n\nThis is a wrapper around a tableau. This \"frame\" tableau is not to be viewed as a normal stabilizer tableau, although it does conjugate the same under Clifford operations. Each row in the tableau refers to a single frame. The row represents the Pauli operation by which the frame and the reference differ.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.PauliFrame-Tuple{Any, Any, Any}","page":"API","title":"QuantumClifford.PauliFrame","text":"PauliFrame(\n frames,\n qubits,\n measurements\n) -> PauliFrame{Stabilizer{QuantumClifford.Tableau{Vector{UInt8}, LinearAlgebra.Adjoint{UInt64, Matrix{UInt64}}}}}\n\n\nPrepare an empty set of Pauli frames with the given number of frames and qubits. Preallocates spaces for measurement number of measurements.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.PauliMeasurement","page":"API","title":"QuantumClifford.PauliMeasurement","text":"A Stabilizer measurement on the entirety of the quantum register.\n\nprojectrand!(state, pauli) and apply!(state, PauliMeasurement(pauli)) give the same (possibly non-deterministic) result. Particularly useful when acting on Register.\n\nSee also: apply!, projectrand!.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.PauliNoise","page":"API","title":"QuantumClifford.PauliNoise","text":"Pauli noise model with probabilities px, py, and pz respectively for the three types of Pauli errors.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.PauliNoise-Tuple{Any}","page":"API","title":"QuantumClifford.PauliNoise","text":"Constructs an unbiased Pauli noise model with total probability of error p.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.PauliOperator","page":"API","title":"QuantumClifford.PauliOperator","text":"A multi-qubit Pauli operator (1iIZXY^otimes n).\n\nA Pauli can be constructed with the P custom string macro or by building up one through products and tensor products of smaller operators.\n\njulia> pauli3 = P\"-iXYZ\"\n-iXYZ\n\njulia> pauli4 = 1im * pauli3 ⊗ X\n+ XYZX\n\njulia> Z*X\n+iY\n\nWe use a typical F(2,2) encoding internally. The X and Z bits are stored in a single concatenated padded array of UInt chunks of a bit array.\n\njulia> p = P\"-IZXY\";\n\n\njulia> p.xz\n2-element Vector{UInt64}:\n 0x000000000000000c\n 0x000000000000000a\n\nYou can access the X and Z bits through getters and setters or through the xview, zview, xbit, and zbit functions.\n\njulia> p = P\"XYZ\"; p[1]\n(true, false)\n\njulia> p[1] = (true, true); p\n+ YYZ\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.Register","page":"API","title":"QuantumClifford.Register","text":"A register, representing the state of a computer including both a tableaux and an array of classical bits (e.g. for storing measurement results)\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.Reset","page":"API","title":"QuantumClifford.Reset","text":"Reset the specified qubits to the given state.\n\nBe careful, this operation implies first tracing out the qubits, which can lead to mixed states if these qubits were entangled with the rest of the system.\n\nSee also: sMRZ\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.SingleQubitOperator","page":"API","title":"QuantumClifford.SingleQubitOperator","text":"A \"symbolic\" general single-qubit operator which permits faster multiplication than an operator expressed as an explicit tableau.\n\njulia> op = SingleQubitOperator(2, true, true, true, false, true, true) # Tableau components and phases\nSingleQubitOperator on qubit 2\nX₁ ⟼ - Y\nZ₁ ⟼ - X\n\njulia> typeof(op)\nSingleQubitOperator\n\njulia> t_op = CliffordOperator(op, 3) # Transforming it back into an explicit tableau representation (specifying the size)\nX₁ ⟼ + X__\nX₂ ⟼ - _Y_\nX₃ ⟼ + __X\nZ₁ ⟼ + Z__\nZ₂ ⟼ - _X_\nZ₃ ⟼ + __Z\n\njulia> typeof(t_op)\nCliffordOperator{QuantumClifford.Tableau{Vector{UInt8}, Matrix{UInt64}}}\n\njulia> CliffordOperator(op, 1, compact=true) # You can also extract just the non-trivial part of the tableau\nX₁ ⟼ - Y\nZ₁ ⟼ - X\n\nSee also: sHadamard, sPhase, sId1, sX, sY, sZ, CliffordOperator\n\nOr simply consult subtypes(QuantumClifford.AbstractSingleQubitOperator) and subtypes(QuantumClifford.AbstractTwoQubitOperator) for a full list. You can think of the s prefix as \"symbolic\" or \"sparse\".\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.SparseGate","page":"API","title":"QuantumClifford.SparseGate","text":"A Clifford gate, applying the given cliff operator to the qubits at the selected indices.\n\napply!(state, cliff, indices) and apply!(state, SparseGate(cliff, indices)) give the same result.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.StabMixture","page":"API","title":"QuantumClifford.StabMixture","text":"mutable struct StabMixture{T, F}\n\nRepresents mixture ∑ ϕᵢⱼ Pᵢ ρ Pⱼ† where ρ is a pure stabilizer state.\n\njulia> StabMixture(S\"-X\")\nA mixture ∑ ϕᵢⱼ Pᵢ ρ Pⱼ† where ρ is\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ Z\n𝒮𝓉𝒶𝒷\n- X\nwith ϕᵢⱼ | Pᵢ | Pⱼ:\n 1.0+0.0im | + _ | + _\n\njulia> pcT\nA unitary Pauli channel P = ∑ ϕᵢ Pᵢ with the following branches:\nwith ϕᵢ | Pᵢ\n 0.853553+0.353553im | + _\n 0.146447-0.353553im | + Z\n\njulia> apply!(StabMixture(S\"-X\"), pcT)\nA mixture ∑ ϕᵢⱼ Pᵢ ρ Pⱼ† where ρ is\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ Z\n𝒮𝓉𝒶𝒷\n- X\nwith ϕᵢⱼ | Pᵢ | Pⱼ:\n 0.0+0.353553im | + _ | + Z\n 0.0-0.353553im | + Z | + _\n 0.853553+0.0im | + _ | + _\n 0.146447+0.0im | + Z | + Z\n\nSee also: PauliChannel\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.Stabilizer","page":"API","title":"QuantumClifford.Stabilizer","text":"Stabilizer, i.e. a list of commuting multi-qubit Hermitian Pauli operators.\n\nInstances can be created with the S custom string macro or as direct sum of other stabilizers.\n\ntip: Stabilizers and Destabilizers\nIn many cases you probably would prefer to use the MixedDestabilizer data structure, as it caries a lot of useful additional information, like tracking rank and destabilizer operators. Stabilizer has mostly a pedagogical value, and it is also used for slightly faster simulation of a particular subset of Clifford operations.\n\njulia> s = S\"XXX\n ZZI\n IZZ\"\n+ XXX\n+ ZZ_\n+ _ZZ\n\njulia> s⊗s\n+ XXX___\n+ ZZ____\n+ _ZZ___\n+ ___XXX\n+ ___ZZ_\n+ ____ZZ\n\nIt has an indexing API, looking like a list of PauliOperators.\n\njulia> s[2]\n+ ZZ_\n\nPauli operators can act directly on the a stabilizer.\n\njulia> P\"YYY\" * s\n- XXX\n+ ZZ_\n+ _ZZ\n\nThere are a number of ways to create a Stabilizer, including:\n\ngenerate Stabilizers from a list of Pauli operators\n\njulia> Stabilizer([P\"XX\", P\"ZZ\"])\n+ XX\n+ ZZ\n\ngenerate Stabilizers from boolean matrices\n\njulia> a = [true true; false false]; b = [false true; true true];\n\njulia> Stabilizer(a, b)\n+ XY\n+ ZZ\n\njulia> Stabilizer([0x0, 0x2], a, b)\n+ XY\n- ZZ\n\ninitialize an empty Stabilizer and fill it through indexing\n\njulia> s = zero(Stabilizer, 2)\n+ __\n+ __\n\njulia> s[1,1] = (true, false); s\n+ X_\n+ __\n\nThere are no automatic checks for correctness (i.e. independence of all rows, commutativity of all rows, hermiticity of all rows). The rank (number of rows) is permitted to be less than the number of qubits (number of columns): canonilization, projection, etc. continue working in that case. To great extent this library uses the Stabilizer data structure simply as a tableau. This might be properly abstracted away in future versions.\n\nSee also: PauliOperator, canonicalize!\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.Stabilizer-Tuple{Graphs.SimpleGraphs.SimpleGraph}","page":"API","title":"QuantumClifford.Stabilizer","text":"Convert a graph representing a stabilizer state to an explicit Stabilizer.\n\nSee also: graphstate\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.UnbiasedUncorrelatedNoise","page":"API","title":"QuantumClifford.UnbiasedUncorrelatedNoise","text":"Depolarization noise model with total probability of error p.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.UnitaryPauliChannel","page":"API","title":"QuantumClifford.UnitaryPauliChannel","text":"A Pauli channel datastructure, mainly for use with StabMixture.\n\nMore convenient to use than PauliChannel when you know your Pauli channel is unitary.\n\njulia> Tgate = UnitaryPauliChannel(\n (I, Z),\n ((1+exp(im*π/4))/2, (1-exp(im*π/4))/2)\n )\nA unitary Pauli channel P = ∑ ϕᵢ Pᵢ with the following branches:\nwith ϕᵢ | Pᵢ\n 0.853553+0.353553im | + _\n 0.146447-0.353553im | + Z\n\njulia> PauliChannel(Tgate)\nPauli channel ρ ↦ ∑ ϕᵢⱼ Pᵢ ρ Pⱼ† with the following branches:\nwith ϕᵢⱼ | Pᵢ | Pⱼ:\n 0.853553+0.0im | + _ | + _\n 0.0+0.353553im | + _ | + Z\n 0.0-0.353553im | + Z | + _\n 0.146447+0.0im | + Z | + Z\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.VerifyOp","page":"API","title":"QuantumClifford.VerifyOp","text":"A \"probe\" to verify that the state of the qubits corresponds to a desired good_state, e.g. at the end of the execution of a circuit.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sCNOT","page":"API","title":"QuantumClifford.sCNOT","text":"A \"symbolic\" CNOT. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sCPHASE","page":"API","title":"QuantumClifford.sCPHASE","text":"A \"symbolic\" CPHASE. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sCXYZ","page":"API","title":"QuantumClifford.sCXYZ","text":"A \"symbolic\" single-qubit CXYZ. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sCZYX","page":"API","title":"QuantumClifford.sCZYX","text":"A \"symbolic\" single-qubit CZYX. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sHadamard","page":"API","title":"QuantumClifford.sHadamard","text":"A \"symbolic\" single-qubit Hadamard. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sHadamardXY","page":"API","title":"QuantumClifford.sHadamardXY","text":"A \"symbolic\" single-qubit HadamardXY. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sHadamardYZ","page":"API","title":"QuantumClifford.sHadamardYZ","text":"A \"symbolic\" single-qubit HadamardYZ. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sId1","page":"API","title":"QuantumClifford.sId1","text":"A \"symbolic\" single-qubit Identity operation.\n\nSee also: SingleQubitOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sInvPhase","page":"API","title":"QuantumClifford.sInvPhase","text":"A \"symbolic\" single-qubit InvPhase. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sInvSQRTX","page":"API","title":"QuantumClifford.sInvSQRTX","text":"A \"symbolic\" single-qubit InvSQRTX. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sInvSQRTY","page":"API","title":"QuantumClifford.sInvSQRTY","text":"A \"symbolic\" single-qubit InvSQRTY. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sInvZCrY","page":"API","title":"QuantumClifford.sInvZCrY","text":"A \"symbolic\" InvZCrY. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sMRX","page":"API","title":"QuantumClifford.sMRX","text":"Measure a qubit in the X basis and reset to the |+⟩ state.\n\nSee also: sMRZ, Reset, sMZ\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sMRY","page":"API","title":"QuantumClifford.sMRY","text":"Measure a qubit in the Y basis and reset to the |i₊⟩ state.\n\nSee also: sMRZ, Reset, sMZ\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sMRZ","page":"API","title":"QuantumClifford.sMRZ","text":"Measure a qubit in the Z basis and reset to the |0⟩ state.\n\nwarning: It does not trace out the qubit!\nAs described below there is a difference between measuring the qubit (followed by setting it to a given known state) and \"tracing out\" the qubit. By reset here we mean \"measuring and setting to a known state\", not \"tracing out\".\n\njulia> s = MixedDestabilizer(S\"XXX ZZI IZZ\") # |000⟩+|111⟩\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ Z__\n+ _X_\n+ __X\n𝒮𝓉𝒶𝒷━\n+ XXX\n+ ZZ_\n+ Z_Z\n\njulia> traceout!(copy(s), 1) # = I⊗(|00⟩⟨00| + |11⟩⟨11|)\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ _X_\n𝒳ₗ━━━\n+ _XX\n+ Z__\n𝒮𝓉𝒶𝒷━\n+ _ZZ\n𝒵ₗ━━━\n+ Z_Z\n+ XXX\n\njulia> projectZ!(traceout!(copy(s), 1), 1)[1] # = |000⟩⟨000|+|011⟩⟨011| or |100⟩⟨100|+|111⟩⟨111| (use projectZrand! to actually get a random result)\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ _X_\n+ XXX\n𝒳ₗ━━━\n+ _XX\n𝒮𝓉𝒶𝒷━\n+ _ZZ\n+ Z__\n𝒵ₗ━━━\n+ Z_Z\n\njulia> projectZ!(copy(s), 1)[1] # = |000⟩ or |111⟩ (use projectZrand! to actually get a random result)\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ XXX\n+ _X_\n+ __X\n𝒮𝓉𝒶𝒷━\n+ Z__\n+ ZZ_\n+ Z_Z\n\njulia> apply!(Register(copy(s)), sMRZ(1)) |> quantumstate # |000⟩ or |011⟩, depending on randomization\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ XXX\n+ _X_\n+ __X\n𝒮𝓉𝒶𝒷━\n+ Z__\n- ZZ_\n- Z_Z\n\nSee also: Reset, sMZ\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sMX","page":"API","title":"QuantumClifford.sMX","text":"Symbolic single qubit X measurement. See also Register, projectXrand!, sMY, sMZ\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sMY","page":"API","title":"QuantumClifford.sMY","text":"Symbolic single qubit Y measurement. See also Register, projectYrand!, sMX, sMZ\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sMZ","page":"API","title":"QuantumClifford.sMZ","text":"Symbolic single qubit Z measurement. See also Register, projectZrand!, sMX, sMY\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sPhase","page":"API","title":"QuantumClifford.sPhase","text":"A \"symbolic\" single-qubit Phase. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sSQRTX","page":"API","title":"QuantumClifford.sSQRTX","text":"A \"symbolic\" single-qubit SQRTX. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sSQRTY","page":"API","title":"QuantumClifford.sSQRTY","text":"A \"symbolic\" single-qubit SQRTY. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sSWAP","page":"API","title":"QuantumClifford.sSWAP","text":"A \"symbolic\" SWAP. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sX","page":"API","title":"QuantumClifford.sX","text":"A \"symbolic\" single-qubit X. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sXCX","page":"API","title":"QuantumClifford.sXCX","text":"A \"symbolic\" XCX. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sXCY","page":"API","title":"QuantumClifford.sXCY","text":"A \"symbolic\" XCY. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sXCZ","page":"API","title":"QuantumClifford.sXCZ","text":"A \"symbolic\" XCZ. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sY","page":"API","title":"QuantumClifford.sY","text":"A \"symbolic\" single-qubit Y. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sYCX","page":"API","title":"QuantumClifford.sYCX","text":"A \"symbolic\" YCX. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sYCY","page":"API","title":"QuantumClifford.sYCY","text":"A \"symbolic\" YCY. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sYCZ","page":"API","title":"QuantumClifford.sYCZ","text":"A \"symbolic\" YCZ. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sZ","page":"API","title":"QuantumClifford.sZ","text":"A \"symbolic\" single-qubit Z. See also: SingleQubitOperator, AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sZCX","page":"API","title":"QuantumClifford.sZCX","text":"A \"symbolic\" ZCX. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sZCY","page":"API","title":"QuantumClifford.sZCY","text":"A \"symbolic\" ZCY. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sZCZ","page":"API","title":"QuantumClifford.sZCZ","text":"A \"symbolic\" ZCZ. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.sZCrY","page":"API","title":"QuantumClifford.sZCrY","text":"A \"symbolic\" ZCrY. See also: AbstractSymbolicOperator\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.PauliError","page":"API","title":"QuantumClifford.PauliError","text":"A convenient constructor for various types of Pauli errors, that can be used as circuit gates in simulations. Returns more specific types when necessary.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.PauliError-NTuple{4, Any}","page":"API","title":"QuantumClifford.PauliError","text":"\"Construct a gate operation that applies a biased Pauli error on all qubits independently, each with probabilities px, py, pz. Note that the probability of any error occurring is px+py+pz. Because of this, PauliError(1, p) is equivalent to PauliError(1,p/3,p/3,p/3). Similarly, if one wanted to exclude Z errors from PauliError(1,p/3,p/3,p/3) while mainting the same rate of X errors, one could write PauliError(1, p*2/3, 0, 0) (in the sense that Y errors can be interpreted as an X and a Z happening at the same time).\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.PauliError-Tuple{Any, Any}","page":"API","title":"QuantumClifford.PauliError","text":"\"Construct a gate operation that applies an unbiased Pauli error on all qubits, each with independent probability p.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.PauliError-Tuple{Int64, Any, Any, Any}","page":"API","title":"QuantumClifford.PauliError","text":"\"Construct a gate operation that applies a biased Pauli error on qubit q with independent probabilities px, py, pz. Note that the probability of any error occurring is px+py+pz. Because of this, PauliError(1, p) is equivalent to PauliError(1,p/3,p/3,p/3). Similarly, if one wanted to exclude Z errors from PauliError(1,p/3,p/3,p/3) while mainting the same rate of X errors, one could write PauliError(1, p*2/3, 0, 0) (in the sense that Y errors can be interpreted as an X and a Z happening at the same time).\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.PauliError-Tuple{Int64, Any}","page":"API","title":"QuantumClifford.PauliError","text":"\"Construct a gate operation that applies an unbiased Pauli error on qubit q with probability p.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.affectedqubits","page":"API","title":"QuantumClifford.affectedqubits","text":"A method giving the qubits acted upon by a given operation. Part of the Noise interface.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.applybranches","page":"API","title":"QuantumClifford.applybranches","text":"Compute all possible new states after the application of the given operator. Reports the probability of each one of them. Deterministic (as it reports all branches of potentially random processes), part of the Perturbative Expansion interface.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.applynoise!","page":"API","title":"QuantumClifford.applynoise!","text":"A method modifying a given state by applying the corresponding noise model. It is non-deterministic, part of the Noise interface.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.applywstatus!-Tuple{Any, Any}","page":"API","title":"QuantumClifford.applywstatus!","text":"Used for mctrajectories.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.bell","page":"API","title":"QuantumClifford.bell","text":"Prepare one or more Bell pairs (with optional phases).\n\njulia> bell()\n+ XX\n+ ZZ\n\njulia> bell(2)\n+ XX__\n+ ZZ__\n+ __XX\n+ __ZZ\n\njulia> bell((true, false))\n- XX\n+ ZZ\n\njulia> bell([true, false, true, true])\n- XX__\n+ ZZ__\n- __XX\n- __ZZ\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.bigram-Tuple{QuantumClifford.AbstractStabilizer}","page":"API","title":"QuantumClifford.bigram","text":"bigram(\n state::QuantumClifford.AbstractStabilizer;\n clip\n) -> Matrix{Int64}\n\n\nGet the bigram of a tableau.\n\nIt is the list of endpoints of a tableau in the clipped gauge.\n\nIf clip=true (the default) the tableau is converted to the clipped gauge in-place before calculating the bigram. Otherwise, the clip gauge conversion is skipped (for cases where the input is already known to be in the correct gauge).\n\nIntroduced in (Nahum et al., 2017), with a more detailed explanation of the algorithm in (Li et al., 2019) and (Gullans et al., 2021).\n\nSee also: canonicalize_clip!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.bitview","page":"API","title":"QuantumClifford.bitview","text":"A view of the classical bits stored with the state\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.canonicalize!-Tuple{QuantumClifford.AbstractStabilizer}","page":"API","title":"QuantumClifford.canonicalize!","text":"canonicalize!(\n state::QuantumClifford.AbstractStabilizer;\n phases,\n ranks\n) -> Union{Tuple{QuantumClifford.AbstractStabilizer, Int64, Int64}, QuantumClifford.AbstractStabilizer}\n\n\nCanonicalize a stabilizer (in place).\n\nAssumes the input is a valid stabilizer (all operators commute and have real phases). It permits redundant generators and identity generators.\n\njulia> ghz = S\"XXXX\n ZZII\n IZZI\n IIZZ\";\n\n\njulia> canonicalize!(ghz)\n+ XXXX\n+ Z__Z\n+ _Z_Z\n+ __ZZ\n\njulia> canonicalize!(S\"XXXX\n IZZI\n IIZZ\")\n+ XXXX\n+ _Z_Z\n+ __ZZ\n\nNot all rows in the tableau in the next example are independent:\n\njulia> canonicalize!(S\"XXXX\n ZZII\n IZZI\n IZIZ\n IIZZ\")\n+ XXXX\n+ Z__Z\n+ _Z_Z\n+ __ZZ\n+ ____\n\nIn cases of lower rank, more advanced tableau structures might be better. For instance the MixedStabilizer or MixedDestabilizer structures (you can read more about them in the Data Structures section of the documentation).\n\nIf phases=false is set, the canonicalization does not track the phases in the tableau, leading to significant (constant factor) speedup.\n\njulia> s = S\"-ZX\n XZ\"\n- ZX\n+ XZ\n\njulia> canonicalize!(copy(s), phases=false)\n- XZ\n+ ZX\n\njulia> canonicalize!(copy(s))\n+ XZ\n- ZX\n\nIf ranks=true is set, the last pivot indices for the X and Z stage of the canonicalization are returned as well.\n\njulia> s = S\"XXXX\n ZZII\n IZIZ\n ZIIZ\";\n\n\njulia> _, ix, iz = canonicalize!(s, ranks=true); ix, iz\n(1, 3)\n\njulia> s\n+ XXXX\n+ Z__Z\n+ _Z_Z\n+ ____\n\nBased on (Garcia et al., 2012).\n\nSee also: canonicalize_rref!, canonicalize_gott!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.canonicalize_clip!-Tuple{QuantumClifford.AbstractStabilizer}","page":"API","title":"QuantumClifford.canonicalize_clip!","text":"canonicalize_clip!(\n state::QuantumClifford.AbstractStabilizer;\n phases\n) -> QuantumClifford.AbstractStabilizer\n\n\nFix the clipped gauge of a stabilizer (in place).\n\nAssumes the input is a valid full-rank stabilizer (all operators commute and have real phases).\n\njulia> s = S\"- X_ZX_X\n + XXYZ__\n - YZ_Z_X\n - XZX__Y\n + _Z_Y_Y\n - ____Z_\";\n\n\njulia> canonicalize_clip!(s)\n- X_XY__\n+ YZY___\n+ _XZX__\n- _ZYX_Z\n- __YZ_X\n- ____Z_\n\nIf phases=false is set, the canonicalization does not track the phases in the tableau, leading to a significant speedup.\n\nIntroduced in (Nahum et al., 2017), with a more detailed explanation of the algorithm in Appendix A of (Li et al., 2019)\n\nSee also: canonicalize!, canonicalize_rref!, canonicalize_gott!.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.canonicalize_gott!-Tuple{Stabilizer}","page":"API","title":"QuantumClifford.canonicalize_gott!","text":"Inplace Gottesman canonicalization of a tableau.\n\nThis uses different canonical form from canonicalize!. It is used in the computation of the logical X and Z operators of a MixedDestabilizer.\n\nIt returns the (in place) modified state, the indices of the last pivot of both Gaussian elimination steps, and the permutations that have been used to put the X and Z tableaux in standard form.\n\nBased on (Gottesman, 1997).\n\nSee also: canonicalize!, canonicalize_rref!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.canonicalize_rref!-Tuple{QuantumClifford.AbstractStabilizer, Any}","page":"API","title":"QuantumClifford.canonicalize_rref!","text":"canonicalize_rref!(\n state::QuantumClifford.AbstractStabilizer,\n colindices;\n phases\n) -> Tuple{QuantumClifford.AbstractStabilizer, Any}\n\n\nCanonicalize a stabilizer (in place) along only some columns.\n\nThis uses different canonical form from canonicalize!. It also indexes in reverse in order to make its use in traceout! more efficient. Its use in traceout! is its main application.\n\nIt returns the (in place) modified state and the index of the last pivot.\n\nBased on (Audenaert and Plenio, 2005).\n\nSee also: canonicalize!, canonicalize_gott!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.canonicalize_rref!-Tuple{QuantumClifford.AbstractStabilizer}","page":"API","title":"QuantumClifford.canonicalize_rref!","text":"canonicalize_rref!(\n state::QuantumClifford.AbstractStabilizer;\n phases\n) -> Tuple{QuantumClifford.AbstractStabilizer, Any}\n\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.centralizer-Tuple{QuantumClifford.Tableau}","page":"API","title":"QuantumClifford.centralizer","text":"For a given set of Paulis (in the form of a Tableau), return the subset of Paulis that commute with all Paulis in set.\n\njulia> centralizer(T\"XX ZZ _Z\")\n+ ZZ\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.clifford_cardinality-Tuple{Int64}","page":"API","title":"QuantumClifford.clifford_cardinality","text":"The size of the Clifford group 𝒞 over a given number of qubits, possibly modulo the phases.\n\nFor n qubits, not accounting for phases is 2ⁿⁿΠⱼ₌₁ⁿ(4ʲ-1). There are 4ⁿ different phase configurations.\n\njulia> clifford_cardinality(7)\n457620995529680351512370381586432000\n\nWhen not accounting for phases (phases = false) the result is the same as the size of the Symplectic group Sp(2n) ≡ 𝒞ₙ/𝒫ₙ, where 𝒫ₙ is the Pauli group over n qubits.\n\njulia> clifford_cardinality(7, phases=false)\n27930968965434591767112450048000\n\nSee also: enumerate_cliffords.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.comm","page":"API","title":"QuantumClifford.comm","text":"Check whether two operators commute.\n\n0x0 if they commute, 0x1 if they anticommute.\n\njulia> P\"XX\"*P\"ZZ\", P\"ZZ\"*P\"XX\"\n(- YY, - YY)\n\njulia> comm(P\"ZZ\", P\"XX\")\n0x00\n\njulia> comm(P\"IZ\", P\"XX\")\n0x01\n\nSee also: comm!\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.comm!","page":"API","title":"QuantumClifford.comm!","text":"An in-place version of comm, storing its output in the given buffer.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.compactify_circuit-Tuple{Any}","page":"API","title":"QuantumClifford.compactify_circuit","text":"Convert a list of gates to a more optimized \"sum type\" format which permits faster dispatch.\n\nGenerally, this should be called on a circuit before it is used in a simulation.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.contractor-Tuple{Stabilizer, Any}","page":"API","title":"QuantumClifford.contractor","text":"Return the subset of Paulis in a Stabilizer that have identity operators on all qubits corresponding to the given subset, without the entries corresponding to subset.\n\njulia> contractor(S\"_X X_\", [1])\n+ X\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.delete_columns-Tuple{Stabilizer, Any}","page":"API","title":"QuantumClifford.delete_columns","text":"Return the given stabilizer without all the qubits in the given iterable.\n\nThe resulting tableaux is not guaranteed to be valid (to retain its commutation relationships).\n\njulia> delete_columns(S\"XYZ YZX ZXY\", [1,3])\n+ Y\n+ Z\n+ X\n\nSee also: traceout!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.destabilizerview-Tuple{Destabilizer}","page":"API","title":"QuantumClifford.destabilizerview","text":"A view of the subtableau corresponding to the destabilizer. See also tab, stabilizerview, logicalxview, logicalzview\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.enumerate_cliffords-Tuple{Any, Any}","page":"API","title":"QuantumClifford.enumerate_cliffords","text":"Give the i-th n-qubit Clifford operation, where i∈{1..2ⁿⁿΠⱼ₌₁ⁿ(4ʲ-1)}\n\nThe algorithm is detailed in (Koenig and Smolin, 2014).\n\nSee also: symplecticGS, clifford_cardinality.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.enumerate_cliffords-Tuple{Any}","page":"API","title":"QuantumClifford.enumerate_cliffords","text":"Give all n-qubit Clifford operations.\n\nThe algorithm is detailed in (Koenig and Smolin, 2014).\n\nSee also: symplecticGS, clifford_cardinality.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.enumerate_phases-Tuple{CliffordOperator}","page":"API","title":"QuantumClifford.enumerate_phases","text":"Given an operator, return all operators that have the same tableau but different phases.\n\njulia> length(collect(enumerate_phases(tCNOT)))\n16\n\nSee also: enumerate_cliffords, clifford_cardinality.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.enumerate_phases-Tuple{Union{Base.Generator, AbstractVector}}","page":"API","title":"QuantumClifford.enumerate_phases","text":"Given a set of operators, return all operators that have the same tableaux but different phases.\n\njulia> length(collect(enumerate_phases(enumerate_cliffords(2))))\n11520\n\nSee also: enumerate_cliffords, clifford_cardinality.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.enumerate_single_qubit_gates-Tuple{Any}","page":"API","title":"QuantumClifford.enumerate_single_qubit_gates","text":"Generate a symbolic single-qubit gate given its index. Optionally, set non-trivial phases.\n\njulia> enumerate_single_qubit_gates(6)\nsPhase on qubit 1\nX₁ ⟼ + Y\nZ₁ ⟼ + Z\n\njulia> enumerate_single_qubit_gates(6, qubit=2, phases=(true, true))\nSingleQubitOperator on qubit 2\nX₁ ⟼ - Y\nZ₁ ⟼ - Z\n\nSee also: enumerate_cliffords.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.fastcolumn","page":"API","title":"QuantumClifford.fastcolumn","text":"Convert a tableau to a memory layout that is fast for column operations.\n\nIn this layout a column of the tableau is stored (mostly) contiguously in memory. Due to bitpacking, e.g., packing 64 bits into a single UInt64, the memory layout is not perfectly contiguous, but it is still optimal given that some bitwrangling is required to extract a given bit.\n\nSee also: fastrow\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.fastrow","page":"API","title":"QuantumClifford.fastrow","text":"Convert a tableau to a memory layout that is fast for row operations.\n\nIn this layout a Pauli string (a row of the tableau) is stored contiguously in memory.\n\nSee also: fastrow\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.generate!-Tuple{PauliOperator, Stabilizer}","page":"API","title":"QuantumClifford.generate!","text":"Generate a Pauli operator by using operators from a given the Stabilizer.\n\nIt assumes the stabilizer is already canonicalized. It modifies the Pauli operator in place, generating it in reverse, up to a phase. That phase is left in the modified operator, which should be the identity up to a phase. Returns the new operator and the list of indices denoting the elements of stabilizer that were used for the generation.\n\njulia> ghz = S\"XXXX\n ZZII\n IZZI\n IIZZ\";\n\n\njulia> canonicalize!(ghz)\n+ XXXX\n+ Z__Z\n+ _Z_Z\n+ __ZZ\n\njulia> generate!(P\"-ZIZI\", ghz)\n(- ____, [2, 4])\n\nWhen the Pauli operator can not be generated by the given tableau, nothing is returned.\n\njulia> generate!(P\"XII\",canonicalize!(S\"ZII\")) === nothing\ntrue\n\njulia> generate!(P\"XII\",canonicalize!(S\"XII\")) === nothing\nfalse\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.gf2_H_to_G-Tuple{Any}","page":"API","title":"QuantumClifford.gf2_H_to_G","text":"For a given F(2,2) parity check matrix, return the generator matrix.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.gf2_gausselim!-Tuple{Any}","page":"API","title":"QuantumClifford.gf2_gausselim!","text":"Gaussian elimination over the binary field.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.gf2_invert-Tuple{Any}","page":"API","title":"QuantumClifford.gf2_invert","text":"Invert a binary matrix.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.gf2_isinvertible-Tuple{Any}","page":"API","title":"QuantumClifford.gf2_isinvertible","text":"Check whether a binary matrix is invertible.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.ghz","page":"API","title":"QuantumClifford.ghz","text":"Prepare a GHZ state of n qubits.\n\njulia> ghz()\n+ XXX\n+ ZZ_\n+ _ZZ\n\njulia> ghz(2)\n+ XX\n+ ZZ\n\njulia> ghz(4)\n+ XXXX\n+ ZZ__\n+ _ZZ_\n+ __ZZ\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.graph_gate-NTuple{4, Any}","page":"API","title":"QuantumClifford.graph_gate","text":"A helper function converting the gate indices from graphstate into a Clifford operator.\n\njulia> s = S\" XXX\n YZ_\n -_ZZ\";\n\n\njulia> graph, h_idx, ip_idx, z_idx = graphstate(s);\n\n\njulia> gate = graph_gate(h_idx, ip_idx, z_idx, nqubits(s));\n\n\njulia> apply!(s, gate) # This is now a graph state (notice you need to multiply row 1 by row 2)\n+ YYZ\n+ XZ_\n+ _ZX\n\njulia> canonicalize!(s) == canonicalize!(Stabilizer(graph))\ntrue\n\nSee also: graph_gatesequence\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.graph_gatesequence-Tuple{Vector{Int64}, Vector{Int64}, Vector{Int64}}","page":"API","title":"QuantumClifford.graph_gatesequence","text":"A helper function converting the gate indices from graphstate into a sequence of gates.\n\njulia> s = S\" XXX\n YZ_\n -_ZZ\";\n\n\njulia> graph, h_idx, ip_idx, z_idx = graphstate(s);\n\n\njulia> gates = graph_gatesequence(h_idx, ip_idx, z_idx);\n\n\njulia> for gate in vcat(gates...) apply!(s, gate) end\n\n\njulia> s # This is now a graph state (notice you need to multiply row 1 by row 2)\n+ YYZ\n+ XZ_\n+ _ZX\n\njulia> canonicalize!(s) == canonicalize!(Stabilizer(graph))\ntrue\n\nSee also: graph_gatesequence\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.graphstate!-Tuple{Stabilizer}","page":"API","title":"QuantumClifford.graphstate!","text":"An in-place version of graphstate.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.graphstate-Tuple{QuantumClifford.AbstractStabilizer}","page":"API","title":"QuantumClifford.graphstate","text":"Convert any stabilizer state to a graph state\n\nGraph states are a special type of entangled stabilizer states that can be represented by a graph. For a graph G=(VE) the corresponding stabilizers are S_v = X_v prod_u N(v) Z_u. Notice that such tableau rows contain only a single X operator. There is a set of single qubit gates that converts any stabilizer state to a graph state.\n\nThis function returns the graph state corresponding to a stabilizer and the gates that might be necessary to convert the stabilizer into a state representable as a graph.\n\nFor a tableau stab you can convert it with:\n\ngraph, hadamard_idx, iphase_idx, flips_idx = graphstate()\n\nwhere graph is the graph representation of stab, and the rest specifies the single-qubit gates converting stab to graph: hadamard_idx are the qubits that require a Hadamard gate (mapping X ↔ Z), iphase_idx are (different) qubits that require an inverse Phase gate (Y → X), and flips_idx are the qubits that require a phase flip (Pauli Z gate), after the previous two sets of gates.\n\njulia> using Graphs\n\njulia> s = S\" XXX\n ZZ_\n -_ZZ\";\n\n\njulia> g, h_idx, ip_idx, z_idx = graphstate(s);\n\n\njulia> collect(edges(g))\n2-element Vector{Graphs.SimpleGraphs.SimpleEdge{Int64}}:\n Edge 1 => 2\n Edge 1 => 3\n\njulia> h_idx\n2-element Vector{Int64}:\n 2\n 3\n\njulia> ip_idx\nInt64[]\n\njulia> z_idx\n1-element Vector{Int64}:\n 3\n\nThe Graphs.jl library provides many graph-theory tools and the MakieGraphs.jl library provides plotting utilities for graphs.\n\nYou can directly call the graph constructor on a stabilizer, if you just want the graph and do not care about the Clifford operation necessary to convert an arbitrary state to a state representable as a graph:\n\njulia> collect(edges( Graph(bell()) ))\n1-element Vector{Graphs.SimpleGraphs.SimpleEdge{Int64}}:\n Edge 1 => 2\n\nFor a version that does not copy the stabilizer, but rather performs transformations in-place, use graphstate!. It would perform canonicalize_gott! on its argument as it finds a way to convert it to a graph state.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.groupify-Tuple{Stabilizer}","page":"API","title":"QuantumClifford.groupify","text":"Return the full stabilizer group represented by the input generating set (a Stabilizer).\n\nThe returned object is exponentially long.\n\njulia> groupify(S\"XZ ZX\")\n+ __\n+ XZ\n+ ZX\n+ YY\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.logdot-Tuple{QuantumClifford.AbstractStabilizer, QuantumClifford.AbstractStabilizer}","page":"API","title":"QuantumClifford.logdot","text":"Logarithm of the inner product between to Stabilizer states.\n\nIf the result is nothing, the dot inner product is zero. Otherwise the inner product is 2^(-logdot/2).\n\nThe actual inner product can be computed with LinearAlgebra.dot.\n\nBased on (Garcia et al., 2012).\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.logicalxview-Tuple{MixedDestabilizer}","page":"API","title":"QuantumClifford.logicalxview","text":"A view of the subtableau corresponding to the logical X operators. See also tab, stabilizerview, destabilizerview, logicalzview\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.logicalzview-Tuple{MixedDestabilizer}","page":"API","title":"QuantumClifford.logicalzview","text":"A view of the subtableau corresponding to the logical Z operators. See also tab, stabilizerview, destabilizerview, logicalxview\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.mctrajectories-Tuple{Any, Any}","page":"API","title":"QuantumClifford.mctrajectories","text":"Run multiple Monte Carlo trajectories and report the aggregate final statuses of each.\n\nSee also: pftrajectories, petrajectories\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.mctrajectory!-Tuple{Any, Any}","page":"API","title":"QuantumClifford.mctrajectory!","text":"Run a single Monte Carlo sample, starting with (and modifying) state by applying the given circuit. Uses apply! under the hood.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.minimal_generating_set-Tuple{Stabilizer}","page":"API","title":"QuantumClifford.minimal_generating_set","text":"For a not-necessarily-minimal generating set, return the minimal generating set.\n\nThe input has to have only real phases.\n\njulia> minimal_generating_set(S\"__ XZ ZX YY\")\n+ XZ\n+ ZX\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.normalizer-Tuple{QuantumClifford.Tableau}","page":"API","title":"QuantumClifford.normalizer","text":"Return all Pauli operators with the same number of qubits as the given Tableau t that commute with all operators in t.\n\njulia> normalizer(T\"X\")\n+ _\n+ X\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.pauligroup-Tuple{Int64}","page":"API","title":"QuantumClifford.pauligroup","text":"Return the full Pauli group of a given length. Phases are ignored by default, but can be included by setting phases=true.\n\njulia> pauligroup(1)\n+ _\n+ X\n+ Z\n+ Y\n\njulia> pauligroup(1, phases=true)\n+ _\n+ X\n+ Z\n+ Y\n- _\n- X\n- Z\n- Y\n+i_\n+iX\n+iZ\n+iY\n-i_\n-iX\n-iZ\n-iY\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.petrajectories-Tuple{Any, Any}","page":"API","title":"QuantumClifford.petrajectories","text":"Run a perturbative expansion to a given order. This is the main public function for the perturbative expansion approach.\n\nSee also: pftrajectories, mctrajectories\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.pfmeasurements-Tuple{PauliFrame}","page":"API","title":"QuantumClifford.pfmeasurements","text":"pfmeasurements(frame::PauliFrame) -> Any\n\n\nReturns the measurement results for each frame in the PauliFrame instance.\n\nwarning: Relative measurements\nThe return measurements are relative to the reference measurements, i.e. they only say whether the reference measurements have been flipped in the given frame.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.pfmeasurements-Tuple{Register, PauliFrame}","page":"API","title":"QuantumClifford.pfmeasurements","text":"pfmeasurements(register::Register, frame::PauliFrame) -> Any\n\n\nTakes the references measurements from the given Register and applies the flips as prescribed by the PauliFrame relative measurements. The result is the actual (non-relative) measurement results for each frame.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.pfmeasurements-Tuple{Register}","page":"API","title":"QuantumClifford.pfmeasurements","text":"pfmeasurements(register::Register) -> Vector{Bool}\n\n\nReturns the measurements stored in the bits of the given Register.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.pftrajectories","page":"API","title":"QuantumClifford.pftrajectories","text":"Perform a \"Pauli frame\" style simulation of a quantum circuit.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.pftrajectories-Tuple{Any}","page":"API","title":"QuantumClifford.pftrajectories","text":"pftrajectories(\n circuit;\n trajectories,\n threads\n) -> PauliFrame{Stabilizer{QuantumClifford.Tableau{Vector{UInt8}, LinearAlgebra.Adjoint{UInt64, Matrix{UInt64}}}}, Matrix{Bool}}\n\n\nThe main method for running Pauli frame simulations of circuits. See the other methods for lower level access.\n\nMultithreading is enabled by default, but can be disabled by setting threads=false. Do not forget to launch Julia with multiple threads enabled, e.g. julia -t4, if you want to use multithreading.\n\nSee also: mctrajectories, petrajectories\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.pftrajectories-Tuple{PauliFrame, Any}","page":"API","title":"QuantumClifford.pftrajectories","text":"pftrajectories(state::PauliFrame, circuit) -> PauliFrame\n\n\nEvolve each frame stored in PauliFrame by the given circuit.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.pftrajectories-Tuple{Register, Any}","page":"API","title":"QuantumClifford.pftrajectories","text":"pftrajectories(\n register::Register,\n circuit;\n trajectories\n) -> Tuple{Register, PauliFrame{Stabilizer{QuantumClifford.Tableau{Vector{UInt8}, LinearAlgebra.Adjoint{UInt64, Matrix{UInt64}}}}, Matrix{Bool}}}\n\n\nFor a given Register and circuit, simulates the reference circuit acting on the register and then also simulate numerous PauliFrame trajectories. Returns the register and the PauliFrame instance.\n\nUse pfmeasurements to get the measurement results.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.phases-Tuple{QuantumClifford.Tableau}","page":"API","title":"QuantumClifford.phases","text":"The phases of a given tableau. It is a view, i.e. if you modify this array, the original tableau caries these changes.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.prodphase-Union{Tuple{T}, Tuple{AbstractVector{T}, AbstractVector{T}}} where T<:Unsigned","page":"API","title":"QuantumClifford.prodphase","text":"Get the phase of the product of two Pauli operators.\n\nPhase is encoded as F(4) in the low qubits of an UInt8.\n\njulia> P\"ZZZ\"*P\"XXX\"\n-iYYY\n\njulia> prodphase(P\"ZZZ\", P\"XXX\")\n0x03\n\njulia> prodphase(P\"XXX\", P\"ZZZ\")\n0x01\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.projectXrand!-Tuple{Any, Any}","page":"API","title":"QuantumClifford.projectXrand!","text":"projectXrand!(state, qubit) -> Tuple{Register, UInt8}\n\n\nProject qubit of state along the X axis and randomize the phase if necessary.\n\nLower boilerplate version of project!.\n\nSee also: project!, projectX!, projectZrand!, projectYrand!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.projectYrand!-Tuple{Any, Any}","page":"API","title":"QuantumClifford.projectYrand!","text":"projectYrand!(state, qubit) -> Tuple{Register, UInt8}\n\n\nProject qubit of state along the Y axis and randomize the phase if necessary.\n\nLower boilerplate version of project!.\n\nSee also: project!, projectY!, projectXrand!, projectZrand!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.projectZrand!-Tuple{Any, Any}","page":"API","title":"QuantumClifford.projectZrand!","text":"projectZrand!(state, qubit) -> Tuple{Register, UInt8}\n\n\nProject qubit of state along the Z axis and randomize the phase if necessary.\n\nLower boilerplate version of project!.\n\nSee also: project!, projectZ!, projectXrand!, projectYrand!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.projectrand!-Tuple{Any, Any}","page":"API","title":"QuantumClifford.projectrand!","text":"projectrand!(state, pauli) -> Tuple{Register, Any}\n\n\nMeasure pauli operator on state and randomize the phase if necessary.\n\nLower boilerplate version of project!.\n\nSee also: project!, projectXrand!, projectZrand!, projectYrand!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.puttableau!-Union{Tuple{M2}, Tuple{M1}, Tuple{T}, Tuple{V2}, Tuple{V1}, Tuple{B}, Tuple{QuantumClifford.Tableau{V1, M1}, QuantumClifford.Tableau{V2, M2}, Int64, Int64}} where {B, V1, V2, T<:Unsigned, M1<:AbstractMatrix{T}, M2<:AbstractMatrix{T}}","page":"API","title":"QuantumClifford.puttableau!","text":"Put source tableau in target tableau at given row and column. Assumes target location is zeroed out.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.quantumstate","page":"API","title":"QuantumClifford.quantumstate","text":"Only the quantum part of the state (excluding classical bits)\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.random_all_to_all_clifford_circuit-Tuple{Random.AbstractRNG, Int64, Int64}","page":"API","title":"QuantumClifford.random_all_to_all_clifford_circuit","text":"Random all-to-all Clifford circuit.\n\nThe circuit contains nqubits qubits and ngates gates. The connectivity is all to all. Each gate in the circuit is a random 2-qubit Clifford gate on randomly picked two qubits.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.random_brickwork_clifford_circuit-Tuple{Random.AbstractRNG, NTuple{N, Int64} where N, Int64}","page":"API","title":"QuantumClifford.random_brickwork_clifford_circuit","text":"Random brickwork Clifford circuit.\n\nThe connectivity of the random circuit is brickwork in some dimensions. Each gate in the circuit is a random 2-qubit Clifford gate.\n\nThe brickwork is defined as follows: The qubits are arranged as a lattice, and lattice_size contains side length in each dimension. For example, a chain of length five will have lattice_size = (5,), and a 5×5 lattice will have lattice_size = (5, 5).\n\nIn multi-dimensional cases, gate layers act alternatively along each direction. The nearest two layers along the same direction are offset by one qubit, forming a so-called brickwork. The boundary condition is chosen as open.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.random_clifford-Tuple{Random.AbstractRNG, Int64}","page":"API","title":"QuantumClifford.random_clifford","text":"A random Clifford operator generated by the Bravyi-Maslov Algorithm 2 from (Bravyi and Maslov, 2021).\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.random_clifford1-Tuple{Random.AbstractRNG, Any}","page":"API","title":"QuantumClifford.random_clifford1","text":"Random symbolic single-qubit Clifford applied to qubit at index qubit.\n\nSee also: SingleQubitOperator, random_clifford\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.random_destabilizer-Tuple{Random.AbstractRNG, Int64}","page":"API","title":"QuantumClifford.random_destabilizer","text":"A random Stabilizer/Destabilizer tableau generated by the Bravyi-Maslov Algorithm 2 from (Bravyi and Maslov, 2021).\n\nrandom_destabilizer(n) gives a n-qubit tableau of rank n. random_destabilizer(r,n) gives a n-qubit tableau of rank r.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.random_pauli","page":"API","title":"QuantumClifford.random_pauli","text":"A random Pauli operator on n qubits.\n\nUse nophase=false to randomize the phase. Use realphase=false to get operators with phases including ±i.\n\nOptionally, a \"flip\" probability p can be provided specified, in which case each bit is set to I with probability 1-p and to X or Y or Z with probability p. Useful for simulating unbiased Pauli noise.\n\nSee also random_pauli!\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.random_pauli!","page":"API","title":"QuantumClifford.random_pauli!","text":"An in-place version of random_pauli\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.random_stabilizer-Tuple{Random.AbstractRNG, Int64}","page":"API","title":"QuantumClifford.random_stabilizer","text":"A random Stabilizer tableau generated by the Bravyi-Maslov Algorithm 2 from (Bravyi and Maslov, 2021).\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.single_x-Tuple{Any, Any}","page":"API","title":"QuantumClifford.single_x","text":"A multiqubit operator corresponding to all identities except for Pauli X at i. See also: sX, sMX\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.single_y-Tuple{Any, Any}","page":"API","title":"QuantumClifford.single_y","text":"A multiqubit operator corresponding to all identities except for Pauli Y at i. See also: sY, sMY\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.single_z-Tuple{Any, Any}","page":"API","title":"QuantumClifford.single_z","text":"A multiqubit operator corresponding to all identities except for Pauli Z at i. See also: sY, sMY\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.stab_to_gf2-Tuple{QuantumClifford.Tableau}","page":"API","title":"QuantumClifford.stab_to_gf2","text":"The F(2,2) matrix of a given tableau, represented as the concatenation of two binary matrices, one for X and one for Z.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.stabilizerplot","page":"API","title":"QuantumClifford.stabilizerplot","text":"A Makie.jl recipe for pictorial representation of a tableau.\n\nRequires a Makie.jl backend to be loaded, e.g. using CairoMakie.\n\nAlternatively, you can use the Plots.jl plotting ecosystem, e.g. using Plots; plot(S\"XXX ZZZ\").\n\nConsult the documentation for more details on visualization options.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.stabilizerplot_axis","page":"API","title":"QuantumClifford.stabilizerplot_axis","text":"A Makie.jl recipe for pictorial representation of a tableau.\n\nRequires a Makie.jl backend to be loaded, e.g. using CairoMakie.\n\nAlternatively, you can use the Plots.jl plotting ecosystem, e.g. using Plots; plot(S\"XXX ZZZ\").\n\nConsult the documentation for more details on visualization options.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.stabilizerview-Tuple{Stabilizer}","page":"API","title":"QuantumClifford.stabilizerview","text":"A view of the subtableau corresponding to the stabilizer. See also tab, destabilizerview, logicalxview, logicalzview\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.symplecticGS-Tuple{PauliOperator}","page":"API","title":"QuantumClifford.symplecticGS","text":"Perform the Symplectic Gram-Schmidt procedure that gives a Clifford operator canonically related to a given Pauli operator.\n\nThe algorithm is detailed in (Koenig and Smolin, 2014).\n\njulia> symplecticGS(P\"X\", padded_n=3)\nX₁ ⟼ + X__\nX₂ ⟼ + _X_\nX₃ ⟼ + __X\nZ₁ ⟼ + Z__\nZ₂ ⟼ + _Z_\nZ₃ ⟼ + __Z\n\njulia> symplecticGS(P\"Z\")\nX₁ ⟼ + Z\nZ₁ ⟼ + X\n\nSee also: enumerate_cliffords, clifford_cardinality.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.tab-Union{Tuple{Stabilizer{T}}, Tuple{T}} where T","page":"API","title":"QuantumClifford.tab","text":"Extract the underlying tableau structure.\n\njulia> s = S\"X\"\n+ X\n\njulia> tab(s)\n+ X\n\njulia> tab(Destabilizer(s))\n+ Z\n+ X\n\njulia> tab(MixedDestabilizer(s))\n+ Z\n+ X\n\njulia> tab(tHadamard)\n+ Z\n+ X\n\njulia> typeof(tab(tHadamard))\nQuantumClifford.Tableau{Vector{UInt8}, Matrix{UInt64}}\n\nSee also: stabilizerview, destabilizerview, logicalxview, logicalzview\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.xbit-Tuple{PauliOperator}","page":"API","title":"QuantumClifford.xbit","text":"Extract as a new bit array the X part of the UInt array of packed qubits of a given Pauli operator.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.xview-Tuple{PauliOperator}","page":"API","title":"QuantumClifford.xview","text":"Get a view of the X part of the UInt array of packed qubits of a given Pauli operator.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.zbit-Tuple{PauliOperator}","page":"API","title":"QuantumClifford.zbit","text":"Extract as a new bit array the Z part of the UInt array of packed qubits of a given Pauli operator.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.zview-Tuple{PauliOperator}","page":"API","title":"QuantumClifford.zview","text":"Get a view of the Y part of the UInt array of packed qubits of a given Pauli operator.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.apply!","page":"API","title":"QuantumInterface.apply!","text":"In QuantumClifford the apply! function is used to apply any quantum operation to a stabilizer state, including unitary Clifford operations, Pauli measurements, and noise. Thus, this function may result in a random/stochastic result (e.g. with measurements or noise).\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumInterface.embed-Tuple{Int64, Int64, PauliOperator}","page":"API","title":"QuantumInterface.embed","text":"Embed a Pauli operator in a larger Pauli operator.\n\njulia> embed(5, 3, P\"-Y\")\n- __Y__\n\njulia> embed(5, (3,5), P\"-YX\")\n- __Y_X\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.entanglement_entropy","page":"API","title":"QuantumInterface.entanglement_entropy","text":"Get bipartite entanglement entropy of a subsystem\n\nDefined as entropy of the reduced density matrix.\n\nIt can be calculated with multiple different algorithms, the most performant one depending on the particular case.\n\nCurrently implemented are the :clip (clipped gauge), :graph (graph state), and :rref (Gaussian elimination) algorithms. Benchmark your particular case to choose the best one.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumInterface.entanglement_entropy-Tuple{QuantumClifford.AbstractStabilizer, AbstractVector, Val{:graph}}","page":"API","title":"QuantumInterface.entanglement_entropy","text":"Get bipartite entanglement entropy by first converting the state to a graph and computing the rank of the adjacency matrix.\n\nBased on \"Entanglement in graph states and its applications\".\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.entanglement_entropy-Tuple{QuantumClifford.AbstractStabilizer, AbstractVector, Val{:rref}}","page":"API","title":"QuantumInterface.entanglement_entropy","text":"Get bipartite entanglement entropy by converting to RREF form (i.e., partial trace form).\n\nThe state will be partially canonicalized in an RREF form.\n\nSee also: canonicalize_rref!, traceout!.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.entanglement_entropy-Tuple{QuantumClifford.AbstractStabilizer, UnitRange, Val{:clip}}","page":"API","title":"QuantumInterface.entanglement_entropy","text":"Get bipartite entanglement entropy of a contiguous subsystem by passing through the clipped gauge.\n\nIf clip=false is set the canonicalization step is skipped, useful if the input state is already in the clipped gauge.\n\nSee also: bigram, canonicalize_clip!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.expect-Tuple{PauliOperator, QuantumClifford.AbstractStabilizer}","page":"API","title":"QuantumInterface.expect","text":"expect(p::PauliOperator, st::AbstractStabilizer)\n\nCompute the expectation value of a Pauli operator p on a stabilizer state st. This function will allocate a temporary copy of the stabilizer state st.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.nqubits-Tuple{QuantumClifford.AbstractStabilizer}","page":"API","title":"QuantumInterface.nqubits","text":"The number of qubits of a given state.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.project!-Tuple{Any, PauliOperator}","page":"API","title":"QuantumInterface.project!","text":"project!(\n state,\n pauli::PauliOperator;\n keep_result,\n phases\n) -> Tuple{MixedStabilizer, Any, Any}\n\n\nProject the state of a Stabilizer on the two eigenspaces of a Pauli operator.\n\nAssumes the input is a valid stabilizer. The projection is done inplace on that stabilizer and it does not modify the projection operator.\n\nIt returns\n\na stabilizer that might not be in canonical form\nthe index of the row where the non-commuting operator was (that row is now equal to pauli; its phase is not updated and for a faithful measurement simulation it needs to be randomized by the user)\nand the result of the projection if there was no non-commuting operator (nothing otherwise)\n\nIf keep_result==false that result of the projection in case of anticommutation is not computed, sparing a canonicalization operation. This canonicalization operation is the only one potentially of cubic complexity. The rest of the calculations are of quadratic complexity.\n\nIf you need to measure a single qubit instead of a multiqubit Pauli operator, the faster projectX!, projectY!, and projectZ! are available.\n\nFor less boilerplate and automatic randomization of the phase use projectrand!.\n\nHere is an example of a projection destroying entanglement:\n\njulia> ghz = S\"XXXX\n ZZII\n IZZI\n IIZZ\";\n\n\njulia> canonicalize!(ghz)\n+ XXXX\n+ Z__Z\n+ _Z_Z\n+ __ZZ\n\njulia> state, anticom_index, result = project!(ghz, P\"ZIII\");\n\n\njulia> state\n+ Z___\n+ Z__Z\n+ _Z_Z\n+ __ZZ\n\njulia> canonicalize!(state)\n+ Z___\n+ _Z__\n+ __Z_\n+ ___Z\n\njulia> anticom_index, result\n(1, nothing)\n\nAnd an example of projection consistent with the stabilizer state.\n\njulia> s = S\"ZII\n IXI\n IIY\";\n\n\njulia> canonicalize!(s)\n+ _X_\n+ __Y\n+ Z__\n\njulia> state, anticom_index, result = project!(s, P\"-ZII\");\n\n\njulia> state\n+ _X_\n+ __Y\n+ Z__\n\njulia> anticom_index, result\n(0, 0x02)\n\nWhile not the best choice, Stabilizer can be used for mixed states, simply by providing an incomplete tableau. In that case it is possible to attempt to project on an operator that can not be generated by the provided stabilizer operators. In that case we have anticom_index==rank and result===nothing, where rank is the the new rank of the tableau, one more than the number of rows in the initial tableau. However, if keep_result was set to false, then anticom_index would stay at zero.\n\njulia> s = S\"XZI\n IZI\";\n\n\njulia> project!(s, P\"IIX\")[1]\n+ X__\n+ _Z_\n\nIf we had used MixedStabilizer we would have added the projector to the list of stabilizers.\n\njulia> s = one(MixedStabilizer, 2, 3)\n+ Z__\n+ _Z_\n\njulia> project!(s, P\"IIX\")[1]\n+ Z__\n+ _Z_\n+ __X\n\nHowever, MixedDestabilizer would be an even better choice as it has mathcalO(n^2) complexity instead of the mathcalO(n^3) complexity of *Stabilizer.\n\njulia> s = one(MixedDestabilizer, 2, 3)\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ X__\n+ _X_\n𝒳ₗ━━━\n+ __X\n𝒮𝓉𝒶𝒷━\n+ Z__\n+ _Z_\n𝒵ₗ━━━\n+ __Z\n\njulia> project!(s, P\"IIX\")[1]\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ X__\n+ _X_\n+ __Z\n𝒮𝓉𝒶𝒷━\n+ Z__\n+ _Z_\n+ __X\n\nSee the \"Datastructure Choice\" section in the documentation for more details.\n\nSee also: projectX!, projectY!, projectZ!, projectrand!\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.project!-Tuple{MixedStabilizer, PauliOperator}","page":"API","title":"QuantumInterface.project!","text":"project!(\n state::MixedStabilizer,\n pauli::PauliOperator;\n phases\n) -> Tuple{MixedStabilizer, Any, Any}\n\n\nWhen using project! on MixedStabilizer it automates some of the extra steps we encounter when implicitly using the Stabilizer datastructure to represent mixed states. Namely, it helps when the projector is not among the list of stabilizers:\n\njulia> s = S\"XZI\n IZI\";\n\n\njulia> ms = MixedStabilizer(s)\n+ X__\n+ _Z_\n\njulia> project!(ms, P\"IIY\")[1]\n+ X__\n+ _Z_\n+ __Y\n\nSimilarly to project! on Stabilizer, this function has cubic complexity when the Pauli operator commutes with all rows of the tableau. Most of the time it is better to simply use MixedDestabilizer representation.\n\nUnlike other project! methods, this one does not allow for keep_result=false, as the correct rank or anticommutation index can not be calculated without the expensive (cubic) canonicalization operation required by keep_result=true.\n\nSee the \"Datastructure Choice\" section in the documentation for more details.\n\nSee also: projectX!, projectY!, projectZ!.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.projectX!-Tuple{MixedDestabilizer, Int64}","page":"API","title":"QuantumInterface.projectX!","text":"Measure a given qubit in the X basis. A faster special-case version of project!.\n\nSee also: project!, projectXrand!, projectY!, projectZ!.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.projectY!-Tuple{MixedDestabilizer, Int64}","page":"API","title":"QuantumInterface.projectY!","text":"Measure a given qubit in the Y basis. A faster special-case version of project!.\n\nSee also: project!, projectYrand!, projectX!, projectZ!.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.projectZ!-Tuple{MixedDestabilizer, Int64}","page":"API","title":"QuantumInterface.projectZ!","text":"Measure a given qubit in the Z basis. A faster special-case version of project!.\n\nSee also: project!, projectZrand!, projectY!, projectX!.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.reset_qubits!-Tuple{MixedDestabilizer, QuantumClifford.AbstractStabilizer, Any}","page":"API","title":"QuantumInterface.reset_qubits!","text":"reset_qubits!(\n s::MixedDestabilizer,\n newstate::QuantumClifford.AbstractStabilizer,\n qubits;\n phases\n) -> MixedDestabilizer\n\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.reset_qubits!-Tuple{MixedStabilizer, Any, Any}","page":"API","title":"QuantumInterface.reset_qubits!","text":"reset_qubits!(\n s::MixedStabilizer,\n newstate,\n qubits;\n phases\n) -> MixedStabilizer\n\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.reset_qubits!-Tuple{Stabilizer, Any, Any}","page":"API","title":"QuantumInterface.reset_qubits!","text":"reset_qubits!(\n s::Stabilizer,\n newstate,\n qubits;\n phases\n) -> Union{PauliOperator, Stabilizer}\n\n\nReset a given set of qubits to be in the state newstate. These qubits are traced out first, which could lead to \"nonlocal\" changes in the tableau.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.tensor","page":"API","title":"QuantumInterface.tensor","text":"Tensor product between operators or tableaux. \n\nTensor product between CiffordOperators:\n\njulia> tensor(CliffordOperator(sCNOT), CliffordOperator(sCNOT))\nX₁ ⟼ + XX__\nX₂ ⟼ + _X__\nX₃ ⟼ + __XX\nX₄ ⟼ + ___X\nZ₁ ⟼ + Z___\nZ₂ ⟼ + ZZ__\nZ₃ ⟼ + __Z_\nZ₄ ⟼ + __ZZ\n\nTensor product between PauliOperators:\n\njulia> tensor(P\"-IXYZ\", P\"iIXYZ\")\n-i_XYZ_XYZ\n\nTensor product between Tableaux:\n\njulia> s = S\"-XX\n +ZZ\";\n\njulia> tensor(s, s, s)\n- XX____\n+ ZZ____\n- __XX__\n+ __ZZ__\n- ____XX\n+ ____ZZ\n\njulia> s = S\"+XZI\n -IZI\";\n\njulia> tensor(s, s)\n+ XZ____\n- _Z____\n+ ___XZ_\n- ____Z_\n\nSee also tensor_pow.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumInterface.tensor_pow-Tuple{Union{QuantumClifford.AbstractCliffordOperator, QuantumClifford.AbstractStabilizer}, Any}","page":"API","title":"QuantumInterface.tensor_pow","text":"Repeated tensor product of an operators or a tableau.\n\nFor CliffordOperator:\n\njulia> tensor_pow(CliffordOperator(sHadamard), 3)\nX₁ ⟼ + Z__\nX₂ ⟼ + _Z_\nX₃ ⟼ + __Z\nZ₁ ⟼ + X__\nZ₂ ⟼ + _X_\nZ₃ ⟼ + __X\n\nFor PauliOperator:\n\njulia> tensor_pow(P\"IXYZ\", 2)\n+ _XYZ_XYZ\n\nFor Tableaux:\n\njulia> tensor_pow(S\"Z\", 4)\n+ Z___\n+ _Z__\n+ __Z_\n+ ___Z\n\njulia> s = S\"+XZI\n +IZI\";\n\njulia> tensor_pow(s, 3)\n+ XZ_______\n+ _Z_______\n+ ___XZ____\n+ ____Z____\n+ ______XZ_\n+ _______Z_\n\nSee also tensor.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.traceout!-Tuple{Stabilizer, Any}","page":"API","title":"QuantumInterface.traceout!","text":"traceout!(\n s::Stabilizer,\n qubits;\n phases,\n rank\n) -> Union{Tuple{Stabilizer, Any}, Stabilizer}\n\n\nTrace out a qubit.\n\nSee also: delete_columns\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumInterface.traceout!-Tuple{Union{MixedDestabilizer, MixedStabilizer}, Any}","page":"API","title":"QuantumInterface.traceout!","text":"traceout!(\n s::Union{MixedDestabilizer, MixedStabilizer},\n qubits;\n phases,\n rank\n) -> Union{Tuple{Union{MixedDestabilizer, MixedStabilizer}, Any}, MixedDestabilizer, MixedStabilizer}\n\n\n\n\n\n\n","category":"method"},{"location":"API/#Private-API","page":"API","title":"Private API","text":"","category":"section"},{"location":"API/","page":"API","title":"API","text":"danger: Private Implementation Details\nThese functions are used internally by the library and might be drastically modified or deleted without warning or deprecation.","category":"page"},{"location":"API/","page":"API","title":"API","text":"Modules = [QuantumClifford]\nPrivate = true\nPublic = false","category":"page"},{"location":"API/#QuantumClifford.AbstractMeasurement","page":"API","title":"QuantumClifford.AbstractMeasurement","text":"Supertype of all symbolic single-qubit measurements.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.SymbolicDataType","page":"API","title":"QuantumClifford.SymbolicDataType","text":"An intermediary when we want to create a new concrete type in a macro.\n\n\n\n\n\n","category":"type"},{"location":"API/#QuantumClifford.Tableau","page":"API","title":"QuantumClifford.Tableau","text":"Internal Tableau type for storing a list of Pauli operators in a compact form. No special semantic meaning is attached to this type, it is just a convenient way to store a list of Pauli operators. E.g. it is not used to represent a stabilizer state, or a stabilizer group, or a Clifford circuit.\n\n\n\n\n\n","category":"type"},{"location":"API/#Base.hcat-Tuple{Vararg{QuantumClifford.Tableau}}","page":"API","title":"Base.hcat","text":"Horizontally concatenates tableaux.\n\njulia> hcat(ghz(2), ghz(2))\n+ XXXX\n+ ZZZZ\n\nSee also: vcat\n\n\n\n\n\n","category":"method"},{"location":"API/#Base.inv-Tuple{CliffordOperator}","page":"API","title":"Base.inv","text":"inv(\n c::CliffordOperator;\n phases\n) -> CliffordOperator{QuantumClifford.Tableau{Vector{UInt8}, Matrix{UInt64}}}\n\n\nInverse of a CliffordOperator\n\njulia> inv(CliffordOperator(sCNOT))\nX₁ ⟼ + XX\nX₂ ⟼ + _X\nZ₁ ⟼ + Z_\nZ₂ ⟼ + ZZ\n\njulia> inv(CliffordOperator(sCNOT(2, 1), 2))\nX₁ ⟼ + X_\nX₂ ⟼ + XX\nZ₁ ⟼ + ZZ\nZ₂ ⟼ + _Z\n\njulia> inv(CliffordOperator(tHadamard))\nX₁ ⟼ + Z\nZ₁ ⟼ + X\n\n\n\n\n\n","category":"method"},{"location":"API/#Base.permute!-Tuple{QuantumClifford.AbstractStabilizer, AbstractVector}","page":"API","title":"Base.permute!","text":"Permute the qubits (i.e., columns) of the state in place.\n\n\n\n\n\n","category":"method"},{"location":"API/#Base.permute!-Tuple{QuantumClifford.Tableau, AbstractVector}","page":"API","title":"Base.permute!","text":"Permute the qubits (i.e., columns) of the tableau in place.\n\n\n\n\n\n","category":"method"},{"location":"API/#Base.vcat-Tuple{Vararg{QuantumClifford.Tableau}}","page":"API","title":"Base.vcat","text":"Vertically concatenates tableaux.\n\njulia> vcat(ghz(2), ghz(2))\n+ XX\n+ ZZ\n+ XX\n+ ZZ\n\nSee also: hcat\n\n\n\n\n\n","category":"method"},{"location":"API/#LinearAlgebra.dot-Tuple{QuantumClifford.AbstractStabilizer, QuantumClifford.AbstractStabilizer}","page":"API","title":"LinearAlgebra.dot","text":"The inner product of two Stabilizers.\n\nBased on (Garcia et al., 2012).\n\njulia> using LinearAlgebra\n\njulia> dot(S\"Z\", S\"Z\")\n1.0\n\njulia> dot(S\"Z\", S\"Y\")\n0.7071067811865476\n\nSee also: logdot\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford._apply_nonthread!-Tuple{QuantumClifford.AbstractStabilizer, CliffordOperator, AbstractVector{Int64}}","page":"API","title":"QuantumClifford._apply_nonthread!","text":"Nonvectorized version of apply! used for unit tests.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford._apply_nonthread!-Tuple{QuantumClifford.AbstractStabilizer, CliffordOperator}","page":"API","title":"QuantumClifford._apply_nonthread!","text":"Nonvectorized version of apply! used for unit tests.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford._mul_left_nonvec!-Union{Tuple{T}, Tuple{AbstractVector{T}, AbstractVector{T}}} where T<:Unsigned","page":"API","title":"QuantumClifford._mul_left_nonvec!","text":"Nonvectorized version of mul_left! used for unit tests.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford._remove_rowcol!-Tuple{MixedDestabilizer, Any, Any}","page":"API","title":"QuantumClifford._remove_rowcol!","text":"Unexported low-level function that removes a row (by shifting all rows up as necessary)\n\nBecause MixedDestabilizer is not mutable we return a new MixedDestabilizer with the same (modified) xzs array.\n\nUsed on its own, this function will break invariants. Meant to be used with projectremove!.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford._rowmove!-Union{Tuple{B}, Tuple{QuantumClifford.Tableau, Any, Any}} where B","page":"API","title":"QuantumClifford._rowmove!","text":"Unexported low-level function that moves row i to row j.\n\nUsed on its own, this function will break invariants. Meant to be used in _remove_rowcol!.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford._stim_prodphase-Union{Tuple{T}, Tuple{AbstractVector{T}, AbstractVector{T}}} where T<:Unsigned","page":"API","title":"QuantumClifford._stim_prodphase","text":"The quantumlib/Stim implementation, which performs the prodphase and mul_left! together. Used for unit tests.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.apply_single_x!-Tuple{QuantumClifford.AbstractStabilizer, Any}","page":"API","title":"QuantumClifford.apply_single_x!","text":"Apply a Pauli X to the i-th qubit of state s. You should use apply!(stab,sX(i)) instead of this.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.apply_single_y!-Tuple{QuantumClifford.AbstractStabilizer, Any}","page":"API","title":"QuantumClifford.apply_single_y!","text":"Apply a Pauli Y to the i-th qubit of state s. You should use apply!(stab,sY(i)) instead of this.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.apply_single_z!-Tuple{QuantumClifford.AbstractStabilizer, Any}","page":"API","title":"QuantumClifford.apply_single_z!","text":"Apply a Pauli Z to the i-th qubit of state s. You should use apply!(stab,sZ(i)) instead of this.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.applynoise_branches","page":"API","title":"QuantumClifford.applynoise_branches","text":"Compute all possible new states after the application of the given noise model. Reports the probability of each one of them. Deterministic (as it reports all branches of potentially random processes), part of the Noise interface.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.colswap!-Tuple{QuantumClifford.Tableau, Any, Any}","page":"API","title":"QuantumClifford.colswap!","text":"Swap two columns of a stabilizer in place.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.destab_looks_good-Tuple{Any}","page":"API","title":"QuantumClifford.destab_looks_good","text":"Check basic consistency requirements of a destabilizer. Used in tests.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.enumerate_cliffords_slow-Tuple{Any, Any}","page":"API","title":"QuantumClifford.enumerate_cliffords_slow","text":"The O(n^4) implementation from (Koenig and Smolin, 2014) – their algorithm seems wrong as ⟨w'₁|wₗ⟩=bₗ which is not always zero.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.fill_tril-Tuple{Any, Any, Any}","page":"API","title":"QuantumClifford.fill_tril","text":"Assign (symmetric) random ints to off diagonals of matrix.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.get_all_subtypes-Tuple{Any}","page":"API","title":"QuantumClifford.get_all_subtypes","text":"Returns a tuple of all concrete subtypes and all UnionAll non-abstract subtypes of a given type.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.gf2_H_standard_form_indices-Tuple{Any}","page":"API","title":"QuantumClifford.gf2_H_standard_form_indices","text":"The permutation of columns which turns a binary matrix into standard form. It is assumed the matrix has already undergone Gaussian elimination.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.initZ!-Tuple{PauliFrame}","page":"API","title":"QuantumClifford.initZ!","text":"initZ!(frame::PauliFrame) -> PauliFrame\n\n\nInject random Z errors over all frames and qubits for the supplied PauliFrame with probability 0.5.\n\nCalling this after initialization is essential for simulating any non-deterministic circuit. It is done automatically by most PauliFrame constructors.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.make_sumtype-Tuple{Any}","page":"API","title":"QuantumClifford.make_sumtype","text":"julia> make_sumtype([sCNOT])\nquote\n @sum_type CompactifiedGate :hidden begin\n sCNOT(::Int64, ::Int64)\n end\nend\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.make_sumtype_method","page":"API","title":"QuantumClifford.make_sumtype_method","text":"``` julia> makesumtypemethod([sCNOT], :apply!, (:s,)) quote function QuantumClifford.apply!(s, g::CompactifiedGate) @cases g begin sCNOT(q1, q2) => apply!(s, sCNOT(q1, q2)) end end end\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.make_sumtype_variant_constructor-Tuple{Any}","page":"API","title":"QuantumClifford.make_sumtype_variant_constructor","text":"julia> make_sumtype_variant_constructor(sCNOT)\n:(CompactifiedGate(g::sCNOT) = begin\n (CompactifiedGate').sCNOT(g.q1, g.q2)\nend)\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.make_variant-Tuple{Union{DataType, QuantumClifford.SymbolicDataType}}","page":"API","title":"QuantumClifford.make_variant","text":"julia> make_variant(sCNOT)\n:(sCNOT(::Int64, ::Int64))\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.make_variant_deconstruct","page":"API","title":"QuantumClifford.make_variant_deconstruct","text":"julia> make_variant_deconstruct(sCNOT, :apply!, (:s,))\n:(sCNOT(q1, q2) => apply!(s, sCNOT(q1, q2)))\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.mixed_destab_looks_good-Tuple{Any}","page":"API","title":"QuantumClifford.mixed_destab_looks_good","text":"Check basic consistency requirements of a mixed destabilizer. Used in tests.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.mixed_stab_looks_good-Tuple{Any}","page":"API","title":"QuantumClifford.mixed_stab_looks_good","text":"Check basic consistency requirements of a mixed stabilizer. Used in tests.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.pfmeasurement","page":"API","title":"QuantumClifford.pfmeasurement","text":"For a given simulated state, e.g. a PauliFrame instance, returns the measurement results.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.precise_inv-Tuple{Any}","page":"API","title":"QuantumClifford.precise_inv","text":"Inverting a binary matrix: uses floating point for small matrices and Nemo for large matrices.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.project_cond!-Union{Tuple{PHASES}, Tuple{RESET}, Tuple{IS}, Tuple{MixedDestabilizer, Int64, Val{IS}, Val{RESET}}} where {IS, RESET, PHASES}","page":"API","title":"QuantumClifford.project_cond!","text":"Internal method used to implement projectX!, projectZ!, and projectY!.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.projectremoverand!-Union{Tuple{F}, Tuple{MixedDestabilizer, F, Any}} where F<:Union{typeof(projectX!), typeof(projectY!), typeof(projectZ!)}","page":"API","title":"QuantumClifford.projectremoverand!","text":"Unexported low-level function that projects a qubit and returns the result while making the tableau smaller by a qubit.\n\nBecause MixedDestabilizer is not mutable we return a new MixedDestabilizer with the same (modified) xzs array.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.quantum_mallows-Tuple{Any, Any}","page":"API","title":"QuantumClifford.quantum_mallows","text":"Sample (h, S) from the distribution P_n(h, S) from Bravyi and Maslov Algorithm 1.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.remove_column!-Union{Tuple{M}, Tuple{T}, Tuple{V}, Tuple{QuantumClifford.Tableau{V, M}, Int64}} where {V, T<:Unsigned, M<:AbstractMatrix{T}}","page":"API","title":"QuantumClifford.remove_column!","text":"Unexported low-level function that removes a column (by shifting all columns to the right of the target by one step to the left)\n\nBecause Tableau is not mutable we return a new Tableau with the same (modified) xzs array.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.rowdecompose-Tuple{Any, Union{Destabilizer, MixedDestabilizer}}","page":"API","title":"QuantumClifford.rowdecompose","text":"Decompose a Pauli P in terms of stabilizer and destabilizer rows from a given tableaux.\n\nFor given tableaux of rows destabilizer rows d_i and stabilizer rows s_i, there are boolean vectors b and c such that P = i^p prod_i d_i^b_i prod_i s_i^c_i.\n\nThis function returns p, b, c.\n\njulia> s = MixedDestabilizer(ghz(2))\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ Z_\n+ _X\n𝒮𝓉𝒶𝒷\n+ XX\n+ ZZ\n\njulia> phase, destab_rows, stab_rows = QuantumClifford.rowdecompose(P\"XY\", s)\n(3, Bool[1, 0], Bool[1, 1])\n\njulia> im^3 * P\"Z_\" * P\"XX\" * P\"ZZ\"\n+ XY\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.sample_geometric_2-Tuple{Any, Integer}","page":"API","title":"QuantumClifford.sample_geometric_2","text":"This function samples a number from 1 to n where n >= 1 probability of outputting i is proportional to 2^i\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.stab_looks_good-Tuple{Any}","page":"API","title":"QuantumClifford.stab_looks_good","text":"Check basic consistency requirements of a stabilizer. Used in tests.\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.to_cpu","page":"API","title":"QuantumClifford.to_cpu","text":"copies the memory content of the object to CPU\n\nYou can only use this function if CUDA.jl is imported\n\nFor more advanced users to_cpu(data, element_type) will reinterpret elements of data and converts them to element_type. For example based on your CPU architecture, if working with matrices of UInt32 is faster than UInt64, you can use to_cpu(data, UInt32)\n\njulia> using QuantumClifford: to_cpu, to_gpu\n\njulia> using CUDA # without this import, to_cpu, to_gpu are just function\n\njulia> stab = S\"- X_Z\\n+ _ZZ\\n+ __Z\"\n- X_Z\n+ _ZZ\n+ __Z\n\njulia> stab_gpu = to_gpu(stab);\n\njulia> apply!(stab_gpu, sHadamard(1));\n\njulia> stab_result_cpu = to_cpu(stab_gpu)\n- Z_Z\n+ _ZZ\n+ __Z\n\njulia> using QuantumClifford: to_cpu, to_gpu\n\njulia> using CUDA # without this import, to_cpu, to_gpu are just function\n\njulia> pf_gpu = to_gpu(PauliFrame(1000, 2, 2));\njulia> circuit = [sMZ(1, 1), sHadamard(2), sMZ(2, 2)];\njulia> pftrajectories(pf_gpu, circuit);\njulia> measurements = to_cpu(pf_gpu.measurements);\n\nSee also: to_gpu\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.to_gpu","page":"API","title":"QuantumClifford.to_gpu","text":"copies the memory content of the object to GPU\n\nYou can only use this function if CUDA.jl is imported\n\nFor more advanced users to_gpu(data, element_type) will reinterpret elements of data and converts them to element_type. For example based on your GPU architecture, if working with matrices of UInt64 is faster than UInt32, you can use to_gpu(data, UInt64)\n\njulia> using QuantumClifford: to_cpu, to_gpu\n\njulia> using CUDA # without this import, to_cpu, to_gpu are just function\n\njulia> stab = S\"- X_Z\\n+ _ZZ\\n+ __Z\"\n- X_Z\n+ _ZZ\n+ __Z\n\njulia> stab_gpu = to_gpu(stab);\n\njulia> apply!(stab_gpu, sHadamard(1));\n\njulia> stab_result_cpu = to_cpu(stab_gpu)\n- Z_Z\n+ _ZZ\n+ __Z\n\njulia> using QuantumClifford: to_cpu, to_gpu\n\njulia> using CUDA # without this import, to_cpu, to_gpu are just function\n\njulia> pf_gpu = to_gpu(PauliFrame(1000, 2, 2));\njulia> circuit = [sMZ(1, 1), sHadamard(2), sMZ(2, 2)];\njulia> pftrajectories(pf_gpu, circuit);\njulia> measurements = to_cpu(pf_gpu.measurements);\n\nSee also: to_cpu\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.trusted_rank","page":"API","title":"QuantumClifford.trusted_rank","text":"A \"trusted\" rank which returns rank(state) for Mixed[De]Stabilizer and length(state) for [De]Stabilizer.\n\n\n\n\n\n","category":"function"},{"location":"API/#QuantumClifford.zero!-Tuple{QuantumClifford.Tableau, Any}","page":"API","title":"QuantumClifford.zero!","text":"Zero-out a given row of a Tableau\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.zero!-Union{Tuple{PauliOperator{Tₚ, Tᵥ}}, Tuple{Tᵥ}, Tuple{Tᵥₑ}, Tuple{Tₚ}} where {Tₚ, Tᵥₑ<:Unsigned, Tᵥ<:AbstractVector{Tᵥₑ}}","page":"API","title":"QuantumClifford.zero!","text":"Zero-out the phases and single-qubit operators in a PauliOperator\n\n\n\n\n\n","category":"method"},{"location":"API/#QuantumClifford.@qubitop1-Tuple{Any, Any}","page":"API","title":"QuantumClifford.@qubitop1","text":"Macro used to define single qubit symbolic gates and their qubit_kernel methods.\n\n\n\n\n\n","category":"macro"},{"location":"API/#QuantumClifford.@qubitop2-Tuple{Any, Any}","page":"API","title":"QuantumClifford.@qubitop2","text":"Macro used to define 2-qubit symbolic gates and their qubit_kernel methods.\n\n\n\n\n\n","category":"macro"},{"location":"API/#QuantumClifford.@valbooldispatch-Tuple{Any, Vararg{Any}}","page":"API","title":"QuantumClifford.@valbooldispatch","text":"Turns f(Val(x)) into x ? f(Val(true)) : f(Val(false)) in order to avoid dynamic dispatch\n\nSee discourse discussion\n\n\n\n\n\n","category":"macro"},{"location":"mixed/#Mixed-Stabilizer-States","page":"Mixed States","title":"Mixed Stabilizer States","text":"","category":"section"},{"location":"mixed/","page":"Mixed States","title":"Mixed States","text":"DocTestSetup = quote\n using QuantumClifford\nend","category":"page"},{"location":"mixed/","page":"Mixed States","title":"Mixed States","text":"The Stabilizer and Destabilizer have some support for mixed states (by being initialized with an incomplete list of stabilizer generators), but for most purposes one would use the Mixed* data structures.","category":"page"},{"location":"mixed/","page":"Mixed States","title":"Mixed States","text":"Mixed stabilizer states are implemented with MixedStabilizer and MixedDestabilizer, the latter of which is the preferred data structure for most tasks as it is much faster by virtue of tracking the destabilizer generators.","category":"page"},{"location":"mixed/","page":"Mixed States","title":"Mixed States","text":"julia> s = S\"XXX\n IZZ\";\n\njulia> Destabilizer(s)\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ Z__\n+ _X_\n𝒮𝓉𝒶𝒷━\n+ XXX\n+ _ZZ","category":"page"},{"location":"mixed/","page":"Mixed States","title":"Mixed States","text":"Unlike Destabilizer, MixedDestabilizer also tracks the logical operation generators.","category":"page"},{"location":"mixed/","page":"Mixed States","title":"Mixed States","text":"julia> m = MixedDestabilizer(s)\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ Z__\n+ _X_\n𝒳ₗ━━━\n+ _XX\n𝒮𝓉𝒶𝒷━\n+ XXX\n+ _ZZ\n𝒵ₗ━━━\n+ Z_Z\n\njulia> stabilizerview(m)\n+ XXX\n+ _ZZ\n\njulia> destabilizerview(m)\n+ Z__\n+ _X_\n\njulia> logicalxview(m)\n+ _XX\n\njulia> logicalzview(m)\n+ Z_Z","category":"page"},{"location":"mixed/#Gottesman-Canonicalization","page":"Mixed States","title":"Gottesman Canonicalization","text":"","category":"section"},{"location":"mixed/","page":"Mixed States","title":"Mixed States","text":"To obtain the logical operators we perform a different type of canonicalization, described in Gottesman's thesis and implemented in canonicalize_gott!. Unlike canonicalize! which uses only row operations, canonicalize_gott! performs column swaps as well. MixedDestabilizer undoes those swaps by default when instantiated, but that behavior can be turned off, if you prefer to work with the canonicalized tableau.","category":"page"},{"location":"mixed/","page":"Mixed States","title":"Mixed States","text":"julia> s = S\"XXX\n ZIZ\";\n\njulia> MixedDestabilizer(s)\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ Z__\n+ __X\n𝒳ₗ━━━\n+ _X_\n𝒮𝓉𝒶𝒷━\n+ XXX\n+ Z_Z\n𝒵ₗ━━━\n+ ZZ_\n\njulia> MixedDestabilizer(s; undoperm=false)\n𝒟ℯ𝓈𝓉𝒶𝒷\n+ Z__\n+ _X_\n𝒳ₗ━━━\n+ __X\n𝒮𝓉𝒶𝒷━\n+ XXX\n+ ZZ_\n𝒵ₗ━━━\n+ Z_Z","category":"page"},{"location":"mixed/","page":"Mixed States","title":"Mixed States","text":"Destabilizer and MixedStabilizer do not use any column swaps on instantiation as they do not track the logical operators.","category":"page"},{"location":"datastructures/#Data-Structures-Options","page":"Datastructure Choice","title":"Data Structures Options","text":"","category":"section"},{"location":"datastructures/#Choosing-Appropriate-Data-Structure","page":"Datastructure Choice","title":"Choosing Appropriate Tableau Data Structure","text":"","category":"section"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"There are four different data structures used to represent stabilizer states. If you will never need projective measurements you probably would want to use Stabilizer. If you require projective measurements, but only on pure states, Destabilizer should be the appropriate data structure. If mixed stabilizer states are involved, MixedStabilizer would be necessary.","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"Stabilizer is simply a list of Pauli operators in a tableau form. As a data structure it does not enforce the requirements for a pure stabilizer state (the rows of the tableau do not necessarily commute, nor are they forced to be Hermitian; the tableau might be underdetermined, redundant, or contradictory). It is up to the user to ensure that the initial values in the tableau are meaningful and consistent.","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"canonicalize!, project!, and generate! can accept an under determined (mixed state) Stabilizer instance and operate correctly. canonicalize! can also accept a redundant Stabilizer (i.e. not all rows are independent), leaving as many identity rows at the bottom of the canonicalized tableau as the number of redundant stabilizers in the initial tableau.","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"canonicalize! takes mathcalO(n^3) steps. generate! expects a canonicalized input and then takes mathcalO(n^2) steps. project! takes mathcalO(n^3) for projecting on commuting operators due to the need to call canonicalize! and generate!. If the projections is on an anticommuting operator (or if keep_result=false) then it takes mathcalO(n^2) steps.","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"MixedStabilizer provides explicit tracking of the rank of the mixed state and works properly when the projection is on a commuting operator not in the stabilizer (see table below for details). Otherwise it has the same performance as Stabilizer.","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"The canonicalization can be made unnecessary if we track the destabilizer generators. There are two data structures capable of that.","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"Destabilizer stores both the destabilizer and stabilizer states. project! called on it never requires a stabilizer canonicalization, hence it runs in mathcalO(n^2). However, project! will raise an exception if you try to project on a commuting state that is not in the stabilizer as that would be an expensive mathcalO(n^3) operation.","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"MixedDestabilizer tracks both the destabilizer operators and the logical operators in addition to the stabilizer generators. It does not require canonicalization for measurements and its project! operations always takes mathcalO(n^2).","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"For the operation _, anticom_index, result = project!(...) we have the following behavior:","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"projection Stabilizer MixedStabilizer Destabilizer MixedDestabilizer\non anticommuting operator anticom_index>0 result===nothing correct result in mathcalO(n^2) steps same as Stabilizer same as Stabilizer same as Stabilizer\non commuting operator in the stabilizer anticom_index==0 result!==nothing mathcalO(n^3); or mathcalO(n^2) if keep_result=false mathcalO(n^3) mathcalO(n^2) if the state is pure, throws exception otherwise mathcalO(n^2)\non commuting operator out of the stabilizer[1] anticom_index==rank result===nothing mathcalO(n^3), but the user needs to manually include the new operator to the stabilizer; or mathcalO(n^2) if keep_result=false but then result indistinguishable from cell above and anticom_index==0 mathcalO(n^3) and rank goes up by one not applicable if the state is pure, throws exception otherwise mathcalO(n^2) and rank goes up by one","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"Notice the results when the projection operator commutes with the state but is not generated by the stabilizers of the state (the last row of the table). In that case we have _, anticom_index, result = project!(...) where both anticom_index==rank and result===nothing, with rank being the new rank after projection, one more than the number of rows in the tableau before the measurement. ","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"[1]: This can occur only if the state being projected is mixed. Both Stabilizer and Destabilizer can be used for mixed states by simply providing fewer stabilizer generators than qubits at initialization. This can be useful for low-level code that tries to avoid the extra memory cost of using MixedStabilizer and MixedDestabilizer but should be avoided otherwise. project! works correctly or raises an explicit warning on all 4 data structures.","category":"page"},{"location":"datastructures/#Bit-Packing-in-Integers-and-Array-Order","page":"Datastructure Choice","title":"Bit Packing in Integers and Array Order","text":"","category":"section"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"We do not use boolean arrays to store information about the qubits as this would be wasteful (7 out of 8 bits in the boolean would be unused). Instead, we use all 8 qubits in a byte and perform bitwise logical operations as necessary. Implementation details of the object in RAM can matter for performance. The library permits any of the standard UInt types to be used for packing the bits, and larger UInt types (like UInt64) are usually faster as they permit working on 64 qubits at a time (instead of 1 if we used a boolean, or 8 if we used a byte).","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"Moreover, how a tableau is stored in memory can affect performance, as a row-major storage usually permits more efficient use of the CPU cache (for the particular algorithms we use).","category":"page"},{"location":"datastructures/","page":"Datastructure Choice","title":"Datastructure Choice","text":"Both of these parameters are benchmarked (testing the application of a Pauli operator, which is an mathcalO(n^2) operation; and testing the canonicalization of a Stabilizer, which is an mathcalO(n^3) operation). Row-major UInt64 is the best performing and it is used by default in this library.","category":"page"},{"location":"noisycircuits_ops/#noisycircuits_ops","page":"Circuit Operations","title":"Operators in Circuit Simulations","text":"","category":"section"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"DocTestSetup = quote\n using QuantumClifford\n using QuantumClifford.Experimental.NoisyCircuits\n using Quantikz\nend","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"warning: Unstable\nThis is experimental functionality with an unstable API.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"Import with using QuantumClifford.Experimental.NoisyCircuits.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"Too see a condensed list of all operations check out the API docs.","category":"page"},{"location":"noisycircuits_ops/#Unitary-Gates","page":"Circuit Operations","title":"Unitary Gates","text":"","category":"section"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"We distinguish between symbolic gates like sCNOT that have specialized (fast) apply! methods (usually just for single and two qubit gates) and general tableau representation of gates like CliffordOperator that can represent any multi-qubit gate.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"Predefined unitary gates are available, like sCNOT, sHadamard, etc.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"using QuantumClifford # hide\nusing QuantumClifford.Experimental.NoisyCircuits # hide\nusing Quantikz # hide\n[sCNOT(2,4),sHadamard(2),sCPHASE(1,3),sSWAP(2,4)]","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"Any arbitrary tableaux can be used as a gate too. ","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"They can be specified by giving a Clifford operator tableaux and the indices on which it acts (particularly useful for gates acting on a small part of a circuit):","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"using QuantumClifford # hide\nusing QuantumClifford.Experimental.NoisyCircuits # hide\nusing Quantikz # hide\nSparseGate(tCNOT, [2,4])","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"The Clifford operator tableaux can be completely arbitrary.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"SparseGate(random_clifford(3), [2,4,5])","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"If the Clifford operator acts on all qubits, we do not need to specify indices, just use the operator.","category":"page"},{"location":"noisycircuits_ops/#Noisy-Gates","page":"Circuit Operations","title":"Noisy Gates","text":"","category":"section"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"Each gate can be followed by noise applied to the qubits on which it has acted. This is done by wrapping the given gate into a NoisyGate","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"ε = 0.03 # X/Y/Z error probability\nnoise = UnbiasedUncorrelatedNoise(ε)\nnoisy_gate = NoisyGate(SparseGate(tCNOT, [2,4]), noise)","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"In circuit diagrams the noise is not depicted, but after each application of the gate defined in noisy_gate, a noise operator will also be applied. The example above is of Pauli Depolarization implemented by UnbiasedUncorrelatedNoise.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"One can also apply only the noise operator by using NoiseOp which acts only on specified qubits. Or alternatively, one can use NoiseOpAll in order to apply noise to all qubits.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"[NoiseOp(noise, [4,5]), NoiseOpAll(noise)]","category":"page"},{"location":"noisycircuits_ops/#Coincidence-Measurements","page":"Circuit Operations","title":"Coincidence Measurements","text":"","category":"section"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"Global parity measurements involving single-qubit projections and classical communication are implemented with BellMeasurement. One needs to specify the axes of measurement and the qubits being measured. If the parity is trivial, the circuit continues, if the parity is non-trivial, the circuit ends and reports a detected failure. This operator is frequently used in the simulation of entanglement purification.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"BellMeasurement([sMX(1), sMY(3), sMZ(4)])","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"There is also NoisyBellMeasurement that takes the bit-flip probability of a single-qubit measurement as a third argument.","category":"page"},{"location":"noisycircuits_ops/#Stabilizer-Measurements","page":"Circuit Operations","title":"Stabilizer Measurements","text":"","category":"section"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"A measurement over one or more qubits can also be performed, e.g., a direct stabilizer measurement on multiple qubits without the use of ancillary qubits. When applied to multiple qubits, this differs from BellMeasurement as it performs a single projection, unlike BellMeasurement which performs a separate projection for every single qubit involved. This measurement is implemented in PauliMeasurement which requires a Pauli operator on which to project and the index of the classical bit in which to store the result. Alternatively, there are sMX, sMZ, sMY if you are measuring a single qubit.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"[PauliMeasurement(P\"XYZ\", 1), sMZ(2, 2)]","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"TODO: SparseMeasurement, NoisyMeasurement","category":"page"},{"location":"noisycircuits_ops/#Verification-Operations","page":"Circuit Operations","title":"Verification Operations","text":"","category":"section"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"At the end of many circuits one might want to check whether they performed correctly. The VerifyOp operation corresponds to an unphysical perfect tomographic operation, checking whether the state of the qubits at the given indices is indeed what is expected. If it is, the operation reports a success, otherwise it reports an undetected error.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"desired_state = random_stabilizer(5)\nqubit_indices = [1,2,3,4,7]\nVerifyOp(desired_state, qubit_indices)","category":"page"},{"location":"noisycircuits_ops/#Reset-Operations","page":"Circuit Operations","title":"Reset Operations","text":"","category":"section"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"The Reset operations lets you trace out the specified qubits and set their state to a specific tableau.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"new_state = random_stabilizer(3)\nqubit_indices = [1,2,3]\nReset(new_state, qubit_indices)","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"It can be done anywhere in a circuit, not just at the beginning.","category":"page"},{"location":"noisycircuits_ops/#Gates-Conditioned-on-Classical-Bits","page":"Circuit Operations","title":"Gates Conditioned on Classical Bits","text":"","category":"section"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"ConditionalGate is a conditional gate that performs one of two provided gates, depending on the value of a given classical bit.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"DecisionGate is a conditional gate that performs one of the supplied gates, depending on the output of decisionfunction applied to the entire classical bit register.","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"gate1 = SparseGate(tCNOT, [1,2])\ngate2 = sCPHASE(1,2)\ngate3 = SparseGate(tSWAP, [1,3])\ncg = ConditionalGate(gate1, gate2, 2)\ndg = DecisionGate([gate1,gate2,gate3], bit_register->1) # it will always perform gate1\n[sMX(4,1), sMZ(5,2), cg, dg]","category":"page"},{"location":"noisycircuits_ops/","page":"Circuit Operations","title":"Circuit Operations","text":"TODO: Split ConditionalGate into quantum conditional and classical conditional","category":"page"},{"location":"plotting/#Visualizations","page":"Visualizations","title":"Visualizations","text":"","category":"section"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"Stabilizers have a plot recipe that can be used with Plots.jl or Makie.jl. It simply displays the corresponding parity check matrix (extracted with stab_to_gf2) as a bitmap image. Circuits can be visualized with Quantikz.jl.","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"Importing the aforementioned packages together with QuantumClifford is necessary to enable the plotting functionality (implemented as package extensions).","category":"page"},{"location":"plotting/#Plots.jl","page":"Visualizations","title":"Plots.jl","text":"","category":"section"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"In Plots.jl we have a simple recipe plot(s::Stabilizer; xzcomponents=...) where xzcomponents=:split plots the tableau heatmap in a wide form, X bits on the left, Z bits on the right; or xzcomponents=:together plots them overlapping, with different colors for I, X, Z, and Y.","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"using QuantumClifford, Plots\nplot(random_stabilizer(20,30), xzcomponents=:split)","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"using QuantumClifford, Plots\nplot(canonicalize!(random_stabilizer(20,30)))","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"using QuantumClifford, Plots\nplot(canonicalize_gott!(random_stabilizer(30))[1], xzcomponents=:split)","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"using QuantumClifford, Plots\nplot(canonicalize_gott!(random_stabilizer(30))[1]; xzcomponents=:together)","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"using QuantumClifford, Plots\nplot(canonicalize_rref!(random_stabilizer(20,30),1:30)[1]; xzcomponents=:together)","category":"page"},{"location":"plotting/#Makie.jl","page":"Visualizations","title":"Makie.jl","text":"","category":"section"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"Makie's heatmap can be directly called on Stabilizer.","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"using QuantumClifford, CairoMakie\ns = S\"IIXZ\n ZZIZ\n YYIZ\n IIIZ\n ZZXZ\"\nf, ax, p = CairoMakie.heatmap(s)\nhidedecorations!(ax); hidespines!(ax); # remove ticks and spines\nax.aspect = DataAspect(); # set a one-to-one aspect ratio\nf","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"A full Makie recipe is available as well (supporting xzcomponents)","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"using QuantumClifford, CairoMakie\ns = S\"IIXZ\n ZZIZ\n YYIZ\n IIIZ\n ZZXZ\"\nf, ax, p = stabilizerplot(s, xzcomponents=:together)\nhidedecorations!(ax); hidespines!(ax)\nax.aspect = DataAspect()\nf","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"You can easily add colorbars (and change the colormap) as well:","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"using QuantumClifford, CairoMakie\nfig = Figure()\nax, p = stabilizerplot(fig[1, 1], s, colormap=cgrad(:heat, 4, categorical = true))\nhidedecorations!(ax)\nhidespines!(ax)\nxlims!(ax, 0.5, size(s,2)+0.5) # otherwise there is padding\nylims!(ax, 0.5, size(s,1)+0.5) # otherwise there is padding\n# set the aspect ratio of the plot\nax.aspect = DataAspect()\n# set the aspect ratio of the layout\ncolsize!(fig.layout, 1, Aspect(1, size(s,2)/size(s,1))) \nColorbar(fig[1, 2], p, ticks = (0:3, [\"I\", \"X\", \"Z\", \"Y\"]))\nfig","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"Or set a completely custom set of colors:","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"fig = Figure()\nax, p = stabilizerplot(fig[1, 1], s, colormap=cgrad([:lightgray,RGBf(1,0.4,0.4),RGBf(0.3,1,0.5),RGBf(0.4,0.4,1)], 4, categorical = true))\nhidedecorations!(ax)\nhidespines!(ax)\nxlims!(ax, 0.5, size(s,2)+0.5)\nylims!(ax, 0.5, size(s,1)+0.5)\nax.aspect = DataAspect()\ncolsize!(fig.layout, 1, Aspect(1, size(s,2)/size(s,1))) \nColorbar(fig[2, 1], p, ticks = (0:3, [\"I\", \"X\", \"Z\", \"Y\"]), vertical = false, flipaxis = false)\nfig","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"You might have noticed, Makie recipes do not let you edit the axes or figure, rather they only permit you to set the plot content. Which is why we use hidedecorations!, hidesplines!, and DataAspect to further modify the plot. However, these defaults are also available in stabilizerplot_axis.","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"using QuantumClifford, CairoMakie\nf=Figure()\nstabilizerplot_axis(f[1,1],random_stabilizer(100))\nf","category":"page"},{"location":"plotting/#Quantikz.jl","page":"Visualizations","title":"Quantikz.jl","text":"","category":"section"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"With the Quantikz library you can visualize gates or sequences of gates.","category":"page"},{"location":"plotting/","page":"Visualizations","title":"Visualizations","text":"using QuantumClifford, Quantikz\ncircuit = [sCNOT(1,2), SparseGate(random_clifford(4), [1,4,5,6]), sMZ(4)]","category":"page"},{"location":"#QuantumClifford.jl","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"","category":"section"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"DocTestSetup = quote\n using QuantumClifford\nend","category":"page"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"QuantumClifford.jl is a Julia library for simulation of Clifford circuits, which are a subclass of quantum circuits that can be efficiently simulated on a classical computer.","category":"page"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"This library uses the tableaux formalism[1] with the destabilizer improvements[2]. Pauli frames are supported for faster repeated simulation of noisy circuits. Various symbolic and algebraic tools for manipulating, converting, and visualizing states and circuits are also implemented. ","category":"page"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"[1]: (Gottesman, 1998)","category":"page"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"[2]: (Aaronson and Gottesman, 2004)","category":"page"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"The library consists of two main parts: Tools for working with the algebra of Stabilizer Tableaux and tools specifically for efficient Circuit Simulation.","category":"page"},{"location":"#Stabilizer-Tableau-Algebra","page":"QuantumClifford.jl","title":"Stabilizer Tableau Algebra","text":"","category":"section"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"The Stabilizer Tableau Algebra component of QuantumClifford.jl efficiently handles pure and mixed stabilizer states of thousands of qubits, along with support for sparse or dense Clifford operations acting upon them. It provides operations such as canonicalization, projection, generation , and partial traces. The code is vectorized and multithreaded, offering fast, in-place, and allocation-free implementations. Tools for conversion to graph states and for visualization of tableaux are available.","category":"page"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"See the Stabilizer Tableau Algebra manual or the curated list of useful functions.","category":"page"},{"location":"#Example-Usage","page":"QuantumClifford.jl","title":"Example Usage","text":"","category":"section"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"julia> using QuantumClifford\n\njulia> P\"X\" * P\"Z\"\n-iY\n\njulia> P\"X\" ⊗ P\"Z\"\n+ XZ\n\njulia> S\"-XX\n +ZZ\"\n- XX\n+ ZZ\n\njulia> tCNOT * S\"-XX\n +ZZ\"\n- X_\n+ _Z","category":"page"},{"location":"#Circuit-Simulation","page":"QuantumClifford.jl","title":"Circuit Simulation","text":"","category":"section"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"The circuit simulation component of QuantumClifford.jl enables Monte Carlo (or symbolic) simulations of noisy Clifford circuits. It provides three main simulation methods: mctrajectories, pftrajectories, and petrajectories. These methods offer varying levels of efficiency, accuracy, and insight.","category":"page"},{"location":"#Monte-Carlo-Simulations-with-Stabilizer-Tableaux-(mctrajectories)","page":"QuantumClifford.jl","title":"Monte Carlo Simulations with Stabilizer Tableaux (mctrajectories)","text":"","category":"section"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"The mctrajectories method runs Monte Carlo simulations using a Stabilizer tableau representation for the quantum states.","category":"page"},{"location":"#Monte-Carlo-Simulations-with-Pauli-Frames-(pftrajectories)","page":"QuantumClifford.jl","title":"Monte Carlo Simulations with Pauli Frames (pftrajectories)","text":"","category":"section"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"The pftrajectories method runs Monte Carlo simulations of Pauli frames over a single reference Stabilizer tableau simulation. This approach is much more efficient but supports a smaller class of circuits.","category":"page"},{"location":"#Symbolic-Depth-First-Traversal-of-Quantum-Trajectories-(petrajectories)","page":"QuantumClifford.jl","title":"Symbolic Depth-First Traversal of Quantum Trajectories (petrajectories)","text":"","category":"section"},{"location":"","page":"QuantumClifford.jl","title":"QuantumClifford.jl","text":"The petrajectories method performs a depth-first traversal of the most probable quantum trajectories, providing a fixed-order approximation of the circuit's behavior. This approach gives symbolic expressions for various figures of merit instead of just a numeric value.","category":"page"}] +} diff --git a/v0.9.12/siteinfo.js b/v0.9.12/siteinfo.js new file mode 100644 index 000000000..97b2c66db --- /dev/null +++ b/v0.9.12/siteinfo.js @@ -0,0 +1 @@ +var DOCUMENTER_CURRENT_VERSION = "v0.9.12"; diff --git a/v0.9.12/stab-algebra-manual/index.html b/v0.9.12/stab-algebra-manual/index.html new file mode 100644 index 000000000..573072616 --- /dev/null +++ b/v0.9.12/stab-algebra-manual/index.html @@ -0,0 +1,305 @@ + +Manual · QuantumClifford.jl

Stabilizer Tableau Algebra Manual

The library consists of two main parts: Tools for working with the algebra of Stabilizer tableaux and tools specifically for efficient Circuit Simulation. This chapter discusses the former "lower level" Stabilizer tableau algebra tools.

Pauli Operators

The PauliOperator object represents multi-qubit Pauli operator ($±\{1,i\}\{I,Z,X,Y\}^{\otimes n}$). It is stored in memory as a phase (a single byte where 0x0,0x1,0x2,0x3 corresponds to $1,i,-1,-i$) and two bit-arrays, for X and for Z components.

You can create them with a P string.

julia> P"-iXZ"
+-iXZ

Or by specifying phase and X/Z components:

julia> PauliOperator(0x0,Bool[0,1,0],Bool[0,0,1])
++ _XZ

Both underscore and I can be used for identity.

julia> P"I_XYZ"
++ __XYZ

Multiplication with scalars or other Pauli operators works as expected, as well as tensor products of Pauli operators.

julia> -1im*P"X"
+-iX
+
+julia> P"X" * P"Z"
+-iY
+
+julia> P"X" ⊗ P"Z"
++ XZ

One can check for commutativity with comm.

julia> comm(P"X",P"Z")
+0x01
+
+julia> comm(P"XX",P"ZZ")
+0x00

And check the phase of a product with prodphase.

julia> prodphase(P"X", P"Z")
+0x03
+
+julia> prodphase(P"X", P"iZ")
+0x00
+
+julia> prodphase(P"X",P"Y")
+0x01

Indexing operations are available.

julia> p = P"IXYZ";
+
+julia> p[1], p[2], p[3], p[4]
+((false, false), (true, false), (true, true), (false, true))
+
+julia> p = P"III";
+
+julia> p[2] = (true, true);
+
+julia> p
++ _Y_

Including fancy indexing:

julia> P"IXYZ"[[2,3]]
++ XY
+
+julia> P"IXYZ"[[false,true,true,false]]
++ XY

The operator is represented in memory by bit arrays (much denser than using byte arrays).

julia> p = P"-IXYZ";
+
+julia> p.nqubits, p.xz
+(4, UInt64[0x0000000000000006, 0x000000000000000c])

Views that give just the X or Z components of the xz bitarray are available through xview and zview.

julia> xview(P"XYZI")
+1-element view(::Vector{UInt64}, 1:1) with eltype UInt64:
+ 0x0000000000000003

The convenience methods xbit and zbit give you Bool (GF2) vectors.

julia> xbit(P"XYZI")
+4-element Vector{Bool}:
+ 1
+ 1
+ 0
+ 0

Stabilizers

A Stabilizer object is a tableau of Pauli operators. When the tableau is meant to represent a (pure or mixed) stabilizer state, all of these operators should commute (but that is not enforced, rather Stabilizer is a generic tableau data structure). It is stored in memory as a phase list and a bit-matrix for X and Z components. It can be instantiated by an S string, or with a number of different constructors.

Stabilizers and Destabilizers

In many cases you probably would prefer to use the MixedDestabilizer data structure, as it caries a lot of useful additional information, like tracking rank and destabilizer operators. Stabilizer has mostly a pedagogical value, and it is also used for slightly faster simulation of a particular subset of Clifford operations. See also the data structures discussion page.

julia> S"-XX
+         +ZZ"
+- XX
++ ZZ
+
+julia> Stabilizer([P"-XX",P"+ZZ"])
+- XX
++ ZZ
+
+julia> Stabilizer([0x2, 0x0],
+                  Bool[1 1;
+                       0 0],
+                  Bool[0 0;
+                       1 1])
+- XX
++ ZZ

Direct sums can be performed,

julia> S"-XX" ⊗ S"ZZ"
+- XX__
++ __ZZ

Indexing operations are available, including fancy indexing. Be careful about how phase information gets transferred during sub-indexing.

julia> s = S"-XYZ
+             -ZIX
+             +XIZ";
+
+julia> s[1]
+- XYZ
+
+julia> s[1,2]
+(true, true)
+
+julia> s[[3,1]]
++ X_Z
+- XYZ
+
+julia> s[[3,1],[2]]
++ _
+- Y

Consistency at creation is not verified so nonsensical stabilizers can be created, both in terms of content and shape.

julia> S"iX
+         +Z"
++iX
++ Z

Similarly to the Pauli operators, a bit array representation is used.

julia> s = S"-XXX
+             +ZZI
+             -IZZ"
+- XXX
++ ZZ_
+- _ZZ
+
+julia> phases(s), tab(s).xzs
+(UInt8[0x02, 0x00, 0x02], UInt64[0x0000000000000007 0x0000000000000000 0x0000000000000000; 0x0000000000000000 0x0000000000000003 0x0000000000000006])

And there are convenience functions that can extract the corresponding binary check matrix.

julia> stab_to_gf2(s)
+3×6 Matrix{Bool}:
+ 1  1  1  0  0  0
+ 0  0  0  1  1  0
+ 0  0  0  0  1  1

Canonicalization of Stabilizers

Canonicalization (akin to Gaussian elimination over F(2,2)) is implemented in the canonicalize! function. Besides the default canonicalization prescription, alternative ones are available as described in the canonicalization page.

julia> s = S"-XXX
+             +ZZX
+             +III";
+
+julia> canonicalize!(s)
++ YY_
++ ZZX
++ ___

If phases are inconsequential, the operations can be faster by not tracking and updating them.

julia> s = S"-XXX
+             +ZZX
+             +III";
+
+julia> canonicalize!(s; phases=false)
+- YY_
++ ZZX
++ ___

These operations are in place (as customarily signified by "!").

julia> s = S"-XXX
+             +ZZX
+             +III";
+
+julia> canonicalize!(s; phases=false);
+
+julia> s
+- YY_
++ ZZX
++ ___

Projective Measurements

The project! function is used to perform generic projective measurements.

Single qubit projections

If you know your Pauli measurement operator acts on a single qubit, there are much faster projection functions available, discussed in the next section. Namely projectX!, projectY!, and projectZ!.

To observe the effect of different projections, we will start with a GHZ state.

julia> s = S"-XXX
+             +ZZI
+             -IZZ";

The project! function returns the new stabilizer, the index where the anticommutation was detected, and the result of the projection (nothing being an undetermined result). For instance here we project on an operator that does not commute with all stabilizer generators.

julia> project!(copy(s), P"ZII")[1]
++ Z__
++ ZZ_
+- _ZZ

Importantly, when there is an undetermined result, we return nothing and leave the phase of the new stabilizer the same as the phase of the projection operator. If you want to perform a Monte Carlo simulation, you need to randomize the phase of the stabilizer at the anticommuting index yourself. For instance, one can do:

julia> newstate, anticomindex, result = project!(copy(s), P"XII")
+       if isnothing(result)
+           phases(newstate)[anticomindex] = rand([0x0,0x2])
+       end
+       result, anticomindex
+(nothing, 2)

Of course, this is a rather cumbersome way to run a simulation, so we also provide projectrand! which does the necessary randomization automatically, for cases where you do not need the fine grained control of project!.

We can project on a commuting operator, hence no anticommuting terms (the index is zero), and the result is perfectly determined (-1, or in our convention to represent the phase, 0x2).

julia> project!(copy(s), P"-ZZI")
+(Stabilizer 3×3, 0, 0x02)

When the projection is consistent with the stabilizer (i.e. the measurement result is not nothing), this would trigger an expensive canonicalization procedure in order to calculate the measurement result (unless we are using more advanced data structures to represent the state, which are discussed later). If all you want to know is whether the projection is consistent with the stabilizer, but you do not care about the measurement result, you can skip the canonicalization and calculation of the result.

julia> project!(copy(s), P"-ZZI", keep_result=false)
+(Stabilizer 3×3, 0, nothing)

Lastly, in either case, you can skip the calculation of the phases as well, if they are unimportant.

julia> project!(copy(s), P"ZZI", phases=false)
+(Stabilizer 3×3, 0, 0x00)

Sparse single-qubit measurements

In many circumstances only a single-qubit operator is being measured. In that case one should use the projectX!, projectY!, and projectZ! functions as they are much faster thanks to tracking only a single qubit. They have versions that randomize the phase as necessary as well: projectXrand!, projectYrand!, and projectZrand!.

Gate-like interface

If you do not need all this boilerplate, and especially if you want to perform the randomization automatically, you can use the gate-like "symbolic" objects sMX, sMY, and sMZ, that perform the measurement and the necessary randomization of phase. If the measurement result is to be stored, you can use the Register structure that stores both stabilizer tableaux and bit values.

julia> state = Register(ghz(3), [false,false])
+Register{Vector{UInt8}, Matrix{UInt64}}(Rank 3 stabilizer
++ Z__
++ _X_
++ __X
+═════
++ XXX
++ ZZ_
++ Z_Z
+═════
+, Bool[0, 0])
+
+julia> apply!(state, sMX(3,2)) # which qubit is measured and in which bit it is stored
+Register{Vector{UInt8}, Matrix{UInt64}}(Rank 3 stabilizer
++ Z__
++ _X_
++ Z_Z
+═════
++ XXX
++ ZZ_
+- __X
+═════
+, Bool[0, 1])
+
+julia> bitview(state)
+2-element Vector{Bool}:
+ 0
+ 1

Or you can use the projectXrand!, projectYrand!, and projectZrand! if you prefer a function-call interface.

Partial Traces

Partial trace (using traceout!) over even a single qubit might cause many of them to decohere due to entanglement.

julia> ghz = S"XXX
+               ZZ_
+               _ZZ";
+
+julia> traceout!(ghz, [1])
++ _ZZ
++ ___
++ ___

This is somewhat more elegant when the datastructure being used explicitly supports mixed states.

julia> ghz = MixedStabilizer(S"XXX
+                               ZZ_
+                               _ZZ");
+
+julia> traceout!(ghz, [1])
++ _ZZ

Generating a Pauli Operator with Stabilizer Generators

The generate! function attempts to generate a Pauli operator by multiplying together the operators belonging to a given stabilizer (or reports their independence). This particular function requires the stabilizer to be already canonicalized.

julia> s = S"-XXX
+             +ZZI
+             -IZZ";
+
+julia> s = canonicalize!(s)
+- XXX
+- Z_Z
+- _ZZ

It modifies the Pauli operator in place, reducing it to identity if possible. The leftover phase is present to indicate if the phase itself could not have been canceled. The list of indices specifies which rows of the stabilizer were used to generated the desired Pauli operator.

julia> generate!(P"XYY", s)
+(- ___, [1, 3])

Phases can be neglected, for higher performance.

julia> generate!(P"XYY", s, phases=false)
+(+ ___, [1, 3])

If the Pauli operator can not be generated by the stabilizer, nothing value is returned.

julia> generate!(P"ZZZ", s)
+
+julia> generate!(P"XZX", s)
+
+julia> generate!(P"YYY", s)

Clifford Operators

The CliffordOperator structure represents a linear mapping between stabilizers (which should also preserve commutation relationships, but that is not checked at instantiation). These are n-qubit dense tableaux, representing an operation on n-qubit states. For single- or two-qubit gates, it is much more efficient to use small sparse symbolic clifford operators. A number of predefined Clifford operators are available, their name prefixed with t to mark them as dense tableaux.

julia> tHadamard
+X₁ ⟼ + Z
+Z₁ ⟼ + X
+
+julia> tPhase
+X₁ ⟼ + Y
+Z₁ ⟼ + Z
+
+julia> tCNOT
+X₁ ⟼ + XX
+X₂ ⟼ + _X
+Z₁ ⟼ + Z_
+Z₂ ⟼ + ZZ
+
+julia> tId1
+X₁ ⟼ + X
+Z₁ ⟼ + Z

Chaining and tensor products are possible. Same for qubit permutations.

julia> tHadamard ⊗ tPhase
+X₁ ⟼ + Z_
+X₂ ⟼ + _Y
+Z₁ ⟼ + X_
+Z₂ ⟼ + _Z
+
+julia> tHadamard * tPhase
+X₁ ⟼ - Y
+Z₁ ⟼ + X
+
+julia> permute(tCNOT, [2,1])
+X₁ ⟼ + X_
+X₂ ⟼ + XX
+Z₁ ⟼ + ZZ
+Z₂ ⟼ + _Z

You can create custom Clifford operators with C-strings or with a list of Pauli operators.

julia> C"-ZZ
+         +_Z
+         -X_
+         +XX"
+X₁ ⟼ - ZZ
+X₂ ⟼ + _Z
+Z₁ ⟼ - X_
+Z₂ ⟼ + XX
+
+julia> CliffordOperator([P"-ZZ", P"_Z", P"-X_", P"XX"])
+X₁ ⟼ - ZZ
+X₂ ⟼ + _Z
+Z₁ ⟼ - X_
+Z₂ ⟼ + XX

Naturally, the operators can be applied to stabilizer states. This includes high performance in-place operations (and the phase can be neglected with phases=false for faster computation).

julia> tCNOT * S"X_"
++ XX
+
+julia> s = S"X_";
+
+julia> apply!(s,tCNOT)
++ XX

Sparse applications where a small Clifford operator is applied only on a particular subset of a larger stabilizer is also possible, but in such circumstances it is useful to consider using symbolic operators too.

julia> s = S"Z_YX";
+
+julia> apply!(s, tCNOT, [4,2]) # Apply the CNOT on qubits 4 and 2
++ ZXYX

Pauli operators act as Clifford operators too (but they are rather boring, as they only change signs).

julia> P"XII" * S"ZXX"
+- ZXX

Internally, the CliffordOperator structure simply stores the tableau representation of the operation.

The apply! function is efficiently multithreaded for CliffordOperators. To start multithreaded Julia, use julia -t<N> where <N> specifies the number of threads.

Symbolic Clifford Operators

Much faster implementations for a number of common Clifford operators are available. They are stored as special named structs, instead of as a full tableau. These are the subtypes of AbstractSingleQubitOperator and AbstractTwoQubitOperator. Currently these are:

subtypes(QuantumClifford.AbstractSingleQubitOperator)
16-element Vector{Any}:
+ SingleQubitOperator
+ sCXYZ
+ sCZYX
+ sHadamard
+ sHadamardXY
+ sHadamardYZ
+ sId1
+ sInvPhase
+ sInvSQRTX
+ sInvSQRTY
+ sPhase
+ sSQRTX
+ sSQRTY
+ sX
+ sY
+ sZ
subtypes(QuantumClifford.AbstractTwoQubitOperator)
14-element Vector{Any}:
+ sCNOT
+ sCPHASE
+ sInvZCrY
+ sSWAP
+ sXCX
+ sXCY
+ sXCZ
+ sYCX
+ sYCY
+ sYCZ
+ sZCX
+ sZCY
+ sZCZ
+ sZCrY

Generally, they have the prefix s for symbolic/small/sparse. They are used slightly differently, as one needs to specify the qubits on which they act while instantiating them:

julia> sHadamard(2)
+sHadamard on qubit 2
+X₁ ⟼ + Z
+Z₁ ⟼ + X
+
+julia> sHadamard(2)*S"XXX"
++ XZX
+
+julia> sCNOT(2,3)*S"XYY"
+- XXZ

The apply! function is efficiently multithreaded for these symbolic operators as well. To start multithreaded Julia, use julia -t<N> where <N> specifies the number of threads.

Symbolic projectors on single qubits also exist: sMX, sMY, sMZ. When used with the Register state representation, they can store the measurement results in the corresponding classical register.

Destabilizers

Slightly abusing the name: What we call "destabilizers" here is a stabilizer and its destabilizing operators saved together. They are implemented with the Destabilizer object and are initialized from a stabilizer.

julia> s=S"-XXX
+           -ZZI
+           +IZZ";
+
+julia> d = Destabilizer(s)
+𝒟ℯ𝓈𝓉𝒶𝒷
++ Z__
++ _X_
++ __X
+𝒮𝓉𝒶𝒷━
+- XXX
+- ZZ_
+- Z_Z

They have convenience methods to extract only the stabilizer and destabilizer pieces:

julia> stabilizerview(d)
+- XXX
+- ZZ_
+- Z_Z
+
+julia> destabilizerview(d)
++ Z__
++ _X_
++ __X

Importantly commuting projections are much faster when tracking the destabilizer as canonicalization is not necessary (an $\mathcal{O}(n^2)$ complexity because it avoids the expensive $\mathcal{O}(n^3)$ canonicalization operation).

julia> project!(d,P"ZZI")
+(Destablizer 3×3, 0, 0x02)

Non-commuting projections are just as fast as when using only stabilizers.

julia> project!(d,P"ZZZ")
+(Destablizer 3×3, 1, nothing)

Clifford operations can be applied the same way they are applied to stabilizers.

julia> apply!(d,tCNOT⊗tHadamard)
+𝒟ℯ𝓈𝓉𝒶𝒷
+- X_Z
++ XXZ
++ X__
+𝒮𝓉𝒶𝒷━
++ _ZX
+- _Z_
+- Z_X

Mixed States

Both the Stabilizer and Destabilizer structures have more general forms that enable work with mixed stabilizer states. They are the MixedStabilizer and MixedDestabilizer structures, described in Mixed States. More information that can be seen in the data structures page, which expands upon the algorithms available for each structure.

Random States and Circuits

random_clifford, random_stabilizer, and enumerate_cliffords can be used for the generation of random states.

diff --git a/v0.9.12/tutandpub/index.html b/v0.9.12/tutandpub/index.html new file mode 100644 index 000000000..4f18abacd --- /dev/null +++ b/v0.9.12/tutandpub/index.html @@ -0,0 +1,2 @@ + +Tutorials and Publications · QuantumClifford.jl
diff --git a/versions.js b/versions.js index 7acf4f027..df29a550f 100644 --- a/versions.js +++ b/versions.js @@ -11,5 +11,5 @@ var DOC_VERSIONS = [ "v0.1", "dev", ]; -var DOCUMENTER_NEWEST = "v0.9.11"; +var DOCUMENTER_NEWEST = "v0.9.12"; var DOCUMENTER_STABLE = "stable";