From b0272040f6860c3dd041164d4de554e67ee17df6 Mon Sep 17 00:00:00 2001 From: jfernandez Date: Fri, 15 May 2026 14:44:18 +0200 Subject: [PATCH 1/7] "Publish STARK documentation" --- .buildinfo | 4 + .doctrees/architecture.doctree | Bin 0 -> 32186 bytes .doctrees/attachments.doctree | Bin 0 -> 11461 bytes .doctrees/contact.doctree | Bin 0 -> 21524 bytes .doctrees/deformables.doctree | Bin 0 -> 20623 bytes .doctrees/environment.pickle | Bin 0 -> 78081 bytes .doctrees/extending.doctree | Bin 0 -> 12081 bytes .doctrees/hello_world.doctree | Bin 0 -> 10601 bytes .doctrees/index.doctree | Bin 0 -> 8041 bytes .doctrees/io.doctree | Bin 0 -> 59487 bytes .doctrees/presets.doctree | Bin 0 -> 27703 bytes .doctrees/problem_representation.doctree | Bin 0 -> 18621 bytes .doctrees/rb_constraints.doctree | Bin 0 -> 34297 bytes .doctrees/rigidbodies.doctree | Bin 0 -> 10987 bytes .doctrees/settings.doctree | Bin 0 -> 85477 bytes .doctrees/setup.doctree | Bin 0 -> 25877 bytes .doctrees/simulation_loop.doctree | Bin 0 -> 59827 bytes .gitignore | 9 - .nojekyll | 0 CMakeLists.txt | 12 - CNAME | 1 + LICENSE | 202 - README.md | 228 - _sources/architecture.md.txt | 140 + _sources/attachments.md.txt | 92 + _sources/contact.md.txt | 170 + _sources/deformables.md.txt | 168 + _sources/extending.md.txt | 60 + _sources/hello_world.md.txt | 107 + _sources/index.md.txt | 58 + _sources/io.md.txt | 405 + _sources/presets.md.txt | 180 + _sources/problem_representation.md.txt | 50 + _sources/rb_constraints.md.txt | 387 + _sources/rigidbodies.md.txt | 84 + _sources/settings.md.txt | 177 + _sources/setup.md.txt | 136 + _sources/simulation_loop.md.txt | 321 + _static/base-stemmer.js | 476 + .../doc/html/_static => _static}/basic.css | 190 +- _static/blender.png | Bin 0 -> 432143 bytes _static/debug.css | 69 + _static/doctools.js | 150 + _static/documentation_options.js | 13 + _static/english-stemmer.js | 1066 + .../fmt/doc/html/_static => _static}/file.png | Bin _static/language_data.js | 13 + .../doc/html/_static => _static}/minus.png | Bin _static/paraview.png | Bin 0 -> 377161 bytes .../fmt/doc/html/_static => _static}/plus.png | Bin _static/pygments.css | 251 + _static/scripts/furo-extensions.js | 0 _static/scripts/furo.js | 3 + _static/scripts/furo.js.LICENSE.txt | 7 + _static/scripts/furo.js.map | 1 + _static/searchtools.js | 693 + _static/skeleton.css | 296 + _static/sphinx_highlight.js | 159 + .../images => _static}/spinning_box_cloth.gif | Bin {docs/images => _static}/stark1920.png | Bin _static/stark1920w.png | Bin 0 -> 58586 bytes _static/stark250.png | Bin 0 -> 6600 bytes _static/stark250w.png | Bin 0 -> 6935 bytes _static/styles/furo-extensions.css | 2 + _static/styles/furo-extensions.css.map | 1 + _static/styles/furo.css | 2 + _static/styles/furo.css.map | 1 + architecture.html | 946 + attachments.html | 426 + contact.html | 508 + deformables.html | 488 + docs/images/boxes_on_cloth.gif | Bin 5097969 -> 0 bytes docs/images/franka_plastic_cup.jpg | Bin 95216 -> 0 bytes docs/images/inflation.gif | Bin 557820 -> 0 bytes docs/images/robotic_hand.png | Bin 1636794 -> 0 bytes docs/images/twisting_cloth.gif | Bin 2380012 -> 0 bytes docs/images/viscoelasticity.gif | Bin 593335 -> 0 bytes examples/CMakeLists.txt | 33 - examples/main.cpp | 631 - examples/paths.h | 6 - examples/rb_constraint_test_scenes.cpp | 276 - examples/rb_constraint_test_scenes.h | 16 - extending.html | 381 + genindex.html | 730 + hello_world.html | 440 + index.html | 378 + io.html | 800 + models/armadillo_tet.vtk | Bin 117668 -> 0 bytes models/armadillo_tri.vtk | Bin 67427 -> 0 bytes objects.inv | Bin 0 -> 469 bytes presets.html | 507 + problem_representation.html | 426 + pystark/cpp/CMakeLists.txt | 102 - pystark/cpp/core/pystark_Console.cpp | 32 - pystark/cpp/core/pystark_Logger.cpp | 28 - pystark/cpp/core/pystark_Settings.cpp | 79 - pystark/cpp/core/pystark_core.h | 12 - .../line/pystark_EnergySegmentStrain.cpp | 19 - .../point/pystark_EnergyLumpedInertia.cpp | 33 - .../pystark_EnergyPrescribedPositions.cpp | 31 - .../deformables/pystark_Deformables.cpp | 15 - .../pystark_DeformablesMeshOutput.cpp | 31 - .../deformables/pystark_PointDynamics.cpp | 13 - .../deformables/pystark_PointSetHandler.cpp | 32 - .../surface/pystark_EnergyDiscreteShells.cpp | 19 - .../surface/pystark_EnergyTriangleStrain.cpp | 19 - .../volume/pystark_EnergyTetStrain.cpp | 19 - .../pystark_EnergyAttachments.cpp | 46 - .../pystark_EnergyFrictionalContact.cpp | 61 - .../interactions/pystark_Interactions.cpp | 9 - .../presets/pystark_DeformablesPresets.cpp | 57 - .../cpp/models/presets/pystark_Presets.cpp | 9 - .../presets/pystark_RigidBodyPresets.cpp | 56 - .../pystark_deformables_preset_types.cpp | 94 - pystark/cpp/models/pystark_Simulation.cpp | 25 - pystark/cpp/models/pystark_models.h | 75 - .../rigidbodies/pystark_RigidBodies.cpp | 38 - .../pystark_RigidBodiesMeshOutput.cpp | 19 - .../rigidbodies/pystark_RigidBodyDynamics.cpp | 10 - .../rigidbodies/pystark_RigidBodyHandler.cpp | 58 - .../pystark_rigidbody_constraints_ui.cpp | 262 - pystark/cpp/nanobind_stark_include_all.h | 167 - pystark/cpp/pystark_main.cpp | 11 - pystark/cpp/utils/pystark_utils.cpp | 124 - pystark/cpp/utils/pystark_utils.h | 9 - pystark/examples/boxes_on_cloth.py | 84 - pystark/examples/inflation.py | 41 - pystark/examples/twisting_cloth.py | 58 - pystark/examples/viscoelasticity.py | 47 - pystark/pystark/__init__.py | 10 - pystark/pystark/serialize.py | 127 - rb_constraints.html | 704 + rigidbodies.html | 419 + search.html | 741 + searchindex.js | 1 + settings.html | 767 + setup.html | 512 + simulation_loop.html | 739 + stark/CMakeLists.txt | 225 - stark/extern/Eigen/CMakeLists.txt | 653 - stark/extern/Eigen/Eigen/Cholesky | 45 - stark/extern/Eigen/Eigen/CholmodSupport | 48 - stark/extern/Eigen/Eigen/Core | 384 - stark/extern/Eigen/Eigen/Dense | 7 - stark/extern/Eigen/Eigen/Eigen | 2 - stark/extern/Eigen/Eigen/Eigenvalues | 60 - stark/extern/Eigen/Eigen/Geometry | 59 - stark/extern/Eigen/Eigen/Householder | 29 - .../extern/Eigen/Eigen/IterativeLinearSolvers | 48 - stark/extern/Eigen/Eigen/Jacobi | 32 - stark/extern/Eigen/Eigen/KLUSupport | 41 - stark/extern/Eigen/Eigen/LU | 47 - stark/extern/Eigen/Eigen/MetisSupport | 35 - stark/extern/Eigen/Eigen/OrderingMethods | 70 - stark/extern/Eigen/Eigen/PaStiXSupport | 49 - stark/extern/Eigen/Eigen/PardisoSupport | 35 - stark/extern/Eigen/Eigen/QR | 50 - stark/extern/Eigen/Eigen/QtAlignedMalloc | 39 - stark/extern/Eigen/Eigen/SPQRSupport | 34 - stark/extern/Eigen/Eigen/SVD | 50 - stark/extern/Eigen/Eigen/Sparse | 34 - stark/extern/Eigen/Eigen/SparseCholesky | 37 - stark/extern/Eigen/Eigen/SparseCore | 69 - stark/extern/Eigen/Eigen/SparseLU | 50 - stark/extern/Eigen/Eigen/SparseQR | 36 - stark/extern/Eigen/Eigen/StdDeque | 27 - stark/extern/Eigen/Eigen/StdList | 26 - stark/extern/Eigen/Eigen/StdVector | 27 - stark/extern/Eigen/Eigen/SuperLUSupport | 64 - stark/extern/Eigen/Eigen/UmfPackSupport | 40 - stark/extern/Eigen/Eigen/src/Cholesky/LDLT.h | 688 - stark/extern/Eigen/Eigen/src/Cholesky/LLT.h | 558 - .../Eigen/Eigen/src/Cholesky/LLT_LAPACKE.h | 99 - .../Eigen/src/CholmodSupport/CholmodSupport.h | 682 - .../Eigen/Eigen/src/Core/ArithmeticSequence.h | 413 - stark/extern/Eigen/Eigen/src/Core/Array.h | 417 - stark/extern/Eigen/Eigen/src/Core/ArrayBase.h | 226 - .../Eigen/Eigen/src/Core/ArrayWrapper.h | 209 - stark/extern/Eigen/Eigen/src/Core/Assign.h | 90 - .../Eigen/Eigen/src/Core/AssignEvaluator.h | 1010 - .../extern/Eigen/Eigen/src/Core/Assign_MKL.h | 178 - .../extern/Eigen/Eigen/src/Core/BandMatrix.h | 353 - stark/extern/Eigen/Eigen/src/Core/Block.h | 448 - .../Eigen/Eigen/src/Core/BooleanRedux.h | 162 - .../Eigen/Eigen/src/Core/CommaInitializer.h | 164 - .../Eigen/Eigen/src/Core/ConditionEstimator.h | 175 - .../Eigen/Eigen/src/Core/CoreEvaluators.h | 1741 -- .../Eigen/Eigen/src/Core/CoreIterators.h | 132 - .../Eigen/Eigen/src/Core/CwiseBinaryOp.h | 183 - .../Eigen/Eigen/src/Core/CwiseNullaryOp.h | 1001 - .../Eigen/Eigen/src/Core/CwiseTernaryOp.h | 197 - .../Eigen/Eigen/src/Core/CwiseUnaryOp.h | 103 - .../Eigen/Eigen/src/Core/CwiseUnaryView.h | 132 - stark/extern/Eigen/Eigen/src/Core/DenseBase.h | 701 - .../Eigen/Eigen/src/Core/DenseCoeffsBase.h | 685 - .../Eigen/Eigen/src/Core/DenseStorage.h | 652 - stark/extern/Eigen/Eigen/src/Core/Diagonal.h | 258 - .../Eigen/Eigen/src/Core/DiagonalMatrix.h | 391 - .../Eigen/Eigen/src/Core/DiagonalProduct.h | 28 - stark/extern/Eigen/Eigen/src/Core/Dot.h | 318 - stark/extern/Eigen/Eigen/src/Core/EigenBase.h | 160 - .../Eigen/Eigen/src/Core/ForceAlignedAccess.h | 150 - stark/extern/Eigen/Eigen/src/Core/Fuzzy.h | 155 - .../Eigen/Eigen/src/Core/GeneralProduct.h | 465 - .../Eigen/Eigen/src/Core/GenericPacketMath.h | 1040 - .../Eigen/Eigen/src/Core/GlobalFunctions.h | 194 - stark/extern/Eigen/Eigen/src/Core/IO.h | 258 - .../extern/Eigen/Eigen/src/Core/IndexedView.h | 237 - stark/extern/Eigen/Eigen/src/Core/Inverse.h | 117 - stark/extern/Eigen/Eigen/src/Core/Map.h | 171 - stark/extern/Eigen/Eigen/src/Core/MapBase.h | 310 - .../Eigen/Eigen/src/Core/MathFunctions.h | 2057 -- .../Eigen/Eigen/src/Core/MathFunctionsImpl.h | 200 - stark/extern/Eigen/Eigen/src/Core/Matrix.h | 565 - .../extern/Eigen/Eigen/src/Core/MatrixBase.h | 547 - .../extern/Eigen/Eigen/src/Core/NestByValue.h | 85 - stark/extern/Eigen/Eigen/src/Core/NoAlias.h | 109 - stark/extern/Eigen/Eigen/src/Core/NumTraits.h | 335 - .../Eigen/src/Core/PartialReduxEvaluator.h | 232 - .../Eigen/Eigen/src/Core/PermutationMatrix.h | 605 - .../Eigen/Eigen/src/Core/PlainObjectBase.h | 1128 -- stark/extern/Eigen/Eigen/src/Core/Product.h | 191 - .../Eigen/Eigen/src/Core/ProductEvaluators.h | 1179 -- stark/extern/Eigen/Eigen/src/Core/Random.h | 218 - stark/extern/Eigen/Eigen/src/Core/Redux.h | 515 - stark/extern/Eigen/Eigen/src/Core/Ref.h | 381 - stark/extern/Eigen/Eigen/src/Core/Replicate.h | 142 - stark/extern/Eigen/Eigen/src/Core/Reshaped.h | 454 - .../Eigen/Eigen/src/Core/ReturnByValue.h | 119 - stark/extern/Eigen/Eigen/src/Core/Reverse.h | 217 - stark/extern/Eigen/Eigen/src/Core/Select.h | 164 - .../Eigen/Eigen/src/Core/SelfAdjointView.h | 365 - .../Eigen/Eigen/src/Core/SelfCwiseBinaryOp.h | 47 - stark/extern/Eigen/Eigen/src/Core/Solve.h | 188 - .../Eigen/Eigen/src/Core/SolveTriangular.h | 235 - .../extern/Eigen/Eigen/src/Core/SolverBase.h | 168 - .../extern/Eigen/Eigen/src/Core/StableNorm.h | 251 - .../Eigen/Eigen/src/Core/StlIterators.h | 463 - stark/extern/Eigen/Eigen/src/Core/Stride.h | 116 - stark/extern/Eigen/Eigen/src/Core/Swap.h | 68 - stark/extern/Eigen/Eigen/src/Core/Transpose.h | 464 - .../Eigen/Eigen/src/Core/Transpositions.h | 386 - .../Eigen/Eigen/src/Core/TriangularMatrix.h | 1001 - .../extern/Eigen/Eigen/src/Core/VectorBlock.h | 96 - .../Eigen/Eigen/src/Core/VectorwiseOp.h | 784 - stark/extern/Eigen/Eigen/src/Core/Visitor.h | 381 - .../Eigen/Eigen/src/Core/arch/AVX/Complex.h | 372 - .../Eigen/src/Core/arch/AVX/MathFunctions.h | 228 - .../Eigen/src/Core/arch/AVX/PacketMath.h | 1574 -- .../Eigen/src/Core/arch/AVX/TypeCasting.h | 115 - .../Eigen/src/Core/arch/AVX512/Complex.h | 422 - .../src/Core/arch/AVX512/MathFunctions.h | 362 - .../Eigen/src/Core/arch/AVX512/PacketMath.h | 2303 --- .../Eigen/src/Core/arch/AVX512/TypeCasting.h | 89 - .../Eigen/src/Core/arch/AltiVec/Complex.h | 417 - .../src/Core/arch/AltiVec/MathFunctions.h | 90 - .../src/Core/arch/AltiVec/MatrixProduct.h | 2937 --- .../Core/arch/AltiVec/MatrixProductCommon.h | 221 - .../src/Core/arch/AltiVec/MatrixProductMMA.h | 629 - .../Eigen/src/Core/arch/AltiVec/PacketMath.h | 2711 --- .../Eigen/Eigen/src/Core/arch/CUDA/Complex.h | 258 - .../Eigen/src/Core/arch/Default/BFloat16.h | 700 - .../Eigen/src/Core/arch/Default/ConjHelper.h | 117 - .../arch/Default/GenericPacketMathFunctions.h | 1649 -- .../Default/GenericPacketMathFunctionsFwd.h | 110 - .../Eigen/Eigen/src/Core/arch/Default/Half.h | 942 - .../Eigen/src/Core/arch/Default/Settings.h | 49 - .../Eigen/src/Core/arch/Default/TypeCasting.h | 120 - .../Eigen/src/Core/arch/GPU/MathFunctions.h | 103 - .../Eigen/src/Core/arch/GPU/PacketMath.h | 1685 -- .../Eigen/src/Core/arch/GPU/TypeCasting.h | 80 - .../src/Core/arch/HIP/hcc/math_constants.h | 23 - .../Eigen/Eigen/src/Core/arch/MSA/Complex.h | 648 - .../Eigen/src/Core/arch/MSA/MathFunctions.h | 387 - .../Eigen/src/Core/arch/MSA/PacketMath.h | 1233 -- .../Eigen/Eigen/src/Core/arch/NEON/Complex.h | 584 - .../Core/arch/NEON/GeneralBlockPanelKernel.h | 183 - .../Eigen/src/Core/arch/NEON/MathFunctions.h | 75 - .../Eigen/src/Core/arch/NEON/PacketMath.h | 4587 ----- .../Eigen/src/Core/arch/NEON/TypeCasting.h | 1419 -- .../Eigen/Eigen/src/Core/arch/SSE/Complex.h | 351 - .../Eigen/src/Core/arch/SSE/MathFunctions.h | 199 - .../Eigen/src/Core/arch/SSE/PacketMath.h | 1505 -- .../Eigen/src/Core/arch/SSE/TypeCasting.h | 142 - .../Eigen/src/Core/arch/SVE/MathFunctions.h | 44 - .../Eigen/src/Core/arch/SVE/PacketMath.h | 752 - .../Eigen/src/Core/arch/SVE/TypeCasting.h | 49 - .../Eigen/src/Core/arch/SYCL/InteropHeaders.h | 232 - .../Eigen/src/Core/arch/SYCL/MathFunctions.h | 301 - .../Eigen/src/Core/arch/SYCL/PacketMath.h | 670 - .../src/Core/arch/SYCL/SyclMemoryModel.h | 694 - .../Eigen/src/Core/arch/SYCL/TypeCasting.h | 85 - .../Eigen/src/Core/arch/ZVector/Complex.h | 426 - .../src/Core/arch/ZVector/MathFunctions.h | 233 - .../Eigen/src/Core/arch/ZVector/PacketMath.h | 1060 - .../src/Core/functors/AssignmentFunctors.h | 177 - .../Eigen/src/Core/functors/BinaryFunctors.h | 541 - .../Eigen/src/Core/functors/NullaryFunctors.h | 189 - .../Eigen/src/Core/functors/StlFunctors.h | 166 - .../Eigen/src/Core/functors/TernaryFunctors.h | 25 - .../Eigen/src/Core/functors/UnaryFunctors.h | 1131 -- .../Core/products/GeneralBlockPanelKernel.h | 2645 --- .../src/Core/products/GeneralMatrixMatrix.h | 517 - .../products/GeneralMatrixMatrixTriangular.h | 317 - .../GeneralMatrixMatrixTriangular_BLAS.h | 145 - .../Core/products/GeneralMatrixMatrix_BLAS.h | 124 - .../src/Core/products/GeneralMatrixVector.h | 518 - .../Core/products/GeneralMatrixVector_BLAS.h | 136 - .../Eigen/src/Core/products/Parallelizer.h | 180 - .../Core/products/SelfadjointMatrixMatrix.h | 544 - .../products/SelfadjointMatrixMatrix_BLAS.h | 295 - .../Core/products/SelfadjointMatrixVector.h | 262 - .../products/SelfadjointMatrixVector_BLAS.h | 118 - .../src/Core/products/SelfadjointProduct.h | 133 - .../Core/products/SelfadjointRank2Update.h | 94 - .../Core/products/TriangularMatrixMatrix.h | 472 - .../products/TriangularMatrixMatrix_BLAS.h | 317 - .../Core/products/TriangularMatrixVector.h | 350 - .../products/TriangularMatrixVector_BLAS.h | 255 - .../Core/products/TriangularSolverMatrix.h | 337 - .../products/TriangularSolverMatrix_BLAS.h | 167 - .../Core/products/TriangularSolverVector.h | 148 - .../Eigen/Eigen/src/Core/util/BlasUtil.h | 583 - .../src/Core/util/ConfigureVectorization.h | 512 - .../Eigen/Eigen/src/Core/util/Constants.h | 563 - .../src/Core/util/DisableStupidWarnings.h | 106 - .../Eigen/src/Core/util/ForwardDeclarations.h | 322 - .../Eigen/src/Core/util/IndexedViewHelper.h | 186 - .../Eigen/src/Core/util/IntegralConstant.h | 272 - .../Eigen/Eigen/src/Core/util/MKL_support.h | 137 - .../extern/Eigen/Eigen/src/Core/util/Macros.h | 1464 -- .../extern/Eigen/Eigen/src/Core/util/Memory.h | 1163 -- stark/extern/Eigen/Eigen/src/Core/util/Meta.h | 812 - .../Eigen/Eigen/src/Core/util/NonMPL2.h | 3 - .../src/Core/util/ReenableStupidWarnings.h | 31 - .../Eigen/src/Core/util/ReshapedHelper.h | 51 - .../Eigen/Eigen/src/Core/util/StaticAssert.h | 221 - .../Eigen/Eigen/src/Core/util/SymbolicIndex.h | 293 - .../Eigen/Eigen/src/Core/util/XprHelper.h | 856 - .../src/Eigenvalues/ComplexEigenSolver.h | 346 - .../Eigen/src/Eigenvalues/ComplexSchur.h | 462 - .../src/Eigenvalues/ComplexSchur_LAPACKE.h | 91 - .../Eigen/Eigen/src/Eigenvalues/EigenSolver.h | 622 - .../src/Eigenvalues/GeneralizedEigenSolver.h | 418 - .../GeneralizedSelfAdjointEigenSolver.h | 226 - .../src/Eigenvalues/HessenbergDecomposition.h | 374 - .../src/Eigenvalues/MatrixBaseEigenvalues.h | 158 - .../Eigen/Eigen/src/Eigenvalues/RealQZ.h | 657 - .../Eigen/Eigen/src/Eigenvalues/RealSchur.h | 558 - .../Eigen/src/Eigenvalues/RealSchur_LAPACKE.h | 77 - .../src/Eigenvalues/SelfAdjointEigenSolver.h | 904 - .../SelfAdjointEigenSolver_LAPACKE.h | 87 - .../src/Eigenvalues/Tridiagonalization.h | 561 - .../Eigen/Eigen/src/Geometry/AlignedBox.h | 486 - .../Eigen/Eigen/src/Geometry/AngleAxis.h | 247 - .../Eigen/Eigen/src/Geometry/EulerAngles.h | 114 - .../Eigen/Eigen/src/Geometry/Homogeneous.h | 501 - .../Eigen/Eigen/src/Geometry/Hyperplane.h | 282 - .../Eigen/Eigen/src/Geometry/OrthoMethods.h | 235 - .../Eigen/src/Geometry/ParametrizedLine.h | 232 - .../Eigen/Eigen/src/Geometry/Quaternion.h | 870 - .../Eigen/Eigen/src/Geometry/Rotation2D.h | 199 - .../Eigen/Eigen/src/Geometry/RotationBase.h | 206 - .../extern/Eigen/Eigen/src/Geometry/Scaling.h | 188 - .../Eigen/Eigen/src/Geometry/Transform.h | 1563 -- .../Eigen/Eigen/src/Geometry/Translation.h | 202 - .../extern/Eigen/Eigen/src/Geometry/Umeyama.h | 166 - .../Eigen/src/Geometry/arch/Geometry_SIMD.h | 168 - .../Eigen/src/Householder/BlockHouseholder.h | 110 - .../Eigen/Eigen/src/Householder/Householder.h | 176 - .../src/Householder/HouseholderSequence.h | 545 - .../BasicPreconditioners.h | 226 - .../src/IterativeLinearSolvers/BiCGSTAB.h | 212 - .../ConjugateGradient.h | 229 - .../IncompleteCholesky.h | 394 - .../IterativeLinearSolvers/IncompleteLUT.h | 453 - .../IterativeSolverBase.h | 444 - .../LeastSquareConjugateGradient.h | 198 - .../IterativeLinearSolvers/SolveWithGuess.h | 117 - stark/extern/Eigen/Eigen/src/Jacobi/Jacobi.h | 483 - .../Eigen/Eigen/src/KLUSupport/KLUSupport.h | 358 - stark/extern/Eigen/Eigen/src/LU/Determinant.h | 117 - stark/extern/Eigen/Eigen/src/LU/FullPivLU.h | 877 - stark/extern/Eigen/Eigen/src/LU/InverseImpl.h | 432 - .../extern/Eigen/Eigen/src/LU/PartialPivLU.h | 624 - .../Eigen/Eigen/src/LU/PartialPivLU_LAPACKE.h | 83 - .../Eigen/Eigen/src/LU/arch/InverseSize4.h | 351 - .../Eigen/src/MetisSupport/MetisSupport.h | 137 - .../Eigen/Eigen/src/OrderingMethods/Amd.h | 435 - .../Eigen/src/OrderingMethods/Eigen_Colamd.h | 1863 -- .../Eigen/src/OrderingMethods/Ordering.h | 153 - .../Eigen/src/PaStiXSupport/PaStiXSupport.h | 678 - .../Eigen/src/PardisoSupport/PardisoSupport.h | 545 - .../Eigen/Eigen/src/QR/ColPivHouseholderQR.h | 674 - .../src/QR/ColPivHouseholderQR_LAPACKE.h | 97 - .../src/QR/CompleteOrthogonalDecomposition.h | 635 - .../Eigen/Eigen/src/QR/FullPivHouseholderQR.h | 713 - .../extern/Eigen/Eigen/src/QR/HouseholderQR.h | 434 - .../Eigen/src/QR/HouseholderQR_LAPACKE.h | 68 - .../src/SPQRSupport/SuiteSparseQRSupport.h | 335 - stark/extern/Eigen/Eigen/src/SVD/BDCSVD.h | 1366 -- stark/extern/Eigen/Eigen/src/SVD/JacobiSVD.h | 812 - .../Eigen/Eigen/src/SVD/JacobiSVD_LAPACKE.h | 91 - stark/extern/Eigen/Eigen/src/SVD/SVDBase.h | 376 - .../Eigen/src/SVD/UpperBidiagonalization.h | 414 - .../src/SparseCholesky/SimplicialCholesky.h | 697 - .../SparseCholesky/SimplicialCholesky_impl.h | 174 - .../Eigen/Eigen/src/SparseCore/AmbiVector.h | 378 - .../Eigen/src/SparseCore/CompressedStorage.h | 274 - .../ConservativeSparseSparseProduct.h | 352 - .../Eigen/src/SparseCore/MappedSparseMatrix.h | 67 - .../Eigen/Eigen/src/SparseCore/SparseAssign.h | 270 - .../Eigen/Eigen/src/SparseCore/SparseBlock.h | 571 - .../Eigen/src/SparseCore/SparseColEtree.h | 206 - .../src/SparseCore/SparseCompressedBase.h | 370 - .../src/SparseCore/SparseCwiseBinaryOp.h | 722 - .../Eigen/src/SparseCore/SparseCwiseUnaryOp.h | 150 - .../Eigen/src/SparseCore/SparseDenseProduct.h | 342 - .../src/SparseCore/SparseDiagonalProduct.h | 138 - .../Eigen/Eigen/src/SparseCore/SparseDot.h | 98 - .../Eigen/Eigen/src/SparseCore/SparseFuzzy.h | 29 - .../Eigen/Eigen/src/SparseCore/SparseMap.h | 305 - .../Eigen/Eigen/src/SparseCore/SparseMatrix.h | 1518 -- .../Eigen/src/SparseCore/SparseMatrixBase.h | 398 - .../Eigen/src/SparseCore/SparsePermutation.h | 178 - .../Eigen/src/SparseCore/SparseProduct.h | 181 - .../Eigen/Eigen/src/SparseCore/SparseRedux.h | 49 - .../Eigen/Eigen/src/SparseCore/SparseRef.h | 397 - .../src/SparseCore/SparseSelfAdjointView.h | 659 - .../Eigen/src/SparseCore/SparseSolverBase.h | 124 - .../SparseSparseProductWithPruning.h | 198 - .../Eigen/src/SparseCore/SparseTranspose.h | 92 - .../src/SparseCore/SparseTriangularView.h | 189 - .../Eigen/Eigen/src/SparseCore/SparseUtil.h | 186 - .../Eigen/Eigen/src/SparseCore/SparseVector.h | 478 - .../Eigen/Eigen/src/SparseCore/SparseView.h | 254 - .../Eigen/src/SparseCore/TriangularSolver.h | 315 - .../Eigen/Eigen/src/SparseLU/SparseLU.h | 923 - .../Eigen/Eigen/src/SparseLU/SparseLUImpl.h | 66 - .../Eigen/src/SparseLU/SparseLU_Memory.h | 226 - .../Eigen/src/SparseLU/SparseLU_Structs.h | 110 - .../src/SparseLU/SparseLU_SupernodalMatrix.h | 375 - .../Eigen/Eigen/src/SparseLU/SparseLU_Utils.h | 80 - .../Eigen/src/SparseLU/SparseLU_column_bmod.h | 181 - .../Eigen/src/SparseLU/SparseLU_column_dfs.h | 179 - .../src/SparseLU/SparseLU_copy_to_ucol.h | 107 - .../Eigen/src/SparseLU/SparseLU_gemm_kernel.h | 280 - .../src/SparseLU/SparseLU_heap_relax_snode.h | 126 - .../Eigen/src/SparseLU/SparseLU_kernel_bmod.h | 130 - .../Eigen/src/SparseLU/SparseLU_panel_bmod.h | 223 - .../Eigen/src/SparseLU/SparseLU_panel_dfs.h | 258 - .../Eigen/src/SparseLU/SparseLU_pivotL.h | 137 - .../Eigen/src/SparseLU/SparseLU_pruneL.h | 136 - .../Eigen/src/SparseLU/SparseLU_relax_snode.h | 83 - .../Eigen/Eigen/src/SparseQR/SparseQR.h | 758 - .../Eigen/Eigen/src/StlSupport/StdDeque.h | 116 - .../Eigen/Eigen/src/StlSupport/StdList.h | 106 - .../Eigen/Eigen/src/StlSupport/StdVector.h | 131 - .../Eigen/Eigen/src/StlSupport/details.h | 84 - .../Eigen/src/SuperLUSupport/SuperLUSupport.h | 1025 - .../Eigen/src/UmfPackSupport/UmfPackSupport.h | 642 - stark/extern/Eigen/Eigen/src/misc/Image.h | 82 - stark/extern/Eigen/Eigen/src/misc/Kernel.h | 79 - .../extern/Eigen/Eigen/src/misc/RealSvd2x2.h | 55 - stark/extern/Eigen/Eigen/src/misc/blas.h | 440 - stark/extern/Eigen/Eigen/src/misc/lapack.h | 152 - stark/extern/Eigen/Eigen/src/misc/lapacke.h | 16292 ---------------- .../Eigen/Eigen/src/misc/lapacke_mangling.h | 17 - .../Eigen/src/plugins/ArrayCwiseBinaryOps.h | 358 - .../Eigen/src/plugins/ArrayCwiseUnaryOps.h | 696 - .../Eigen/Eigen/src/plugins/BlockMethods.h | 1442 -- .../Eigen/src/plugins/CommonCwiseBinaryOps.h | 115 - .../Eigen/src/plugins/CommonCwiseUnaryOps.h | 177 - .../Eigen/src/plugins/IndexedViewMethods.h | 262 - .../Eigen/src/plugins/MatrixCwiseBinaryOps.h | 152 - .../Eigen/src/plugins/MatrixCwiseUnaryOps.h | 95 - .../Eigen/Eigen/src/plugins/ReshapedMethods.h | 149 - stark/extern/Eigen/eigen.natvis | 254 - .../Eigen/signature_of_eigen3_matrix_library | 1 - .../CMakeLists.txt | 65 - .../LICENSE.txt | 202 - .../include/TriangleMeshCollisionDetection | 6 - .../src/AABBs.cpp | 195 - .../src/AABBs.h | 31 - .../src/BroadPhaseBase.cpp | 31 - .../src/BroadPhaseBase.h | 46 - .../src/BroadPhaseET.cpp | 466 - .../src/BroadPhaseET.h | 48 - .../src/BroadPhasePTEE.cpp | 11 - .../src/BroadPhasePTEE.h | 21 - .../src/BroadPhasePTEEBase.cpp | 781 - .../src/BroadPhasePTEEBase.h | 57 - .../src/BroadPhasePTEECCD.cpp | 11 - .../src/BroadPhasePTEECCD.h | 21 - .../src/IntersectionDetection.cpp | 132 - .../src/IntersectionDetection.h | 45 - .../src/IntersectionResults.h | 17 - .../src/Meshes.cpp | 163 - .../src/Meshes.h | 45 - .../src/Octree.cpp | 181 - .../src/Octree.h | 40 - .../src/ProximityDetection.cpp | 250 - .../src/ProximityDetection.h | 53 - .../src/ProximityResults.h | 65 - .../src/RecursiveBuffer.h | 57 - .../TriangleMeshCollisionDetection/src/Vec3.h | 41 - .../src/alignment_allocator.h | 97 - .../src/helpers.h | 48 - .../src/info_structs.h | 195 - .../src/ipc_toolkit_geometry_functions.cpp | 585 - .../src/ipc_toolkit_geometry_functions.h | 46 - .../src/shuffle_lut.h | 266 - .../src/types.h | 116 - stark/extern/TriangleMeshDistance/LICENSE | 21 - .../include/tmd/TriangleMeshDistance.h | 643 - stark/extern/fmt/.clang-format | 8 - stark/extern/fmt/CMakeLists.txt | 441 - stark/extern/fmt/CONTRIBUTING.md | 20 - stark/extern/fmt/ChangeLog.rst | 5687 ------ stark/extern/fmt/LICENSE.rst | 27 - stark/extern/fmt/README.rst | 540 - stark/extern/fmt/doc/CMakeLists.txt | 26 - stark/extern/fmt/doc/_static/bootstrap.min.js | 7 - .../fonts/glyphicons-halflings-regular.eot | Bin 20335 -> 0 bytes .../fonts/glyphicons-halflings-regular.svg | 229 - .../fonts/glyphicons-halflings-regular.ttf | Bin 41280 -> 0 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 23320 -> 0 bytes stark/extern/fmt/doc/_templates/layout.html | 148 - stark/extern/fmt/doc/_templates/search.html | 55 - stark/extern/fmt/doc/api.rst | 648 - stark/extern/fmt/doc/basic-bootstrap/README | 2 - .../fmt/doc/basic-bootstrap/layout.html | 208 - .../extern/fmt/doc/basic-bootstrap/theme.conf | 2 - stark/extern/fmt/doc/bootstrap/alerts.less | 73 - stark/extern/fmt/doc/bootstrap/badges.less | 66 - stark/extern/fmt/doc/bootstrap/bootstrap.less | 50 - .../extern/fmt/doc/bootstrap/breadcrumbs.less | 26 - .../fmt/doc/bootstrap/button-groups.less | 243 - stark/extern/fmt/doc/bootstrap/buttons.less | 160 - stark/extern/fmt/doc/bootstrap/carousel.less | 269 - stark/extern/fmt/doc/bootstrap/close.less | 34 - stark/extern/fmt/doc/bootstrap/code.less | 69 - .../doc/bootstrap/component-animations.less | 33 - stark/extern/fmt/doc/bootstrap/dropdowns.less | 214 - stark/extern/fmt/doc/bootstrap/forms.less | 574 - .../extern/fmt/doc/bootstrap/glyphicons.less | 305 - stark/extern/fmt/doc/bootstrap/grid.less | 84 - .../fmt/doc/bootstrap/input-groups.less | 166 - stark/extern/fmt/doc/bootstrap/jumbotron.less | 50 - stark/extern/fmt/doc/bootstrap/labels.less | 64 - .../extern/fmt/doc/bootstrap/list-group.less | 124 - stark/extern/fmt/doc/bootstrap/media.less | 61 - stark/extern/fmt/doc/bootstrap/mixins.less | 39 - .../fmt/doc/bootstrap/mixins/alerts.less | 14 - .../bootstrap/mixins/background-variant.less | 8 - .../doc/bootstrap/mixins/border-radius.less | 18 - .../fmt/doc/bootstrap/mixins/buttons.less | 52 - .../doc/bootstrap/mixins/center-block.less | 7 - .../fmt/doc/bootstrap/mixins/clearfix.less | 22 - .../fmt/doc/bootstrap/mixins/forms.less | 85 - .../fmt/doc/bootstrap/mixins/gradients.less | 59 - .../doc/bootstrap/mixins/grid-framework.less | 91 - .../extern/fmt/doc/bootstrap/mixins/grid.less | 122 - .../fmt/doc/bootstrap/mixins/hide-text.less | 21 - .../fmt/doc/bootstrap/mixins/image.less | 33 - .../fmt/doc/bootstrap/mixins/labels.less | 12 - .../fmt/doc/bootstrap/mixins/list-group.less | 29 - .../fmt/doc/bootstrap/mixins/nav-divider.less | 10 - .../bootstrap/mixins/nav-vertical-align.less | 9 - .../fmt/doc/bootstrap/mixins/opacity.less | 8 - .../fmt/doc/bootstrap/mixins/pagination.less | 23 - .../fmt/doc/bootstrap/mixins/panels.less | 24 - .../doc/bootstrap/mixins/progress-bar.less | 10 - .../doc/bootstrap/mixins/reset-filter.less | 8 - .../fmt/doc/bootstrap/mixins/resize.less | 6 - .../mixins/responsive-visibility.less | 15 - .../extern/fmt/doc/bootstrap/mixins/size.less | 10 - .../fmt/doc/bootstrap/mixins/tab-focus.less | 9 - .../fmt/doc/bootstrap/mixins/table-row.less | 28 - .../doc/bootstrap/mixins/text-emphasis.less | 8 - .../doc/bootstrap/mixins/text-overflow.less | 8 - .../doc/bootstrap/mixins/vendor-prefixes.less | 227 - stark/extern/fmt/doc/bootstrap/modals.less | 150 - stark/extern/fmt/doc/bootstrap/navbar.less | 660 - stark/extern/fmt/doc/bootstrap/navs.less | 242 - stark/extern/fmt/doc/bootstrap/normalize.less | 427 - stark/extern/fmt/doc/bootstrap/pager.less | 54 - .../extern/fmt/doc/bootstrap/pagination.less | 88 - stark/extern/fmt/doc/bootstrap/panels.less | 265 - stark/extern/fmt/doc/bootstrap/popovers.less | 135 - stark/extern/fmt/doc/bootstrap/print.less | 107 - .../fmt/doc/bootstrap/progress-bars.less | 87 - .../fmt/doc/bootstrap/responsive-embed.less | 35 - .../doc/bootstrap/responsive-utilities.less | 194 - .../extern/fmt/doc/bootstrap/scaffolding.less | 162 - stark/extern/fmt/doc/bootstrap/tables.less | 234 - stark/extern/fmt/doc/bootstrap/theme.less | 273 - .../extern/fmt/doc/bootstrap/thumbnails.less | 36 - stark/extern/fmt/doc/bootstrap/tooltip.less | 102 - stark/extern/fmt/doc/bootstrap/type.less | 302 - stark/extern/fmt/doc/bootstrap/utilities.less | 55 - stark/extern/fmt/doc/bootstrap/variables.less | 861 - stark/extern/fmt/doc/bootstrap/wells.less | 29 - stark/extern/fmt/doc/build.py | 121 - stark/extern/fmt/doc/conf.py | 256 - stark/extern/fmt/doc/contents.rst | 10 - stark/extern/fmt/doc/fmt.less | 71 - .../extern/fmt/doc/html/_sources/api.rst.txt | 648 - .../fmt/doc/html/_sources/contents.rst.txt | 10 - .../fmt/doc/html/_sources/index.rst.txt | 198 - .../fmt/doc/html/_sources/syntax.rst.txt | 640 - .../fmt/doc/html/_sources/usage.rst.txt | 212 - .../fmt/doc/html/_static/bootstrap.min.js | 7 - stark/extern/fmt/doc/html/_static/doctools.js | 316 - .../doc/html/_static/documentation_options.js | 12 - stark/extern/fmt/doc/html/_static/fmt.css | 6724 ------- .../fonts/glyphicons-halflings-regular.eot | Bin 20335 -> 0 bytes .../fonts/glyphicons-halflings-regular.svg | 229 - .../fonts/glyphicons-halflings-regular.ttf | Bin 41280 -> 0 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 23320 -> 0 bytes .../fmt/doc/html/_static/jquery-3.5.1.js | 10872 ----------- stark/extern/fmt/doc/html/_static/jquery.js | 2 - .../fmt/doc/html/_static/language_data.js | 297 - .../extern/fmt/doc/html/_static/pygments.css | 74 - .../fmt/doc/html/_static/searchtools.js | 514 - .../fmt/doc/html/_static/underscore-1.3.1.js | 999 - .../extern/fmt/doc/html/_static/underscore.js | 31 - stark/extern/fmt/doc/html/api.html | 1425 -- stark/extern/fmt/doc/html/contents.html | 189 - stark/extern/fmt/doc/html/genindex.html | 312 - stark/extern/fmt/doc/html/index.html | 325 - stark/extern/fmt/doc/html/objects.inv | Bin 5463 -> 0 bytes stark/extern/fmt/doc/html/search.html | 171 - stark/extern/fmt/doc/html/searchindex.js | 1 - stark/extern/fmt/doc/html/syntax.html | 819 - stark/extern/fmt/doc/html/usage.html | 335 - stark/extern/fmt/doc/index.rst | 198 - stark/extern/fmt/doc/python-license.txt | 290 - stark/extern/fmt/doc/syntax.rst | 640 - stark/extern/fmt/doc/usage.rst | 212 - stark/extern/fmt/include/fmt/args.h | 234 - stark/extern/fmt/include/fmt/chrono.h | 2267 --- stark/extern/fmt/include/fmt/color.h | 633 - stark/extern/fmt/include/fmt/compile.h | 607 - stark/extern/fmt/include/fmt/core.h | 2951 --- stark/extern/fmt/include/fmt/format-inl.h | 1681 -- stark/extern/fmt/include/fmt/format.h | 4735 ----- stark/extern/fmt/include/fmt/os.h | 451 - stark/extern/fmt/include/fmt/ostream.h | 209 - stark/extern/fmt/include/fmt/printf.h | 679 - stark/extern/fmt/include/fmt/ranges.h | 732 - stark/extern/fmt/include/fmt/std.h | 349 - stark/extern/fmt/include/fmt/xchar.h | 259 - stark/extern/fmt/src/fmt.cc | 116 - stark/extern/fmt/src/format.cc | 43 - stark/extern/fmt/src/os.cc | 390 - stark/extern/fmt/support/Android.mk | 15 - stark/extern/fmt/support/AndroidManifest.xml | 1 - stark/extern/fmt/support/C++.sublime-syntax | 2061 -- stark/extern/fmt/support/README | 4 - stark/extern/fmt/support/Vagrantfile | 20 - stark/extern/fmt/support/bazel/.bazelversion | 1 - stark/extern/fmt/support/bazel/BUILD.bazel | 28 - stark/extern/fmt/support/bazel/README.md | 74 - .../extern/fmt/support/bazel/WORKSPACE.bazel | 1 - stark/extern/fmt/support/build-docs.py | 58 - stark/extern/fmt/support/build.gradle | 132 - .../extern/fmt/support/cmake/FindSetEnv.cmake | 7 - .../extern/fmt/support/cmake/JoinPaths.cmake | 26 - .../fmt/support/cmake/fmt-config.cmake.in | 7 - stark/extern/fmt/support/cmake/fmt.pc.in | 11 - stark/extern/fmt/support/compute-powers.py | 53 - stark/extern/fmt/support/docopt.py | 581 - stark/extern/fmt/support/manage.py | 303 - stark/extern/fmt/support/printable.py | 201 - stark/extern/fmt/support/rst2md.py | 159 - stark/extern/fmt/support/rtd/conf.py | 7 - stark/extern/fmt/support/rtd/index.rst | 2 - .../extern/fmt/support/rtd/theme/layout.html | 17 - stark/extern/fmt/support/rtd/theme/theme.conf | 2 - stark/extern/fmt/test/CMakeLists.txt | 257 - .../test/add-subdirectory-test/CMakeLists.txt | 17 - .../fmt/test/add-subdirectory-test/main.cc | 5 - stark/extern/fmt/test/args-test.cc | 186 - stark/extern/fmt/test/assert-test.cc | 31 - stark/extern/fmt/test/chrono-test.cc | 979 - stark/extern/fmt/test/color-test.cc | 72 - .../test/compile-error-test/CMakeLists.txt | 241 - stark/extern/fmt/test/compile-fp-test.cc | 62 - stark/extern/fmt/test/compile-test.cc | 393 - stark/extern/fmt/test/core-test.cc | 832 - .../extern/fmt/test/cuda-test/CMakeLists.txt | 73 - stark/extern/fmt/test/cuda-test/cpp14.cc | 11 - stark/extern/fmt/test/cuda-test/cuda-cpp14.cu | 28 - stark/extern/fmt/test/detect-stdfs.cc | 18 - stark/extern/fmt/test/enforce-checks-test.cc | 65 - .../fmt/test/find-package-test/CMakeLists.txt | 17 - .../extern/fmt/test/find-package-test/main.cc | 5 - stark/extern/fmt/test/format-impl-test.cc | 568 - stark/extern/fmt/test/format-test.cc | 2267 --- stark/extern/fmt/test/fuzzing/CMakeLists.txt | 30 - stark/extern/fmt/test/fuzzing/README.md | 25 - stark/extern/fmt/test/fuzzing/build.sh | 90 - .../fmt/test/fuzzing/chrono-duration.cc | 136 - .../fmt/test/fuzzing/chrono-timepoint.cc | 32 - stark/extern/fmt/test/fuzzing/float.cc | 39 - stark/extern/fmt/test/fuzzing/fuzzer-common.h | 77 - stark/extern/fmt/test/fuzzing/main.cc | 22 - stark/extern/fmt/test/fuzzing/named-arg.cc | 102 - stark/extern/fmt/test/fuzzing/one-arg.cc | 92 - stark/extern/fmt/test/fuzzing/two-args.cc | 106 - stark/extern/fmt/test/gtest-extra-test.cc | 415 - stark/extern/fmt/test/gtest-extra.cc | 80 - stark/extern/fmt/test/gtest-extra.h | 165 - stark/extern/fmt/test/gtest/.clang-format | 3 - stark/extern/fmt/test/gtest/CMakeLists.txt | 32 - .../extern/fmt/test/gtest/gmock-gtest-all.cc | 14434 -------------- stark/extern/fmt/test/gtest/gmock/gmock.h | 11645 ----------- stark/extern/fmt/test/gtest/gtest/gtest-spi.h | 238 - stark/extern/fmt/test/gtest/gtest/gtest.h | 12398 ------------ stark/extern/fmt/test/header-only-test.cc | 11 - stark/extern/fmt/test/mock-allocator.h | 64 - stark/extern/fmt/test/module-test.cc | 520 - stark/extern/fmt/test/noexception-test.cc | 18 - stark/extern/fmt/test/os-test.cc | 506 - stark/extern/fmt/test/ostream-test.cc | 291 - stark/extern/fmt/test/posix-mock-test.cc | 453 - stark/extern/fmt/test/posix-mock.h | 75 - stark/extern/fmt/test/printf-test.cc | 579 - stark/extern/fmt/test/ranges-odr-test.cc | 17 - stark/extern/fmt/test/ranges-test.cc | 497 - stark/extern/fmt/test/scan-test.cc | 116 - stark/extern/fmt/test/scan.h | 246 - .../test/static-export-test/CMakeLists.txt | 30 - .../fmt/test/static-export-test/library.cc | 5 - .../fmt/test/static-export-test/main.cc | 6 - stark/extern/fmt/test/std-test.cc | 221 - stark/extern/fmt/test/test-assert.h | 39 - stark/extern/fmt/test/test-main.cc | 43 - stark/extern/fmt/test/unicode-test.cc | 48 - stark/extern/fmt/test/util.cc | 46 - stark/extern/fmt/test/util.h | 81 - stark/extern/fmt/test/xchar-test.cc | 581 - .../include/par_shapes/par_shapes.h | 2154 -- stark/extern/symx/CMakeLists.txt | 92 - stark/extern/symx/LICENSE | 202 - .../symx/extern/BlockedSparseMatrix/LICENSE | 21 - .../BlockedSparseMatrix/AlignmentAllocator.h | 89 - .../BlockedSparseMatrix/BlockedSparseMatrix.h | 1306 -- .../ConjugateGradientMethod.h | 374 - .../include/BlockedSparseMatrix/LICENSE | 21 - .../BlockedSparseMatrix/ParallelNumber.h | 51 - .../BlockedSparseMatrix/ParallelVector.h | 56 - .../include/BlockedSparseMatrix/types.h | 63 - .../picoSHA2/include/picoSHA2/picosha2.h | 377 - stark/extern/symx/include/symx | 17 - stark/extern/symx/src/AlignmentAllocator.h | 92 - stark/extern/symx/src/Assembly.cpp | 19 - stark/extern/symx/src/Assembly.h | 40 - stark/extern/symx/src/Compilation.cpp | 555 - stark/extern/symx/src/Compilation.h | 133 - stark/extern/symx/src/Compiled.cpp | 98 - stark/extern/symx/src/Compiled.h | 47 - stark/extern/symx/src/CompiledInLoop.h | 701 - stark/extern/symx/src/Element.cpp | 57 - stark/extern/symx/src/Element.h | 22 - stark/extern/symx/src/Energy.cpp | 467 - stark/extern/symx/src/Energy.h | 308 - stark/extern/symx/src/EvalSequence.cpp | 112 - stark/extern/symx/src/EvalSequence.h | 22 - stark/extern/symx/src/Expr.h | 157 - stark/extern/symx/src/Expressions.cpp | 300 - stark/extern/symx/src/Expressions.h | 70 - stark/extern/symx/src/FixedBranchSequence.cpp | 213 - stark/extern/symx/src/FixedBranchSequence.h | 111 - stark/extern/symx/src/GlobalEnergy.cpp | 377 - stark/extern/symx/src/GlobalEnergy.h | 126 - stark/extern/symx/src/LabelledConnectivity.h | 62 - stark/extern/symx/src/Matrix.cpp | 488 - stark/extern/symx/src/Matrix.h | 80 - stark/extern/symx/src/Scalar.cpp | 575 - stark/extern/symx/src/Scalar.h | 129 - stark/extern/symx/src/Sequence.cpp | 180 - stark/extern/symx/src/Sequence.h | 42 - stark/extern/symx/src/SymbolicWorkSpace.cpp | 109 - stark/extern/symx/src/SymbolicWorkSpace.h | 43 - stark/extern/symx/src/Vector.cpp | 209 - stark/extern/symx/src/Vector.h | 63 - stark/extern/symx/src/diff.cpp | 188 - stark/extern/symx/src/diff.h | 20 - stark/extern/symx/src/hashing.h | 212 - stark/extern/symx/src/lambdas.h | 65 - stark/extern/symx/src/project_to_PD.h | 93 - stark/extern/symx/src/simd_utils.h | 95 - stark/extern/symx/src/utils.cpp | 38 - stark/extern/symx/src/utils.h | 10 - .../tinyobjloader/include/tinyobjloader.h | 2927 --- stark/extern/vtkio/LICENSE | 21 - stark/extern/vtkio/include/vtkio | 2 - stark/extern/vtkio/src/ByteBuffer.h | 382 - stark/extern/vtkio/src/VTKFile.h | 1006 - stark/extern/vtkio/src/dynamic_types.h | 107 - stark/extern/vtkio/src/endianness.h | 107 - stark/extern/vtkio/src/stream_io.h | 67 - stark/extern/vtkio/src/tables.h | 189 - stark/include/stark | 5 - stark/src/core/Callbacks.h | 97 - stark/src/core/Console.cpp | 70 - stark/src/core/Console.h | 38 - stark/src/core/EventDrivenScript.cpp | 47 - stark/src/core/EventDrivenScript.h | 95 - stark/src/core/Logger.cpp | 142 - stark/src/core/Logger.h | 40 - stark/src/core/NewtonsMethod.cpp | 424 - stark/src/core/NewtonsMethod.h | 70 - stark/src/core/Settings.cpp | 141 - stark/src/core/Settings.h | 87 - stark/src/core/Stark.cpp | 299 - stark/src/core/Stark.h | 50 - stark/src/core/include_ui.h | 9 - stark/src/models/IntervalVector.h | 318 - stark/src/models/MeshOutputGroups.cpp | 18 - stark/src/models/MeshOutputGroups.h | 24 - stark/src/models/Simulation.cpp | 100 - stark/src/models/Simulation.h | 43 - stark/src/models/deformables/Deformables.cpp | 16 - stark/src/models/deformables/Deformables.h | 25 - .../deformables/DeformablesMeshOutput.cpp | 110 - .../deformables/DeformablesMeshOutput.h | 68 - .../src/models/deformables/PointDynamics.cpp | 75 - stark/src/models/deformables/PointDynamics.h | 73 - .../models/deformables/PointSetHandler.cpp | 129 - .../src/models/deformables/PointSetHandler.h | 57 - .../models/deformables/deformable_tools.cpp | 56 - .../src/models/deformables/deformable_tools.h | 14 - .../deformables_energies_include.h | 8 - .../deformables/line/EnergySegmentStrain.cpp | 143 - .../deformables/line/EnergySegmentStrain.h | 44 - .../deformables/point/EnergyLumpedInertia.cpp | 200 - .../deformables/point/EnergyLumpedInertia.h | 52 - .../point/EnergyPrescribedPositions.cpp | 155 - .../point/EnergyPrescribedPositions.h | 70 - .../surface/EnergyDiscreteShells.cpp | 180 - .../surface/EnergyDiscreteShells.h | 47 - .../surface/EnergyTriangleStrain.cpp | 193 - .../surface/EnergyTriangleStrain.h | 49 - .../deformables/volume/EnergyTetStrain.cpp | 179 - .../deformables/volume/EnergyTetStrain.h | 44 - stark/src/models/distances.cpp | 114 - stark/src/models/distances.h | 30 - stark/src/models/include.h | 2 - .../models/interactions/EnergyAttachments.cpp | 528 - .../models/interactions/EnergyAttachments.h | 87 - .../interactions/EnergyFrictionalContact.cpp | 1442 -- .../interactions/EnergyFrictionalContact.h | 201 - .../EnergyFrictionalContact_NEW_DRAFT.cpp | 1493 -- .../EnergyFrictionalContact_NEW_DRAFT.h | 206 - .../src/models/interactions/Interactions.cpp | 10 - stark/src/models/interactions/Interactions.h | 24 - .../interactions/contact_and_friction_data.h | 359 - .../models/interactions/friction_geometry.cpp | 117 - .../models/interactions/friction_geometry.h | 21 - .../src/models/presets/DeformablesPresets.cpp | 85 - stark/src/models/presets/DeformablesPresets.h | 30 - stark/src/models/presets/Presets.cpp | 7 - stark/src/models/presets/Presets.h | 17 - stark/src/models/presets/RigidBodyPresets.cpp | 67 - stark/src/models/presets/RigidBodyPresets.h | 51 - .../presets/deformables_preset_types.cpp | 86 - .../models/presets/deformables_preset_types.h | 140 - .../EnergyRigidBodyConstraints.cpp | 395 - .../rigidbodies/EnergyRigidBodyConstraints.h | 72 - .../rigidbodies/EnergyRigidBodyInertia.cpp | 131 - .../rigidbodies/EnergyRigidBodyInertia.h | 27 - stark/src/models/rigidbodies/RigidBodies.cpp | 304 - stark/src/models/rigidbodies/RigidBodies.h | 184 - .../rigidbodies/RigidBodiesMeshOutput.cpp | 81 - .../rigidbodies/RigidBodiesMeshOutput.h | 64 - .../models/rigidbodies/RigidBodyConstraints.h | 551 - .../models/rigidbodies/RigidBodyDynamics.cpp | 165 - .../models/rigidbodies/RigidBodyDynamics.h | 67 - .../models/rigidbodies/RigidBodyHandler.cpp | 270 - .../src/models/rigidbodies/RigidBodyHandler.h | 92 - .../models/rigidbodies/inertia_tensors.cpp | 60 - .../src/models/rigidbodies/inertia_tensors.h | 11 - .../rigidbodies/rigid_body_constraint_utils.h | 26 - .../rigidbodies/rigidbody_constraints_ui.h | 870 - .../rigidbodies/rigidbody_transformations.cpp | 160 - .../rigidbodies/rigidbody_transformations.h | 39 - stark/src/models/time_integration.cpp | 20 - stark/src/models/time_integration.h | 13 - stark/src/models/types.h | 75 - stark/src/utils/Mesh.h | 15 - stark/src/utils/blends.cpp | 46 - stark/src/utils/blends.h | 16 - stark/src/utils/include.h | 4 - stark/src/utils/mesh_generators.cpp | 293 - stark/src/utils/mesh_generators.h | 25 - stark/src/utils/mesh_utils.cpp | 503 - stark/src/utils/mesh_utils.h | 172 - stark/src/utils/unordered_array_set_and_map.h | 27 - tests/CMakeLists.txt | 37 - .../extern/Catch2/CMake/Catch2Config.cmake.in | 10 - .../Catch2/CMake/CatchConfigOptions.cmake | 89 - .../Catch2/CMake/CatchMiscFunctions.cmake | 120 - tests/extern/Catch2/CMake/FindGcov.cmake | 157 - tests/extern/Catch2/CMake/FindLcov.cmake | 354 - tests/extern/Catch2/CMake/Findcodecov.cmake | 258 - .../Catch2/CMake/catch2-with-main.pc.in | 10 - tests/extern/Catch2/CMake/catch2.pc.in | 11 - tests/extern/Catch2/CMake/llvm-cov-wrapper | 56 - tests/extern/Catch2/CMakeLists.txt | 202 - tests/extern/Catch2/LICENSE.txt | 23 - tests/extern/Catch2/src/CMakeLists.txt | 516 - .../src/catch2/benchmark/catch_benchmark.hpp | 148 - .../catch2/benchmark/catch_benchmark_all.hpp | 46 - .../catch2/benchmark/catch_chronometer.cpp | 17 - .../catch2/benchmark/catch_chronometer.hpp | 77 - .../src/catch2/benchmark/catch_clock.hpp | 27 - .../catch2/benchmark/catch_constructor.hpp | 82 - .../catch2/benchmark/catch_environment.hpp | 29 - .../src/catch2/benchmark/catch_estimate.hpp | 25 - .../catch2/benchmark/catch_execution_plan.hpp | 58 - .../src/catch2/benchmark/catch_optimizer.hpp | 78 - .../catch_outlier_classification.hpp | 29 - .../benchmark/catch_sample_analysis.hpp | 31 - .../catch2/benchmark/detail/catch_analyse.cpp | 85 - .../catch2/benchmark/detail/catch_analyse.hpp | 27 - .../detail/catch_benchmark_function.cpp | 17 - .../detail/catch_benchmark_function.hpp | 107 - .../detail/catch_benchmark_stats.hpp | 48 - .../detail/catch_benchmark_stats_fwd.hpp | 23 - .../detail/catch_complete_invoke.hpp | 58 - .../benchmark/detail/catch_estimate_clock.hpp | 125 - .../catch2/benchmark/detail/catch_measure.hpp | 32 - .../catch2/benchmark/detail/catch_repeat.hpp | 36 - .../detail/catch_run_for_at_least.cpp | 31 - .../detail/catch_run_for_at_least.hpp | 65 - .../catch2/benchmark/detail/catch_stats.cpp | 413 - .../catch2/benchmark/detail/catch_stats.hpp | 60 - .../catch2/benchmark/detail/catch_timing.hpp | 31 - tests/extern/Catch2/src/catch2/catch_all.hpp | 131 - .../extern/Catch2/src/catch2/catch_approx.cpp | 85 - .../extern/Catch2/src/catch2/catch_approx.hpp | 128 - .../src/catch2/catch_assertion_info.hpp | 28 - .../src/catch2/catch_assertion_result.cpp | 105 - .../src/catch2/catch_assertion_result.hpp | 60 - .../extern/Catch2/src/catch2/catch_config.cpp | 247 - .../extern/Catch2/src/catch2/catch_config.hpp | 153 - .../src/catch2/catch_get_random_seed.cpp | 18 - .../src/catch2/catch_get_random_seed.hpp | 18 - .../Catch2/src/catch2/catch_message.cpp | 116 - .../Catch2/src/catch2/catch_message.hpp | 150 - .../Catch2/src/catch2/catch_registry_hub.cpp | 107 - .../Catch2/src/catch2/catch_section_info.hpp | 42 - .../Catch2/src/catch2/catch_session.cpp | 364 - .../Catch2/src/catch2/catch_session.hpp | 62 - .../Catch2/src/catch2/catch_tag_alias.hpp | 29 - .../catch2/catch_tag_alias_autoregistrar.cpp | 24 - .../catch2/catch_tag_alias_autoregistrar.hpp | 29 - .../src/catch2/catch_template_test_macros.hpp | 124 - .../src/catch2/catch_test_case_info.cpp | 263 - .../src/catch2/catch_test_case_info.hpp | 131 - .../Catch2/src/catch2/catch_test_macros.hpp | 226 - .../Catch2/src/catch2/catch_test_spec.cpp | 141 - .../Catch2/src/catch2/catch_test_spec.hpp | 119 - .../extern/Catch2/src/catch2/catch_timer.cpp | 37 - .../extern/Catch2/src/catch2/catch_timer.hpp | 27 - .../Catch2/src/catch2/catch_tostring.cpp | 254 - .../Catch2/src/catch2/catch_tostring.hpp | 674 - .../extern/Catch2/src/catch2/catch_totals.cpp | 65 - .../extern/Catch2/src/catch2/catch_totals.hpp | 41 - .../src/catch2/catch_translate_exception.cpp | 20 - .../src/catch2/catch_translate_exception.hpp | 88 - .../src/catch2/catch_user_config.hpp.in | 220 - .../Catch2/src/catch2/catch_version.cpp | 43 - .../Catch2/src/catch2/catch_version.hpp | 39 - .../src/catch2/catch_version_macros.hpp | 15 - .../generators/catch_generator_exception.cpp | 17 - .../generators/catch_generator_exception.hpp | 31 - .../catch2/generators/catch_generators.cpp | 42 - .../catch2/generators/catch_generators.hpp | 250 - .../generators/catch_generators_adapters.hpp | 241 - .../generators/catch_generators_all.hpp | 30 - .../generators/catch_generators_random.cpp | 13 - .../generators/catch_generators_random.hpp | 98 - .../generators/catch_generators_range.hpp | 111 - .../interfaces/catch_interfaces_all.hpp | 37 - .../interfaces/catch_interfaces_capture.cpp | 13 - .../interfaces/catch_interfaces_capture.hpp | 110 - .../interfaces/catch_interfaces_config.cpp | 13 - .../interfaces/catch_interfaces_config.hpp | 100 - .../catch_interfaces_enum_values_registry.hpp | 47 - .../interfaces/catch_interfaces_exception.cpp | 14 - .../interfaces/catch_interfaces_exception.hpp | 36 - .../catch_interfaces_generatortracker.cpp | 32 - .../catch_interfaces_generatortracker.hpp | 90 - .../catch_interfaces_registry_hub.cpp | 14 - .../catch_interfaces_registry_hub.hpp | 66 - .../interfaces/catch_interfaces_reporter.cpp | 101 - .../interfaces/catch_interfaces_reporter.hpp | 224 - .../catch_interfaces_reporter_factory.cpp | 14 - .../catch_interfaces_reporter_factory.hpp | 45 - .../catch_interfaces_tag_alias_registry.hpp | 29 - .../catch_interfaces_test_invoker.hpp | 21 - .../interfaces/catch_interfaces_testcase.cpp | 13 - .../interfaces/catch_interfaces_testcase.hpp | 30 - .../internal/catch_assertion_handler.cpp | 84 - .../internal/catch_assertion_handler.hpp | 68 - .../catch_case_insensitive_comparisons.cpp | 35 - .../catch_case_insensitive_comparisons.hpp | 30 - .../catch2/internal/catch_case_sensitive.hpp | 17 - .../src/catch2/internal/catch_clara.cpp | 448 - .../src/catch2/internal/catch_clara.hpp | 702 - .../src/catch2/internal/catch_commandline.cpp | 313 - .../src/catch2/internal/catch_commandline.hpp | 21 - .../catch2/internal/catch_compare_traits.hpp | 75 - .../internal/catch_compiler_capabilities.hpp | 447 - .../catch_config_android_logwrite.hpp | 33 - .../catch2/internal/catch_config_counter.hpp | 34 - .../internal/catch_config_prefix_messages.hpp | 29 - .../catch_config_static_analysis_support.hpp | 34 - .../catch_config_uncaught_exceptions.hpp | 46 - .../catch2/internal/catch_config_wchar.hpp | 35 - .../catch2/internal/catch_console_colour.cpp | 282 - .../catch2/internal/catch_console_colour.hpp | 141 - .../catch2/internal/catch_console_width.hpp | 19 - .../internal/catch_container_nonmembers.hpp | 73 - .../src/catch2/internal/catch_context.cpp | 41 - .../src/catch2/internal/catch_context.hpp | 51 - .../catch2/internal/catch_debug_console.cpp | 45 - .../catch2/internal/catch_debug_console.hpp | 17 - .../src/catch2/internal/catch_debugger.cpp | 120 - .../src/catch2/internal/catch_debugger.hpp | 67 - .../src/catch2/internal/catch_decomposer.cpp | 23 - .../src/catch2/internal/catch_decomposer.hpp | 340 - .../src/catch2/internal/catch_enforce.cpp | 41 - .../src/catch2/internal/catch_enforce.hpp | 54 - .../internal/catch_enum_values_registry.cpp | 73 - .../internal/catch_enum_values_registry.hpp | 36 - .../src/catch2/internal/catch_errno_guard.cpp | 16 - .../src/catch2/internal/catch_errno_guard.hpp | 27 - .../catch_exception_translator_registry.cpp | 87 - .../catch_exception_translator_registry.hpp | 30 - .../catch_fatal_condition_handler.cpp | 243 - .../catch_fatal_condition_handler.hpp | 69 - .../internal/catch_floating_point_helpers.cpp | 32 - .../internal/catch_floating_point_helpers.hpp | 103 - .../src/catch2/internal/catch_getenv.cpp | 37 - .../src/catch2/internal/catch_getenv.hpp | 20 - .../catch2/internal/catch_is_permutation.hpp | 138 - .../src/catch2/internal/catch_istream.cpp | 159 - .../src/catch2/internal/catch_istream.hpp | 54 - .../src/catch2/internal/catch_jsonwriter.cpp | 148 - .../src/catch2/internal/catch_jsonwriter.hpp | 120 - .../src/catch2/internal/catch_lazy_expr.cpp | 29 - .../src/catch2/internal/catch_lazy_expr.hpp | 40 - .../catch2/internal/catch_leak_detector.cpp | 38 - .../catch2/internal/catch_leak_detector.hpp | 19 - .../Catch2/src/catch2/internal/catch_list.cpp | 123 - .../Catch2/src/catch2/internal/catch_list.hpp | 43 - .../catch2/internal/catch_logical_traits.hpp | 44 - .../Catch2/src/catch2/internal/catch_main.cpp | 39 - .../catch2/internal/catch_message_info.cpp | 25 - .../catch2/internal/catch_message_info.hpp | 42 - .../Catch2/src/catch2/internal/catch_meta.hpp | 47 - .../internal/catch_move_and_forward.hpp | 19 - .../src/catch2/internal/catch_noncopyable.hpp | 28 - .../src/catch2/internal/catch_optional.hpp | 117 - .../catch2/internal/catch_output_redirect.cpp | 146 - .../catch2/internal/catch_output_redirect.hpp | 118 - .../catch2/internal/catch_parse_numbers.cpp | 52 - .../catch2/internal/catch_parse_numbers.hpp | 26 - .../src/catch2/internal/catch_platform.hpp | 37 - .../src/catch2/internal/catch_polyfills.cpp | 34 - .../src/catch2/internal/catch_polyfills.hpp | 16 - .../catch2/internal/catch_preprocessor.hpp | 237 - .../catch_preprocessor_internal_stringify.hpp | 19 - .../catch_preprocessor_remove_parens.hpp | 19 - .../catch_random_number_generator.cpp | 70 - .../catch_random_number_generator.hpp | 59 - .../internal/catch_random_seed_generation.cpp | 34 - .../internal/catch_random_seed_generation.hpp | 26 - .../internal/catch_reporter_registry.cpp | 91 - .../internal/catch_reporter_registry.hpp | 55 - .../internal/catch_reporter_spec_parser.cpp | 173 - .../internal/catch_reporter_spec_parser.hpp | 85 - .../src/catch2/internal/catch_result_type.cpp | 26 - .../src/catch2/internal/catch_result_type.hpp | 57 - .../internal/catch_reusable_string_stream.cpp | 62 - .../internal/catch_reusable_string_stream.hpp | 57 - .../src/catch2/internal/catch_run_context.cpp | 701 - .../src/catch2/internal/catch_run_context.hpp | 161 - .../src/catch2/internal/catch_section.cpp | 60 - .../src/catch2/internal/catch_section.hpp | 100 - .../src/catch2/internal/catch_sharding.hpp | 42 - .../src/catch2/internal/catch_singletons.cpp | 36 - .../src/catch2/internal/catch_singletons.hpp | 45 - .../internal/catch_source_line_info.cpp | 33 - .../internal/catch_source_line_info.hpp | 37 - .../catch_startup_exception_registry.cpp | 29 - .../catch_startup_exception_registry.hpp | 29 - .../src/catch2/internal/catch_stdstreams.cpp | 24 - .../src/catch2/internal/catch_stdstreams.hpp | 22 - .../catch2/internal/catch_stream_end_stop.hpp | 30 - .../catch2/internal/catch_string_manip.cpp | 103 - .../catch2/internal/catch_string_manip.hpp | 61 - .../src/catch2/internal/catch_stringref.cpp | 66 - .../src/catch2/internal/catch_stringref.hpp | 121 - .../internal/catch_tag_alias_registry.cpp | 55 - .../internal/catch_tag_alias_registry.hpp | 33 - .../internal/catch_template_test_registry.hpp | 337 - .../internal/catch_test_case_info_hasher.cpp | 39 - .../internal/catch_test_case_info_hasher.hpp | 29 - .../catch_test_case_registry_impl.cpp | 155 - .../catch_test_case_registry_impl.hpp | 59 - .../internal/catch_test_case_tracker.cpp | 239 - .../internal/catch_test_case_tracker.hpp | 244 - .../internal/catch_test_failure_exception.cpp | 31 - .../internal/catch_test_failure_exception.hpp | 34 - .../catch2/internal/catch_test_macro_impl.hpp | 157 - .../catch2/internal/catch_test_registry.cpp | 82 - .../catch2/internal/catch_test_registry.hpp | 173 - .../catch2/internal/catch_test_run_info.hpp | 22 - .../internal/catch_test_spec_parser.cpp | 239 - .../internal/catch_test_spec_parser.hpp | 81 - .../src/catch2/internal/catch_textflow.cpp | 255 - .../src/catch2/internal/catch_textflow.hpp | 169 - .../src/catch2/internal/catch_to_string.hpp | 29 - .../internal/catch_uncaught_exceptions.cpp | 26 - .../internal/catch_uncaught_exceptions.hpp | 15 - .../src/catch2/internal/catch_unique_name.hpp | 20 - .../src/catch2/internal/catch_unique_ptr.hpp | 118 - .../src/catch2/internal/catch_void_type.hpp | 25 - .../internal/catch_wildcard_pattern.cpp | 47 - .../internal/catch_wildcard_pattern.hpp | 38 - .../catch2/internal/catch_windows_h_proxy.hpp | 28 - .../src/catch2/internal/catch_xmlwriter.cpp | 348 - .../src/catch2/internal/catch_xmlwriter.hpp | 152 - .../src/catch2/matchers/catch_matchers.cpp | 25 - .../src/catch2/matchers/catch_matchers.hpp | 237 - .../catch2/matchers/catch_matchers_all.hpp | 36 - .../catch_matchers_container_properties.cpp | 34 - .../catch_matchers_container_properties.hpp | 90 - .../matchers/catch_matchers_contains.hpp | 102 - .../matchers/catch_matchers_exception.cpp | 26 - .../matchers/catch_matchers_exception.hpp | 61 - .../catch_matchers_floating_point.cpp | 241 - .../catch_matchers_floating_point.hpp | 94 - .../matchers/catch_matchers_predicate.cpp | 17 - .../matchers/catch_matchers_predicate.hpp | 59 - .../matchers/catch_matchers_quantifiers.cpp | 24 - .../matchers/catch_matchers_quantifiers.hpp | 165 - .../matchers/catch_matchers_range_equals.hpp | 144 - .../catch2/matchers/catch_matchers_string.cpp | 114 - .../catch2/matchers/catch_matchers_string.hpp | 85 - .../matchers/catch_matchers_templated.cpp | 41 - .../matchers/catch_matchers_templated.hpp | 296 - .../catch2/matchers/catch_matchers_vector.hpp | 194 - .../matchers/internal/catch_matchers_impl.cpp | 25 - .../matchers/internal/catch_matchers_impl.hpp | 88 - tests/extern/Catch2/src/catch2/meson.build | 376 - .../reporters/catch_reporter_automake.cpp | 37 - .../reporters/catch_reporter_automake.hpp | 38 - .../reporters/catch_reporter_common_base.cpp | 49 - .../reporters/catch_reporter_common_base.hpp | 79 - .../reporters/catch_reporter_compact.cpp | 254 - .../reporters/catch_reporter_compact.hpp | 39 - .../reporters/catch_reporter_console.cpp | 665 - .../reporters/catch_reporter_console.hpp | 67 - .../catch_reporter_cumulative_base.cpp | 159 - .../catch_reporter_cumulative_base.hpp | 151 - .../catch_reporter_event_listener.cpp | 40 - .../catch_reporter_event_listener.hpp | 60 - .../reporters/catch_reporter_helpers.cpp | 343 - .../reporters/catch_reporter_helpers.hpp | 95 - .../catch2/reporters/catch_reporter_json.cpp | 372 - .../catch2/reporters/catch_reporter_json.hpp | 95 - .../catch2/reporters/catch_reporter_junit.cpp | 309 - .../catch2/reporters/catch_reporter_junit.hpp | 58 - .../catch2/reporters/catch_reporter_multi.cpp | 197 - .../catch2/reporters/catch_reporter_multi.hpp | 72 - .../reporters/catch_reporter_registrars.cpp | 36 - .../reporters/catch_reporter_registrars.hpp | 131 - .../reporters/catch_reporter_sonarqube.cpp | 162 - .../reporters/catch_reporter_sonarqube.hpp | 61 - .../catch_reporter_streaming_base.cpp | 23 - .../catch_reporter_streaming_base.hpp | 73 - .../catch2/reporters/catch_reporter_tap.cpp | 228 - .../catch2/reporters/catch_reporter_tap.hpp | 43 - .../reporters/catch_reporter_teamcity.cpp | 177 - .../reporters/catch_reporter_teamcity.hpp | 66 - .../catch2/reporters/catch_reporter_xml.cpp | 333 - .../catch2/reporters/catch_reporter_xml.hpp | 66 - .../catch2/reporters/catch_reporters_all.hpp | 41 - tests/rb_constraints.cpp | 281 - 1196 files changed, 15776 insertions(+), 332625 deletions(-) create mode 100644 .buildinfo create mode 100644 .doctrees/architecture.doctree create mode 100644 .doctrees/attachments.doctree create mode 100644 .doctrees/contact.doctree create mode 100644 .doctrees/deformables.doctree create mode 100644 .doctrees/environment.pickle create mode 100644 .doctrees/extending.doctree create mode 100644 .doctrees/hello_world.doctree create mode 100644 .doctrees/index.doctree create mode 100644 .doctrees/io.doctree create mode 100644 .doctrees/presets.doctree create mode 100644 .doctrees/problem_representation.doctree create mode 100644 .doctrees/rb_constraints.doctree create mode 100644 .doctrees/rigidbodies.doctree create mode 100644 .doctrees/settings.doctree create mode 100644 .doctrees/setup.doctree create mode 100644 .doctrees/simulation_loop.doctree delete mode 100644 .gitignore create mode 100644 .nojekyll delete mode 100644 CMakeLists.txt create mode 100644 CNAME delete mode 100644 LICENSE delete mode 100644 README.md create mode 100644 _sources/architecture.md.txt create mode 100644 _sources/attachments.md.txt create mode 100644 _sources/contact.md.txt create mode 100644 _sources/deformables.md.txt create mode 100644 _sources/extending.md.txt create mode 100644 _sources/hello_world.md.txt create mode 100644 _sources/index.md.txt create mode 100644 _sources/io.md.txt create mode 100644 _sources/presets.md.txt create mode 100644 _sources/problem_representation.md.txt create mode 100644 _sources/rb_constraints.md.txt create mode 100644 _sources/rigidbodies.md.txt create mode 100644 _sources/settings.md.txt create mode 100644 _sources/setup.md.txt create mode 100644 _sources/simulation_loop.md.txt create mode 100644 _static/base-stemmer.js rename {stark/extern/fmt/doc/html/_static => _static}/basic.css (84%) create mode 100644 _static/blender.png create mode 100644 _static/debug.css create mode 100644 _static/doctools.js create mode 100644 _static/documentation_options.js create mode 100644 _static/english-stemmer.js rename {stark/extern/fmt/doc/html/_static => _static}/file.png (100%) create mode 100644 _static/language_data.js rename {stark/extern/fmt/doc/html/_static => _static}/minus.png (100%) create mode 100644 _static/paraview.png rename {stark/extern/fmt/doc/html/_static => _static}/plus.png (100%) create mode 100644 _static/pygments.css create mode 100644 _static/scripts/furo-extensions.js create mode 100644 _static/scripts/furo.js create mode 100644 _static/scripts/furo.js.LICENSE.txt create mode 100644 _static/scripts/furo.js.map create mode 100644 _static/searchtools.js create mode 100644 _static/skeleton.css create mode 100644 _static/sphinx_highlight.js rename {docs/images => _static}/spinning_box_cloth.gif (100%) rename {docs/images => _static}/stark1920.png (100%) create mode 100644 _static/stark1920w.png create mode 100644 _static/stark250.png create mode 100644 _static/stark250w.png create mode 100644 _static/styles/furo-extensions.css create mode 100644 _static/styles/furo-extensions.css.map create mode 100644 _static/styles/furo.css create mode 100644 _static/styles/furo.css.map create mode 100644 architecture.html create mode 100644 attachments.html create mode 100644 contact.html create mode 100644 deformables.html delete mode 100644 docs/images/boxes_on_cloth.gif delete mode 100644 docs/images/franka_plastic_cup.jpg delete mode 100644 docs/images/inflation.gif delete mode 100644 docs/images/robotic_hand.png delete mode 100644 docs/images/twisting_cloth.gif delete mode 100644 docs/images/viscoelasticity.gif delete mode 100644 examples/CMakeLists.txt delete mode 100644 examples/main.cpp delete mode 100644 examples/paths.h delete mode 100644 examples/rb_constraint_test_scenes.cpp delete mode 100644 examples/rb_constraint_test_scenes.h create mode 100644 extending.html create mode 100644 genindex.html create mode 100644 hello_world.html create mode 100644 index.html create mode 100644 io.html delete mode 100644 models/armadillo_tet.vtk delete mode 100644 models/armadillo_tri.vtk create mode 100644 objects.inv create mode 100644 presets.html create mode 100644 problem_representation.html delete mode 100644 pystark/cpp/CMakeLists.txt delete mode 100644 pystark/cpp/core/pystark_Console.cpp delete mode 100644 pystark/cpp/core/pystark_Logger.cpp delete mode 100644 pystark/cpp/core/pystark_Settings.cpp delete mode 100644 pystark/cpp/core/pystark_core.h delete mode 100644 pystark/cpp/models/deformables/line/pystark_EnergySegmentStrain.cpp delete mode 100644 pystark/cpp/models/deformables/point/pystark_EnergyLumpedInertia.cpp delete mode 100644 pystark/cpp/models/deformables/point/pystark_EnergyPrescribedPositions.cpp delete mode 100644 pystark/cpp/models/deformables/pystark_Deformables.cpp delete mode 100644 pystark/cpp/models/deformables/pystark_DeformablesMeshOutput.cpp delete mode 100644 pystark/cpp/models/deformables/pystark_PointDynamics.cpp delete mode 100644 pystark/cpp/models/deformables/pystark_PointSetHandler.cpp delete mode 100644 pystark/cpp/models/deformables/surface/pystark_EnergyDiscreteShells.cpp delete mode 100644 pystark/cpp/models/deformables/surface/pystark_EnergyTriangleStrain.cpp delete mode 100644 pystark/cpp/models/deformables/volume/pystark_EnergyTetStrain.cpp delete mode 100644 pystark/cpp/models/interactions/pystark_EnergyAttachments.cpp delete mode 100644 pystark/cpp/models/interactions/pystark_EnergyFrictionalContact.cpp delete mode 100644 pystark/cpp/models/interactions/pystark_Interactions.cpp delete mode 100644 pystark/cpp/models/presets/pystark_DeformablesPresets.cpp delete mode 100644 pystark/cpp/models/presets/pystark_Presets.cpp delete mode 100644 pystark/cpp/models/presets/pystark_RigidBodyPresets.cpp delete mode 100644 pystark/cpp/models/presets/pystark_deformables_preset_types.cpp delete mode 100644 pystark/cpp/models/pystark_Simulation.cpp delete mode 100644 pystark/cpp/models/pystark_models.h delete mode 100644 pystark/cpp/models/rigidbodies/pystark_RigidBodies.cpp delete mode 100644 pystark/cpp/models/rigidbodies/pystark_RigidBodiesMeshOutput.cpp delete mode 100644 pystark/cpp/models/rigidbodies/pystark_RigidBodyDynamics.cpp delete mode 100644 pystark/cpp/models/rigidbodies/pystark_RigidBodyHandler.cpp delete mode 100644 pystark/cpp/models/rigidbodies/pystark_rigidbody_constraints_ui.cpp delete mode 100644 pystark/cpp/nanobind_stark_include_all.h delete mode 100644 pystark/cpp/pystark_main.cpp delete mode 100644 pystark/cpp/utils/pystark_utils.cpp delete mode 100644 pystark/cpp/utils/pystark_utils.h delete mode 100644 pystark/examples/boxes_on_cloth.py delete mode 100644 pystark/examples/inflation.py delete mode 100644 pystark/examples/twisting_cloth.py delete mode 100644 pystark/examples/viscoelasticity.py delete mode 100644 pystark/pystark/__init__.py delete mode 100644 pystark/pystark/serialize.py create mode 100644 rb_constraints.html create mode 100644 rigidbodies.html create mode 100644 search.html create mode 100644 searchindex.js create mode 100644 settings.html create mode 100644 setup.html create mode 100644 simulation_loop.html delete mode 100644 stark/CMakeLists.txt delete mode 100644 stark/extern/Eigen/CMakeLists.txt delete mode 100644 stark/extern/Eigen/Eigen/Cholesky delete mode 100644 stark/extern/Eigen/Eigen/CholmodSupport delete mode 100644 stark/extern/Eigen/Eigen/Core delete mode 100644 stark/extern/Eigen/Eigen/Dense delete mode 100644 stark/extern/Eigen/Eigen/Eigen delete mode 100644 stark/extern/Eigen/Eigen/Eigenvalues delete mode 100644 stark/extern/Eigen/Eigen/Geometry delete mode 100644 stark/extern/Eigen/Eigen/Householder delete mode 100644 stark/extern/Eigen/Eigen/IterativeLinearSolvers delete mode 100644 stark/extern/Eigen/Eigen/Jacobi delete mode 100644 stark/extern/Eigen/Eigen/KLUSupport delete mode 100644 stark/extern/Eigen/Eigen/LU delete mode 100644 stark/extern/Eigen/Eigen/MetisSupport delete mode 100644 stark/extern/Eigen/Eigen/OrderingMethods delete mode 100644 stark/extern/Eigen/Eigen/PaStiXSupport delete mode 100644 stark/extern/Eigen/Eigen/PardisoSupport delete mode 100644 stark/extern/Eigen/Eigen/QR delete mode 100644 stark/extern/Eigen/Eigen/QtAlignedMalloc delete mode 100644 stark/extern/Eigen/Eigen/SPQRSupport delete mode 100644 stark/extern/Eigen/Eigen/SVD delete mode 100644 stark/extern/Eigen/Eigen/Sparse delete mode 100644 stark/extern/Eigen/Eigen/SparseCholesky delete mode 100644 stark/extern/Eigen/Eigen/SparseCore delete mode 100644 stark/extern/Eigen/Eigen/SparseLU delete mode 100644 stark/extern/Eigen/Eigen/SparseQR delete mode 100644 stark/extern/Eigen/Eigen/StdDeque delete mode 100644 stark/extern/Eigen/Eigen/StdList delete mode 100644 stark/extern/Eigen/Eigen/StdVector delete mode 100644 stark/extern/Eigen/Eigen/SuperLUSupport delete mode 100644 stark/extern/Eigen/Eigen/UmfPackSupport delete mode 100644 stark/extern/Eigen/Eigen/src/Cholesky/LDLT.h delete mode 100644 stark/extern/Eigen/Eigen/src/Cholesky/LLT.h delete mode 100644 stark/extern/Eigen/Eigen/src/Cholesky/LLT_LAPACKE.h delete mode 100644 stark/extern/Eigen/Eigen/src/CholmodSupport/CholmodSupport.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/ArithmeticSequence.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Array.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/ArrayBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/ArrayWrapper.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Assign.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/AssignEvaluator.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Assign_MKL.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/BandMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Block.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/BooleanRedux.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/CommaInitializer.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/ConditionEstimator.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/CoreEvaluators.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/CoreIterators.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/CwiseBinaryOp.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/CwiseNullaryOp.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/CwiseTernaryOp.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/CwiseUnaryOp.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/CwiseUnaryView.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/DenseBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/DenseCoeffsBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/DenseStorage.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Diagonal.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/DiagonalMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/DiagonalProduct.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Dot.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/EigenBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/ForceAlignedAccess.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Fuzzy.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/GeneralProduct.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/GenericPacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/GlobalFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/IO.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/IndexedView.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Inverse.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Map.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/MapBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/MathFunctionsImpl.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Matrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/MatrixBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/NestByValue.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/NoAlias.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/NumTraits.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/PartialReduxEvaluator.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/PermutationMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/PlainObjectBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Product.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/ProductEvaluators.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Random.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Redux.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Ref.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Replicate.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Reshaped.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/ReturnByValue.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Reverse.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Select.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/SelfAdjointView.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/SelfCwiseBinaryOp.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Solve.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/SolveTriangular.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/SolverBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/StableNorm.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/StlIterators.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Stride.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Swap.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Transpose.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Transpositions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/TriangularMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/VectorBlock.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/VectorwiseOp.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/Visitor.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AVX/Complex.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AVX/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AVX/PacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AVX/TypeCasting.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AVX512/Complex.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AVX512/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AVX512/PacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AVX512/TypeCasting.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AltiVec/Complex.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AltiVec/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AltiVec/MatrixProduct.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/AltiVec/PacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/CUDA/Complex.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/Default/BFloat16.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/Default/ConjHelper.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/Default/Half.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/Default/Settings.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/Default/TypeCasting.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/GPU/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/GPU/PacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/GPU/TypeCasting.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/HIP/hcc/math_constants.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/MSA/Complex.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/MSA/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/MSA/PacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/NEON/Complex.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/NEON/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/NEON/PacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/NEON/TypeCasting.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SSE/Complex.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SSE/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SSE/PacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SSE/TypeCasting.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SVE/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SVE/PacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SVE/TypeCasting.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SYCL/InteropHeaders.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SYCL/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SYCL/PacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/SYCL/TypeCasting.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/ZVector/Complex.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/ZVector/MathFunctions.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/arch/ZVector/PacketMath.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/functors/AssignmentFunctors.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/functors/BinaryFunctors.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/functors/NullaryFunctors.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/functors/StlFunctors.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/functors/TernaryFunctors.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/functors/UnaryFunctors.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/GeneralBlockPanelKernel.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/GeneralMatrixMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/GeneralMatrixVector.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/Parallelizer.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/SelfadjointMatrixMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/SelfadjointMatrixVector.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/SelfadjointProduct.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/SelfadjointRank2Update.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/TriangularMatrixMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/TriangularMatrixVector.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/TriangularSolverMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/products/TriangularSolverVector.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/BlasUtil.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/ConfigureVectorization.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/Constants.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/DisableStupidWarnings.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/ForwardDeclarations.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/IndexedViewHelper.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/IntegralConstant.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/MKL_support.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/Macros.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/Memory.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/Meta.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/NonMPL2.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/ReenableStupidWarnings.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/ReshapedHelper.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/StaticAssert.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/SymbolicIndex.h delete mode 100644 stark/extern/Eigen/Eigen/src/Core/util/XprHelper.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/ComplexEigenSolver.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/ComplexSchur.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/EigenSolver.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/HessenbergDecomposition.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/RealQZ.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/RealSchur.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h delete mode 100644 stark/extern/Eigen/Eigen/src/Eigenvalues/Tridiagonalization.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/AlignedBox.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/AngleAxis.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/EulerAngles.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/Homogeneous.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/Hyperplane.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/OrthoMethods.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/ParametrizedLine.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/Quaternion.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/Rotation2D.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/RotationBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/Scaling.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/Transform.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/Translation.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/Umeyama.h delete mode 100644 stark/extern/Eigen/Eigen/src/Geometry/arch/Geometry_SIMD.h delete mode 100644 stark/extern/Eigen/Eigen/src/Householder/BlockHouseholder.h delete mode 100644 stark/extern/Eigen/Eigen/src/Householder/Householder.h delete mode 100644 stark/extern/Eigen/Eigen/src/Householder/HouseholderSequence.h delete mode 100644 stark/extern/Eigen/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h delete mode 100644 stark/extern/Eigen/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h delete mode 100644 stark/extern/Eigen/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h delete mode 100644 stark/extern/Eigen/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h delete mode 100644 stark/extern/Eigen/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h delete mode 100644 stark/extern/Eigen/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h delete mode 100644 stark/extern/Eigen/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h delete mode 100644 stark/extern/Eigen/Eigen/src/Jacobi/Jacobi.h delete mode 100644 stark/extern/Eigen/Eigen/src/KLUSupport/KLUSupport.h delete mode 100644 stark/extern/Eigen/Eigen/src/LU/Determinant.h delete mode 100644 stark/extern/Eigen/Eigen/src/LU/FullPivLU.h delete mode 100644 stark/extern/Eigen/Eigen/src/LU/InverseImpl.h delete mode 100644 stark/extern/Eigen/Eigen/src/LU/PartialPivLU.h delete mode 100644 stark/extern/Eigen/Eigen/src/LU/PartialPivLU_LAPACKE.h delete mode 100644 stark/extern/Eigen/Eigen/src/LU/arch/InverseSize4.h delete mode 100644 stark/extern/Eigen/Eigen/src/MetisSupport/MetisSupport.h delete mode 100644 stark/extern/Eigen/Eigen/src/OrderingMethods/Amd.h delete mode 100644 stark/extern/Eigen/Eigen/src/OrderingMethods/Eigen_Colamd.h delete mode 100644 stark/extern/Eigen/Eigen/src/OrderingMethods/Ordering.h delete mode 100644 stark/extern/Eigen/Eigen/src/PaStiXSupport/PaStiXSupport.h delete mode 100644 stark/extern/Eigen/Eigen/src/PardisoSupport/PardisoSupport.h delete mode 100644 stark/extern/Eigen/Eigen/src/QR/ColPivHouseholderQR.h delete mode 100644 stark/extern/Eigen/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h delete mode 100644 stark/extern/Eigen/Eigen/src/QR/CompleteOrthogonalDecomposition.h delete mode 100644 stark/extern/Eigen/Eigen/src/QR/FullPivHouseholderQR.h delete mode 100644 stark/extern/Eigen/Eigen/src/QR/HouseholderQR.h delete mode 100644 stark/extern/Eigen/Eigen/src/QR/HouseholderQR_LAPACKE.h delete mode 100644 stark/extern/Eigen/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h delete mode 100644 stark/extern/Eigen/Eigen/src/SVD/BDCSVD.h delete mode 100644 stark/extern/Eigen/Eigen/src/SVD/JacobiSVD.h delete mode 100644 stark/extern/Eigen/Eigen/src/SVD/JacobiSVD_LAPACKE.h delete mode 100644 stark/extern/Eigen/Eigen/src/SVD/SVDBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/SVD/UpperBidiagonalization.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCholesky/SimplicialCholesky.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/AmbiVector.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/CompressedStorage.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/MappedSparseMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseAssign.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseBlock.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseColEtree.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseCompressedBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseCwiseBinaryOp.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseCwiseUnaryOp.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseDenseProduct.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseDiagonalProduct.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseDot.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseFuzzy.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseMap.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseMatrixBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparsePermutation.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseProduct.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseRedux.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseRef.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseSelfAdjointView.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseSolverBase.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseSparseProductWithPruning.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseTranspose.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseTriangularView.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseUtil.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseVector.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/SparseView.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseCore/TriangularSolver.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLUImpl.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_Memory.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_Structs.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_Utils.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_column_bmod.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_column_dfs.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_gemm_kernel.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_kernel_bmod.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_panel_bmod.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_panel_dfs.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_pivotL.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_pruneL.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseLU/SparseLU_relax_snode.h delete mode 100644 stark/extern/Eigen/Eigen/src/SparseQR/SparseQR.h delete mode 100644 stark/extern/Eigen/Eigen/src/StlSupport/StdDeque.h delete mode 100644 stark/extern/Eigen/Eigen/src/StlSupport/StdList.h delete mode 100644 stark/extern/Eigen/Eigen/src/StlSupport/StdVector.h delete mode 100644 stark/extern/Eigen/Eigen/src/StlSupport/details.h delete mode 100644 stark/extern/Eigen/Eigen/src/SuperLUSupport/SuperLUSupport.h delete mode 100644 stark/extern/Eigen/Eigen/src/UmfPackSupport/UmfPackSupport.h delete mode 100644 stark/extern/Eigen/Eigen/src/misc/Image.h delete mode 100644 stark/extern/Eigen/Eigen/src/misc/Kernel.h delete mode 100644 stark/extern/Eigen/Eigen/src/misc/RealSvd2x2.h delete mode 100644 stark/extern/Eigen/Eigen/src/misc/blas.h delete mode 100644 stark/extern/Eigen/Eigen/src/misc/lapack.h delete mode 100644 stark/extern/Eigen/Eigen/src/misc/lapacke.h delete mode 100644 stark/extern/Eigen/Eigen/src/misc/lapacke_mangling.h delete mode 100644 stark/extern/Eigen/Eigen/src/plugins/ArrayCwiseBinaryOps.h delete mode 100644 stark/extern/Eigen/Eigen/src/plugins/ArrayCwiseUnaryOps.h delete mode 100644 stark/extern/Eigen/Eigen/src/plugins/BlockMethods.h delete mode 100644 stark/extern/Eigen/Eigen/src/plugins/CommonCwiseBinaryOps.h delete mode 100644 stark/extern/Eigen/Eigen/src/plugins/CommonCwiseUnaryOps.h delete mode 100644 stark/extern/Eigen/Eigen/src/plugins/IndexedViewMethods.h delete mode 100644 stark/extern/Eigen/Eigen/src/plugins/MatrixCwiseBinaryOps.h delete mode 100644 stark/extern/Eigen/Eigen/src/plugins/MatrixCwiseUnaryOps.h delete mode 100644 stark/extern/Eigen/Eigen/src/plugins/ReshapedMethods.h delete mode 100644 stark/extern/Eigen/eigen.natvis delete mode 100644 stark/extern/Eigen/signature_of_eigen3_matrix_library delete mode 100644 stark/extern/TriangleMeshCollisionDetection/CMakeLists.txt delete mode 100644 stark/extern/TriangleMeshCollisionDetection/LICENSE.txt delete mode 100644 stark/extern/TriangleMeshCollisionDetection/include/TriangleMeshCollisionDetection delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/AABBs.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/AABBs.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/BroadPhaseBase.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/BroadPhaseBase.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/BroadPhaseET.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/BroadPhaseET.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/BroadPhasePTEE.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/BroadPhasePTEE.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/BroadPhasePTEEBase.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/BroadPhasePTEEBase.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/BroadPhasePTEECCD.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/BroadPhasePTEECCD.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/IntersectionDetection.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/IntersectionDetection.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/IntersectionResults.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/Meshes.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/Meshes.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/Octree.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/Octree.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/ProximityDetection.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/ProximityDetection.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/ProximityResults.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/RecursiveBuffer.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/Vec3.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/alignment_allocator.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/helpers.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/info_structs.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/ipc_toolkit_geometry_functions.cpp delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/ipc_toolkit_geometry_functions.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/shuffle_lut.h delete mode 100644 stark/extern/TriangleMeshCollisionDetection/src/types.h delete mode 100644 stark/extern/TriangleMeshDistance/LICENSE delete mode 100644 stark/extern/TriangleMeshDistance/include/tmd/TriangleMeshDistance.h delete mode 100644 stark/extern/fmt/.clang-format delete mode 100644 stark/extern/fmt/CMakeLists.txt delete mode 100644 stark/extern/fmt/CONTRIBUTING.md delete mode 100644 stark/extern/fmt/ChangeLog.rst delete mode 100644 stark/extern/fmt/LICENSE.rst delete mode 100644 stark/extern/fmt/README.rst delete mode 100644 stark/extern/fmt/doc/CMakeLists.txt delete mode 100644 stark/extern/fmt/doc/_static/bootstrap.min.js delete mode 100644 stark/extern/fmt/doc/_static/fonts/glyphicons-halflings-regular.eot delete mode 100644 stark/extern/fmt/doc/_static/fonts/glyphicons-halflings-regular.svg delete mode 100644 stark/extern/fmt/doc/_static/fonts/glyphicons-halflings-regular.ttf delete mode 100644 stark/extern/fmt/doc/_static/fonts/glyphicons-halflings-regular.woff delete mode 100644 stark/extern/fmt/doc/_templates/layout.html delete mode 100644 stark/extern/fmt/doc/_templates/search.html delete mode 100644 stark/extern/fmt/doc/api.rst delete mode 100644 stark/extern/fmt/doc/basic-bootstrap/README delete mode 100644 stark/extern/fmt/doc/basic-bootstrap/layout.html delete mode 100644 stark/extern/fmt/doc/basic-bootstrap/theme.conf delete mode 100644 stark/extern/fmt/doc/bootstrap/alerts.less delete mode 100644 stark/extern/fmt/doc/bootstrap/badges.less delete mode 100644 stark/extern/fmt/doc/bootstrap/bootstrap.less delete mode 100644 stark/extern/fmt/doc/bootstrap/breadcrumbs.less delete mode 100644 stark/extern/fmt/doc/bootstrap/button-groups.less delete mode 100644 stark/extern/fmt/doc/bootstrap/buttons.less delete mode 100644 stark/extern/fmt/doc/bootstrap/carousel.less delete mode 100644 stark/extern/fmt/doc/bootstrap/close.less delete mode 100644 stark/extern/fmt/doc/bootstrap/code.less delete mode 100644 stark/extern/fmt/doc/bootstrap/component-animations.less delete mode 100644 stark/extern/fmt/doc/bootstrap/dropdowns.less delete mode 100644 stark/extern/fmt/doc/bootstrap/forms.less delete mode 100644 stark/extern/fmt/doc/bootstrap/glyphicons.less delete mode 100644 stark/extern/fmt/doc/bootstrap/grid.less delete mode 100644 stark/extern/fmt/doc/bootstrap/input-groups.less delete mode 100644 stark/extern/fmt/doc/bootstrap/jumbotron.less delete mode 100644 stark/extern/fmt/doc/bootstrap/labels.less delete mode 100644 stark/extern/fmt/doc/bootstrap/list-group.less delete mode 100644 stark/extern/fmt/doc/bootstrap/media.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/alerts.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/background-variant.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/border-radius.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/buttons.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/center-block.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/clearfix.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/forms.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/gradients.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/grid-framework.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/grid.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/hide-text.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/image.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/labels.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/list-group.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/nav-divider.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/nav-vertical-align.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/opacity.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/pagination.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/panels.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/progress-bar.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/reset-filter.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/resize.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/responsive-visibility.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/size.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/tab-focus.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/table-row.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/text-emphasis.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/text-overflow.less delete mode 100644 stark/extern/fmt/doc/bootstrap/mixins/vendor-prefixes.less delete mode 100644 stark/extern/fmt/doc/bootstrap/modals.less delete mode 100644 stark/extern/fmt/doc/bootstrap/navbar.less delete mode 100644 stark/extern/fmt/doc/bootstrap/navs.less delete mode 100644 stark/extern/fmt/doc/bootstrap/normalize.less delete mode 100644 stark/extern/fmt/doc/bootstrap/pager.less delete mode 100644 stark/extern/fmt/doc/bootstrap/pagination.less delete mode 100644 stark/extern/fmt/doc/bootstrap/panels.less delete mode 100644 stark/extern/fmt/doc/bootstrap/popovers.less delete mode 100644 stark/extern/fmt/doc/bootstrap/print.less delete mode 100644 stark/extern/fmt/doc/bootstrap/progress-bars.less delete mode 100644 stark/extern/fmt/doc/bootstrap/responsive-embed.less delete mode 100644 stark/extern/fmt/doc/bootstrap/responsive-utilities.less delete mode 100644 stark/extern/fmt/doc/bootstrap/scaffolding.less delete mode 100644 stark/extern/fmt/doc/bootstrap/tables.less delete mode 100644 stark/extern/fmt/doc/bootstrap/theme.less delete mode 100644 stark/extern/fmt/doc/bootstrap/thumbnails.less delete mode 100644 stark/extern/fmt/doc/bootstrap/tooltip.less delete mode 100644 stark/extern/fmt/doc/bootstrap/type.less delete mode 100644 stark/extern/fmt/doc/bootstrap/utilities.less delete mode 100644 stark/extern/fmt/doc/bootstrap/variables.less delete mode 100644 stark/extern/fmt/doc/bootstrap/wells.less delete mode 100644 stark/extern/fmt/doc/build.py delete mode 100644 stark/extern/fmt/doc/conf.py delete mode 100644 stark/extern/fmt/doc/contents.rst delete mode 100644 stark/extern/fmt/doc/fmt.less delete mode 100644 stark/extern/fmt/doc/html/_sources/api.rst.txt delete mode 100644 stark/extern/fmt/doc/html/_sources/contents.rst.txt delete mode 100644 stark/extern/fmt/doc/html/_sources/index.rst.txt delete mode 100644 stark/extern/fmt/doc/html/_sources/syntax.rst.txt delete mode 100644 stark/extern/fmt/doc/html/_sources/usage.rst.txt delete mode 100644 stark/extern/fmt/doc/html/_static/bootstrap.min.js delete mode 100644 stark/extern/fmt/doc/html/_static/doctools.js delete mode 100644 stark/extern/fmt/doc/html/_static/documentation_options.js delete mode 100644 stark/extern/fmt/doc/html/_static/fmt.css delete mode 100644 stark/extern/fmt/doc/html/_static/fonts/glyphicons-halflings-regular.eot delete mode 100644 stark/extern/fmt/doc/html/_static/fonts/glyphicons-halflings-regular.svg delete mode 100644 stark/extern/fmt/doc/html/_static/fonts/glyphicons-halflings-regular.ttf delete mode 100644 stark/extern/fmt/doc/html/_static/fonts/glyphicons-halflings-regular.woff delete mode 100644 stark/extern/fmt/doc/html/_static/jquery-3.5.1.js delete mode 100644 stark/extern/fmt/doc/html/_static/jquery.js delete mode 100644 stark/extern/fmt/doc/html/_static/language_data.js delete mode 100644 stark/extern/fmt/doc/html/_static/pygments.css delete mode 100644 stark/extern/fmt/doc/html/_static/searchtools.js delete mode 100644 stark/extern/fmt/doc/html/_static/underscore-1.3.1.js delete mode 100644 stark/extern/fmt/doc/html/_static/underscore.js delete mode 100644 stark/extern/fmt/doc/html/api.html delete mode 100644 stark/extern/fmt/doc/html/contents.html delete mode 100644 stark/extern/fmt/doc/html/genindex.html delete mode 100644 stark/extern/fmt/doc/html/index.html delete mode 100644 stark/extern/fmt/doc/html/objects.inv delete mode 100644 stark/extern/fmt/doc/html/search.html delete mode 100644 stark/extern/fmt/doc/html/searchindex.js delete mode 100644 stark/extern/fmt/doc/html/syntax.html delete mode 100644 stark/extern/fmt/doc/html/usage.html delete mode 100644 stark/extern/fmt/doc/index.rst delete mode 100644 stark/extern/fmt/doc/python-license.txt delete mode 100644 stark/extern/fmt/doc/syntax.rst delete mode 100644 stark/extern/fmt/doc/usage.rst delete mode 100644 stark/extern/fmt/include/fmt/args.h delete mode 100644 stark/extern/fmt/include/fmt/chrono.h delete mode 100644 stark/extern/fmt/include/fmt/color.h delete mode 100644 stark/extern/fmt/include/fmt/compile.h delete mode 100644 stark/extern/fmt/include/fmt/core.h delete mode 100644 stark/extern/fmt/include/fmt/format-inl.h delete mode 100644 stark/extern/fmt/include/fmt/format.h delete mode 100644 stark/extern/fmt/include/fmt/os.h delete mode 100644 stark/extern/fmt/include/fmt/ostream.h delete mode 100644 stark/extern/fmt/include/fmt/printf.h delete mode 100644 stark/extern/fmt/include/fmt/ranges.h delete mode 100644 stark/extern/fmt/include/fmt/std.h delete mode 100644 stark/extern/fmt/include/fmt/xchar.h delete mode 100644 stark/extern/fmt/src/fmt.cc delete mode 100644 stark/extern/fmt/src/format.cc delete mode 100644 stark/extern/fmt/src/os.cc delete mode 100644 stark/extern/fmt/support/Android.mk delete mode 100644 stark/extern/fmt/support/AndroidManifest.xml delete mode 100644 stark/extern/fmt/support/C++.sublime-syntax delete mode 100644 stark/extern/fmt/support/README delete mode 100644 stark/extern/fmt/support/Vagrantfile delete mode 100644 stark/extern/fmt/support/bazel/.bazelversion delete mode 100644 stark/extern/fmt/support/bazel/BUILD.bazel delete mode 100644 stark/extern/fmt/support/bazel/README.md delete mode 100644 stark/extern/fmt/support/bazel/WORKSPACE.bazel delete mode 100644 stark/extern/fmt/support/build-docs.py delete mode 100644 stark/extern/fmt/support/build.gradle delete mode 100644 stark/extern/fmt/support/cmake/FindSetEnv.cmake delete mode 100644 stark/extern/fmt/support/cmake/JoinPaths.cmake delete mode 100644 stark/extern/fmt/support/cmake/fmt-config.cmake.in delete mode 100644 stark/extern/fmt/support/cmake/fmt.pc.in delete mode 100644 stark/extern/fmt/support/compute-powers.py delete mode 100644 stark/extern/fmt/support/docopt.py delete mode 100644 stark/extern/fmt/support/manage.py delete mode 100644 stark/extern/fmt/support/printable.py delete mode 100644 stark/extern/fmt/support/rst2md.py delete mode 100644 stark/extern/fmt/support/rtd/conf.py delete mode 100644 stark/extern/fmt/support/rtd/index.rst delete mode 100644 stark/extern/fmt/support/rtd/theme/layout.html delete mode 100644 stark/extern/fmt/support/rtd/theme/theme.conf delete mode 100644 stark/extern/fmt/test/CMakeLists.txt delete mode 100644 stark/extern/fmt/test/add-subdirectory-test/CMakeLists.txt delete mode 100644 stark/extern/fmt/test/add-subdirectory-test/main.cc delete mode 100644 stark/extern/fmt/test/args-test.cc delete mode 100644 stark/extern/fmt/test/assert-test.cc delete mode 100644 stark/extern/fmt/test/chrono-test.cc delete mode 100644 stark/extern/fmt/test/color-test.cc delete mode 100644 stark/extern/fmt/test/compile-error-test/CMakeLists.txt delete mode 100644 stark/extern/fmt/test/compile-fp-test.cc delete mode 100644 stark/extern/fmt/test/compile-test.cc delete mode 100644 stark/extern/fmt/test/core-test.cc delete mode 100644 stark/extern/fmt/test/cuda-test/CMakeLists.txt delete mode 100644 stark/extern/fmt/test/cuda-test/cpp14.cc delete mode 100644 stark/extern/fmt/test/cuda-test/cuda-cpp14.cu delete mode 100644 stark/extern/fmt/test/detect-stdfs.cc delete mode 100644 stark/extern/fmt/test/enforce-checks-test.cc delete mode 100644 stark/extern/fmt/test/find-package-test/CMakeLists.txt delete mode 100644 stark/extern/fmt/test/find-package-test/main.cc delete mode 100644 stark/extern/fmt/test/format-impl-test.cc delete mode 100644 stark/extern/fmt/test/format-test.cc delete mode 100644 stark/extern/fmt/test/fuzzing/CMakeLists.txt delete mode 100644 stark/extern/fmt/test/fuzzing/README.md delete mode 100644 stark/extern/fmt/test/fuzzing/build.sh delete mode 100644 stark/extern/fmt/test/fuzzing/chrono-duration.cc delete mode 100644 stark/extern/fmt/test/fuzzing/chrono-timepoint.cc delete mode 100644 stark/extern/fmt/test/fuzzing/float.cc delete mode 100644 stark/extern/fmt/test/fuzzing/fuzzer-common.h delete mode 100644 stark/extern/fmt/test/fuzzing/main.cc delete mode 100644 stark/extern/fmt/test/fuzzing/named-arg.cc delete mode 100644 stark/extern/fmt/test/fuzzing/one-arg.cc delete mode 100644 stark/extern/fmt/test/fuzzing/two-args.cc delete mode 100644 stark/extern/fmt/test/gtest-extra-test.cc delete mode 100644 stark/extern/fmt/test/gtest-extra.cc delete mode 100644 stark/extern/fmt/test/gtest-extra.h delete mode 100644 stark/extern/fmt/test/gtest/.clang-format delete mode 100644 stark/extern/fmt/test/gtest/CMakeLists.txt delete mode 100644 stark/extern/fmt/test/gtest/gmock-gtest-all.cc delete mode 100644 stark/extern/fmt/test/gtest/gmock/gmock.h delete mode 100644 stark/extern/fmt/test/gtest/gtest/gtest-spi.h delete mode 100644 stark/extern/fmt/test/gtest/gtest/gtest.h delete mode 100644 stark/extern/fmt/test/header-only-test.cc delete mode 100644 stark/extern/fmt/test/mock-allocator.h delete mode 100644 stark/extern/fmt/test/module-test.cc delete mode 100644 stark/extern/fmt/test/noexception-test.cc delete mode 100644 stark/extern/fmt/test/os-test.cc delete mode 100644 stark/extern/fmt/test/ostream-test.cc delete mode 100644 stark/extern/fmt/test/posix-mock-test.cc delete mode 100644 stark/extern/fmt/test/posix-mock.h delete mode 100644 stark/extern/fmt/test/printf-test.cc delete mode 100644 stark/extern/fmt/test/ranges-odr-test.cc delete mode 100644 stark/extern/fmt/test/ranges-test.cc delete mode 100644 stark/extern/fmt/test/scan-test.cc delete mode 100644 stark/extern/fmt/test/scan.h delete mode 100644 stark/extern/fmt/test/static-export-test/CMakeLists.txt delete mode 100644 stark/extern/fmt/test/static-export-test/library.cc delete mode 100644 stark/extern/fmt/test/static-export-test/main.cc delete mode 100644 stark/extern/fmt/test/std-test.cc delete mode 100644 stark/extern/fmt/test/test-assert.h delete mode 100644 stark/extern/fmt/test/test-main.cc delete mode 100644 stark/extern/fmt/test/unicode-test.cc delete mode 100644 stark/extern/fmt/test/util.cc delete mode 100644 stark/extern/fmt/test/util.h delete mode 100644 stark/extern/fmt/test/xchar-test.cc delete mode 100644 stark/extern/par_shapes/include/par_shapes/par_shapes.h delete mode 100644 stark/extern/symx/CMakeLists.txt delete mode 100644 stark/extern/symx/LICENSE delete mode 100644 stark/extern/symx/extern/BlockedSparseMatrix/LICENSE delete mode 100644 stark/extern/symx/extern/BlockedSparseMatrix/include/BlockedSparseMatrix/AlignmentAllocator.h delete mode 100644 stark/extern/symx/extern/BlockedSparseMatrix/include/BlockedSparseMatrix/BlockedSparseMatrix.h delete mode 100644 stark/extern/symx/extern/BlockedSparseMatrix/include/BlockedSparseMatrix/ConjugateGradientMethod.h delete mode 100644 stark/extern/symx/extern/BlockedSparseMatrix/include/BlockedSparseMatrix/LICENSE delete mode 100644 stark/extern/symx/extern/BlockedSparseMatrix/include/BlockedSparseMatrix/ParallelNumber.h delete mode 100644 stark/extern/symx/extern/BlockedSparseMatrix/include/BlockedSparseMatrix/ParallelVector.h delete mode 100644 stark/extern/symx/extern/BlockedSparseMatrix/include/BlockedSparseMatrix/types.h delete mode 100644 stark/extern/symx/extern/picoSHA2/include/picoSHA2/picosha2.h delete mode 100644 stark/extern/symx/include/symx delete mode 100644 stark/extern/symx/src/AlignmentAllocator.h delete mode 100644 stark/extern/symx/src/Assembly.cpp delete mode 100644 stark/extern/symx/src/Assembly.h delete mode 100644 stark/extern/symx/src/Compilation.cpp delete mode 100644 stark/extern/symx/src/Compilation.h delete mode 100644 stark/extern/symx/src/Compiled.cpp delete mode 100644 stark/extern/symx/src/Compiled.h delete mode 100644 stark/extern/symx/src/CompiledInLoop.h delete mode 100644 stark/extern/symx/src/Element.cpp delete mode 100644 stark/extern/symx/src/Element.h delete mode 100644 stark/extern/symx/src/Energy.cpp delete mode 100644 stark/extern/symx/src/Energy.h delete mode 100644 stark/extern/symx/src/EvalSequence.cpp delete mode 100644 stark/extern/symx/src/EvalSequence.h delete mode 100644 stark/extern/symx/src/Expr.h delete mode 100644 stark/extern/symx/src/Expressions.cpp delete mode 100644 stark/extern/symx/src/Expressions.h delete mode 100644 stark/extern/symx/src/FixedBranchSequence.cpp delete mode 100644 stark/extern/symx/src/FixedBranchSequence.h delete mode 100644 stark/extern/symx/src/GlobalEnergy.cpp delete mode 100644 stark/extern/symx/src/GlobalEnergy.h delete mode 100644 stark/extern/symx/src/LabelledConnectivity.h delete mode 100644 stark/extern/symx/src/Matrix.cpp delete mode 100644 stark/extern/symx/src/Matrix.h delete mode 100644 stark/extern/symx/src/Scalar.cpp delete mode 100644 stark/extern/symx/src/Scalar.h delete mode 100644 stark/extern/symx/src/Sequence.cpp delete mode 100644 stark/extern/symx/src/Sequence.h delete mode 100644 stark/extern/symx/src/SymbolicWorkSpace.cpp delete mode 100644 stark/extern/symx/src/SymbolicWorkSpace.h delete mode 100644 stark/extern/symx/src/Vector.cpp delete mode 100644 stark/extern/symx/src/Vector.h delete mode 100644 stark/extern/symx/src/diff.cpp delete mode 100644 stark/extern/symx/src/diff.h delete mode 100644 stark/extern/symx/src/hashing.h delete mode 100644 stark/extern/symx/src/lambdas.h delete mode 100644 stark/extern/symx/src/project_to_PD.h delete mode 100644 stark/extern/symx/src/simd_utils.h delete mode 100644 stark/extern/symx/src/utils.cpp delete mode 100644 stark/extern/symx/src/utils.h delete mode 100644 stark/extern/tinyobjloader/include/tinyobjloader.h delete mode 100644 stark/extern/vtkio/LICENSE delete mode 100644 stark/extern/vtkio/include/vtkio delete mode 100644 stark/extern/vtkio/src/ByteBuffer.h delete mode 100644 stark/extern/vtkio/src/VTKFile.h delete mode 100644 stark/extern/vtkio/src/dynamic_types.h delete mode 100644 stark/extern/vtkio/src/endianness.h delete mode 100644 stark/extern/vtkio/src/stream_io.h delete mode 100644 stark/extern/vtkio/src/tables.h delete mode 100644 stark/include/stark delete mode 100644 stark/src/core/Callbacks.h delete mode 100644 stark/src/core/Console.cpp delete mode 100644 stark/src/core/Console.h delete mode 100644 stark/src/core/EventDrivenScript.cpp delete mode 100644 stark/src/core/EventDrivenScript.h delete mode 100644 stark/src/core/Logger.cpp delete mode 100644 stark/src/core/Logger.h delete mode 100644 stark/src/core/NewtonsMethod.cpp delete mode 100644 stark/src/core/NewtonsMethod.h delete mode 100644 stark/src/core/Settings.cpp delete mode 100644 stark/src/core/Settings.h delete mode 100644 stark/src/core/Stark.cpp delete mode 100644 stark/src/core/Stark.h delete mode 100644 stark/src/core/include_ui.h delete mode 100644 stark/src/models/IntervalVector.h delete mode 100644 stark/src/models/MeshOutputGroups.cpp delete mode 100644 stark/src/models/MeshOutputGroups.h delete mode 100644 stark/src/models/Simulation.cpp delete mode 100644 stark/src/models/Simulation.h delete mode 100644 stark/src/models/deformables/Deformables.cpp delete mode 100644 stark/src/models/deformables/Deformables.h delete mode 100644 stark/src/models/deformables/DeformablesMeshOutput.cpp delete mode 100644 stark/src/models/deformables/DeformablesMeshOutput.h delete mode 100644 stark/src/models/deformables/PointDynamics.cpp delete mode 100644 stark/src/models/deformables/PointDynamics.h delete mode 100644 stark/src/models/deformables/PointSetHandler.cpp delete mode 100644 stark/src/models/deformables/PointSetHandler.h delete mode 100644 stark/src/models/deformables/deformable_tools.cpp delete mode 100644 stark/src/models/deformables/deformable_tools.h delete mode 100644 stark/src/models/deformables/deformables_energies_include.h delete mode 100644 stark/src/models/deformables/line/EnergySegmentStrain.cpp delete mode 100644 stark/src/models/deformables/line/EnergySegmentStrain.h delete mode 100644 stark/src/models/deformables/point/EnergyLumpedInertia.cpp delete mode 100644 stark/src/models/deformables/point/EnergyLumpedInertia.h delete mode 100644 stark/src/models/deformables/point/EnergyPrescribedPositions.cpp delete mode 100644 stark/src/models/deformables/point/EnergyPrescribedPositions.h delete mode 100644 stark/src/models/deformables/surface/EnergyDiscreteShells.cpp delete mode 100644 stark/src/models/deformables/surface/EnergyDiscreteShells.h delete mode 100644 stark/src/models/deformables/surface/EnergyTriangleStrain.cpp delete mode 100644 stark/src/models/deformables/surface/EnergyTriangleStrain.h delete mode 100644 stark/src/models/deformables/volume/EnergyTetStrain.cpp delete mode 100644 stark/src/models/deformables/volume/EnergyTetStrain.h delete mode 100644 stark/src/models/distances.cpp delete mode 100644 stark/src/models/distances.h delete mode 100644 stark/src/models/include.h delete mode 100644 stark/src/models/interactions/EnergyAttachments.cpp delete mode 100644 stark/src/models/interactions/EnergyAttachments.h delete mode 100644 stark/src/models/interactions/EnergyFrictionalContact.cpp delete mode 100644 stark/src/models/interactions/EnergyFrictionalContact.h delete mode 100644 stark/src/models/interactions/EnergyFrictionalContact_NEW_DRAFT.cpp delete mode 100644 stark/src/models/interactions/EnergyFrictionalContact_NEW_DRAFT.h delete mode 100644 stark/src/models/interactions/Interactions.cpp delete mode 100644 stark/src/models/interactions/Interactions.h delete mode 100644 stark/src/models/interactions/contact_and_friction_data.h delete mode 100644 stark/src/models/interactions/friction_geometry.cpp delete mode 100644 stark/src/models/interactions/friction_geometry.h delete mode 100644 stark/src/models/presets/DeformablesPresets.cpp delete mode 100644 stark/src/models/presets/DeformablesPresets.h delete mode 100644 stark/src/models/presets/Presets.cpp delete mode 100644 stark/src/models/presets/Presets.h delete mode 100644 stark/src/models/presets/RigidBodyPresets.cpp delete mode 100644 stark/src/models/presets/RigidBodyPresets.h delete mode 100644 stark/src/models/presets/deformables_preset_types.cpp delete mode 100644 stark/src/models/presets/deformables_preset_types.h delete mode 100644 stark/src/models/rigidbodies/EnergyRigidBodyConstraints.cpp delete mode 100644 stark/src/models/rigidbodies/EnergyRigidBodyConstraints.h delete mode 100644 stark/src/models/rigidbodies/EnergyRigidBodyInertia.cpp delete mode 100644 stark/src/models/rigidbodies/EnergyRigidBodyInertia.h delete mode 100644 stark/src/models/rigidbodies/RigidBodies.cpp delete mode 100644 stark/src/models/rigidbodies/RigidBodies.h delete mode 100644 stark/src/models/rigidbodies/RigidBodiesMeshOutput.cpp delete mode 100644 stark/src/models/rigidbodies/RigidBodiesMeshOutput.h delete mode 100644 stark/src/models/rigidbodies/RigidBodyConstraints.h delete mode 100644 stark/src/models/rigidbodies/RigidBodyDynamics.cpp delete mode 100644 stark/src/models/rigidbodies/RigidBodyDynamics.h delete mode 100644 stark/src/models/rigidbodies/RigidBodyHandler.cpp delete mode 100644 stark/src/models/rigidbodies/RigidBodyHandler.h delete mode 100644 stark/src/models/rigidbodies/inertia_tensors.cpp delete mode 100644 stark/src/models/rigidbodies/inertia_tensors.h delete mode 100644 stark/src/models/rigidbodies/rigid_body_constraint_utils.h delete mode 100644 stark/src/models/rigidbodies/rigidbody_constraints_ui.h delete mode 100644 stark/src/models/rigidbodies/rigidbody_transformations.cpp delete mode 100644 stark/src/models/rigidbodies/rigidbody_transformations.h delete mode 100644 stark/src/models/time_integration.cpp delete mode 100644 stark/src/models/time_integration.h delete mode 100644 stark/src/models/types.h delete mode 100644 stark/src/utils/Mesh.h delete mode 100644 stark/src/utils/blends.cpp delete mode 100644 stark/src/utils/blends.h delete mode 100644 stark/src/utils/include.h delete mode 100644 stark/src/utils/mesh_generators.cpp delete mode 100644 stark/src/utils/mesh_generators.h delete mode 100644 stark/src/utils/mesh_utils.cpp delete mode 100644 stark/src/utils/mesh_utils.h delete mode 100644 stark/src/utils/unordered_array_set_and_map.h delete mode 100644 tests/CMakeLists.txt delete mode 100644 tests/extern/Catch2/CMake/Catch2Config.cmake.in delete mode 100644 tests/extern/Catch2/CMake/CatchConfigOptions.cmake delete mode 100644 tests/extern/Catch2/CMake/CatchMiscFunctions.cmake delete mode 100644 tests/extern/Catch2/CMake/FindGcov.cmake delete mode 100644 tests/extern/Catch2/CMake/FindLcov.cmake delete mode 100644 tests/extern/Catch2/CMake/Findcodecov.cmake delete mode 100644 tests/extern/Catch2/CMake/catch2-with-main.pc.in delete mode 100644 tests/extern/Catch2/CMake/catch2.pc.in delete mode 100644 tests/extern/Catch2/CMake/llvm-cov-wrapper delete mode 100644 tests/extern/Catch2/CMakeLists.txt delete mode 100644 tests/extern/Catch2/LICENSE.txt delete mode 100644 tests/extern/Catch2/src/CMakeLists.txt delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_benchmark.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_benchmark_all.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_chronometer.cpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_chronometer.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_clock.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_constructor.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_environment.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_estimate.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_execution_plan.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_optimizer.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_outlier_classification.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/catch_sample_analysis.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_analyse.cpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_analyse.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_benchmark_function.cpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_benchmark_function.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_benchmark_stats.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_benchmark_stats_fwd.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_complete_invoke.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_estimate_clock.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_measure.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_repeat.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_run_for_at_least.cpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_run_for_at_least.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_stats.cpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_stats.hpp delete mode 100644 tests/extern/Catch2/src/catch2/benchmark/detail/catch_timing.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_all.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_approx.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_approx.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_assertion_info.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_assertion_result.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_assertion_result.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_config.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_config.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_get_random_seed.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_get_random_seed.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_message.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_message.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_registry_hub.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_section_info.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_session.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_session.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_tag_alias.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_tag_alias_autoregistrar.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_tag_alias_autoregistrar.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_template_test_macros.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_test_case_info.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_test_case_info.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_test_macros.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_test_spec.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_test_spec.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_timer.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_timer.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_tostring.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_tostring.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_totals.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_totals.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_translate_exception.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_translate_exception.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_user_config.hpp.in delete mode 100644 tests/extern/Catch2/src/catch2/catch_version.cpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_version.hpp delete mode 100644 tests/extern/Catch2/src/catch2/catch_version_macros.hpp delete mode 100644 tests/extern/Catch2/src/catch2/generators/catch_generator_exception.cpp delete mode 100644 tests/extern/Catch2/src/catch2/generators/catch_generator_exception.hpp delete mode 100644 tests/extern/Catch2/src/catch2/generators/catch_generators.cpp delete mode 100644 tests/extern/Catch2/src/catch2/generators/catch_generators.hpp delete mode 100644 tests/extern/Catch2/src/catch2/generators/catch_generators_adapters.hpp delete mode 100644 tests/extern/Catch2/src/catch2/generators/catch_generators_all.hpp delete mode 100644 tests/extern/Catch2/src/catch2/generators/catch_generators_random.cpp delete mode 100644 tests/extern/Catch2/src/catch2/generators/catch_generators_random.hpp delete mode 100644 tests/extern/Catch2/src/catch2/generators/catch_generators_range.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_all.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_capture.cpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_capture.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_config.cpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_config.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_enum_values_registry.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_exception.cpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_exception.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_generatortracker.cpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_generatortracker.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_registry_hub.cpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_registry_hub.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_reporter.cpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_reporter.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_reporter_factory.cpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_reporter_factory.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_tag_alias_registry.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_test_invoker.hpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_testcase.cpp delete mode 100644 tests/extern/Catch2/src/catch2/interfaces/catch_interfaces_testcase.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_assertion_handler.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_assertion_handler.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_case_insensitive_comparisons.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_case_insensitive_comparisons.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_case_sensitive.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_clara.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_clara.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_commandline.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_commandline.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_compare_traits.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_compiler_capabilities.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_config_android_logwrite.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_config_counter.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_config_prefix_messages.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_config_static_analysis_support.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_config_uncaught_exceptions.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_config_wchar.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_console_colour.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_console_colour.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_console_width.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_container_nonmembers.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_context.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_context.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_debug_console.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_debug_console.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_debugger.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_debugger.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_decomposer.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_decomposer.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_enforce.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_enforce.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_enum_values_registry.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_enum_values_registry.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_errno_guard.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_errno_guard.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_exception_translator_registry.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_exception_translator_registry.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_fatal_condition_handler.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_fatal_condition_handler.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_floating_point_helpers.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_floating_point_helpers.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_getenv.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_getenv.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_is_permutation.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_istream.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_istream.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_jsonwriter.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_jsonwriter.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_lazy_expr.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_lazy_expr.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_leak_detector.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_leak_detector.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_list.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_list.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_logical_traits.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_main.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_message_info.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_message_info.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_meta.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_move_and_forward.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_noncopyable.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_optional.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_output_redirect.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_output_redirect.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_parse_numbers.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_parse_numbers.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_platform.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_polyfills.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_polyfills.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_preprocessor.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_preprocessor_internal_stringify.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_preprocessor_remove_parens.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_random_number_generator.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_random_number_generator.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_random_seed_generation.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_random_seed_generation.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_reporter_registry.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_reporter_registry.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_reporter_spec_parser.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_reporter_spec_parser.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_result_type.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_result_type.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_reusable_string_stream.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_reusable_string_stream.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_run_context.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_run_context.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_section.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_section.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_sharding.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_singletons.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_singletons.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_source_line_info.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_source_line_info.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_startup_exception_registry.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_startup_exception_registry.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_stdstreams.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_stdstreams.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_stream_end_stop.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_string_manip.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_string_manip.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_stringref.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_stringref.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_tag_alias_registry.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_tag_alias_registry.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_template_test_registry.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_case_info_hasher.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_case_info_hasher.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_case_registry_impl.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_case_registry_impl.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_case_tracker.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_case_tracker.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_failure_exception.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_failure_exception.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_macro_impl.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_registry.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_registry.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_run_info.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_spec_parser.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_test_spec_parser.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_textflow.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_textflow.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_to_string.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_uncaught_exceptions.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_uncaught_exceptions.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_unique_name.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_unique_ptr.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_void_type.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_wildcard_pattern.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_wildcard_pattern.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_windows_h_proxy.hpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_xmlwriter.cpp delete mode 100644 tests/extern/Catch2/src/catch2/internal/catch_xmlwriter.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers.cpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_all.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_container_properties.cpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_container_properties.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_contains.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_exception.cpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_exception.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_floating_point.cpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_floating_point.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_predicate.cpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_predicate.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_quantifiers.cpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_quantifiers.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_range_equals.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_string.cpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_string.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_templated.cpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_templated.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/catch_matchers_vector.hpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/internal/catch_matchers_impl.cpp delete mode 100644 tests/extern/Catch2/src/catch2/matchers/internal/catch_matchers_impl.hpp delete mode 100644 tests/extern/Catch2/src/catch2/meson.build delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_automake.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_automake.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_common_base.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_common_base.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_compact.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_compact.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_console.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_console.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_cumulative_base.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_cumulative_base.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_event_listener.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_event_listener.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_helpers.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_helpers.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_json.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_json.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_junit.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_junit.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_multi.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_multi.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_registrars.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_registrars.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_sonarqube.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_sonarqube.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_streaming_base.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_streaming_base.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_tap.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_tap.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_teamcity.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_teamcity.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_xml.cpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporter_xml.hpp delete mode 100644 tests/extern/Catch2/src/catch2/reporters/catch_reporters_all.hpp delete mode 100644 tests/rb_constraints.cpp diff --git a/.buildinfo b/.buildinfo new file mode 100644 index 00000000..1bdf811b --- /dev/null +++ b/.buildinfo @@ -0,0 +1,4 @@ +# Sphinx build info version 1 +# This file records the configuration used when building these files. When it is not found, a full rebuild will be done. +config: 88bccbfbe1b3afd8f9abe163f279420b +tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/.doctrees/architecture.doctree b/.doctrees/architecture.doctree new file mode 100644 index 0000000000000000000000000000000000000000..592fcc8274ee6dfb06066058c1900cdabdb4ea84 GIT binary patch literal 32186 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 b$p)>D3|Y{dp!g+|OaMfFzeSkq*DC)FKO_ZN literal 0 HcmV?d00001 diff --git a/.doctrees/attachments.doctree b/.doctrees/attachments.doctree new file mode 100644 index 0000000000000000000000000000000000000000..b508a7fa9c4bbfe1e3ba9e11da51a09ebae99ba5 GIT binary patch literal 11461 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 M3_jKCdDdF|H`$ibcC>V|h5cb9ZOR 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 literal 0 HcmV?d00001 diff --git a/.doctrees/deformables.doctree b/.doctrees/deformables.doctree new file mode 100644 index 0000000000000000000000000000000000000000..1b433f71038cd555b425a28658821ff36fc95214 GIT binary patch literal 20623 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 K?X^MLYW_dvcqQ=w literal 0 HcmV?d00001 diff --git a/.doctrees/environment.pickle b/.doctrees/environment.pickle new file mode 100644 index 0000000000000000000000000000000000000000..9ebb9a7b6503d4d945418352cd1ea8811c5d3ece GIT binary patch literal 78081 zcmd6Q37i~9b+@j)?_Fsn`M_fj2H7wxW6K;42J7;{N^4mw+h8Ncy)(Vr(>pUgp6-@* zWy_cVMp8P##AC2A4iE@uAUI%fI07LMh&f_zg98CV?(-w(7fAU2?^SnK_w=rIYqnSU z_V?TAI{Nji{@1HluU=JG-Q9No`Za6U(4RMK*NjqiZcMKpDb=lNMXx#yZ*Z4eDi`-g zlJ09<^s2`3#x`$5UaQp_6JAfgXce5gt`|%7hPTmwitCihWBHoq80FGb!|TjXI`spH zHSPoH+U*T*gJD(lhSxQ%*Q;8!s2@WTZnYa;o9$@zSw!(%icV1xh`_0oK``dCvl~w1 zV8iRk+w}smHoCSM-A0emYxEiY#(>vuTW-Cei@VwjR&}~G)A0KI@&)ns-6A7=t!{nJ z(W`dJs@jdiC~Hq;-gfXJbz8^lg&@s2V->uPsm(RKP2!n&q*E_VjaBq|MJp8>y4P9O zsxz)OgZEsgR~ueW*(zvdJ&)qj!@Uj>w;P%_AWECps|BlAs-mP_t}~r`e$J*+_f`R~ zofmw7c}J~onR)>g)HZo&=fUxY*RHvaVWEVXmsqx**;#e0YRSr69iW>FLk(}pr_L9w z+I+nDr)l->f%s- zy5gYVTTlsZUC#%=w+-MV9*73iUbG;OsG@U0Q^`*Q<*McA`MQp_2YJ&WR~j11Nw1d) zg(MMb{k8cS(gTn@XC7ttdS^vCcM5`U9aVjYV|6b29<2cc55}R<1i7=8Rqi)DS2nU z#t4l9N3LZD%|l*9`;4d#yl8JltJcu??Yvtr-w7F6R%%PX68nusnxm3lE zUY$Wqb;ZX>vlUhRa8+Ip?wtsMhjr)=k;UP{yR zluxk&#I)|%R8=n2aUS5JlftuXREcxD3#sOY5{c$DABOd}@4-uMjAr@m*Ji-F0<|O5 z{yI~GqBv&ccTb4xp_@seb6*6NhkDuOtw#l;Ut;~B0~#UZd5E{6*(Do_p^O3>R=G$N zXkL2FouXG_jd{&go!s%R@wz!3ZJ*TO28uwGWm-Pccm_DRRK$Circ2Z#b-2~pDk&td zhx6*TnLo(K`aqhNu1<03ycgFGFve!dZ{g0(UCOoC6%BFTq_=Cpq5fb#|D z)i6nvGSGuzavwhsipiJI^?unX#jT+>!y9b$Cg?8?d4eIDWgg87Z3b{{Qa@25W0nn2-(OB6%R$q4=L()p1d-1$(bg89d=+`w^9^L%#pqi%Ly4COoWLl`rh9hZ_s`JT94mGxJ?zS_+!Vx(_ z#ZGu#Ob#7{$8Ut zmBD~26geaOAfY*_hDrr)uc9zDGMiA1v($t)@|`j%&u{9j`|L-dY&p-al}nCa%_sdd zGEMTLQxBiPVj|M$;Yc49^lTkcQr_?Xy$xdy_4J~Y^oEels;z7FfO(EwVG1@Ob%D6`9KVo|7V2HN@2FaVePO)ce+%v#V4Fa3g2jZuVn?1D zC*shgbOUT}A-mr549BV2S8U&2C|1WzyQr5-N9to$-PvBPRkr*0UbSO8kjzyoeXA zV1RHEDzhWPa1b^JT7rEoO0}Cz)`oWpih3!(pvby2D3gCH$M5uI0hXiIui^1_GPfmlu-3Ac+PgY&t*&gEW`Ak(1tV5QmLu<;B44gm+e$D%(7Ua7g8T zV{?$rswFVgX{@sK>Kpg%%S`Otzc=&3z591wx9_T*d-fdMJ309xXc0*z#!#>kwF+c* z-_D6^ZrphdNcQc!s$3eg>NB{#hb+puysw?x(KEZOvqds%Q?ynQ!?+cq#meV!!#i6f zQhOJn3T$+!o3dM};+40GM8~R?^&@(jY%cCtbwqO1&HNW>#FC;^O`N_7B*!ff>i+=1mZ7CsFF zu>9oSi9^>-?A@2&xAP!e173fao2Ow2nZH|QQeD5@C1c#sH8!aL)KD~6jEP_nM^c?q zMMpbnj6W@!deo}Vl2JC^7ERTv1$6kNHn+&f`iT)h*1h6sG}mtaMDLc9)GjN3U7+@ELYqvoTDvX5n5q>76HU zD?sO>ceKfs;gpV`wRYAzLoEZwWFAbqi)^IAEn3qGvim znF|Kl9$v@ASLW`z;90jpvN*S@9|ag5;|OfUPW)!lss6-3j=FbpNG5^ZM4!ZvTjRN>h--2 zSUVW~O$Q+jm&s4j>lo1R#XNh9$Zf$^9BLk8AlNG#(DKWTH#EHS z3aH4_kIpt1YBgarB?rSpoY(wv8!2_6*E^pwmf|-^H=(n4XHa@;7REnDu`-S2fqaKZ z-ezh?G-0MM`B-#~;l1ckN~q--ejyDnmuCgeriC1(QZ;XdPp4FqY56IwFbgM=ZGipx zwRt$us(H3-tGA=~paE8qy$HSw=A`#@|E8s0d(6LY`DMGnr|^vmYNBZ6Fmd%dENJ1% z0CZ@EW!=!rHFUn!A}mpK%jkw=a#24*o&z5Fx9QcK3!&N~vwf;y4C<|Y4s@=}_Qw;0 zGG%tk_g+MJ)b$ER+J5?Gd9QG?1WFWLr_8FLTJS0r=_eSKnM?=UlzSm>V7qJAw@;O- z+l>-=ksDrw1vw_j^Wfh*6y6(Tz+EUG3^2*3LCui-puiC=g@=}805XhmbDm9XPA5$o z7|SpmZbv@}(AgEo&NA4fewuG`v{fmev(mad{WDjySI*+{YGzjkrobwJ%2DGsyjsPsMQrWQ( zT0c!WaF;S6`G7?KKyDmS41OEx$VAVB-m39>)H>hqYh%;p^wP(iX!wg8y=Qa(D#t>HOxst|AYZ0v@A@5cq-emJikZTNWnJk(mT)PVq6-#jD5|Q8~h>Dg=Qs<9+pm6ws z!W{suEG9fKJm+LT9=h3$pZNvwWtR=fDQgbBm9xMl(J^tvHSTzedByO+lJJ^6|Zi-uk+B6pAd!MR$cJKwWeA5NNz9OpKr) zn}fS-vL?y>?T^anZGDy{_+o?Prubx5|?j(UVo0YjE5gnAO%gvJu%2fQ9kY0QT4TU-~y zSj1XY4tbjzQChaPwe?=AsDH@JYecg9ekimNoj~*qs~S!!qE{!wepQ;}jZ^(`sevoC-sQ@UEhv z2c*xMFm?c+X=8@3vZSSxoM0NWd@UOlzE(s2*7(}sAvNRnAb2cfcSm^VonhMXun2b< zuM9};4ijG$-uTO5=+$BFYmC;1+X=^D&-upb;0lq6;@#E7?HZ09ub?9eG`T*#^ZR0TSz61od`AH~gn!wILeA>PFD zO~wO!ebB$Y*?1s$iH9x{;p?Nu zNBR0O<1xBQ|1o<8Xof*#7{4cE_~XVW`2J6d=-Z9ogC3 z&!6Pj9~ocZ>lckb=Ii4p`0^!j`Lgj9j{dfYepS%?iHJQRE?+ag&i8!7*umFtisyez zT)r)C`i{6fDK6hNzQ?ydW&9~$zb}%1VEh?Je<(qjp_|PO6mFv*@f5S2!W}Zf>-GJF zRd^6!NOZz5;uLh^kbwb_8+FZXGp_Wy$aI+17^f7x+32jh<|FBg{(6 z?4i>1;)m1w5MZ4Z@FsDFyQqj^4d2io5)L4Ag3|^OGKcWPv0((ny(5&qF-YG;vC$y5 znPOXlSSQ7(eEfv7DRxc}JC|Zl^JDNPvQrq4@JbLE-b`{H-INJP&ZpP~K`cwLX9Tfl zQfylgyNF^J2eD@%Fus-__-qP3je|J~wsCL_LGjMp5i&2q52s&>z(pLo4582o$SFIJ zBJj983_Ulv-|He@otRC7%NLa!ER|{((}}QnjqTd_+Mwc|7e3?pLC71iVQ#{QfB`T( zA^xnLXyNQrE0MRaS%`c-P}kedPp-pavGcC4>f`{`Gm)v)j5VFX{DfGT)VIH67huq9 zRk&Ymtilqq^a2#byaGS`y1zuR7Y4B_5fFgAh|*siq+f-A0A*)*$1b{KH~sj{XAgz< zMiQ<@IBad#P{y^9-0PybFQJU_NbWug?~f!*Q26FZ!b=ejw2JvM%D5$xdn<)s9!WS% z;a5Zw@(73Yw;>{4Pzys-(Hjbggzr+MdxF>2qmk(-%}kWWh}`CFk{%M@ALMu6URRid z?$a#s<9>kpM#MzKoTVQ>p-kaQB%zA%gr6IANx_8#sVHJK6$U>nsJTY)5Gz7s)}oQy z5jh#$R*&RFonSVmWrS-L)~P5LmQIB}GIp4vFAVbrWF9*Y!io56;oS)e<()0>3fxNY zv(b_ZSnA;$M!ag_U1F8c;owQ8jdGg~{rI4{6h0D3IErxan%*G1ckE}1m{jEC;Y8F3 zR#XLktMCr5lNCH#tWa)qcp&#n=6n$H27I4XNQ8!re$hM@++p56r<(w>S&eueJxBDcN);jl&gI%V7!$!$>h{z$?b z5e}dHCPYFT%X|Q_@JSC6&70}RFXKZ9hi&OC(a6JyjDIn>?>C6%t@Ps)zKz1~h$Ord z;qXbn6^*H$(5^RPNfj+cw0TiV z;CD8z@;cG3+35_ADBMu+_gZlBveOCvB6#qMQ&`*x7ZgkZ%o}0pTo2}^w1OdKXT2_R zePgbhRt@#nr^t@QBnVc6($wrI%8f@=FkwJzDe+oj-XDvRvBVFy6TFo)ZG)%w(jpj4 zM(~PQFdwsmK<_;iA^T7jAzO(}OwSdjMaXl*UHvC}jLcVR7eIU%nLPjoGn00fQ z)gQq!%-$bn_lCfQnKy)){gKxXvu_HsI~j#AE;3UL*bDa3eN6k=%W6k;r03Ne0j6k@pUpb*1x7lrt>UqvB) z!`D!V-{*A{;uknYAu6Z&tN4KuFfJoW9Q50?KS?oGXpFD-wlpUiSlCZuO`2kJb7skJ zN5~7l7YLt*PbS8@!mlKPWYKJJf3R92$dL1#RE&`(PBc7ijIRqmK){y~v?kg1XCE8m z8xs7XWQd@-ShiE70e8(}B`qeA@|dot zmEKTtC%oPo)`625!?TYb*3^lGUq}vKn-&CZhqj|TBP#|lVOO6nL};H8&|;~h2Ax>I zf{?M2?o9Iopq#dou|-cJy4aKYOV!vKJmX@o9|U4PYK~Mi0Y&R6FvAm19ST-i*m`-I zC*N>ux1r&)0A622D^f;zQj!*L)L8|K>69W~eTt$BeAoAGXy+Drs^e`h7BOm-r#gOmlZa8v zJk{}dMZ~Cep6WR3xQI~;J=JmkNfDz~da7gQ0TH8?da9%NWf7y+daC0Y*^e+kYO$v} zUU`LxQL8=G@tIphj9Tugjy_YwsP&%e*!-x7Q42oR@s=k=j9M}HjXX-vbm>D2TC9S( z9qt)>FlSm8Yg^C@Q6EZQVPO52Lp=;H=|*3Lto78O?-N}N6&hV`(?>kfzb%K69@=2DP^2aUtcoOcW?EO#QAWKK$ z-kiTN!k!vHbN&b9+qqslYa!XwxoC9Ag+)?XQF zxJugQzrfAga0nI>HK5*|QPc3X4f;CJYv&b1PQ(0f+-py1UUy{46bae-64paug0>_0 zMhoFKVd)~&iO&Rri0gGY8oo8b#}Vew@HBTy*bP5NSd`WL1%jBfTC-uz8We9mE?&=0 zX&9nKQ=!aGWSATAg94ddxRMn2;0mHXaTySoA-=fg2(AHBHc?K`bolBznis5Qt(@8I z+r&}c89c5f-fR?|o_Eil$k-st^x3U4W&7*&Ob7M`!;6e?Ek_wYzg5O;?wy`-&$ToF z$=u8XkSNnVtuiJ3VV<7pi14!R@fW{}!BUj@fmWH5c3OgY|8-<@WVUCn=MMm4GX3&a z`I6RKf-i=&V*D0;QKMCcY@weXm|z7Yn3aHd`{1`b21pQM>#&wDn}k+ot|SGIKp8OW%tfj z+3_&$^y~&EL!U-wANe$*j6c*OW7q4(a=e+Q&Xqeo(MeHnBL=sm`^Dgv6tWoHl7kAnhqF?_y-gB9KD_P%SK`4e)?O^QIOTwuHGlf3^U~9wJ;Tr%?5SVN{ ze1*VNG9JDZ(td$y%|F0pAsDuqf3!%B`Q^njzP4BfW7W4C3&^c1+2^N^1hY{&>x6@V{+ry1Cw$nBm;)~JkG|b;F%=qoi zu2ccf09Y=wT9(;vyq>Id3nt~Dcliu`8IoJ2QzzzSt{7 z$I8=a-||9~IpwxClC24zIa*lk^Gr0j7bt@zfqpL2o*88|0$#pGj5eXzWJeUx!#<$g zhGKUqHX`$UJZXFnTs0RUAezH12&LQ{db5$KhGcuVdHEa@?ctCzt!xiBFm0N8aj}Yw zOgzL|#yuzjwG2^_(Ysoz$XjC-`Re6Evs}H_n~jz+(cbP}KF35w9#^LQU#Q4lHk-tT z8gU)>JJFhq-_}x9&c>?px0esja;vg08+(^TUA}kuEE9G4E@j&Pg}Mxr_q+#2l61{2GP%KQ5Axg{#^Pn2n!D^FjR0VhEHOlYNw4p)U%@=e{s z-DWPP%4yGsE3TO24celT)6*VR<VBD}{E5-23a#Y(Ssr1jyf5(${P>Fvh!?d?TDH^|ofEi*WoB6~u&~U~LWZS$2YZxj zR!YTArftC-ZyBr2aysG1ci$%?F$1ocI&R*kh_Niq=42bwR)FR!T1B(fA!7dl3+6_~ zu`(QpVff4GV>pnl5x<;c=b#HcRK8KA21ha(A^JmKF zNM!$1nYI~O6}v^+Jfa^^p_P1ZQB0UC=yut)k;7`@ z`O|f~U0}UT_gG?R)vipt>Tq`-pq&DAOa{gM8P851;hro_g!#M@&F3OzY-IC!hB9q4 zt}0DHHXmV>s?bWlFH&yu{*ZxJ;hec4!%{1HUa?X^q4!y8m}TyCD(nGeq@D~m5K8zTW!f{SB%T&v8!VX2?9!d1*iQvQO=lxSb;fto z2lu=X+yL3!l;95uC;ka^zr6x<-BQ|`&ho%ka%UD`PdxD)t z{n+g1+@=hlRC0%z_6&C4n*$pk8`E0u zjDcN0l550Yl|H6hLR;TwoC_EyMER~2;CY8KtrX=sQ5TDK*sY85e%{eM?<1P=-&6@|P1dfMSfa5L7v{GPi7ImPO&W6#E2AZmezP*|sw2Ho$akR1o>a;-ZHi1eE7wC!C?ZHnH}!S-oFT_tq%e=DOT5&kb_+Gd1RhBk6oBrF>h zTFG|_6SCDFdD!=^@E5b9LyUC|7pGsjBhsmY&t`p|iTZse7`HmWdAc&~s^i?gz~&V% zNgvyetT-Pe+0$O5jEQV7dz5LL@l=s{*uJ zohy|PdYPqM3G>ReD<$Iy)1Ek~ zRNSIlR{h;dWrtp5DfRZ($|y;x_zR{zgX*pQ0H4JeYhj%|E3~f@D0v-Oap+=Fp|yco zt7g|aWm+lAzYs{Lt@>LMZSDzuXC zkCj`QuZwv1xihDWmfXqimX!(!z0guR>1O2`meO&EX&2Q=>078nhiKb%nj5AmV@x;1 zy(~vl2h1DJ@)_SW6-=}K%rep2J1fBO_S0jy&3qhFir9TqY&)CS=*Zu7llRDcJs!23 z@7~2GD=Zux{DB^}xI5g~HWA-Z{vMpm*@kIvY!64l_~!HX;8;^^F~QsC28W_=GasS? zJWM}t#gFcF;)q^s15Ep4V;kFoR^x>d-oQ0tRc(eoVRv*oiISE!V-Mzbqg2FVEQI>} zhldHB;t*2Yjgv&X#b$5*;jP`+B~`wMN6~KRNFVoLg z>E{Xh`8xf4lYYL9pE%O}!Nybjv4bz1zA8|E7filfEE zsB>rW2z}Ow4YCy^=&$5!UB19;sdVbnAP{O&g;p8_RVt9uhJli==;B)AdqYcnp=Wp} z+B0W}oNia!p57H&{PZqM*&v-@qECn9&MkI<}dX0N-?IJVS2PruGLXOBp}tjQK@OP4DHF5A+jOuJ}X zT6_f7YIo4FOC0+Z8$aBXK75^7|9r9JoXX@1@H(JOD;vgsfpyx0hECeX;wBuA7K8Li z`jB?<20U~STM|=S85b#oHD%gnOjQ(yR5n8PRcIyOC5)w(l}$hVzStZ!=wf13`nL3| zbbvmcBYul^)DJ6Hj;z=>Gwm5vE(4Qda>C9SI0CR~>zvZ7h!vw;*GD;HRDP`JbgjIBm)K6mSONCbQU8n3kA-2LHHZ%Q9a9Vf3V>+kTmfVcZ2D?scKWm+lA9~5XW zW~a71kQ$ad?q~cthFDMVo%G=yiR`?;_`W*dR0d0m=GO#Ri?!hNy*0x(S@^OXo03mj z(+;2L8s857-_l2MD0_r?;*5}KhqqHsdK-Sa0u292nN|wx-wXT~6V_G@!_AX!eOfC3 z=G|q>F>pjNe}x){deguPt;2-g^suR!V4N!u-yDC1nnZgToLe;y2b5`79qr+L*d`&f z?Vwcz(7S0(Y8>dx(+7GWi`@$KT-_?dVGo8$j4xHjNos}d%CxJGvD}&gr#iB5$F%Q_ z>0^uyMZ!H9V2lf%2~+W)GFB4j>y>GnaaJ++q^T&hz6!16yF~Zes>T|YyX-I6yS{QY z>Q`>Czj*I@r*a+1`khy%ZN^!pj%57`gHwf8@_mDHZ{`mL_#FAg42eajP+K;~mUAZk zBP$gedZ(pE1|L+eWGNu;XWBD3GHAmhdnbM{$yZYc$!o{nro<+pEWfk@tiGsBD~0;= z0_U{NtWMs2qIqwte@q|HF0t(daY|tNcgna(`TJ{S+Gb2ul#EnRLhe;)CExcbm)TcP z2ho@pZECBapdvjQ&B5_@Ax)nsWd>Jhg3~)KrJ&9QlUA+mvzT^K)Y2axZoJkyN;|3s zaAl5K_1T!EcV+6B;iw(MI!a%31zdB?HPO_rSOJpHQ>K+7zeChQ+Ujcy_ExE2msR1z z$yitm#GBW~-A0Gg$9pR#iHWnnR5BOgoWT4RW!$8CyIGlb*_gL%w`@94FIBL9@d$sB z6$o5R!jGqq_$bCQKHI3ACwr4)%8*I8k238UR2IF#u`6`8VhqBE(uc4w8=Sbp+!BKN zzzUGNUzt`4>aPpb(^d|HKDK*G^#$hUKaoDZLjk_UkYfVl$CPoB()p+|?W$wk#)mb= z1ox@*fo&H@GA7&llgfxlG{2=xyXt86iK8#kq3xV2#rv?IrH^XAf6yiE5Kin8vihIO z2uXDRO__Gp(e1>3hRIVc&mKzKfW@2=_Ap%JNXso?*QzPINtt%lF&zjn&FrJjIWDum zls>eBA+))&V3?5F=PRQmrS@`V+EqumYvJze*7ULM2DU*@nLzcW%E(AmZ&apTbyRzH z^1;F^w6Wgnj`VTu&5A>WSzwb|c1{@`iL9$kyXwgH?ZGx@dNDHzbG_*dqKDGQwm(~B zb~#(HOUUg5$_Pnx?^mW>b#w=4qE4%4ZqmyZwvdaj`%ydf!U9uxs2iC2chQHuSK7)>n^;ehXVjX8T zec(1=8R=XSr_2g)I#-!i3guZ$yQrJJ)p_IYo#EC!F+g{x4`@$TZWENm^(tj-q>{N( znReB29TkJ=qa~~!TFlxjq>u4te^gC;@iF}jz9U-1@ViYJGl}5h-6F^K0I2X_gnH3;>t}^YaOL5zN3)@P?l)~=xac$35m`y?_ zT&0YN)CpHA(>9~2GDMccYcb+ep_P2a@LGjd@)hf8RA?pN&B~KP{=%n;GrRDqH(dDC zyfW^UE0s!mlcknB-Ki{6QXJ=*wgpE(%RZGs25Xm9ocF)kiZ$c6qz;%jl;u^=Q{d=- zyOkWvKDYu1-`FaIt$F~?KNOzfn%M@0pOc$K(OJ=ME&ega$J2*26FJ(I7LrFwKqp0G z%j|^C{MZT*{)jTI)FF?E+DUt{NVo4%Z*K74OCRi>tnW-;a53z6l(CVG|C`FRtB&j0 zd*>XzPT!v6+~9&PHZ??Ff4kfCne>095A-=W>_#xp3Ff@HVZb~g(f^^0o<#m%m1$QU z`AxemtBxINv5X!2rY?9$^jRBMI6O%7X5J{A-2q$dm>RN8puHKqTOA{8RHki4Tg85n zwvXr;RA?pN`&dF!_a2W<;>cZ`Lx7El7d2Y;q+iXOvpA$v@Xc{=OkbrgsLysP*OhEl zFH)vmb-WikY_OOFiKTuCEp{;n$;gOyzI=589IY~ zwqoY*8&@hC^cG8v7w%K8Rw)wqGHnavg;tH-9?ZNR!I|(n&S8i__2JZ^@_K12w~$$) z3;NIsaQlEVtrY3^3Cz7?Tn&ZD19S+T)Xjg+@d=tJ)w+@l*X?p)2=$I1J}Dw z&2?xXM!js@`S&mBV>{>{GfU$x!7w4W|E!FXMED<+X;&TLk=Pz@3!pr*X@zELLW$Bg z58=jgr$KrUoLe*3u= zY^-}M7%`LK_VjV?72A^d%o4~}mC=#XI;%{(>c|dXi`k`;R?XnJ4Re8yq~4G|z$00l zltVn>XAF5JaQ-!AtR&9AqD;H$IQRL>cCoE6%+Z((KaxJg{lTJLpIrjo4=N)h(S5%% zZ8N$m<3Krv6uMr8R`OjXgL`=IoL+G049JB$)Th#~+7Y-keV(W3Q=e3>BU!)SQl@Rj zIbKKi|LrAf_zwp%_F>CKTn5Bth%dfy%8C{v()dG8Pb&-XtIF1`?<~0f%sLC&;4HwT zO4MfP8(pE1ORun$r=S~5TD508nDz`BTfGPM+g*H-R7sqRdvWSmd3`voCBiMCGM~8u zfsw>yfz-JdOwpk&yTq zWjtkF6qRXLy)OE%=hK=o5s3|&n?6)Ml|JYLS{PB_fomp;;4CDJwKoC`T8Fn_l)ZW8l%D$}ky=6$>OYqK~Pg(WTSnS4Bb zp!>6h3fN(<8!~wpSd{n$WrQTUpHrr7MpwmRl-6bk^Hrghd^aeU*|#3?=MNTZ!4~TQ{eT88+~uW)*NH-w1O}Xs}VRZq-PlQr zPLgA^V<^8MeUt~Xr8vI?zRy+0NJ{Eu%CxJF@5XCOGe)kgW5rnp;-%xLm8SOpvh-2L zW^^If9C5{AE8v>I`X*((B-WG4w9Cf2<=K@B#O%tC?|#t6fypp}ia1r>#^){>T`L$E zYUy#+JD)!E=Z6z6I5wF|fV0-A1UV`JMqVgEq8g4ULn*7lX4*5ToR{)gzbSo8m*=r= ztN_I~DAP(|{xwkpX*&oOopbqE`T#F6=kgI{bfkPfqDY$ZiaN;8OCP^c+U2`GE7+dy+~{+_yH%@u zt1_(=(NU&N-Rj;%CsuCv*McmJ_KQ~qZ92NrUlAhNCJd4nDkCN(_XWzd&1kDAZK?1@ zi&3GKe3wx8Ei0mP4!Bcgd>9-q)eaV|ICZNW8)}u(ukCZQHRhfRxd-c3n0unqrMIYeVAjH;?lp5)i14`gqahfqGV1a7Zc0dB8SrjVQC@Q;*fn-Ny&B4zg~G`tF}+t zCF974x(iIm^n-h=W^0c!Z8PF3wIyp>xcgOTCEtHho@OAv?v(2dI94HFbt`%F=ym#z z?RaCGc_U^v#=Fb|bm=s2rc1B6pDsP-4Rl#=-XtzBrOP_=R=SMvk+LA5qnB_C9dI&! zmPwyVB9WG&gPa!YjCb(d$@q}#^%HxX>5dXi>2=~RlBP>Dk)%P~<_a^`8|Gp9c`N-qMn4~?pHI@yYBV)u*#)z?uQ3+&>iXvlFCK;o`$rzPV#;CY5M&*_< zdI1@uH<2-Vr7-4teRTW*-i$%C8?SG8LjqmB7)$LgS``hm*P5fz%X@1JeCerMmXo*V zD^swZy)AYPJCV(eiF@s_!dRHqj^P#Eb6?}4S222>kg^G{*Dk>vug>h8vX1Bt8Q+Di zRgWUx20twhftc`mih2S2fr=TC39qAQ6{=bVB895J{hL+4vgQ>ndP>g&7?m3-J4Q_|Y)G z6Fbm~LINcs0fnE!BHS0mAWGAe;(F@~wHiIlycO!jJF6MPS}jD;Jd8Wy2$~v_Cd?`N z^|~0X>+9FofLOny!=AyH&IbTn#U^lrl$~{avom29nN;UrM$w!`_@vh*LBJxzS)?5X z7Q95!hrzhge>?L*h!d5a^a5@sy?_hp1zbok;6i!<7t#y3h{nl!0Wmsl6c^G9xR74J zh4cb0q!(}@y?_hNsiGXNx6UNowwV>puZgb`O4E#jfDbh2&9!x{d1k?S;8$l`B%i5G)=7M>h_>d1xMW1V! zAH;Kw9bTVbso0=c!?B(aP2S!DwS!dym`$CV7Y)OF2rub%fF7Szph2}=$B%hkW9oGc zuM;mS9*aWE=faq=!+Zp6(5{%={4gS3?|w!l6MaCtzk=WV6qjlNs-8*ypdfQV!>)yb zYmAloS@Aw2{(6=sCN9l+TU7}KzrPQ{Jq`0?pf(@lM<7O}@QZ>NJ=uT!Jq?#zP8%lH zA-HHGuGe0wpiFkd8}^~Z8sqX#AcCmpag(`x?m8-V2y}f|~IasW+mzj)mt#`QX(0P(r=F zARSuIwi}S4{vZVv4|%7gzCs?kq5hrlhR|UH1-ph*g7YxL3bT#F4R4@8<)Rny6*Yvzdh;Xui~6+YmI*C-Y-7T>4w6aQ#n@p?QfZ+}^XQ>P z8L9lkbzP(NP*l{qgC0k78rO)G(J(>oLGATGOXl%ij|1eWN;U#k`s4-OJ=#~^DLJC$ zdz<4KROMW7BH9$st7u}>ft<7BIsCYMB!5dhA3p2|%O+w`BB1QsO5SLk7;o>)*H}+2 zkQEjdJsZJC`nsnwkIKc{!{ljrn>i)~Y)mAMG0J6Py55+?9=9$2nn zRgpZ11Llf$9w)BlE2XN7vogoO2;J{a*(eQv6oKNsm7ds-M6?Co;F646^Bt5rLco=# z=TVSj$L0mFchy#+;0N=pbx=pf&%8iNP-}(RDQga?Cykdwt!$zd4Q2e3j7t1Zcs(V2 RU|z+ZGGfqxvBcEa{{uUfoAUqw literal 0 HcmV?d00001 diff --git a/.doctrees/extending.doctree b/.doctrees/extending.doctree new file mode 100644 index 0000000000000000000000000000000000000000..b935f0a74b85d34f4ad3b5fe9fd8dbac9d806ab3 GIT binary patch literal 12081 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 WCruHQ2}Q|<+DeI^_Q`T-*Ze1&tBxc9 literal 0 HcmV?d00001 diff --git a/.doctrees/index.doctree b/.doctrees/index.doctree new file mode 100644 index 0000000000000000000000000000000000000000..36acbbbfe27423270283bb2ebfee4dc5979686a2 GIT binary patch literal 8041 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 ZE(M;#M^jRz>&CJYFGXQ>E5moZe*;OAiZ=iN literal 0 HcmV?d00001 diff --git a/.doctrees/io.doctree b/.doctrees/io.doctree new file mode 100644 index 0000000000000000000000000000000000000000..fd9f04e1fa364e438168e8676bad480f9b7371ae GIT binary patch literal 59487 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 R7+{g<)!K`MQ{0~X{{g>qa%lhn literal 0 HcmV?d00001 diff --git a/.doctrees/presets.doctree b/.doctrees/presets.doctree new file mode 100644 index 0000000000000000000000000000000000000000..0b3ed679e9581bbe54bfa9f4eda72944e68b6495 GIT binary patch literal 27703 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 literal 0 HcmV?d00001 diff --git a/.doctrees/problem_representation.doctree b/.doctrees/problem_representation.doctree new file mode 100644 index 0000000000000000000000000000000000000000..3bec8a300aa5040e02bed4111e56f4387e2dea82 GIT binary patch literal 18621 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 aTT*6#-6C5nS>kIhbYs{%Z>4d4>wf`4lr!@H literal 0 HcmV?d00001 diff --git a/.doctrees/rb_constraints.doctree b/.doctrees/rb_constraints.doctree new file mode 100644 index 0000000000000000000000000000000000000000..806bea104720c28cba80c43164f93db023b3e4d2 GIT binary patch literal 34297 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 literal 0 HcmV?d00001 diff --git a/.doctrees/rigidbodies.doctree b/.doctrees/rigidbodies.doctree new file mode 100644 index 0000000000000000000000000000000000000000..982d8643e30c257ce6e060e3fcef4aee3dcfcdda GIT binary patch literal 10987 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 literal 0 HcmV?d00001 diff --git a/.doctrees/settings.doctree b/.doctrees/settings.doctree new file mode 100644 index 0000000000000000000000000000000000000000..c3540e655e705f69b55589019b08e85a2c565448 GIT binary patch literal 85477 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 lOZ9Gttsqaa<>L>monav9tBsjkm7T5N7Yp+}(R; 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 literal 0 HcmV?d00001 diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 30770531..00000000 --- a/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -*.pyc -*.pyi -*.pyd -build/ -codegen_folder/ -output_folder/ -.vscode/ -CMakeFiles/ -CMakeCache.txt \ No newline at end of file diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/CMakeLists.txt b/CMakeLists.txt deleted file mode 100644 index 3fe4432e..00000000 --- a/CMakeLists.txt +++ /dev/null @@ -1,12 +0,0 @@ -cmake_minimum_required(VERSION 3.15...3.27) -project(stark) -set(CMAKE_CXX_STANDARD 17) - -add_subdirectory(stark) -add_subdirectory(examples) -add_subdirectory(tests) - -option(STARK_BUILD_PYTHON_BINDINGS "Build Python Bindings" ON) -if(STARK_BUILD_PYTHON_BINDINGS) - add_subdirectory(pystark/cpp) -endif() diff --git a/CNAME b/CNAME new file mode 100644 index 00000000..4fdbc091 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +stark.physics-simulation.org diff --git a/LICENSE b/LICENSE deleted file mode 100644 index e6693188..00000000 --- a/LICENSE +++ /dev/null @@ -1,202 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright 2024 stark contributors - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. \ No newline at end of file diff --git a/README.md b/README.md deleted file mode 100644 index 21581be1..00000000 --- a/README.md +++ /dev/null @@ -1,228 +0,0 @@ -# STARK - -

- SymX Logo -

- -STARK is a C++ and Python simulation _platform_ that provides easy access to state-of-the-art methods to robustly solve simulations of rigid and deformable objects in a strongly coupled manner. -To the best of our knowledge, no other existing open source simulation environment provides such a rich collection of models, including coupling, with the same level of robustness. -STARK has been validated through real-world, challenging cases of interactions between robots and deformable objects, see the [STARK ICRA'24 paper](https://www.animation.rwth-aachen.de/publication/0588/). - -

- -    - -

- -One of the main features of STARK is that it uses a powerful symbolic differentiation and code generation engine that allows for a concise formulation of the global variational form of the non-linear dynamic problem. -Adding new models (e.g. materials, joints, interactions, ...) in STARK is as simple as specifying their energy potential in symbolic form together with the data they depend on. -This removes the tedium of manually deriving, implementing, testing and optimizing new models and integrating them in existing complex simulation environments. -STARK collects all the potentials and uses Newton's Method to find the solution to the non-linear implicit time-stepping problem. -Presently, even though STARK has a C++ and Python API, models can only be defined in C++. - -By default, STARK comes out-of-the-box with important widely used models: -- 3D and 2D **FEM** discretizations for deformable non-linear materials -- **Discrete Shells** for cloths and stiff shells -- **Rigid Bodies** with joints and motors -- Frictional Contact with **IPC** - -See [Features](#features) section for more details. - -There are two use cases for STARK: - - As an external, black-box, powerful simulator that can handle very challenging scenarios. - No knowledge of STARK internals are needed in this case, and users can directly use the high-level C++ or Python APIs. - - As a research and development tool for simulation. - Thanks mainly to the symbolic differentiation and integrated collision detection, STARK can dramatically increase productivity of simulation technology research. - See [here](stark/src/models) how the models contained in STARK are implemented. - - -## Hello World -The following is a script example using STARK's Python API to execute a simulation of a piece of cloth falling on a rigid box with a prescribed spinning motion. - -

- -

- -```python -import numpy as np -import pystark - -settings = pystark.Settings() -settings.output.simulation_name = "spinning_box_cloth" -settings.output.output_directory = "output_folder" -settings.output.codegen_directory = "codegen_folder" -simulation = pystark.Simulation(settings) - -# Global frictional contact IPC parameters -contact_params = pystark.EnergyFrictionalContact.GlobalParams() -contact_params.default_contact_thickness = 0.001 # Can be overriden by per-object thickness -contact_params.friction_stick_slide_threshold = 0.01 -simulation.interactions().contact().set_global_params(contact_params) - -# Add deformable surface -cV, cT, cH = simulation.presets().deformables().add_surface_grid("cloth", - size=np.array([0.4, 0.4]), - subdivisions=np.array([20, 20]), - params=pystark.Surface.Params.Cotton_Fabric() -) - -# Add rigid body box -bV, bT, bH = simulation.presets().rigidbodies().add_box("box", mass=1.0, size=0.08) -bH.rigidbody.add_translation(np.array([0.0, 0.0, -0.08])) -fix_handler = simulation.rigidbodies().add_constraint_fix(bH.rigidbody) - -# Set friction pair -cH.contact.set_friction(bH.contact, 1.0) - -# Script -duration = 10.0 -def script(t): - fix_handler.set_transformation( - translation=np.array([0.0, 0.0, -0.08 - 0.1*np.sin(t)]), - angle_deg=100.0*t, - axis=np.array([0.0, 0.0, 1.0])) -simulation.add_time_event(0, duration, script) - -# Run -simulation.run(duration) -``` - -The output is a sequence of VTK files per output group (in this case one sequence for the cloth and another for the box). -VTK files can be viewed in Blender with [this](https://github.com/InteractiveComputerGraphics/blender-sequence-loader) add-on or in [Paraview](https://www.paraview.org/). -You can use [meshio](https://github.com/nschloe/meshio) to transform VTK meshes to other formats. - -STARK code will always follow the same structure: - - Define global settings and parameters. - - Add objects, boundary conditions and define interactions. In this example, `presets` are used but custom objects and composed materials are also possible. - - Optionally, specify time-dependent events (script). - - Run. - -See the folder [`stark/pystark/examples`](pystark/examples) for more scenes using the Python API and [`stark/examples`](examples/) for scenes written in C++. - - -## Get STARK -STARK's C++ and Python APIs are essentially equivalent. -A user who just wants to _use_ STARK with the models that it comes with, probably will prefer the Python API. -Users looking to work on their own new models to _extend_ STARK with new functionality will have to work directly in the C++ source code. - -Every time STARK encounters a new potential energy, it will generate and compile code to compute its derivatives. -Therefore, a C++17 compiler is required. -You can specify the command to invoke a compatible compiler using `pystark.set_compiler_command(str)` in Python and `stark::set_compiler_command(str)` in C++. -By default, it is `"g++"` in Unix and -``` -pystark.set_compiler_command("\"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Auxiliary\\Build\\vcvarsx86_amd64.bat\"") -``` -in Windows. -Use `pystark.Settings().debug.symx_suppress_compiler_output = False` to inspect the compiler's output. - - -If you don't have a C++17 compiler and just want to use the models shipped with STARK by default, you can download the corresponding compiled binaries [here](https://rwth-aachen.sciebo.de/s/5NXgsPtoDyVl8Yo). -Don't forget to point STARK to the folder containing those in `settings.output.codegen_directory`. - -### Python API -You can install STARK for Python 3.8+ using -``` -pip install stark-sim -``` - -### Build from source -To build from source you will need [CMake](https://cmake.org/) and a C++17 compiler. -All dependencies are bundled with STARK or are downloaded by CMake at build time. - -## Examples with code -
- - - - - - - - - - -
- Alt text for gif1 -
- twisting_cloth.py -
- Alt text for gif1 -
- boxes_on_cloth.py -
- Alt text for gif1 -
- inflation.py -
- Alt text for gif1 -
- viscoelasticity.py -
-
- - -## Features - -### Models -Besides a simulator, STARK is a repository of potential energies commonly used for deformable and rigid objects and frictional contact. -The following models can be found in symbolic form in `stark/stark/src/models/`: - -* Deformable objects - - 2D and 3D linear FEM (triangles and tets) with the Neo-Hookean and Stable Neo-Hookean constitutive models, respectively ([paper](https://dl.acm.org/doi/10.1145/3180491)) - - Discrete Shells ([paper](https://dl.acm.org/doi/10.5555/846276.846284)) - - Strain limiting ([paper](https://dl.acm.org/doi/10.1145/3450626.3459767)) - - Inertial and material damping -* Rigid bodies - - Soft joints (linear) - - Smooth force/torque capped motors [(paper)](https://www.animation.rwth-aachen.de/publication/0588/) - - Comprehensive collection of constraints (ball joints, hinge joints, sliders, ...) -* Frictional contact (based on triangle meshes) - - IPC [(paper)](https://dl.acm.org/doi/abs/10.1145/3386569.3392425) -* Attachments (based on triangle mesh distances) - -### Solver -* Symbolic differentiation - - Automatic generation of gradients and Hessians - - Parallel autonomous global evaluation and assembly -* Triangle-based collision detection -* Solver - - Newton's Method - - Intersection free line search (CCD coming soon) - - Conjugate Gradient or Direct LU linear solver - - Optional adaptive time step size - - Optional numerical PSD projection of element Hessians -* Event-based scripts - -## Research using STARK -* ["Micropolar Elasticity in Physically-Based Animation"](https://www.animation.rwth-aachen.de/publication/0582/) - Löschner et al., 2023 -* ["Curved Three-Director Cosserat Shells with Strong Coupling"](https://www.animation.rwth-aachen.de/publication/0589/) - Löschner et al., 2024 -* ["Strongly Coupled Simulation of Magnetic Rigid Bodies"](https://www.animation.rwth-aachen.de/publication/0590/) - Westhofen et al., 2024 - -## Cite STARK -```bibtex -@InProceedings{FLL+24, - author={Fernández-Fernández, José Antonio and Lange, Ralph and Laible, Stefan and Arras, Kai O. and Bender, Jan}, - booktitle={2024 IEEE International Conference on Robotics and Automation (ICRA)}, - title={STARK: A Unified Framework for Strongly Coupled Simulation of Rigid and Deformable Bodies with Frictional Contact}, - year={2024}, - pages={16888-16894}, - doi={10.1109/ICRA57147.2024.10610574}} -} -``` - -## Acknowledgments - - - - - - -
- - - Robert Bosch GmbH is acknowledged for generous financial support of the development of the initial version of STARK from 2019 to 2021. -
- -List of collaborators to the codebase: - - [José Antonio Fernández-Fernández](https://github.com/JoseAntFer) - - [Fabian Löschner](https://github.com/w1th0utnam3) diff --git a/_sources/architecture.md.txt b/_sources/architecture.md.txt new file mode 100644 index 00000000..4bcfc0ba --- /dev/null +++ b/_sources/architecture.md.txt @@ -0,0 +1,140 @@ +# Architecture + +STARK's public API is straightforward despite the internal complexity. +Users work through a single entry point, `Simulation`, which exposes all physics subsystems. +Internally, `core::Stark` orchestrates time stepping and Newton solves via SymX. + +## Component Map + +```{mermaid} +flowchart TD + Sim["Simulation"] + + Def["deformables"] + RB["rigidbodies"] + Int["interactions"] + Pre["presets"] + + Core["Stark"] + SymX["SymX"] + + Sim --> Def + Sim --> RB + Sim --> Int + Sim --> Pre + Sim --> Core + Def & RB & Int -.->|register| Core + Core --> SymX +``` + + +## `Simulation` + +`Simulation` is the single public entry point. +Constructing it with a `Settings` object is all that is needed to start a simulation: + +```cpp +stark::core::Settings settings; +settings.output.directory = "./output"; +settings.simulation.max_time_step_size = 0.01; + +stark::Simulation simulation(settings); +``` + +The four subsystems are available as public `shared_ptr` fields: + +```cpp +simulation.deformables // deformable meshes and FEM energies +simulation.rigidbodies // rigid bodies and joints +simulation.interactions // cross-system contact and attachments +simulation.presets // high-level scene factories +``` + +Once the scene is built, the simulation is advanced by calling `run()`: + +```cpp +simulation.run(); // run until no time events remain +simulation.run(5.0); // run for exactly 5 seconds +simulation.run_one_time_step(); // advance by a single time step +``` + +Time-dependent boundary conditions and scripted motions are registered through `simulation.get_script()` or `simulation.add_time_event()`. +See [Simulation Loop](simulation_loop.md) for the full API. + +--- + +## Physics Subsystems + +### `deformables` + +Manages all deformable objects: rods, shells (or cloth), and volumetric soft bodies. + +Internally, all deformable node positions and velocities are stored in a single flat array inside `PointDynamics`. +When you add a mesh, its nodes are appended to that shared array and identified by a `PointSetHandler`. +This flat representation keeps internals simple and improves parallelism and vectorization. + +The energy models that act on point sets are: + +| Model | Description | +|---|---| +| `EnergyLumpedInertia` | Mass and Rayleigh damping for any topology | +| `EnergyPrescribedPositions` | Penalty-based kinematic boundary conditions | +| `EnergySegmentStrain` | 1D stretching for rods and cables | +| `EnergyTriangleStrain` | 2D membrane strain for cloth and shells | +| `EnergyDiscreteShells` | Bending stiffness (Bergou discrete shells) | +| `EnergyTetStrain` | 3D volumetric FEM for soft bodies | + +In practice you almost never compose these by hand. +The [Presets](presets.md) subsystem wraps the most common combinations into single calls. +The [Deformables](deformables.md) page covers the full API for when you need direct control. + +### `rigidbodies` + +Manages rigid bodies and the constraints between them. + +Like deformables, all rigid-body state lives in a single flat array inside `RigidBodyDynamics`. +Each body has six DOFs (3 translational, 3 rotational) and is identified by a `RigidBodyHandler`. + +The energy models are: + +| Model | Description | +|---|---| +| `EnergyRigidBodyInertia` | Mass, inertia tensor, and Rayleigh damping | +| `EnergyRigidBodyConstraints` | All joints, motors, and springs between bodies | + +See [Rigid Bodies](rigidbodies.md) and [Rigid Body Constraints](rb_constraints.md) for the full API. + +### `interactions` + +Manages energies that couple the two state systems — or connect objects of the same system across separate point sets. + +| Model | Description | +|---|---| +| `EnergyFrictionalContact` | IPC-based frictional contact (deformable–deformable, rigid–deformable, rigid–rigid) | +| `EnergyAttachments` | Penalty-based gluing of surface or point pairs | + +See [Contact](contact.md) and [Attachments](attachments.md). + +### `presets` + +High-level factory calls that compose inertia, strain, bending, and output registration into single calls. +Most users should start here. +See [Presets](presets.md) for the full list. + +--- + +## `core::Stark`: The Solver Engine + +`core::Stark` is the engine that drives the simulation. + +Its key components are: + +- **`GlobalPotential`** — the SymX energy registry. Energy models call `global_potential->add_potential(...)` during construction to register their symbolic expression and the state variables it acts on. +- **`Callbacks`** — hook points for injecting logic at fixed moments in the loop: `before_time_step`, `on_time_step_accepted`, `after_time_step`, and `write_frame`. +- **`EventDrivenScript`** — fires lambdas at specified simulation times or on solver events. +- **`Settings`** — output paths, time step size, Newton tolerances, contact parameters, and more. + +Under normal use you do not interact with `core::Stark` directly. +When writing a custom energy model that extends STARK, you access it through `simulation.get_stark()`. +See [Extending STARK](extending.md) for a worked example. + diff --git a/_sources/attachments.md.txt b/_sources/attachments.md.txt new file mode 100644 index 00000000..b9f6baa7 --- /dev/null +++ b/_sources/attachments.md.txt @@ -0,0 +1,92 @@ +# Attachments + +Attachments are penalty-based constraints that connect points on two deformable objects, or points on a rigid body to a deformable object. +They are the standard way to glue parts of the simulation together. + +Attachments are managed by `simulation.interactions->attachments` (C++) or `simulation.interactions().attachments()` (Python). + +## Deformable–Deformable + +### Point to Point + +Connects a list of vertices on one point set to the corresponding vertices on another: + +```cpp +auto h = simulation.interactions->attachments->add( + set_a_handler, set_b_handler, + points_a, // std::vector — vertex indices in set A + points_b, // std::vector — vertex indices in set B + stark::EnergyAttachments::Params() +); +``` + +### Point to Edge (Barycentric) + +Attaches vertices on set A to positions on edges of set B via barycentric coordinates: + +```cpp +auto h = simulation.interactions->attachments->add( + set_a, set_b, + points_a, + edges_b, // std::vector> + bary_coords, // std::vector> + params +); +``` + +### Point to Triangle (Barycentric) + +Attaches vertices on set A to triangles of set B: + +```cpp +auto h = simulation.interactions->attachments->add( + set_a, set_b, + points_a, + triangles_b, // std::vector> + bary_coords, // std::vector> + params +); +``` + +### By Distance + +Automatically finds and attaches all vertices within a given distance of a target mesh: + +```cpp +auto multi_h = simulation.interactions->attachments->add_by_distance( + set_a, set_b, + points_a, // candidate source vertices + triangles_b, // target triangle mesh + distance, // match within this distance + params +); +``` + +Returns a `MultiHandler` that groups the individual attachment handlers. + +## Rigid Body–Deformable + +Attaches vertices on a deformable point set to local-frame points on a rigid body: + +```cpp +auto h = simulation.interactions->attachments->add( + rb_handler, + set_handler, + rb_points_local, // std::vector — rigid body frame + set_points, // std::vector — vertex indices in the point set + params +); +``` + + +## Parameters + +```cpp +stark::EnergyAttachments::Params params; +params.stiffness = 1e6; // penalty stiffness (N/m) +params.tolerance = 1e-3; // distance below which the constraint is considered satisfied +``` + +High stiffness gives a near-rigid bond; lower stiffness gives a soft connection. +Stiffness hardens automatically when the tolerance is not met at the end of a time step. + diff --git a/_sources/contact.md.txt b/_sources/contact.md.txt new file mode 100644 index 00000000..46c22038 --- /dev/null +++ b/_sources/contact.md.txt @@ -0,0 +1,170 @@ +# Frictional Contact + +STARK uses an **IPC (Incremental Potential Contact)** based formulation for frictional contact. +It is guaranteed to be intersection-free and handles all contact pairs (deformable–deformable, rigid–deformable, rigid–rigid) in a unified framework. + +Contact is handled by `simulation.interactions->contact` (C++) or `simulation.interactions().contact()` (Python). + +## Contact Handler +Every mesh that should collide is registered as a contact object and receives a `ContactHandler`, used to configure friction, disable pairs, or update contact thickness. + +The actual motion comes from the underlying `PointSetHandler` or `RigidBodyHandler`; the contact object holds only the collision geometry. + +Contact geometry is registered either through presets (recommended) or manually. Details at the end of this page. + +## Global Parameters + +Set once before the simulation starts: + +```cpp +// C++ +stark::EnergyFrictionalContact::GlobalParams params; + +// Contact thickness (d_hat): the distance at which contact forces activate +// MUST be set; no sensible default exists — it depends on your scene scale +params.default_contact_thickness = 0.001; // 1 mm + +// Stiffness range (automatically hardened when penetration is detected) +params.min_contact_stiffness = 1e4; +params.max_contact_stiffness = 1e20; + +// Friction: stick-to-slide threshold (relative tangential displacement) +params.friction_stick_slide_threshold = 0.01; + +// Enable/disable specific contact modes +params.collisions_enabled = true; +params.friction_enabled = true; +params.triangle_point_enabled = true; +params.edge_edge_enabled = true; +params.intersection_test_enabled = true; + +simulation.interactions->contact->set_global_params(params); +``` + + +## Setting up frictional contact +### Setting Friction Between Pairs + +Friction must be explicitly enabled between each pair of contact objects. +The Coulomb friction coefficient $\mu$ is set per pair: + +```cpp +// C++ +ch_cloth.set_friction(ch_box, 0.5); // μ = 0.5 between cloth and box +ch_cloth.set_friction(ch_cloth, 0.1); // self-contact with μ = 0.1 +``` + +Pairs without an explicit `set_friction` call have no friction forces between them. + +### Per-Object Contact Thickness + +You can override the global default thickness per object: + +```cpp +ch_cloth.set_contact_thickness(0.0005); // 0.5 mm +``` + +### Disabling Collisions Between Pairs + +To exclude specific pairs from collision detection entirely (e.g. objects that start overlapping): + +```cpp +ch_a.disable_collision(ch_b); +``` + +## Stiffness Hardening + +When Newton's Method cannot resolve an intersection, contact stiffness is doubled and the step is retried. +This repeats until penetration resolves or `max_contact_stiffness` is reached. +You will see messages like: + +``` +Penetration couldn't be avoided. Contact stiffness hardened from 1.0e+04 to 2.0e+04. +``` + +This is normal in contact-heavy scenes. + + +## Registering Contact Objects + +### Contact through presets + +Presets are the recommended path for standard objects. Deformable and rigid-body presets automatically register suitable collision geometry and return a contact handle in the preset handler. + +```cpp +// Deformable object with contact +stark::Volume::Params rubber = stark::Volume::Params::Soft_Rubber(); +rubber.contact.contact_thickness = 0.001; + +auto [V, T, body] = simulation.presets->deformables->add_volume( + "body", + vertices, + tets, + rubber +); + +stark::ContactHandler body_contact = body.contact; + +// Rigid body with contact +auto [floor_V, floor_T, floor] = simulation.presets->rigidbodies->add_box( + "floor", + 1.0, + Eigen::Vector3d(2.0, 2.0, 0.05), + stark::ContactParams().set_contact_thickness(0.001) +); + +stark::ContactHandler floor_contact = floor.contact; +``` + +### Manual contact registration + +For custom objects, register the contact geometry directly. +The collision mesh indices refer to vertices of the `PointSetHandler`. + +```cpp +stark::PointSetHandler point_set = /* your deformable point set */; +std::vector> surface_triangles = /* collision surface */; + +stark::ContactHandler cloth_contact = + simulation.interactions->contact->add_triangles( + point_set, + surface_triangles, + stark::ContactParams().set_contact_thickness(0.001) + ); +``` + +For segment-like objects, use edges instead of triangles: + +```cpp +std::vector> edges = /* collision edges */; + +stark::ContactHandler rod_contact = + simulation.interactions->contact->add_edges( + point_set, + edges, + stark::ContactParams().set_contact_thickness(0.001) + ); +``` + +#### Contact on a subset of a point set + +Sometimes the simulated point set contains more vertices than the collision mesh. For example, a tetrahedral volume may use only its boundary triangles for contact. + +Use the overload with `point_set_map` in that case. The collision mesh is indexed locally into `point_set_map`, and `point_set_map[i]` maps collision vertex `i` to a vertex in the full point set. + +```cpp +stark::PointSetHandler point_set = /* full deformable point set */; + +std::vector surface_to_point_set = /* collision vertex -> point-set vertex */; +std::vector> surface_triangles = /* indexed into surface_to_point_set */; + +stark::ContactHandler contact = + simulation.interactions->contact->add_triangles( + point_set, + surface_triangles, + surface_to_point_set, + stark::ContactParams().set_contact_thickness(0.001) + ); +``` + +This is the manual equivalent of what presets do for volumetric objects: the simulation uses tetrahedra, but contact is registered on the boundary surface. diff --git a/_sources/deformables.md.txt b/_sources/deformables.md.txt new file mode 100644 index 00000000..963879df --- /dev/null +++ b/_sources/deformables.md.txt @@ -0,0 +1,168 @@ +# Deformables + +All deformable models operate on **point sets**, arrays of 3D positions and velocities managed by `PointDynamics`. +Register a point set to get a `PointSetHandler`, which you pass to each energy model: + +```cpp +auto ps = simulation.deformables->point_sets->add(vertices); +``` + +## Transforms + +You can reposition and reorient the point set, or give it an initial velocity: + +```cpp +ps.add_translation({0.0, 0.0, 1.0}); +ps.add_rotation(90.0, {1.0, 0.0, 0.0}); // angle_deg, axis +ps.set_velocity({0.0, 0.0, -1.0}); // applied to all points +``` + +## Potential energies + +### EnergyLumpedInertia + +Mass and Rayleigh damping for a point set. +Works with any topology (edges, triangles, tets); mass is lumped to vertices proportional to element volume. + +```cpp +auto inertia_h = simulation.deformables->lumped_inertia->add( + ps, triangles, + stark::EnergyLumpedInertia::Params() + .set_density(0.2) // [kg/m²] for surfaces, [kg/m³] for volumes, etc. + .set_damping(0.5) +); +``` + +Every dynamic point set needs at least one inertia registration. +The `quasistatic` flag disables the kinetic energy term; see [Simulation Loop](simulation_loop.md) for quasistatic usage. + +--- + +### EnergyPrescribedPositions + +Penalty-based kinematic boundary conditions. +Selected vertices are attracted to a target configuration with a stiffness penalty. + +```cpp +auto bc = simulation.deformables->prescribed_positions->add_inside_aabb( + ps, + Eigen::Vector3d(0, 0, 0), // AABB centre + Eigen::Vector3d(0.001, 1, 1), // AABB half-extents + stark::EnergyPrescribedPositions::Params() + .set_stiffness(1e6) +); +``` + +You can also select by explicit vertex list (`add`) or invert the AABB selection (`add_outside_aabb`). + +To animate the boundary condition, update its target transformation each time step: + +```cpp +simulation.add_time_event(0.0, duration, [&](double t) { + bc.set_transformation( + Eigen::Vector3d(0, 0, 0), // translation + t * 90.0, // rotation angle (deg) + Eigen::Vector3d(1, 0, 0) // rotation axis + ); +}); +``` + +--- + +### EnergySegmentStrain + +1D axial strain energy for rods and cables. +Acts on pairs of connected vertices (segments). + +```cpp +auto strain_h = simulation.deformables->segment_strain->add( + ps, segments, + stark::EnergySegmentStrain::Params() + .set_section_radius(5e-3) // rod cross-section radius + .set_youngs_modulus(1e6) + .set_damping(0.0) +); +``` + +Optional strain limiting caps elongation to prevent explosive stretching. +`elasticity_only = true` disables strain limiting and damping for a cheaper solve. + +--- + +### EnergyTriangleStrain + +2D membrane strain energy for cloth and thin shells. +Acts on triangles and models in-plane stretching and compression using the Neo-Hookean constitutive model. + +```cpp +auto strain_h = simulation.deformables->triangle_strain->add( + ps, triangles, + stark::EnergyTriangleStrain::Params() + .set_thickness(0.001) // shell thickness (m) + .set_youngs_modulus(1e5) + .set_poissons_ratio(0.3) + .set_strain_limit(0.2) // optional; 0 = disabled +); +``` + +An `inflation` parameter adds an outward pressure force, useful for inflatables. +`elasticity_only = true` disables strain limiting and damping for a cheaper solve. + +--- + +### EnergyDiscreteShells + +Bending energy for triangle meshes (Grinspun et al. discrete shells or Bergou et al. flat quadratic model), acting on hinge edges. + +```cpp +auto bending_h = simulation.deformables->discrete_shells->add( + ps, triangles, + stark::EnergyDiscreteShells::Params() + .set_stiffness(1e-3) + .set_flat_rest_angle(true) // true → Bergou quadratic; false → use mesh's rest angle +); +``` + +This is always paired with `EnergyTriangleStrain` on the same triangle mesh. +The `Surface` preset does this automatically. + +--- + +### EnergyTetStrain + +3D volumetric FEM strain energy for soft bodies. +Acts on linear tetrahedra using the Neo-Hookean constitutive model. + +```cpp +auto strain_h = simulation.deformables->tet_strain->add( + ps, tets, + stark::EnergyTetStrain::Params() + .set_youngs_modulus(1e5) + .set_poissons_ratio(0.4) +); +``` + +`elasticity_only = true` disables strain limiting and damping for a cheaper solve. + + +--- + +## Manual Composition + +Any combination of the above energies can be registered on the same `PointSetHandler`. +See `examples/main.cpp` for a mesh with volumetric interior, shell surface, and rod edges — each energy registers independently and all contribute to the same Newton solve. + +## Output + +Mesh output is registered separately: + +```cpp +simulation.deformables->output->add_triangle_mesh("cloth", ps, triangles); +simulation.deformables->output->add_tet_mesh("body", ps, tets); +simulation.deformables->output->add_segment_mesh("rod", ps, segments); +simulation.deformables->output->add_point_set("pts", ps); +``` + +Presets handle this automatically. + + diff --git a/_sources/extending.md.txt b/_sources/extending.md.txt new file mode 100644 index 00000000..5ab30164 --- /dev/null +++ b/_sources/extending.md.txt @@ -0,0 +1,60 @@ +# Extending STARK + +STARK physics models are SymX energy potentials, scalar functions of the degrees of freedom. +SymX differentiates them symbolically and feeds the gradient and Hessian to Newton's method. + +The simplest form of extension is adding a model inside the existing infrastructure (e.g. new bending modes in `EnergyDiscreteShells`). +This page shows how to inject a custom energy from outside, without modifying STARK internals. + +## The Core Idea + +The DoFs for deformable objects are registered by `PointDynamics` (velocities `v1`, positions `x0`/`x1`), and analogously for rigid bodies in `RigidBodyDynamics`. +To add a custom energy, register it with `GlobalPotential` via a connectivity table. + +See the [SymX docs](https://symx.physics-simulation.org/second_order_optimization.html#) for the `GlobalPotential` API. + + +## Example: implicit magnetic attraction + +The following example adds a simple magnetic attraction potential to deformable boxes. The magnet is represented by a scripted rigid sphere, while the actual attraction is a custom SymX energy acting on the deformable vertices. + +For every affected deformable vertex, the energy is + +$$ +E_i(x_i) = -\frac{k}{\sqrt{\|x_i - x_c\|^2}}, +$$ + +where $x_i$ is the current candidate position of the attracted vertex, `x_c` is the current magnet position and `k` controls the strength. + +The force produced by this energy is attractive, and because the term is registered as a SymX potential, STARK also receives the corresponding Hessian contribution automatically. +This is incorporated to the rest of the physical effects and piped into the optimization pipeline. + +The following is the energy definition + +```cpp +stark::core::Stark& stark_core = simulation.get_stark(); +stark::PointDynamics* dyn = simulation.deformables->point_sets.get(); + +stark_core.global_potential->add_potential("EnergyMagneticAttraction", magnetic_vertices, + [&](MappedWorkspace& mws, Element& elem) + { + Vector v1 = mws.make_vector(dyn->v1.data, elem["point"]); + Vector x0 = mws.make_vector(dyn->x0.data, elem["point"]); + Scalar dt = mws.make_scalar(stark_core.dt); + Scalar k = mws.make_scalar(magnet_force); + Vector m = mws.make_vector(magnet_center); + + Vector x1 = stark::time_integration(x0, v1, dt); + Vector r = x1 - m; + Scalar d = r.norm(); + + return -k / d; + } +); +``` + +As you can see, non-trivial implicit effects that would otherwise require deep solver expertise reduce to a handful of lines of symbolic code. +This is what makes STARK effective as a research and prototyping platform. + +The full example is in `examples/main.cpp` as `magnetic_deformables_implicit()`. + diff --git a/_sources/hello_world.md.txt b/_sources/hello_world.md.txt new file mode 100644 index 00000000..5e93c3be --- /dev/null +++ b/_sources/hello_world.md.txt @@ -0,0 +1,107 @@ +# Hello World + +Two quick STARK "hello world" programs — one in Python, one in C++. +Both simulate a piece of cloth falling on a rigid box that spins in place. + +

+ Spinning box cloth simulation +

+ +## Python + +```python +import numpy as np +import pystark + +# 1. Configure output and solver settings +settings = pystark.Settings() +settings.output.simulation_name = "spinning_box_cloth" +settings.output.output_directory = "output_folder" +settings.output.codegen_directory = "codegen_folder" + +# 2. Create the simulation +simulation = pystark.Simulation(settings) + +# 3. Set global contact parameters +contact_params = pystark.EnergyFrictionalContact.GlobalParams() +contact_params.default_contact_thickness = 0.0025 +simulation.interactions().contact().set_global_params(contact_params) + +# 4. Add a deformable cloth surface +cV, cT, cH = simulation.presets().deformables().add_surface_grid( + "cloth", + size=np.array([0.4, 0.4]), + subdivisions=np.array([32, 32]), + params=pystark.Surface.Params.Cotton_Fabric() +) + +# 5. Add a rigid body box +bV, bT, bH = simulation.presets().rigidbodies().add_box("box", mass=1.0, size=0.08) +bH.rigidbody.add_translation(np.array([0.0, 0.0, -0.08])) +fix_handler = simulation.rigidbodies().add_constraint_fix(bH.rigidbody) + +# 6. Script: spin the box over time +duration = 10.0 +def script(t): + fix_handler.set_transformation( + np.array([0.0, 0.0, -0.08]), + 90.0*t, + np.array([0.0, 0.0, 1.0]) + ) + +# 7. Run +simulation.run(duration, script) +``` + +## C++ + +The same scene in C++: + +```cpp +#include + +void spinning_box_cloth() +{ + // 1. Configure output and solver settings + stark::Settings settings; + settings.output.simulation_name = "spinning_box_cloth"; + settings.output.output_directory = "output_folder"; + settings.output.codegen_directory = "codegen_folder"; + + // 2. Create the simulation + stark::Simulation simulation(settings); + + // 3. Set global contact parameters + stark::EnergyFrictionalContact::GlobalParams contact_params; + contact_params.default_contact_thickness = 0.0025; + simulation.interactions->contact->set_global_params(contact_params); + + // 4. Add a deformable cloth surface + auto cloth = simulation.presets->deformables->add_surface_grid( + "cloth", + Eigen::Vector2d(0.4, 0.4), + {32, 32}, + stark::Surface::Params::Cotton_Fabric() + ); + + // 5. Add a rigid body box + auto box = simulation.presets->rigidbodies->add_box("box", 1.0, 0.08); + box.handler.rigidbody.add_translation({0.0, 0.0, -0.08}); + auto fix = simulation.rigidbodies->add_constraint_fix(box.handler.rigidbody); + + // 6. Script: spin the box + double duration = 10.0; + simulation.add_time_event(0.0, duration, [&](double t) { + fix.set_transformation( + {0.0, 0.0, -0.08 - 0.1*std::sin(t)}, + 90.0*t, + {0.0, 0.0, 1.0}); + }); + + // 7. Run + simulation.run(duration); +} +``` + +The C++ and Python APIs are intentionally parallel. +C++ uses direct field access (`simulation.presets->deformables`); Python uses accessor methods (`simulation.presets().deformables()`). diff --git a/_sources/index.md.txt b/_sources/index.md.txt new file mode 100644 index 00000000..38127264 --- /dev/null +++ b/_sources/index.md.txt @@ -0,0 +1,58 @@ +# STARK Documentation + +

+ SymX Logo +

+ +Welcome to the STARK documentation. +STARK is a C++ and Python simulation platform for simulating rigid and deformable objects in strongly coupled scenarios. +Check out the [STARK GitHub repo](https://github.com/InteractiveComputerGraphics/stark) and the [STARK ICRA'24 paper](https://www.animation.rwth-aachen.de/publication/0588/). + +These pages give a high-level overview of the main concepts and show how to use the library. +They are not a doxygen-style exhaustive documentation, but rather a guide on how the library works and how to use it effectively. + +STARK is built on top of [SymX](https://github.com/InteractiveComputerGraphics/SymX), a mathematical engine that handles differentiation, evaluation, and optimization via a Newton solver. +STARK can be seen as a repository of common simulation models with a convenient interface, scripting, and a Python API. + +If you need something simpler or more customizable, using SymX directly may be a better fit. +If you need performance beyond what STARK offers (e.g. GPU), STARK can still serve as a rapid prototyping environment before committing to a custom solver. + +## Table of Contents + +```{toctree} +:caption: Getting Started +:maxdepth: 1 + +hello_world +setup +architecture +``` + +```{toctree} +:caption: Core Concepts +:maxdepth: 1 + +settings +io +simulation_loop +``` + +```{toctree} +:caption: Physics Models +:maxdepth: 1 + +problem_representation +presets +deformables +rigidbodies +rb_constraints +contact +attachments +``` + +```{toctree} +:caption: Advanced +:maxdepth: 1 + +extending +``` diff --git a/_sources/io.md.txt b/_sources/io.md.txt new file mode 100644 index 00000000..8df43594 --- /dev/null +++ b/_sources/io.md.txt @@ -0,0 +1,405 @@ +# Input / Output + +STARK keeps input and output simple: meshes are ordinary C++ containers, frames are written as VTK files, and solver diagnostics are printed both to the console and to yaml log files. This makes it easy to combine STARK with external mesh generation and pre/post processing tools. +VTK Files can directly be inspected on ParaView and Blender and logs are easily parsed by Python scripts. + +A typical simulation produces three kinds of output: + +| Output | Purpose | Typical file | +|---|---|---| +| VTK frames | Geometry data | `my_sim_object_42.vtk` | +| Text log | Human-readable copy of console/file output | `my_sim__2026-05-13__15-24-16.log` | +| YAML log | Machine-readable solver statistics and timings | `my_sim__2026-05-13__15-24-16.yaml` | + +The output directory, simulation name, frame rate, and verbosity are configured through `stark::Settings`. + +```cpp +stark::Settings settings; +settings.output.simulation_name = "my_sim"; +settings.output.output_directory = "build/output/my_sim"; +settings.output.codegen_directory = "build/codegen"; +settings.output.fps = 30; +settings.output.console_verbosity = symx::Verbosity::Summary; +settings.output.file_verbosity = symx::Verbosity::Full; + +stark::Simulation simulation(settings); +``` + +`simulation_name`, `output_directory`, and `codegen_directory` must be set. STARK creates the directories automatically. The code-generation directory is used by SymX to cache generated/compiled kernels; it is not where frame files are written. + +## Mesh input + +STARK does not require a special mesh class at the API boundary. Most geometry is represented as + +```cpp +std::vector vertices; +std::vector> connectivity; +``` + +where `N = 1` for points, `N = 2` for segments, `N = 3` for triangles, and `N = 4` for tetrahedra. This means you can bring meshes from your own meshing code, external tools, procedural generators, or the helper functions bundled with STARK. + +### Loading VTK meshes + +STARK bundles `vtkio`, which can read a VTK file into the usual vertex/connectivity containers. + +```cpp +#include + +std::vector vertices; +std::vector> tets; + +vtkio::VTKFile vtk_file; +vtk_file.read("bunny.vtk"); +vtk_file.get_points_to_twice_indexable(vertices); +vtk_file.get_cells_to_twice_indexable(tets); +``` + +For the common case, STARK also provides `load_vtk` wrappers: + +```cpp +stark::Mesh<4> tet_mesh = stark::load_vtk<4>("bunny.vtk"); +``` + +### Loading OBJ triangle meshes + +Triangle OBJ meshes can be loaded with: + +```cpp +std::vector> meshes = stark::load_obj("model.obj"); +``` + +The OBJ loader expects triangular faces. If the file contains multiple OBJ shapes, the return value contains one `stark::Mesh<3>` per shape. + +### Procedural mesh generators + +For examples, tests, and simple scenes, STARK provides a few built-in mesh generators: + +```cpp +auto sphere = stark::make_sphere(0.5); +auto box = stark::make_box({1.0, 0.5, 0.2}); +auto cyl = stark::make_cylinder(0.2, 1.0); +auto torus = stark::make_torus(1.0, 0.1); + +auto cloth = stark::generate_triangle_grid( + Eigen::Vector2d{0.0, 0.0}, // center + Eigen::Vector2d{1.0, 1.0}, // dimensions + std::array{32, 32}, // quads per dimension + 0.0 // z coordinate +); + +auto block = stark::generate_tet_grid( + Eigen::Vector3d{0.0, 0.0, 0.0}, + Eigen::Vector3d{1.0, 1.0, 1.0}, + std::array{10, 10, 10} +); +``` + +### Presets and Handles + +The highest-level option is presets, which generate geometry, register physics, and return mesh data and handles. + +```cpp +stark::Volume::Params material = stark::Volume::Params::Soft_Rubber(); + +auto [V, T, H] = simulation.presets->deformables->add_volume_grid( + "block", + Eigen::Vector3d{1.0, 1.0, 1.0}, // size + std::array{8, 8, 8}, // subdivisions + material +); +``` + +As a preset, `add_volume_grid` returns the mesh data and a set of handles associated with the standard elastic volume model: + +- `std::vector` containing the mesh vertices +- `std::vector>` containing the tetrahedral connectivity +- `stark::Volume::Handler`: handle to the volume object which in turn contains + - `stark::PointSetHandler`: handle to the vertex representation of the object + - `stark::EnergyLumpedInertia::Handler`: handle to the inertia term + - `stark::EnergyTetStrain::Handler`: handle to the strain energy term + - `stark::ContactHandler`: handle to the contact representation + +Handlers provide convenient interfaces to modify object definitions. For instance, you can move all the vertices of the "block" object by +``` +H.point_set.add_displacement({0.0, 0.0, 1.0}); +``` + +More on modelling with STARK in the upcoming "Physical Models" chapter. + +## Writing VTK files + +STARK writes frame geometry in VTK format. +It will write meshes automatically every frame as you would expect. +Further, the built in helpers if you want to write your own geometry: + +```cpp +stark::write_VTK("points.vtk", vertices, points); +stark::write_VTK("edges.vtk", vertices, edges); +stark::write_VTK("surface.vtk", vertices, triangles); +stark::write_VTK("volume.vtk", vertices, tets); + +// Triangle meshes can optionally include generated vertex normals. +stark::write_VTK("surface_with_normals.vtk", vertices, triangles, true); +``` + +Or use `vtkio` directly: + +```cpp +vtkio::VTKFile vtk_file; +vtk_file.set_points_from_twice_indexable(vertices); +vtk_file.set_cells_from_twice_indexable(tets, vtkio::CellType::Tetra); +vtk_file.write("frame_0000.vtk"); +``` + +## Registering simulation output + +Most STARK systems expose output helpers that register geometry to be written every frame. For deformables, typical calls look like this: + +```cpp +simulation.deformables->output->add_tet_mesh("tets", nodeset, tets); +simulation.deformables->output->add_triangle_mesh("surface", nodeset, triangles, tri_tet_map); +simulation.deformables->output->add_segment_mesh("edges", nodeset, edges, edge_tet_map); +simulation.deformables->output->add_point_set("points", nodeset); +``` + +The name passed to the output helper becomes part of the filename. Internally, frame paths are generated as + +```text +/__.vtk +``` + +Frame writing is controlled by: + +| Setting | Meaning | +|---|---| +| `settings.output.enable_frame_writes` | Enables/disables frame file output. | +| `settings.output.fps` | Output frame rate. `30` writes 30 frames per simulated second; `-1` writes every time step. | + + +### Custom per-frame output callbacks + +The frame writer is callback-based. STARK's built-in output systems use the same mechanism: register a function that is executed whenever a frame is written. + +```cpp +stark.callbacks->add_write_frame([&]() { + const std::string path = stark.get_frame_path("debug_surface") + ".vtk"; + stark::write_VTK(path, debug_vertices, debug_triangles, true); +}); +``` + +## Visualizing VTK output + +### Blender + +For rendering and animation, VTK sequences can be imported into Blender with the [Blender Sequence Loader](https://github.com/InteractiveComputerGraphics/blender-sequence-loader) add-on. The add-on loads mesh sequences just-in-time as the Blender frame changes, which avoids loading the full simulation into memory at once. It supports common geometric data such as points, lines, triangles, quads, and can extract surface meshes from tetrahedral or hexahedral volume meshes. + +```{figure} ../_static/blender.png +:alt: STARK VTK output rendered in Blender +:width: 90% + +STARK frame sequence loaded in Blender with Sequence Loader. +``` + + +### ParaView + +For scientific inspection, ParaView is the recommended viewer for STARK output. Open one of the generated `.vtk` files, or open the file sequence if the filenames share the same prefix and increasing frame index. + +```{figure} ../_static/paraview.png +:alt: STARK VTK output opened in ParaView +:width: 90% + +STARK frame sequence visualized in ParaView. +``` + + +## Console output + +A normal STARK run prints four main sections: settings, SymX compilation/loading, simulation progress, and final summary. + +### Settings header + +At startup, STARK prints the effective settings used by the run. +The following is a representative selection: + +```text +================================== Settings ============================== +Stark Settings + Output + simulation_name: "spinning_box_cloth" + output_directory: ".../build/output/spinning_box_cloth" + codegen_directory: ".../build/codegen" + fps: 30 + console_verbosity: Summary + file_verbosity: Full + Simulation + gravity: (0.000000, 0.000000, -9.810000) + max_time_step_size: 3.3333e-02 + use_adaptive_time_step: true + Newton's Method + projection_mode: Progressive + solver: BDPCG + Execution + end_frame: 2147483647 + n_threads: 10 +``` + +### SymX section + +The SymX section reports generated symbolic kernels and compilation/cache status. + +```text +==================================== SymX ================================ +Second Order Potentials: + EnergyBendingFlat...............................................loaded + EnergyLumpedInertia.............................................loaded + EnergyTetStrain.................................................loaded + contact_d_d_pt_pt_cubic.........................queued for compilation + friction_d_d_pt_C0..............................................loaded +Compiling... done. +Total time: 0.712316 s + +Degrees of freedom: +soft.v1: 3267 +rigid.v1: 3 +rigid.w1: 3 +Total: 3273 +``` + +### Simulation section + +The STARK section prints frame markers and one line per solved time step. +The following corresponds to `symx::Verbosity::Summary`: + +```text +==================================== STARK =============================== +[Frame: 0] Time: 0.000 s + 0. dt: 33.33 ms | #newton: 3 | ph: 0.0% | #CG/newton: 43 | ls (cap|max|inv|bt): 0| 0| 0| 0| runtime: 12.7 ms | cr: 0.4 +[Frame: 1] Time: 0.067 s + 1. dt: 33.33 ms | #newton: 8 | ph: 37.9% | #CG/newton: 162 | ls (cap|max|inv|bt): 0| 0| 0| 1| runtime: 80.6 ms | cr: 2.4 +``` + +The main fields are: + +| Field | Meaning | +|---|---| +| `dt` | Current simulation time step. | +| `#newton` | Newton iterations used for this time step. | +| `ph` | Percentage of Hessian blocks projected to positive definite during the solve. | +| `#CG/newton` | Average linear-solver iterations per Newton iteration. | +| `ls (cap\|max\|inv\|bt)` | Line-search counters: step cap reductions, maximum-step reductions, invalid-state rejections, and Armijo backtracking reductions. | +| `runtime` | Wall-clock time for the time-step solve. | +| `cr` | Compute ratio: `runtime / dt`. | + +Contact simulations may also print corrective events, for example: + +```text +Penetration couldn't be avoided. Contact stiffness hardened from 1.0e+05 to 2.0e+05. +``` + +This indicates that STARK detected a failed contact validity condition and increased the offending contact stiffness before retrying. + + +## YAML log structure + +The YAML log is the machine-readable companion to the console output. It is written periodically during the run and once more at the end. Its top-level structure is: + +```yaml +accumulators: + time_steps: 301 + avg dt: 0.03333333 + failed_steps: 0.170669 + newton_iterations: 3636 + cg_iterations: 348569 + ls_inv: 563 + ls_bt: 1633 + projected_hessians_ratio: 245.7605 + +timers: + linear_system_solve: + total: 16.078993 + count: 8154 + avg: 0.001972 + min: 0.000054 + max: 0.011288 + assembly: + total: 3.024711 + count: 11936 + avg: 0.000253 + min: 0.000005 + max: 0.003527 + +statistics: + dt: + total: 10.03333 + avg: 0.03333333 + min: 0.03333333 + max: 0.03333333 + count: 301 + newton_iterations: + total: 3636 + avg: 11.882353 + min: 3 + max: 49 + count: 306 + +series: + time: [0.03333333, 0.06666667, 0.1, ...] + frame: [1, 1, 2, ...] + dt: [0.03333333, 0.03333333, 0.03333333, ...] + newton_iterations: [3, 7, 8, ...] +``` + +The sections have different purposes: + +| Section | Purpose | +|---|---| +| `accumulators` | Totals or last accumulated values over the full run. | +| `timers` | Runtime measurements for named code regions. Each timer stores total time, call count, average, minimum, and maximum. | +| `statistics` | Aggregated statistics for scalar quantities such as `dt`, Newton iterations, CG iterations, and Hessian projection ratio. | +| `series` | Per-step time series useful for plotting convergence, time-step changes, or solver cost over time. | + + +## Final summary + +At the end of the run, STARK prints a compact summary of the simulation, solve statistics, and runtime breakdown. + +```text +================================== Summary =============================== +Info + Name: spinning_box_cloth + Simulation time: 10.033 s + ndofs: 3273 + Frames: 301 + Time steps: 301 + dt [ms]: avg: 33.3 | min: 33.3 | max: 33.3 + + Solve Total Avg Min Max + -------------------------------------------------------------- + Newton iterations 3636 11.9 3 49 + CG iterations 348569 92.2 1 275 + Line search inv 563 0.2 0 8 + Line search bt 1633 0.4 0 6 + Projected hessians 6.5% 0.0% 99.0% + + Runtime Time (s) % + ------------------------------------------------------------ + linear_system_solve 16.078993 46.6% + before_energy_evaluation 8.025052 23.3% + evaluate_P_grad_hess 3.035306 8.8% + assembly 3.024711 8.8% + project_to_PD 1.711081 5.0% + write_frame 0.129421 0.4% + ------------------------------------------------------------ + Total 34.473580 100.0% +``` + + +## Practical notes + +- Keep `output_directory` separate for each experiment to avoid mixing frame sequences. +- Keep `codegen_directory` persistent between runs to benefit from SymX kernel caching. +- Use `console_verbosity = Summary` for normal runs and higher verbosity when debugging. +- Use the `.yaml` log for plots and comparisons instead of scraping console output. +- Disable frame writes for timing benchmarks unless visualization output is part of what you want to measure. +- Prefer VTK for simulation output, ParaView for quick inspection, and Blender/Sequence Loader for final rendering. diff --git a/_sources/presets.md.txt b/_sources/presets.md.txt new file mode 100644 index 00000000..c0d39c4c --- /dev/null +++ b/_sources/presets.md.txt @@ -0,0 +1,180 @@ +# Presets + +Presets are the most convenient way to declare a simulation. +They combine state and energy registration, and optionally geometry generation in a single call. +Most of the examples bundled with STARK use presets. + +Access them via `simulation.presets->deformables` and `simulation.presets->rigidbodies` (C++), or `simulation.presets().deformables()` / `simulation.presets().rigidbodies()` (Python). + +## Handlers + +Every preset returns a **VCH** (Vertex-Connectivity-Handler) struct with three fields: + +- **`vertices`** — the generated vertex positions +- **`triangles` / `segments` / `tets`** — the generated connectivity (type depends on preset) +- **`handler`** — sub-handlers for each registered energy model, plus a `PointSetHandler` for transforms and a `ContactHandler` for friction + + +## Deformable Presets + +All deformable presets register: **lumped inertia** + the appropriate **deformation energy** + **contact**. + +### Volume (Soft Body) + +A tet mesh filling an axis-aligned box, or any custom tet mesh. +Registered energies: `EnergyLumpedInertia` + `EnergyTetStrain`. + +```cpp +// Uniform tet grid +auto [V, T, H] = simulation.presets->deformables->add_volume_grid( + "body", + Eigen::Vector3d(0.1, 0.1, 0.2), // physical size (m) + {3, 3, 6}, // subdivisions per axis + stark::Volume::Params::Soft_Rubber() +); + +// Custom tet mesh (e.g. from TetGen / Gmsh) +auto [V, T, H] = simulation.presets->deformables->add_volume("body", vertices, tets, params); +``` + +`H` is a `Volume::Handler` with fields: `point_set`, `inertia`, `strain`, `contact`. + +**Material parameters:** +```cpp +stark::Volume::Params params = stark::Volume::Params::Soft_Rubber(); + +params.inertia.density = 1000.0; // kg/m³ +params.inertia.damping = 0.1; + +params.strain.elasticity_only = false; +params.strain.youngs_modulus = 1e4; +params.strain.poissons_ratio = 0.3; +params.strain.strain_limit = 1.0; +params.strain.strain_limit_stiffness = 1e2; +params.strain.damping = 0.0; + +params.contact.thickness = 0.001; +``` + +### Surface (Cloth / Shell) + +A triangle mesh, flat grid or custom, with in-plane strain and optional bending. +Registered energies: `EnergyLumpedInertia` + `EnergyTriangleStrain` + `EnergyDiscreteShells`. + +```cpp +// Flat grid +auto [V, T, H] = simulation.presets->deformables->add_surface_grid( + "cloth", + Eigen::Vector2d(0.5, 0.5), // physical size in X and Y + {30, 30}, // vertex count per axis + stark::Surface::Params::Cotton_Fabric() +); + +// Custom triangle mesh +auto [V, T, H] = simulation.presets->deformables->add_surface("cloth", vertices, triangles, params); +``` + +`H` is a `Surface::Handler` with fields: `point_set`, `inertia`, `strain`, `bending`, `contact`. + +**Material parameters:** +```cpp +stark::Surface::Params params = stark::Surface::Params::Cotton_Fabric(); + +params.inertia.density = 0.2; // kg/m² +params.inertia.damping = 0.1; + +params.strain.elasticity_only = false; +params.strain.thickness = 0.001; // m +params.strain.youngs_modulus = 5e3; +params.strain.poissons_ratio = 0.3; +params.strain.strain_limit = 0.1; +params.strain.strain_limit_stiffness = 1e6; +params.strain.damping = 0.1; + +params.bending.flat_rest_angle = true; +params.bending.stiffness = 1e-6; +params.bending.damping = 0.01; + +params.contact.thickness = 0.001; +``` + +### Line (Rod / Cable) + +A 1D chain of segments. +Registered energies: `EnergyLumpedInertia` + `EnergySegmentStrain`. + +```cpp +// Straight rod with uniform segments +auto [V, S, H] = simulation.presets->deformables->add_line_as_segments( + "rod", + Eigen::Vector3d(0, 0, 0), // start + Eigen::Vector3d(1, 0, 0), // end + 20, // number of segments + stark::Line::Params::Elastic_Rubberband() +); + +// Arbitrary geometry +auto [V, S, H] = simulation.presets->deformables->add_line("rod", vertices, segments, params); +``` + +`H` is a `Line::Handler` with fields: `point_set`, `inertia`, `strain`, `contact`. + +**Material parameters:** +```cpp +stark::Line::Params params = stark::Line::Params::Elastic_Rubberband(); + +params.inertia.density = 0.05; // kg/m +params.inertia.damping = 0.1; + +params.strain.elasticity_only = false; +params.strain.section_radius = 0.002; // m +params.strain.youngs_modulus = 1e4; +params.strain.strain_limit = 0.1; +params.strain.strain_limit_stiffness = 1e5; +params.strain.damping = 1e-4; + +params.contact.thickness = 0.001; +``` + + + +### Prescribed Surface + +A surface with zero dynamic DOFs — vertices follow exactly the transformation you script. +Useful for kinematic obstacles and animated rigid-looking objects that need contact. +Registered energies: `EnergyPrescribedPositions` + contact. + +```cpp +auto H = simulation.presets->deformables->add_prescribed_surface( + "obstacle", vertices, triangles, stark::PrescribedSurface::Params() +); +``` + +## Rigid Body Presets + +Rigid body presets register inertia and attach a collision/render mesh. +The inertia tensor is computed automatically from the chosen shape. + +```cpp +// Box (uniform cube or non-uniform) +auto [V, T, H] = simulation.presets->rigidbodies->add_box("box", mass, 0.1); // cube side +auto [V, T, H] = simulation.presets->rigidbodies->add_box("box", mass, size_vec3); // non-uniform + +// Sphere +auto [V, T, H] = simulation.presets->rigidbodies->add_sphere("ball", mass, radius); + +// Cylinder +auto [V, T, H] = simulation.presets->rigidbodies->add_cylinder("cyl", mass, radius, height); + +// Torus +auto [V, T, H] = simulation.presets->rigidbodies->add_torus("torus", mass, outer_r, inner_r); + +// Custom mesh +auto H = simulation.presets->rigidbodies->add( + "body", mass, inertia_tensor_local, vertices, triangles +); +``` + +`H.rigidbody` is the `RigidBodyHandler` for motion control (see [Rigid Bodies](rigidbodies.md)). +`H.contact` is the `ContactHandler` for friction pairing (see [Contact](contact.md)). + diff --git a/_sources/problem_representation.md.txt b/_sources/problem_representation.md.txt new file mode 100644 index 00000000..d7d93537 --- /dev/null +++ b/_sources/problem_representation.md.txt @@ -0,0 +1,50 @@ +# Problem Representation + +Every STARK simulation is built from two ingredients: **state** (inertial point and rigid body systems) and **energies** (the physics that act on that state). + +## State + +STARK maintains two global state systems: + +- **Point sets**: `PointDynamics` holds all deformable objects. +When you add a cloth, a tet mesh, or a cable, its state is appended to one shared array of 3D positions and velocities. +This flat representation gives a clean internal structure and improves parallelization and vectorization. +Each object is identified by its `PointSetHandler`. +- **Rigid bodies**: `RigidBodyDynamics` holds one entry per rigid body, each representing a translation (3 DOFs) and an orientation quaternion mapped to an angular velocity (3 DOFs). +Like point sets, all rigid bodies live in a single shared array. +Each body is identified by its `RigidBodyHandler`. + + +## Energies + +Mechanical effects and constraints are expressed as energy potentials that are functions of the current state. +SymX differentiates them automatically to produce gradient and Hessian contributions to the Newton solver. +Energies fall into three natural groups: + +**Deformable energies** — act exclusively on point sets: + +| Energy | Purpose | +|---|---| +| `EnergyLumpedInertia` | Mass and Rayleigh damping for any topology (edges, triangles, tets) | +| `EnergyPrescribedPositions` | Penalty-based kinematic boundary conditions | +| `EnergySegmentStrain` | 1D stretching for rods and cables | +| `EnergyTriangleStrain` | 2D membrane strain for cloth and shells | +| `EnergyDiscreteShells` | Bending stiffness (Bergou discrete shells) | +| `EnergyTetStrain` | 3D volumetric FEM for soft bodies | + +**Rigid body energies** — act exclusively on rigid bodies: + +| Energy | Purpose | +|---|---| +| `EnergyRigidBodyInertia` | Mass, inertia tensor, and Rayleigh damping | +| `EnergyRigidBodyConstraints` | All joints, motors, and springs between bodies | + +**Coupling energies** — bridge the two state systems (or bodies of the same system): + +| Energy | Purpose | +|---|---| +| `EnergyFrictionalContact` | IPC-based frictional contact (d–d, rb–d, rb–rb) | +| `EnergyAttachments` | Penalty-based gluing of surface/point pairs | + +Modelling an object typically requires composing multiple energies (e.g. inertia + triangle strain + bending for cloth). +[Presets](presets.md) wrap the most common combinations into single calls. diff --git a/_sources/rb_constraints.md.txt b/_sources/rb_constraints.md.txt new file mode 100644 index 00000000..3a1ee6bc --- /dev/null +++ b/_sources/rb_constraints.md.txt @@ -0,0 +1,387 @@ +# Rigid Body Constraints + +Rigid body constraints restrict and drive rigid body motion: they attach bodies, build joints, add springs, and control velocity. + +Each `add_constraint_*()` call returns a handle for adjusting parameters, enabling/disabling, labeling, or querying the constraint violation. + +```cpp +// Global defaults used by subsequently created hard constraints. +simulation.rigidbodies->set_default_constraint_stiffness(1e6); +simulation.rigidbodies->set_default_constraint_distance_tolerance(1e-3); // m +simulation.rigidbodies->set_default_constraint_angle_tolerance(1.0); // deg + +// Example: a hinge joint between two rigid bodies. +auto hinge = simulation.rigidbodies->add_constraint_hinge( + body_a, + body_b, + pivot_point, // world-space point at creation time + hinge_axis // world-space direction at creation time +); + +hinge.set_stiffness(1e8); +hinge.set_tolerance_in_m(1e-4); +hinge.set_tolerance_in_deg(0.1); +hinge.set_label("main_hinge"); +``` + +## How constraints work + +STARK rigid body constraints are implemented as **energy terms** in the global optimization problem. +Most rigid body constraints are defined from points or directions given in world coordinates at creation time. + +Hard constraints use finite stiffness with a tolerance. +After convergence, STARK checks the violation and hardens stiffness if the tolerance is exceeded, avoiding the need to manually tune very large stiffness values. + +There are two important categories: + +- **Primitive constraints** are the actual energy terms registered in SymX. +- **Composed constraints** are convenience joints built by combining primitive constraints. + + +## Common handle operations + +All constraint handles support basic operations such as: + +```cpp +constraint.set_label("name"); // Used for traceability +constraint.enable(true); // activate +constraint.enable(false); // deactivate +``` + +Hard positional constraints usually provide: + +```cpp +constraint.set_stiffness(1e8); +constraint.set_tolerance_in_m(1e-4); +``` + +Hard directional constraints usually provide: + +```cpp +constraint.set_stiffness(1e8); +constraint.set_tolerance_in_deg(1.0); +``` + +Velocity controllers and springs expose their physical parameters directly, such as target velocity, maximum force, maximum torque, damping, or rest length. + +## Primitive Constraints + +Primitive constraints are the low-level constraint energies implemented by STARK. The higher-level joints later in this page are built from these pieces. + +### Global Point + +Fixes one body-local point to a target point in world space. + +```cpp +auto c = simulation.rigidbodies->add_constraint_global_point( + body, + world_point +); +``` + +### Global Direction + +Aligns one body-local direction with a target direction in world space. + +```cpp +auto c = simulation.rigidbodies->add_constraint_global_direction( + body, + world_direction +); +``` + +### Point + +Constrains one point on body A to coincide with one point on body B. This is the primitive ball-joint constraint. + +```cpp +auto c = simulation.rigidbodies->add_constraint_point( + body_a, + body_b, + world_point +); +``` + +### Point on Axis + +Constrains a point on body B to lie on an axis attached to body A. + +```cpp +auto c = simulation.rigidbodies->add_constraint_point_on_axis( + body_a, + body_b, + world_point, + world_axis +); +``` + + +### Distance + +Constrains the distance between two body-local points to remain equal to the distance at creation time. + +```cpp +auto c = simulation.rigidbodies->add_constraint_distance( + body_a, + body_b, + point_on_a_world, + point_on_b_world +); +``` + +### Distance Limits + +Constrains the distance between two body-local points to remain inside an interval. + +```cpp +auto c = simulation.rigidbodies->add_constraint_distance_limits( + body_a, + body_b, + point_on_a_world, + point_on_b_world, + min_distance, + max_distance +); +``` + +### Direction + +Aligns one body-local direction on body A with one body-local direction on body B. + +```cpp +auto c = simulation.rigidbodies->add_constraint_direction( + body_a, + body_b, + world_direction +); +``` + +### Angle Limit + +Restricts the angle between two body-local directions. + +```cpp +auto c = simulation.rigidbodies->add_constraint_angle_limit( + body_a, + body_b, + world_direction, + admissible_angle_deg +); +``` + +### Damped Spring + +Adds a damped linear spring between two body-local points. + +```cpp +auto spring = simulation.rigidbodies->add_constraint_spring( + body_a, + body_b, + point_on_a_world, + point_on_b_world, + stiffness, + damping // optional, default 0.0 +); +``` + +### Linear Velocity + +Drives the relative linear velocity of body B with respect to body A along a direction attached to body A. + +```cpp +auto c = simulation.rigidbodies->add_constraint_linear_velocity( + body_a, + body_b, + world_direction, + target_v, // m/s + max_abs_force, // N + delay // optional, default 0.01 s +); +``` + +### Angular Velocity + +Drives the relative angular velocity of body B with respect to body A around a direction attached to body A. + +```cpp +auto c = simulation.rigidbodies->add_constraint_angular_velocity( + body_a, + body_b, + world_axis, + target_w, // rad/s + max_abs_torque, // Nm + delay // optional, default 0.01 s +); +``` + + +## Composed Constraints + +Composed constraints are convenience APIs that combine primitive constraints. They return composed handles that forward stiffness, tolerance, label, and activation changes to the underlying primitives. + +### Fix + +Fixes a rigid body in world space by combining one global point constraint with two global direction constraints. + +```cpp +auto fix = simulation.rigidbodies->add_constraint_fix(body); +``` + +The body is fixed at its current pose at creation time.The typical scripting pattern: create a fix, then update its target transformation each step. + +```cpp +auto fix = simulation.rigidbodies->add_constraint_fix(body); + +simulation.add_time_event(0.0, duration, [&](double t) { + fix.set_transformation( + Eigen::Vector3d(0.0, 0.0, 0.2 * t), // target translation + 30.0 * t, // angle in degrees + Eigen::Vector3d::UnitZ() // rotation axis + ); +}); +``` + +### Attachment + +Rigidly attaches two bodies together, producing a zero-DOF joint. + +```cpp +auto attachment = simulation.rigidbodies->add_constraint_attachment( + body_a, + body_b +); +``` + +The attachment is created at the midpoint between the current body translations and locks the relative orientation with two direction constraints. + + +### Point with Angle Limit + +Combines a point constraint with an angular range limit. + +```cpp +auto joint = simulation.rigidbodies->add_constraint_point_with_angle_limit( + body_a, + body_b, + pivot_point, + limit_axis, + admissible_angle_deg +); +``` + +Conceptually, this behaves like a ball joint with an angular cone limit. + +### Hinge + +Creates a one-DOF hinge joint: the bodies share a pivot point and may rotate relative to each other around the hinge axis. + +```cpp +auto hinge = simulation.rigidbodies->add_constraint_hinge( + body_a, + body_b, + pivot_point, + hinge_axis +); +``` + + +### Hinge with Angle Limit + +Creates a hinge joint with a symmetric angular limit around the hinge axis. + +```cpp +auto hinge = simulation.rigidbodies->add_constraint_hinge_with_angle_limit( + body_a, + body_b, + pivot_point, + hinge_axis, + admissible_angle_deg +); +``` + + +### Spring with Limits + +Adds a damped spring and additionally constrains its length to remain inside a prescribed interval. + +```cpp +auto spring = simulation.rigidbodies->add_constraint_spring_with_limits( + body_a, + body_b, + point_on_a_world, + point_on_b_world, + spring_stiffness, + min_length, + max_length, + damping // optional, default 0.0 +); +``` + +The spring stiffness and the hard distance-limit stiffness are independent. The composed handle exposes `set_spring_stiffness()` for the spring and `set_stiffness()` for the distance limits. + +### Slider + +Creates a slider-like joint where a point on one body can move along an axis attached to the other body. + +```cpp +auto slider = simulation.rigidbodies->add_constraint_slider( + body_a, + body_b, + pivot_point, + slide_axis +); +``` + +This permits sliding along the axis while keeping the corresponding body directions aligned. + +### Prismatic Slider + +Creates a stricter prismatic joint by adding an additional orthogonal direction lock to the slider. + +```cpp +auto slider = simulation.rigidbodies->add_constraint_prismatic_slider( + body_a, + body_b, + pivot_point, + slide_axis +); +``` + +This keeps the bodies aligned as a prismatic pair while allowing translation along the slide axis. + +### Prismatic Press + +Creates a prismatic slider driven by a force-limited linear velocity controller. + +```cpp +auto press = simulation.rigidbodies->add_constraint_prismatic_press( + body_a, + body_b, + pivot_point, + slide_axis, + target_v, + max_force, + delay // optional, default 0.01 s +); +``` + +This is useful for grippers, presses, pistons, and other constrained linear actuators. + +### Motor + +Creates a hinge driven by a torque-limited angular velocity controller. + +```cpp +auto motor = simulation.rigidbodies->add_constraint_motor( + body_a, + body_b, + pivot_point, + rotation_axis, + target_w, + max_torque, + delay // optional, default 0.01 s +); +``` + +This is the standard rigid body rotational motor. + diff --git a/_sources/rigidbodies.md.txt b/_sources/rigidbodies.md.txt new file mode 100644 index 00000000..b5b04916 --- /dev/null +++ b/_sources/rigidbodies.md.txt @@ -0,0 +1,84 @@ +# Rigid Bodies + +STARK's rigid body system handles articulated mechanisms. +The main entry point is `simulation.rigidbodies`. + +To declare a rigid body without a preset (no mesh, no collision), you can use: + +```cpp +Eigen::Matrix3d I = stark::inertia_tensor_box(mass, size); +RigidBodyHandler rb = simulation.rigidbodies->add(mass, I); +``` + +Helper functions cover common shapes: `inertia_tensor_box`, `inertia_tensor_sphere`, `inertia_tensor_cylinder`, `inertia_tensor_torus`. + +--- + +## RigidBodyHandler + +`RigidBodyHandler` is the primary handle for controlling a single rigid body. + +### Transforms (pre-simulation setup) + +```cpp +rb.set_translation({0.0, 0.0, 1.0}); +rb.add_translation({0.0, 0.0, 0.5}); +rb.set_rotation(45.0, {0.0, 0.0, 1.0}); // angle_deg, axis +rb.add_rotation(10.0, {0.0, 1.0, 0.0}); +``` + +### Velocities + +```cpp +rb.set_velocity({1.0, 0.0, 0.0}); +rb.set_angular_velocity({0.0, 0.0, 3.14}); +``` + +### External forces and torques + +Forces and torques accumulate across calls and are reset each time step. + +```cpp +rb.add_force_at_centroid({0.0, 0.0, -9.81 * mass}); +rb.add_force_at(force_world, application_point_world); // also induces torque +rb.add_torque({0.0, 0.0, 1.0}); +``` + +### Coordinate transforms + +```cpp +Eigen::Vector3d x_world = rb.transform_local_to_global_point({0.0, 0.0, 0.5}); +Eigen::Vector3d d_world = rb.transform_local_to_global_direction({1.0, 0.0, 0.0}); +Eigen::Matrix3d R = rb.get_rotation_matrix(); +``` + +--- + +## Scripting Rigid Bodies + +The most common pattern is to fix a body and drive it with a prescribed trajectory. +A scripted box spinning over time looks like: + +```cpp +auto fix = simulation.rigidbodies->add_constraint_fix(rb); +simulation.add_time_event(0.0, duration, [&](double t) { + fix.set_transformation( + Eigen::Vector3d(0, 0, 0), + t * 90.0, + Eigen::Vector3d(0, 0, 1) + ); +}); +``` + +## Output + +Rigid body mesh output is handled by the presets automatically. +For custom rigid bodies, register the mesh explicitly: + +```cpp +simulation.presets->rigidbodies->add( + "my_body", mass, I, + collision_vertices, collision_triangles, + render_vertices, render_triangles +); +``` diff --git a/_sources/settings.md.txt b/_sources/settings.md.txt new file mode 100644 index 00000000..2414bc56 --- /dev/null +++ b/_sources/settings.md.txt @@ -0,0 +1,177 @@ +# Settings + +All STARK configuration is collected in a single `stark::Settings` object that is passed to the `stark::Simulation` constructor. +STARK owns the output, simulation, and execution settings, while the nonlinear solver settings are provided by SymX through `symx::NewtonSettings`. +At minimum, a simulation should provide a name and an output directory. + +It is **strongly recommended** to review all available options; the right tolerances, solver, and time step often depend on the problem at hand. +The difference in performance and accuracy between a good and a bad setup can be very significant. + +The following is a typical lean configuration that relies almost entirely on defaults: + +```cpp +#include + +int main() +{ + stark::Settings settings; + + // Required output settings + settings.output.simulation_name = "hanging_cloth"; + settings.output.output_directory = OUTPUT_PATH + "/hanging_cloth"; + + // Typical simulation controls + settings.execution.end_simulation_time = 5.0; + settings.simulation.max_time_step_size = 1.0 / 30.0; + settings.simulation.init_frictional_contact = false; + settings.newton.step_tolerance = 1e-3; // [m/s] + settings.newton.residual_tolerance_abs = 1e-3; // [N] + + stark::Simulation simulation(settings); + simulation.run(); +} +``` + +## Convergence +Before all the options are introduced, it is important to highlight the importance of convergence. +The following are the options given by STARK/SymX: +- `newton.min_iterations` can be used to enforce at least N corrections are applied, even if already converged. Setting this to 1 can prevent subtle motions from freezing. +- There are four main convergence options. Convergence is granted once one of them is true: + - $\| \nabla_x G \| <$ `newton.residual_tolerance_abs` in Newtons. + - $\frac{\| \nabla_x G \|}{\| \nabla_x G_0 \|} <$ `newton.residual_tolerance_rel` + - $\| \Delta \mathbf x \|_{\infty} < $ `newton.step_tolerance` the Newton step in m/s. + - `newton.max_iterations` reached and `newton.max_iterations_as_success = true` + +Most often when simulations are slow or behave unrealistically it is because the convergence criteria and tolerances are not set appropriately. +Typically, `newton.step_tolerance` is the most robust general criteria, but it too can be really challenging to obtain in simulations with extreme densities (light or heavy). +Sometimes, shortening the time step size is the best option. +Other times, returning success on a fixed amount of Newton iterations is justified. + + +## Structure + +`stark::Settings` is organized into four sections: + +| Section | Type | Purpose | +|---|---|---| +| `settings.output` | `stark::Settings::Output` | Paths, frame writing, console output, and log files. | +| `settings.simulation` | `stark::Settings::Simulation` | Global physical and time-stepping parameters. | +| `settings.newton` | `symx::NewtonSettings` | SymX nonlinear solver, line search, Hessian projection, and linear solver settings. | +| `settings.execution` | `stark::Settings::Execution` | Runtime limits and thread count. | + +STARK applies defaults in `Settings::Settings()`: it sets the timestamp, picks a codegen directory from SymX, sets the default thread count, and overrides some SymX Newton defaults for simulation use. +The tables below list the effective STARK defaults. + +## Output settings + +Output settings control where STARK writes generated code, logs, and frame data. +`simulation_name`, `output_directory`, and `codegen_directory` must be non-empty when the internal `Stark` object is constructed. +By default, `codegen_directory` is filled from `symx::get_codegen_dir()`. + +| Field | Effective default | Description | +|---|---:|---| +| `simulation_name` | `""` | Name of the simulation. Used in log and frame file names. Must be set by the user. | +| `output_directory` | `""` | Directory where STARK writes logs and frame output. Must be set by the user. | +| `codegen_directory` | `symx::get_codegen_dir()` | Directory used by SymX for generated and compiled code. Cached code can be reused between runs. | +| `time_stamp` | creation time | Timestamp string generated when `Settings` is constructed, formatted as `YYYY-MM-DD__hh-mm-ss`. Used to avoid log-file collisions. | +| `fps` | `30` | Frame output rate in simulation frames per second. Use `fps < 0` to write every accepted time step, and `fps == 0` to disable frame-write callbacks. | +| `console_verbosity` | `symx::Verbosity::Summary` | Console verbosity. Common values are `Minimal`, `Summary`, `Medium`, and `Full`. | +| `file_verbosity` | `symx::Verbosity::Full` | Verbosity of the `.log` file written next to the simulation output. | +| `enable_frame_writes` | `true` | Enables frame writing after accepted time steps. Useful to disable heavy VTK/output callbacks while keeping the simulation and logs active. | +| `enable_output` | `true` | Enables the SymX output sink. Set to `false` to silence normal console/file output. | + +## Simulation settings + +Simulation settings control global physical parameters and adaptive time stepping. +The time step starts at `max_time_step_size`. +A successful step may grow `dt` up to this maximum. +A failed step halves `dt` and retries, unless adaptive stepping is disabled. + +| Field | Effective default | Description | +|---|---:|---| +| `gravity` | `{0.0, 0.0, -9.81}` | Global gravity acceleration used by STARK systems that query the simulation gravity. Can also be changed later with `simulation.set_gravity(...)`. | +| `init_frictional_contact` | `true` | Initializes the frictional contact infrastructure. Set to `false` for examples without contact to reduce setup/runtime overhead. | +| `max_time_step_size` | `1.0 / 30.0` | Maximum time step size, and also the initial `dt`. | +| `use_adaptive_time_step` | `true` | If `true`, failed difficult steps reduce `dt` and retry. If `false`, such failures stop the simulation. | +| `time_step_size_success_multiplier` | `1.05` | Multiplicative growth factor applied to `dt` after a successful accepted step, clamped by `max_time_step_size`. | +| `time_step_size_lower_bound` | `1e-6` | Minimum allowed adaptive time step. If `dt` drops below this value, STARK stops with an error. | + +## Newton settings + +`settings.newton` is a `symx::NewtonSettings` object. +These settings are passed to SymX when STARK creates the internal Newton solver during initialization. + +### Iteration and convergence + +| Field | Effective default | Description | +|---|---:|---| +| `max_iterations` | `INT_MAX` | Maximum Newton iterations per solve. The default is effectively unlimited. | +| `min_iterations` | `0` | Minimum Newton iterations before convergence is accepted. | +| `residual_tolerance_abs` | `1e-6` | Absolute convergence tolerance on the nonlinear residual. | +| `residual_tolerance_rel` | `0.0` | Relative convergence tolerance on the nonlinear residual. Disabled by default. | +| `step_tolerance` | `1e-3` | Convergence tolerance on the Newton step size. STARK overwrites the raw SymX default of `1e-6`. | +| `max_iterations_as_success` | `false` | If `true`, reaching `max_iterations` is treated as a successful solve instead of a failure. | + +### Line search + +| Field | Effective default | Description | +|---|---:|---| +| `step_cap` | `infinity` | Maximum allowed Newton step norm. Use this to limit aggressive updates in difficult problems. | +| `enable_armijo_backtracking` | `true` | Enables Armijo backtracking for sufficient energy decrease. | +| `line_search_armijo_beta` | `1e-4` | Armijo sufficient-decrease parameter. Smaller values accept weaker agreement with the local model. | +| `max_backtracking_armijo_iterations` | `20` | Maximum number of Armijo backtracking iterations per Newton step. | +| `max_backtracking_invalid_state_iterations` | `8` | Maximum number of backtracking iterations caused by invalid intermediate states, such as contact penetration. | +| `print_line_search_upon_failure` | `false` | Prints additional line-search information when a solve fails. Useful for debugging. | + +### Hessian projection + +SymX can modify local Hessians to obtain a positive-definite global system for Newton-like descent directions. +This is important for robust implicit time stepping, especially with nonlinear materials and contact. + +| Field | Effective default | Description | +|---|---:|---| +| `projection_mode` | `Progressive` | Hessian projection strategy. STARK overwrites the raw SymX default of `ProjectedNewton`. | +| `projection_eps` | `1e-10` | Minimum eigenvalue used by projection. | +| `project_to_pd_use_mirroring` | `false` | If `true`, negative eigenvalues are mirrored instead of clamped. | +| `project_on_demand_countdown` | `4` | Number of iterations to continue projecting after a projection-triggering failure in `ProjectOnDemand` mode. | +| `ppn_tightening_factor` | `0.5` | Tightening factor used by progressive projected Newton after non-descending behavior. | +| `ppn_release_factor` | `2.0` | Release factor used by progressive projected Newton after successful behavior. | + +Available projection modes: + +| Value | Meaning | +|---|---| +| `symx::ProjectionToPD::Newton` | Pure Newton. Do not project Hessians. Fast, but not guaranteed to produce descent directions for indefinite problems. | +| `symx::ProjectionToPD::ProjectedNewton` | Always project local Hessians to positive definite before assembly. Robust, but potentially more expensive. | +| `symx::ProjectionToPD::ProjectOnDemand` | Start without projection and enable it after solver failures or non-descending directions. | +| `symx::ProjectionToPD::Progressive` | Progressively adjusts projection based on solve behavior. This is STARK's default. | + +### Linear solver + +| Field | Effective default | Description | +|---|---:|---| +| `linear_solver` | `symx::LinearSolver::BDPCG` | Linear solver used for the Newton system. | +| `cg_max_iterations` | `10000` | Maximum conjugate-gradient iterations. Used by iterative solvers. | +| `cg_abs_tolerance` | `1e-12` | Absolute CG residual tolerance. | +| `cg_rel_tolerance` | `1e-4` | Relative CG residual tolerance. | +| `cg_stop_on_indefiniteness` | `true` | Stops CG when indefiniteness is detected. This can trigger projection or failure handling depending on the projection mode. | +| `bailout_residual` | `1e-10` | Skips taking a step if the nonlinear residual is already below this value, avoiding unnecessary unstable linear solves near convergence. | + +Available linear solvers: + +| Value | Meaning | +|---|---| +| `symx::LinearSolver::BDPCG` | Block-diagonal preconditioned conjugate gradient. Default. | +| `symx::LinearSolver::DirectLLT` | Direct LLT solve. Useful for smaller problems or debugging. | + +## Execution settings + +Execution settings control when the simulation stops and how many CPU threads are forwarded to SymX. +They are independent of physical time-stepping parameters. + +| Field | Effective default | Description | +|---|---:|---| +| `allowed_execution_time` | `std::numeric_limits::max()` | Wall-clock runtime limit in seconds. STARK stops when this limit is exceeded. | +| `end_simulation_time` | `std::numeric_limits::max()` | Simulated-time limit. Commonly set in examples, e.g. `settings.execution.end_simulation_time = 5.0;`. | +| `end_frame` | `std::numeric_limits::max()` | Frame-count limit. STARK stops when the frame counter exceeds this value. | +| `n_threads` | `omp_get_max_threads() / 2` | Number of threads forwarded to the SymX context. The raw member initializer is `-1`, but STARK replaces it at construction time with half of the OpenMP maximum. Set this explicitly for reproducible CPU usage. | diff --git a/_sources/setup.md.txt b/_sources/setup.md.txt new file mode 100644 index 00000000..0624f0f7 --- /dev/null +++ b/_sources/setup.md.txt @@ -0,0 +1,136 @@ +# Setup + +STARK is written in C++ and comes with optional Python bindings (`pystark`). +STARK bundles its main third-party dependencies, including `SymX`, `Eigen`, `fmt`, `TriangleMeshCollisionDetection`, `vtkio`, `par_shapes`, and `tinyobjloader`. +For SymX-specific build options such as AVX2, compiler selection, code-generation folders, and Hessian storage precision, see the [SymX setup page](https://symx.physics-simulation.org/setup.html). + +## Requirements + +| Requirement | Notes | +|---|---| +| CMake | 3.18 or newer | +| C++ compiler | C++20-capable compiler | +| OpenMP | Required by the STARK C++ library | +| Python | Optional; Python 3.8+ with development-module support for `pystark` | +| NumPy | Optional; required when using `pystark` | + +## Project structure + +| Folder | Contents | +|---|---| +| `stark/` | Core C++ library | +| `examples/` | C++ example scenes | +| `tests/` | C++ unit tests | +| `pystark/` | Python package and nanobind bindings | +| `docs/` | Documentation source | + +## Building the C++ library and examples + +From the repository root: + +```bash +cmake -S . -B build +cmake --build build --parallel +``` + +The examples are built by default: + +```bash +./build/examples/examples +``` + +STARK defaults to a Release build when no build type is specified. To choose explicitly: + +```bash +cmake -S . -B build -DCMAKE_BUILD_TYPE=Release +``` + +## Optional tests + +Tests are disabled by default. Enable them at configure time: + +```bash +cmake -S . -B build -DSTARK_BUILD_TESTS=ON +cmake --build build --parallel --target stark_tests +./build/tests/stark_tests +``` + +## Optional Python bindings + +The Python bindings are disabled by default. Enable them with: + +```bash +cmake -S . -B build -DSTARK_BUILD_PYTHON_BINDINGS=ON +cmake --build build --parallel --target pystark +``` + +When using Conda, Miniforge, virtualenv, or multiple Python installations, explicitly select the Python executable: + +```bash +cmake -S . -B build \ + -DSTARK_BUILD_PYTHON_BINDINGS=ON \ + -DSTARK_PYTHON_EXECUTABLE=$HOME/miniforge3/envs/ENVNAME/bin/python + +cmake --build build --parallel --target pystark +``` + +`pystark` uses nanobind, which is fetched automatically by CMake. +The compiled extension module is written directly into the source-tree Python package: + +```txt +pystark/pystark/ +``` + +To import it from the source tree, add the package folder to `PYTHONPATH`: + +```bash +export PYTHONPATH=/path/to/stark/pystark:$PYTHONPATH +``` + +You can also add the path to the built pystark manually from python by +```python +import sys +sys.path.append("path/to/stark/pystark") +``` + +Then verify: + +```python +import pystark + +settings = pystark.Settings() +print(settings.as_string()) +``` + +If Python detection fails, either disable the bindings: + +```bash +cmake -S . -B build -DSTARK_BUILD_PYTHON_BINDINGS=OFF +``` + +or point STARK to a Python environment with development-module support: + +```bash +cmake -S . -B build \ + -DSTARK_BUILD_PYTHON_BINDINGS=ON \ + -DSTARK_PYTHON_EXECUTABLE=$HOME/miniforge3/envs/ENVNAME/bin/python +``` + +If CMake keeps finding the wrong Python, delete the build directory before reconfiguring: + +```bash +rm -rf build +``` + +## CMake options + +| Option | Default | Description | +|---|---:|---| +| `STARK_BUILD_TESTS` | `OFF` | Build the C++ test executable | +| `STARK_BUILD_PYTHON_BINDINGS` | `OFF` | Build the `pystark` Python extension module | +| `STARK_PYTHON_EXECUTABLE` | unset | Explicit Python executable used when building `pystark` | +| `CMAKE_BUILD_TYPE` | `Release` | Build type for single-config generators | + +STARK also forwards or inherits relevant SymX options, including SIMD/JIT/compiler-related settings. +For those, use the SymX setup page as the reference. + diff --git a/_sources/simulation_loop.md.txt b/_sources/simulation_loop.md.txt new file mode 100644 index 00000000..c2d904c3 --- /dev/null +++ b/_sources/simulation_loop.md.txt @@ -0,0 +1,321 @@ +# Simulation Loop + +STARK advances a simulation by repeatedly solving one nonlinear optimization problem per time step. +The public API is intentionally simple: + +```cpp +stark::Simulation simulation(settings); + +// Build objects, materials, contact, boundary conditions, and output... + +simulation.run(); +``` + +Internally, each call to `run_one_time_step()` updates time-dependent data, runs Newton's method via SymX, commits or retries the step, writes frame output, and logs solver statistics. + + +## Optimization Problem + +STARK does **not** solve directly for final _positions_. +For deformable point sets, the primary unknowns are the next-step velocities `v1`. +The next positions are reconstructed by first-order time integration: + +```cpp +x1 = x0 + dt * v1; +``` + +For example, a deformable object contributes one 3D velocity unknown per point: + +```text +soft.v1: 3267 +``` + +Rigid bodies contribute linear and angular velocity unknowns: + +```text +rigid.v1: 3 +rigid.w1: 3 +``` + +All energies are written as functions of the predicted next state. +A minimum of the global potential corresponds to a force balance, found by Newton's method. + + +## Initialization + +The first time a simulation step is requested, STARK initializes the solver: + +1. check that at least one degree of freedom was registered, +2. create the SymX Newton solver from the global potential, +3. compile/load the generated SymX kernels, +4. print the degrees of freedom, +5. write frame zero, +6. run `before_simulation` callbacks, +7. check that the initial state is valid. + + +## High-level time loop + +A simplified version of `simulation.run()` is: + +```cpp +while (!finished) { + script.run_a_cycle(simulation.get_time()); + user_callback(); // optional callback passed to run(...) + + bool keep_running = stark.run_one_step(); + if (!keep_running) { + break; + } +} + +stark.print_summary(); +``` + +The loop stops when one of the configured limits is reached: + +- `settings.execution.end_simulation_time` +- `settings.execution.end_frame` +- `settings.execution.allowed_execution_time` +- the duration passed to `simulation.run(duration)` +- a callback requests termination +- the solver fails in a non-recoverable way + + +## Newton's method inside each step + +The nonlinear solve is handled by the SymX Newton solver. +Check the [original SymX docs](https://symx.physics-simulation.org/newtons_method.html) for more details. + +The simplified inner loop is: + +```text +check initial state validity + +for each Newton iteration: + run before_energy_evaluation callbacks + evaluate energy, gradient, and local Hessians + compute residual + check residual convergence + + repeat: + project local Hessians if needed + assemble/update the global Hessian + solve H * du = -grad + check that du is a descent direction + if not, increase projection and retry + + check step-size convergence + + line search: + apply user step_cap + apply max_allowed_step callbacks + backtrack until intermediate state is valid + backtrack until Armijo sufficient decrease holds + + run optional user convergence callbacks + +check converged-state validity +``` + + +### Hessian projection + +STARK commonly runs with positive-definite Hessian projection enabled. This makes the Newton system more robust for simulation problems whose local Hessians may become indefinite. +Depending on the selected projection mode, SymX can: + +- run pure Newton without projection, +- project all local Hessians, +- project only after a failed linear solve or non-descending direction, +- progressively project selected blocks based on the gradient magnitude. + +The console field `ph` reports the percentage of projected local Hessians during a step. + +### Line search + +The line search has several layers: + +| Stage | Meaning | Typical use | +|---|---|---| +| `cap` | Clamp the update by `settings.newton.step_cap` | Prevent overly large Newton steps | +| `max` | Clamp by `max_allowed_step` callbacks | Continuous collision detection and other hard step limits | +| `inv` | Backtrack while the intermediate state is invalid | Avoid inversions, penetrations, or other invalid states | +| `bt` | Armijo backtracking | Require sufficient energy decrease | + +These are the four counters printed as + +```text +ls (cap|max|inv|bt): 0| 0| 1| 4 +``` + +Large `inv` counts usually indicate that the Newton direction is trying to pass through an invalid state. Large `bt` counts usually indicate that the quadratic model is too optimistic and Armijo has to shrink the step. + +## Adaptive time step + +The time step starts as + +```cpp +dt = settings.simulation.max_time_step_size; +``` + +After a successful accepted step, STARK grows it by + +```cpp +dt = min(max_time_step_size, dt * time_step_size_success_multiplier); +``` + +If Newton fails because the step is too difficult, STARK halves `dt` and retries the same simulation time: + +```cpp +dt *= 0.5; +``` + +If `dt` drops below `settings.simulation.time_step_size_lower_bound`, the simulation exits. + +Some failures do **not** immediately reduce `dt`. For example, a converged state may be rejected by a validity callback because a contact or prescribed-position constraint exceeded its tolerance. In that case, the responsible model may harden a stiffness parameter and STARK retries the same time step with the same `dt`. + +This distinction is important: + +| Failure type | What STARK does | +|---|---| +| invalid converged state | retry same time with modified model parameters | +| too many invalid intermediate states | run invalid-state callbacks, then retry if recoverable | +| too many Newton iterations | halve `dt` if adaptive stepping is enabled | +| Armijo failure | run Armijo-failure callbacks; halve `dt` or exit depending on settings | +| linear solve failure / non-descent | increase projection if possible; otherwise fail the step | + +If adaptive stepping is disabled, a non-recoverable failed step exits the simulation instead of shrinking `dt`. + +## Callbacks + +Callbacks inject behavior into the solver loop. +Most users only need the scripting interface, but lower-level callbacks are useful when extending STARK. + +### STARK-level callbacks + +| Callback | When it runs | Purpose | +|---|---|---| +| `before_simulation` | once during initialization, after frame zero is written | initialize derived data | +| `before_time_step` | before Newton starts | reset unknowns, update forces, update time-step data | +| `on_time_step_accepted` | only after Newton succeeds and the state is accepted | commit the solved state | +| `after_time_step` | after accepting the step, before advancing output/logging is complete | post-step updates | +| `write_frame` | whenever a frame should be written | write VTK/output data | +| `should_continue_execution` | before each attempted step | allow systems/users to stop the simulation | + +The frame-writing callback is how STARK's built-in output system writes registered meshes every frame. +The frame cadence is controlled by `settings.output.fps`. + +### SymX/Newton callbacks +Check the [original SymX docs](https://symx.physics-simulation.org/newtons_method.html) for more details. + +| Callback | When it runs | Purpose | +|---|---|---| +| `before_energy_evaluation` | before each energy or gradient/Hessian evaluation | update collision sets, derived fields, or time-dependent data | +| `is_initial_state_valid` | before Newton starts | reject invalid starting states | +| `max_allowed_step` | before line-search backtracking | impose step limits, commonly from CCD | +| `is_intermediate_state_valid` | during line search | reject invalid intermediate states | +| `on_intermediate_state_invalid` | after too many invalid-state backtracks | harden constraints/contact or report failure | +| `on_armijo_fail` | after too many Armijo backtracks | diagnostics or model adjustment | +| `is_converged` | after a line-search update | add custom convergence criteria | +| `is_converged_state_valid` | after Newton reports success | verify final constraints/contact tolerances | + +Boolean validity callbacks are combined with logical `AND`. All registered checks must pass. +`max_allowed_step` callbacks are combined by taking the smallest returned step fraction. +The default residual used by Newton is the infinity norm of the gradient, unless a custom residual callback is installed. + +## Public scripting and control + +For ordinary scene control, use the public scripting interface rather than low-level core callbacks. + +### Time events + +A time event runs while `t0 <= simulation.get_time() < t1`: + +```cpp +simulation.add_time_event(0.0, 2.0, + [&](double t) + { + const double z = stark::blend(0.0, 1.0, 0.0, 2.0, t, stark::BlendType::Linear); + boundary.set_transformation({0.0, 0.0, z}, Eigen::Matrix3d::Identity()); + } +); +``` + +This is the most convenient way to animate boundary conditions, gravity, material parameters, friction coefficients, target positions, rigid-body motors, or other time-dependent scene data. + +### Events with state + +For more advanced cases, the event callback can receive an `EventInfo` object: + +```cpp +simulation.add_time_event(1.0, 3.0, + [&](double t, stark::EventInfo& event) + { + if (event.is_first_call()) { + event.msg = "activated"; + } + + // event.get_n_calls(), event.get_begin_time(), event.pack(...), event.unpack(...) + // can be used to keep small pieces of state between calls. + } +); +``` + +For full control, `simulation.get_script().add_event(...)` exposes the event system directly with custom `run_when` and `delete_when` predicates. + +### Simple run callback + +`simulation.run(callback)` executes `callback` before every attempted time step: + +```cpp +simulation.run( + [&]() + { + const Eigen::Vector3d center = magnet.rigidbody.get_translation(); + + for (int i = 0; i < object.point_set.size(); ++i) { + const Eigen::Vector3d x = object.point_set.get_position(i); + const Eigen::Vector3d u = center - x; + object.point_set.set_force(i, 0.1 * u.normalized() / u.squaredNorm()); + } + } +); +``` + +Use this for simple procedural control that should run throughout the simulation. For time-bounded behavior, prefer `add_time_event`. + +### Manual stepping + +For interactive applications or external control loops, use: + +```cpp +while (viewer_is_open) { + simulation.run_one_time_step(); + // update viewer, UI, custom data, etc. +} +``` + +This executes one script cycle and then attempts one STARK time step. + +## Quasistatic simulations + +STARK supports quasistatic problems, though not as a first-class mode: it still solves for velocity-like unknowns using the same time-step machinery. +The trick is to choose parameters so the velocity unknown behaves as a positional increment. + +The `quasistatic_column_extrusion()` example uses the following key changes: + +```cpp +const double duration = 1.0; +const double dt = duration * 0.99999; // Do not overflow the sim duration in a single step +const bool is_quasistatic = true; + +settings.execution.end_simulation_time = duration; +settings.simulation.max_time_step_size = dt; +settings.output.fps = 1.0 / dt; + +settings.newton.projection_mode = symx::ProjectionToPD::ProjectedNewton; // Advisable +settings.newton.project_to_pd_use_mirroring = true; // Advisable + +stark::Volume::Params material; +material.inertia.quasistatic = true; // Important! +``` diff --git a/_static/base-stemmer.js b/_static/base-stemmer.js new file mode 100644 index 00000000..e6fa0c49 --- /dev/null +++ b/_static/base-stemmer.js @@ -0,0 +1,476 @@ +// @ts-check + +/**@constructor*/ +BaseStemmer = function() { + /** @protected */ + this.current = ''; + this.cursor = 0; + this.limit = 0; + this.limit_backward = 0; + this.bra = 0; + this.ket = 0; + + /** + * @param {string} value + */ + this.setCurrent = function(value) { + this.current = value; + this.cursor = 0; + this.limit = this.current.length; + this.limit_backward = 0; + this.bra = this.cursor; + this.ket = this.limit; + }; + + /** + * @return {string} + */ + this.getCurrent = function() { + return this.current; + }; + + /** + * @param {BaseStemmer} other + */ + this.copy_from = function(other) { + /** @protected */ + this.current = other.current; + this.cursor = other.cursor; + this.limit = other.limit; + this.limit_backward = other.limit_backward; + this.bra = other.bra; + this.ket = other.ket; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.in_grouping = function(s, min, max) { + /** @protected */ + if (this.cursor >= this.limit) return false; + var ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) return false; + ch -= min; + if ((s[ch >>> 3] & (0x1 << (ch & 0x7))) == 0) return false; + this.cursor++; + return true; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.go_in_grouping = function(s, min, max) { + /** @protected */ + while (this.cursor < this.limit) { + var ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) + return true; + ch -= min; + if ((s[ch >>> 3] & (0x1 << (ch & 0x7))) == 0) + return true; + this.cursor++; + } + return false; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.in_grouping_b = function(s, min, max) { + /** @protected */ + if (this.cursor <= this.limit_backward) return false; + var ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) return false; + ch -= min; + if ((s[ch >>> 3] & (0x1 << (ch & 0x7))) == 0) return false; + this.cursor--; + return true; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.go_in_grouping_b = function(s, min, max) { + /** @protected */ + while (this.cursor > this.limit_backward) { + var ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) return true; + ch -= min; + if ((s[ch >>> 3] & (0x1 << (ch & 0x7))) == 0) return true; + this.cursor--; + } + return false; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.out_grouping = function(s, min, max) { + /** @protected */ + if (this.cursor >= this.limit) return false; + var ch = this.current.charCodeAt(this.cursor); + if (ch > max || ch < min) { + this.cursor++; + return true; + } + ch -= min; + if ((s[ch >>> 3] & (0X1 << (ch & 0x7))) == 0) { + this.cursor++; + return true; + } + return false; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.go_out_grouping = function(s, min, max) { + /** @protected */ + while (this.cursor < this.limit) { + var ch = this.current.charCodeAt(this.cursor); + if (ch <= max && ch >= min) { + ch -= min; + if ((s[ch >>> 3] & (0X1 << (ch & 0x7))) != 0) { + return true; + } + } + this.cursor++; + } + return false; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.out_grouping_b = function(s, min, max) { + /** @protected */ + if (this.cursor <= this.limit_backward) return false; + var ch = this.current.charCodeAt(this.cursor - 1); + if (ch > max || ch < min) { + this.cursor--; + return true; + } + ch -= min; + if ((s[ch >>> 3] & (0x1 << (ch & 0x7))) == 0) { + this.cursor--; + return true; + } + return false; + }; + + /** + * @param {number[]} s + * @param {number} min + * @param {number} max + * @return {boolean} + */ + this.go_out_grouping_b = function(s, min, max) { + /** @protected */ + while (this.cursor > this.limit_backward) { + var ch = this.current.charCodeAt(this.cursor - 1); + if (ch <= max && ch >= min) { + ch -= min; + if ((s[ch >>> 3] & (0x1 << (ch & 0x7))) != 0) { + return true; + } + } + this.cursor--; + } + return false; + }; + + /** + * @param {string} s + * @return {boolean} + */ + this.eq_s = function(s) + { + /** @protected */ + if (this.limit - this.cursor < s.length) return false; + if (this.current.slice(this.cursor, this.cursor + s.length) != s) + { + return false; + } + this.cursor += s.length; + return true; + }; + + /** + * @param {string} s + * @return {boolean} + */ + this.eq_s_b = function(s) + { + /** @protected */ + if (this.cursor - this.limit_backward < s.length) return false; + if (this.current.slice(this.cursor - s.length, this.cursor) != s) + { + return false; + } + this.cursor -= s.length; + return true; + }; + + /** + * @param {Among[]} v + * @return {number} + */ + this.find_among = function(v) + { + /** @protected */ + var i = 0; + var j = v.length; + + var c = this.cursor; + var l = this.limit; + + var common_i = 0; + var common_j = 0; + + var first_key_inspected = false; + + while (true) + { + var k = i + ((j - i) >>> 1); + var diff = 0; + var common = common_i < common_j ? common_i : common_j; // smaller + // w[0]: string, w[1]: substring_i, w[2]: result, w[3]: function (optional) + var w = v[k]; + var i2; + for (i2 = common; i2 < w[0].length; i2++) + { + if (c + common == l) + { + diff = -1; + break; + } + diff = this.current.charCodeAt(c + common) - w[0].charCodeAt(i2); + if (diff != 0) break; + common++; + } + if (diff < 0) + { + j = k; + common_j = common; + } + else + { + i = k; + common_i = common; + } + if (j - i <= 1) + { + if (i > 0) break; // v->s has been inspected + if (j == i) break; // only one item in v + + // - but now we need to go round once more to get + // v->s inspected. This looks messy, but is actually + // the optimal approach. + + if (first_key_inspected) break; + first_key_inspected = true; + } + } + do { + var w = v[i]; + if (common_i >= w[0].length) + { + this.cursor = c + w[0].length; + if (w.length < 4) return w[2]; + var res = w[3](this); + this.cursor = c + w[0].length; + if (res) return w[2]; + } + i = w[1]; + } while (i >= 0); + return 0; + }; + + // find_among_b is for backwards processing. Same comments apply + /** + * @param {Among[]} v + * @return {number} + */ + this.find_among_b = function(v) + { + /** @protected */ + var i = 0; + var j = v.length + + var c = this.cursor; + var lb = this.limit_backward; + + var common_i = 0; + var common_j = 0; + + var first_key_inspected = false; + + while (true) + { + var k = i + ((j - i) >> 1); + var diff = 0; + var common = common_i < common_j ? common_i : common_j; + var w = v[k]; + var i2; + for (i2 = w[0].length - 1 - common; i2 >= 0; i2--) + { + if (c - common == lb) + { + diff = -1; + break; + } + diff = this.current.charCodeAt(c - 1 - common) - w[0].charCodeAt(i2); + if (diff != 0) break; + common++; + } + if (diff < 0) + { + j = k; + common_j = common; + } + else + { + i = k; + common_i = common; + } + if (j - i <= 1) + { + if (i > 0) break; + if (j == i) break; + if (first_key_inspected) break; + first_key_inspected = true; + } + } + do { + var w = v[i]; + if (common_i >= w[0].length) + { + this.cursor = c - w[0].length; + if (w.length < 4) return w[2]; + var res = w[3](this); + this.cursor = c - w[0].length; + if (res) return w[2]; + } + i = w[1]; + } while (i >= 0); + return 0; + }; + + /* to replace chars between c_bra and c_ket in this.current by the + * chars in s. + */ + /** + * @param {number} c_bra + * @param {number} c_ket + * @param {string} s + * @return {number} + */ + this.replace_s = function(c_bra, c_ket, s) + { + /** @protected */ + var adjustment = s.length - (c_ket - c_bra); + this.current = this.current.slice(0, c_bra) + s + this.current.slice(c_ket); + this.limit += adjustment; + if (this.cursor >= c_ket) this.cursor += adjustment; + else if (this.cursor > c_bra) this.cursor = c_bra; + return adjustment; + }; + + /** + * @return {boolean} + */ + this.slice_check = function() + { + /** @protected */ + if (this.bra < 0 || + this.bra > this.ket || + this.ket > this.limit || + this.limit > this.current.length) + { + return false; + } + return true; + }; + + /** + * @param {number} c_bra + * @return {boolean} + */ + this.slice_from = function(s) + { + /** @protected */ + var result = false; + if (this.slice_check()) + { + this.replace_s(this.bra, this.ket, s); + result = true; + } + return result; + }; + + /** + * @return {boolean} + */ + this.slice_del = function() + { + /** @protected */ + return this.slice_from(""); + }; + + /** + * @param {number} c_bra + * @param {number} c_ket + * @param {string} s + */ + this.insert = function(c_bra, c_ket, s) + { + /** @protected */ + var adjustment = this.replace_s(c_bra, c_ket, s); + if (c_bra <= this.bra) this.bra += adjustment; + if (c_bra <= this.ket) this.ket += adjustment; + }; + + /** + * @return {string} + */ + this.slice_to = function() + { + /** @protected */ + var result = ''; + if (this.slice_check()) + { + result = this.current.slice(this.bra, this.ket); + } + return result; + }; + + /** + * @return {string} + */ + this.assign_to = function() + { + /** @protected */ + return this.current.slice(0, this.limit); + }; +}; diff --git a/stark/extern/fmt/doc/html/_static/basic.css b/_static/basic.css similarity index 84% rename from stark/extern/fmt/doc/html/_static/basic.css rename to _static/basic.css index 24a49f09..4738b2ed 100644 --- a/stark/extern/fmt/doc/html/_static/basic.css +++ b/_static/basic.css @@ -1,12 +1,5 @@ /* - * basic.css - * ~~~~~~~~~ - * * Sphinx stylesheet -- basic theme. - * - * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * */ /* -- main layout ----------------------------------------------------------- */ @@ -115,22 +108,18 @@ img { /* -- search page ----------------------------------------------------------- */ ul.search { - margin: 10px 0 0 20px; - padding: 0; + margin-top: 10px; } ul.search li { - padding: 5px 0 5px 20px; - background-image: url(file.png); - background-repeat: no-repeat; - background-position: 0 7px; + padding: 5px 0; } ul.search li a { font-weight: bold; } -ul.search li div.context { +ul.search li p.context { color: #888; margin: 2px 0 0 30px; text-align: left; @@ -222,7 +211,7 @@ table.modindextable td { /* -- general body styles --------------------------------------------------- */ div.body { - min-width: 450px; + min-width: 360px; max-width: 800px; } @@ -237,14 +226,8 @@ a.headerlink { visibility: hidden; } -a.brackets:before, -span.brackets > a:before{ - content: "["; -} - -a.brackets:after, -span.brackets > a:after { - content: "]"; +a:visited { + color: #551A8B; } h1:hover > a.headerlink, @@ -277,25 +260,25 @@ p.rubric { font-weight: bold; } -img.align-left, .figure.align-left, object.align-left { +img.align-left, figure.align-left, .figure.align-left, object.align-left { clear: left; float: left; margin-right: 1em; } -img.align-right, .figure.align-right, object.align-right { +img.align-right, figure.align-right, .figure.align-right, object.align-right { clear: right; float: right; margin-left: 1em; } -img.align-center, .figure.align-center, object.align-center { +img.align-center, figure.align-center, .figure.align-center, object.align-center { display: block; margin-left: auto; margin-right: auto; } -img.align-default, .figure.align-default { +img.align-default, figure.align-default, .figure.align-default { display: block; margin-left: auto; margin-right: auto; @@ -319,7 +302,8 @@ img.align-default, .figure.align-default { /* -- sidebars -------------------------------------------------------------- */ -div.sidebar { +div.sidebar, +aside.sidebar { margin: 0 0 0.5em 1em; border: 1px solid #ddb; padding: 7px; @@ -334,12 +318,16 @@ p.sidebar-title { font-weight: bold; } +nav.contents, +aside.topic, div.admonition, div.topic, blockquote { clear: left; } /* -- topics ---------------------------------------------------------------- */ +nav.contents, +aside.topic, div.topic { border: 1px solid #ccc; padding: 7px; @@ -377,12 +365,18 @@ div.body p.centered { /* -- content of sidebars/topics/admonitions -------------------------------- */ div.sidebar > :last-child, +aside.sidebar > :last-child, +nav.contents > :last-child, +aside.topic > :last-child, div.topic > :last-child, div.admonition > :last-child { margin-bottom: 0; } div.sidebar::after, +aside.sidebar::after, +nav.contents::after, +aside.topic::after, div.topic::after, div.admonition::after, blockquote::after { @@ -425,10 +419,6 @@ table.docutils td, table.docutils th { border-bottom: 1px solid #aaa; } -table.footnote td, table.footnote th { - border: 0 !important; -} - th { text-align: left; padding-right: 5px; @@ -455,20 +445,22 @@ td > :last-child { /* -- figures --------------------------------------------------------------- */ -div.figure { +div.figure, figure { margin: 0.5em; padding: 0.5em; } -div.figure p.caption { +div.figure p.caption, figcaption { padding: 0.3em; } -div.figure p.caption span.caption-number { +div.figure p.caption span.caption-number, +figcaption span.caption-number { font-style: italic; } -div.figure p.caption span.caption-text { +div.figure p.caption span.caption-text, +figcaption span.caption-text { } /* -- field list styles ----------------------------------------------------- */ @@ -503,6 +495,63 @@ table.hlist td { vertical-align: top; } +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + /* -- other body styles ----------------------------------------------------- */ @@ -553,19 +602,26 @@ ul.simple p { margin-bottom: 0; } -dl.footnote > dt, -dl.citation > dt { +aside.footnote > span, +div.citation > span { float: left; - margin-right: 0.5em; } - -dl.footnote > dd, -dl.citation > dd { +aside.footnote > span:last-of-type, +div.citation > span:last-of-type { + padding-right: 0.5em; +} +aside.footnote > p { + margin-left: 2em; +} +div.citation > p { + margin-left: 4em; +} +aside.footnote > p:last-of-type, +div.citation > p:last-of-type { margin-bottom: 0em; } - -dl.footnote > dd:after, -dl.citation > dd:after { +aside.footnote > p:last-of-type:after, +div.citation > p:last-of-type:after { content: ""; clear: both; } @@ -582,10 +638,6 @@ dl.field-list > dt { padding-right: 5px; } -dl.field-list > dt:after { - content: ":"; -} - dl.field-list > dd { padding-left: 0.5em; margin-top: 0em; @@ -611,6 +663,16 @@ dd { margin-left: 30px; } +.sig dd { + margin-top: 0px; + margin-bottom: 0px; +} + +.sig dl { + margin-top: 0px; + margin-bottom: 0px; +} + dl > dd:last-child, dl > dd:last-child > :last-child { margin-bottom: 0; @@ -629,14 +691,6 @@ dl.glossary dt { font-size: 1.1em; } -.optional { - font-size: 1.3em; -} - -.sig-paren { - font-size: larger; -} - .versionmodified { font-style: italic; } @@ -677,8 +731,9 @@ dl.glossary dt { .classifier:before { font-style: normal; - margin: 0.5em; + margin: 0 0.5em; content: ":"; + display: inline-block; } abbr, acronym { @@ -702,6 +757,7 @@ span.pre { -ms-hyphens: none; -webkit-hyphens: none; hyphens: none; + white-space: nowrap; } div[class*="highlight-"] { @@ -765,8 +821,12 @@ div.code-block-caption code { table.highlighttable td.linenos, span.linenos, -div.doctest > div.highlight span.gp { /* gp: Generic.Prompt */ - user-select: none; +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ } div.code-block-caption span.caption-number { @@ -781,16 +841,6 @@ div.literal-block-wrapper { margin: 1em 0; } -code.descname { - background-color: transparent; - font-weight: bold; - font-size: 1.2em; -} - -code.descclassname { - background-color: transparent; -} - code.xref, a code { background-color: transparent; font-weight: bold; diff --git a/_static/blender.png b/_static/blender.png new file mode 100644 index 0000000000000000000000000000000000000000..ef76d2cd3590d6bdf594558bc78330253514de22 GIT binary patch literal 432143 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

X;n5EexIzRW3`*nIqm-SlbGxx^eJ*q8wlWX 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

Bp`lpx+FIL4D2X0K^8pf%< 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 { + if (document.readyState !== "loading") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); + } +}; + +/** + * Small JavaScript module for the documentation. + */ +const Documentation = { + init: () => { + Documentation.initDomainIndexTable(); + Documentation.initOnKeyListeners(); + }, + + /** + * i18n support + */ + TRANSLATIONS: {}, + PLURAL_EXPR: (n) => (n === 1 ? 0 : 1), + LOCALE: "unknown", + + // gettext and ngettext don't access this so that the functions + // can safely bound to a different name (_ = Documentation.gettext) + gettext: (string) => { + const translated = Documentation.TRANSLATIONS[string]; + switch (typeof translated) { + case "undefined": + return string; // no translation + case "string": + return translated; // translation exists + default: + return translated[0]; // (singular, plural) translation tuple exists + } + }, + + ngettext: (singular, plural, n) => { + const translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated !== "undefined") + return translated[Documentation.PLURAL_EXPR(n)]; + return n === 1 ? singular : plural; + }, + + addTranslations: (catalog) => { + Object.assign(Documentation.TRANSLATIONS, catalog.messages); + Documentation.PLURAL_EXPR = new Function( + "n", + `return (${catalog.plural_expr})`, + ); + Documentation.LOCALE = catalog.locale; + }, + + /** + * helper function to focus on search bar + */ + focusSearchBar: () => { + document.querySelectorAll("input[name=q]")[0]?.focus(); + }, + + /** + * Initialise the domain index toggle buttons + */ + initDomainIndexTable: () => { + const toggler = (el) => { + const idNumber = el.id.substr(7); + const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`); + if (el.src.substr(-9) === "minus.png") { + el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`; + toggledRows.forEach((el) => (el.style.display = "none")); + } else { + el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`; + toggledRows.forEach((el) => (el.style.display = "")); + } + }; + + const togglerElements = document.querySelectorAll("img.toggler"); + togglerElements.forEach((el) => + el.addEventListener("click", (event) => toggler(event.currentTarget)), + ); + togglerElements.forEach((el) => (el.style.display = "")); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); + }, + + initOnKeyListeners: () => { + // only install a listener if it is really needed + if ( + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS + && !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + ) + return; + + document.addEventListener("keydown", (event) => { + // bail for input elements + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) + return; + // bail with special keys + if (event.altKey || event.ctrlKey || event.metaKey) return; + + if (!event.shiftKey) { + switch (event.key) { + case "ArrowLeft": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const prevLink = document.querySelector('link[rel="prev"]'); + if (prevLink && prevLink.href) { + window.location.href = prevLink.href; + event.preventDefault(); + } + break; + case "ArrowRight": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const nextLink = document.querySelector('link[rel="next"]'); + if (nextLink && nextLink.href) { + window.location.href = nextLink.href; + event.preventDefault(); + } + break; + } + } + + // some keyboard layouts may need Shift to get / + switch (event.key) { + case "/": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.focusSearchBar(); + event.preventDefault(); + } + }); + }, +}; + +// quick alias for translations +const _ = Documentation.gettext; + +_ready(Documentation.init); diff --git a/_static/documentation_options.js b/_static/documentation_options.js new file mode 100644 index 00000000..7e4c114f --- /dev/null +++ b/_static/documentation_options.js @@ -0,0 +1,13 @@ +const DOCUMENTATION_OPTIONS = { + VERSION: '', + LANGUAGE: 'en', + COLLAPSE_INDEX: false, + BUILDER: 'html', + FILE_SUFFIX: '.html', + LINK_SUFFIX: '.html', + HAS_SOURCE: true, + SOURCELINK_SUFFIX: '.txt', + NAVIGATION_WITH_KEYS: false, + SHOW_SEARCH_SUMMARY: true, + ENABLE_SEARCH_SHORTCUTS: true, +}; \ No newline at end of file diff --git a/_static/english-stemmer.js b/_static/english-stemmer.js new file mode 100644 index 00000000..056760ee --- /dev/null +++ b/_static/english-stemmer.js @@ -0,0 +1,1066 @@ +// Generated from english.sbl by Snowball 3.0.1 - https://snowballstem.org/ + +/**@constructor*/ +var EnglishStemmer = function() { + var base = new BaseStemmer(); + + /** @const */ var a_0 = [ + ["arsen", -1, -1], + ["commun", -1, -1], + ["emerg", -1, -1], + ["gener", -1, -1], + ["later", -1, -1], + ["organ", -1, -1], + ["past", -1, -1], + ["univers", -1, -1] + ]; + + /** @const */ var a_1 = [ + ["'", -1, 1], + ["'s'", 0, 1], + ["'s", -1, 1] + ]; + + /** @const */ var a_2 = [ + ["ied", -1, 2], + ["s", -1, 3], + ["ies", 1, 2], + ["sses", 1, 1], + ["ss", 1, -1], + ["us", 1, -1] + ]; + + /** @const */ var a_3 = [ + ["succ", -1, 1], + ["proc", -1, 1], + ["exc", -1, 1] + ]; + + /** @const */ var a_4 = [ + ["even", -1, 2], + ["cann", -1, 2], + ["inn", -1, 2], + ["earr", -1, 2], + ["herr", -1, 2], + ["out", -1, 2], + ["y", -1, 1] + ]; + + /** @const */ var a_5 = [ + ["", -1, -1], + ["ed", 0, 2], + ["eed", 1, 1], + ["ing", 0, 3], + ["edly", 0, 2], + ["eedly", 4, 1], + ["ingly", 0, 2] + ]; + + /** @const */ var a_6 = [ + ["", -1, 3], + ["bb", 0, 2], + ["dd", 0, 2], + ["ff", 0, 2], + ["gg", 0, 2], + ["bl", 0, 1], + ["mm", 0, 2], + ["nn", 0, 2], + ["pp", 0, 2], + ["rr", 0, 2], + ["at", 0, 1], + ["tt", 0, 2], + ["iz", 0, 1] + ]; + + /** @const */ var a_7 = [ + ["anci", -1, 3], + ["enci", -1, 2], + ["ogi", -1, 14], + ["li", -1, 16], + ["bli", 3, 12], + ["abli", 4, 4], + ["alli", 3, 8], + ["fulli", 3, 9], + ["lessli", 3, 15], + ["ousli", 3, 10], + ["entli", 3, 5], + ["aliti", -1, 8], + ["biliti", -1, 12], + ["iviti", -1, 11], + ["tional", -1, 1], + ["ational", 14, 7], + ["alism", -1, 8], + ["ation", -1, 7], + ["ization", 17, 6], + ["izer", -1, 6], + ["ator", -1, 7], + ["iveness", -1, 11], + ["fulness", -1, 9], + ["ousness", -1, 10], + ["ogist", -1, 13] + ]; + + /** @const */ var a_8 = [ + ["icate", -1, 4], + ["ative", -1, 6], + ["alize", -1, 3], + ["iciti", -1, 4], + ["ical", -1, 4], + ["tional", -1, 1], + ["ational", 5, 2], + ["ful", -1, 5], + ["ness", -1, 5] + ]; + + /** @const */ var a_9 = [ + ["ic", -1, 1], + ["ance", -1, 1], + ["ence", -1, 1], + ["able", -1, 1], + ["ible", -1, 1], + ["ate", -1, 1], + ["ive", -1, 1], + ["ize", -1, 1], + ["iti", -1, 1], + ["al", -1, 1], + ["ism", -1, 1], + ["ion", -1, 2], + ["er", -1, 1], + ["ous", -1, 1], + ["ant", -1, 1], + ["ent", -1, 1], + ["ment", 15, 1], + ["ement", 16, 1] + ]; + + /** @const */ var a_10 = [ + ["e", -1, 1], + ["l", -1, 2] + ]; + + /** @const */ var a_11 = [ + ["andes", -1, -1], + ["atlas", -1, -1], + ["bias", -1, -1], + ["cosmos", -1, -1], + ["early", -1, 5], + ["gently", -1, 3], + ["howe", -1, -1], + ["idly", -1, 2], + ["news", -1, -1], + ["only", -1, 6], + ["singly", -1, 7], + ["skies", -1, 1], + ["sky", -1, -1], + ["ugly", -1, 4] + ]; + + /** @const */ var /** Array */ g_aeo = [17, 64]; + + /** @const */ var /** Array */ g_v = [17, 65, 16, 1]; + + /** @const */ var /** Array */ g_v_WXY = [1, 17, 65, 208, 1]; + + /** @const */ var /** Array */ g_valid_LI = [55, 141, 2]; + + var /** boolean */ B_Y_found = false; + var /** number */ I_p2 = 0; + var /** number */ I_p1 = 0; + + + /** @return {boolean} */ + function r_prelude() { + B_Y_found = false; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + base.bra = base.cursor; + if (!(base.eq_s("'"))) + { + break lab0; + } + base.ket = base.cursor; + if (!base.slice_del()) + { + return false; + } + } + base.cursor = v_1; + /** @const */ var /** number */ v_2 = base.cursor; + lab1: { + base.bra = base.cursor; + if (!(base.eq_s("y"))) + { + break lab1; + } + base.ket = base.cursor; + if (!base.slice_from("Y")) + { + return false; + } + B_Y_found = true; + } + base.cursor = v_2; + /** @const */ var /** number */ v_3 = base.cursor; + lab2: { + while(true) + { + /** @const */ var /** number */ v_4 = base.cursor; + lab3: { + golab4: while(true) + { + /** @const */ var /** number */ v_5 = base.cursor; + lab5: { + if (!(base.in_grouping(g_v, 97, 121))) + { + break lab5; + } + base.bra = base.cursor; + if (!(base.eq_s("y"))) + { + break lab5; + } + base.ket = base.cursor; + base.cursor = v_5; + break golab4; + } + base.cursor = v_5; + if (base.cursor >= base.limit) + { + break lab3; + } + base.cursor++; + } + if (!base.slice_from("Y")) + { + return false; + } + B_Y_found = true; + continue; + } + base.cursor = v_4; + break; + } + } + base.cursor = v_3; + return true; + }; + + /** @return {boolean} */ + function r_mark_regions() { + I_p1 = base.limit; + I_p2 = base.limit; + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + lab1: { + /** @const */ var /** number */ v_2 = base.cursor; + lab2: { + if (base.find_among(a_0) == 0) + { + break lab2; + } + break lab1; + } + base.cursor = v_2; + if (!base.go_out_grouping(g_v, 97, 121)) + { + break lab0; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 121)) + { + break lab0; + } + base.cursor++; + } + I_p1 = base.cursor; + if (!base.go_out_grouping(g_v, 97, 121)) + { + break lab0; + } + base.cursor++; + if (!base.go_in_grouping(g_v, 97, 121)) + { + break lab0; + } + base.cursor++; + I_p2 = base.cursor; + } + base.cursor = v_1; + return true; + }; + + /** @return {boolean} */ + function r_shortv() { + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.out_grouping_b(g_v_WXY, 89, 121))) + { + break lab1; + } + if (!(base.in_grouping_b(g_v, 97, 121))) + { + break lab1; + } + if (!(base.out_grouping_b(g_v, 97, 121))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_1; + lab2: { + if (!(base.out_grouping_b(g_v, 97, 121))) + { + break lab2; + } + if (!(base.in_grouping_b(g_v, 97, 121))) + { + break lab2; + } + if (base.cursor > base.limit_backward) + { + break lab2; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!(base.eq_s_b("past"))) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_R1() { + return I_p1 <= base.cursor; + }; + + /** @return {boolean} */ + function r_R2() { + return I_p2 <= base.cursor; + }; + + /** @return {boolean} */ + function r_Step_1a() { + var /** number */ among_var; + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab0: { + base.ket = base.cursor; + if (base.find_among_b(a_1) == 0) + { + base.cursor = base.limit - v_1; + break lab0; + } + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + } + base.ket = base.cursor; + among_var = base.find_among_b(a_2); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + if (!base.slice_from("ss")) + { + return false; + } + break; + case 2: + lab1: { + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + { + /** @const */ var /** number */ c1 = base.cursor - 2; + if (c1 < base.limit_backward) + { + break lab2; + } + base.cursor = c1; + } + if (!base.slice_from("i")) + { + return false; + } + break lab1; + } + base.cursor = base.limit - v_2; + if (!base.slice_from("ie")) + { + return false; + } + } + break; + case 3: + if (base.cursor <= base.limit_backward) + { + return false; + } + base.cursor--; + if (!base.go_out_grouping_b(g_v, 97, 121)) + { + return false; + } + base.cursor--; + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_1b() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_5); + base.bra = base.cursor; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + switch (among_var) { + case 1: + /** @const */ var /** number */ v_2 = base.limit - base.cursor; + lab2: { + lab3: { + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + lab4: { + if (base.find_among_b(a_3) == 0) + { + break lab4; + } + if (base.cursor > base.limit_backward) + { + break lab4; + } + break lab3; + } + base.cursor = base.limit - v_3; + if (!r_R1()) + { + break lab2; + } + if (!base.slice_from("ee")) + { + return false; + } + } + } + base.cursor = base.limit - v_2; + break; + case 2: + break lab1; + case 3: + among_var = base.find_among_b(a_4); + if (among_var == 0) + { + break lab1; + } + switch (among_var) { + case 1: + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + if (!(base.out_grouping_b(g_v, 97, 121))) + { + break lab1; + } + if (base.cursor > base.limit_backward) + { + break lab1; + } + base.cursor = base.limit - v_4; + base.bra = base.cursor; + if (!base.slice_from("ie")) + { + return false; + } + break; + case 2: + if (base.cursor > base.limit_backward) + { + break lab1; + } + break; + } + break; + } + break lab0; + } + base.cursor = base.limit - v_1; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + if (!base.go_out_grouping_b(g_v, 97, 121)) + { + return false; + } + base.cursor--; + base.cursor = base.limit - v_5; + if (!base.slice_del()) + { + return false; + } + base.ket = base.cursor; + base.bra = base.cursor; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + among_var = base.find_among_b(a_6); + switch (among_var) { + case 1: + if (!base.slice_from("e")) + { + return false; + } + return false; + case 2: + { + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + lab5: { + if (!(base.in_grouping_b(g_aeo, 97, 111))) + { + break lab5; + } + if (base.cursor > base.limit_backward) + { + break lab5; + } + return false; + } + base.cursor = base.limit - v_7; + } + break; + case 3: + if (base.cursor != I_p1) + { + return false; + } + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + if (!r_shortv()) + { + return false; + } + base.cursor = base.limit - v_8; + if (!base.slice_from("e")) + { + return false; + } + return false; + } + base.cursor = base.limit - v_6; + base.ket = base.cursor; + if (base.cursor <= base.limit_backward) + { + return false; + } + base.cursor--; + base.bra = base.cursor; + if (!base.slice_del()) + { + return false; + } + } + return true; + }; + + /** @return {boolean} */ + function r_Step_1c() { + base.ket = base.cursor; + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("y"))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!(base.eq_s_b("Y"))) + { + return false; + } + } + base.bra = base.cursor; + if (!(base.out_grouping_b(g_v, 97, 121))) + { + return false; + } + lab2: { + if (base.cursor > base.limit_backward) + { + break lab2; + } + return false; + } + if (!base.slice_from("i")) + { + return false; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_2() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_7); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R1()) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("tion")) + { + return false; + } + break; + case 2: + if (!base.slice_from("ence")) + { + return false; + } + break; + case 3: + if (!base.slice_from("ance")) + { + return false; + } + break; + case 4: + if (!base.slice_from("able")) + { + return false; + } + break; + case 5: + if (!base.slice_from("ent")) + { + return false; + } + break; + case 6: + if (!base.slice_from("ize")) + { + return false; + } + break; + case 7: + if (!base.slice_from("ate")) + { + return false; + } + break; + case 8: + if (!base.slice_from("al")) + { + return false; + } + break; + case 9: + if (!base.slice_from("ful")) + { + return false; + } + break; + case 10: + if (!base.slice_from("ous")) + { + return false; + } + break; + case 11: + if (!base.slice_from("ive")) + { + return false; + } + break; + case 12: + if (!base.slice_from("ble")) + { + return false; + } + break; + case 13: + if (!base.slice_from("og")) + { + return false; + } + break; + case 14: + if (!(base.eq_s_b("l"))) + { + return false; + } + if (!base.slice_from("og")) + { + return false; + } + break; + case 15: + if (!base.slice_from("less")) + { + return false; + } + break; + case 16: + if (!(base.in_grouping_b(g_valid_LI, 99, 116))) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_3() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_8); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R1()) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("tion")) + { + return false; + } + break; + case 2: + if (!base.slice_from("ate")) + { + return false; + } + break; + case 3: + if (!base.slice_from("al")) + { + return false; + } + break; + case 4: + if (!base.slice_from("ic")) + { + return false; + } + break; + case 5: + if (!base.slice_del()) + { + return false; + } + break; + case 6: + if (!r_R2()) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_4() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_9); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + if (!r_R2()) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_del()) + { + return false; + } + break; + case 2: + lab0: { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab1: { + if (!(base.eq_s_b("s"))) + { + break lab1; + } + break lab0; + } + base.cursor = base.limit - v_1; + if (!(base.eq_s_b("t"))) + { + return false; + } + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_Step_5() { + var /** number */ among_var; + base.ket = base.cursor; + among_var = base.find_among_b(a_10); + if (among_var == 0) + { + return false; + } + base.bra = base.cursor; + switch (among_var) { + case 1: + lab0: { + lab1: { + if (!r_R2()) + { + break lab1; + } + break lab0; + } + if (!r_R1()) + { + return false; + } + { + /** @const */ var /** number */ v_1 = base.limit - base.cursor; + lab2: { + if (!r_shortv()) + { + break lab2; + } + return false; + } + base.cursor = base.limit - v_1; + } + } + if (!base.slice_del()) + { + return false; + } + break; + case 2: + if (!r_R2()) + { + return false; + } + if (!(base.eq_s_b("l"))) + { + return false; + } + if (!base.slice_del()) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_exception1() { + var /** number */ among_var; + base.bra = base.cursor; + among_var = base.find_among(a_11); + if (among_var == 0) + { + return false; + } + base.ket = base.cursor; + if (base.cursor < base.limit) + { + return false; + } + switch (among_var) { + case 1: + if (!base.slice_from("sky")) + { + return false; + } + break; + case 2: + if (!base.slice_from("idl")) + { + return false; + } + break; + case 3: + if (!base.slice_from("gentl")) + { + return false; + } + break; + case 4: + if (!base.slice_from("ugli")) + { + return false; + } + break; + case 5: + if (!base.slice_from("earli")) + { + return false; + } + break; + case 6: + if (!base.slice_from("onli")) + { + return false; + } + break; + case 7: + if (!base.slice_from("singl")) + { + return false; + } + break; + } + return true; + }; + + /** @return {boolean} */ + function r_postlude() { + if (!B_Y_found) + { + return false; + } + while(true) + { + /** @const */ var /** number */ v_1 = base.cursor; + lab0: { + golab1: while(true) + { + /** @const */ var /** number */ v_2 = base.cursor; + lab2: { + base.bra = base.cursor; + if (!(base.eq_s("Y"))) + { + break lab2; + } + base.ket = base.cursor; + base.cursor = v_2; + break golab1; + } + base.cursor = v_2; + if (base.cursor >= base.limit) + { + break lab0; + } + base.cursor++; + } + if (!base.slice_from("y")) + { + return false; + } + continue; + } + base.cursor = v_1; + break; + } + return true; + }; + + this.stem = /** @return {boolean} */ function() { + lab0: { + /** @const */ var /** number */ v_1 = base.cursor; + lab1: { + if (!r_exception1()) + { + break lab1; + } + break lab0; + } + base.cursor = v_1; + lab2: { + { + /** @const */ var /** number */ v_2 = base.cursor; + lab3: { + { + /** @const */ var /** number */ c1 = base.cursor + 3; + if (c1 > base.limit) + { + break lab3; + } + base.cursor = c1; + } + break lab2; + } + base.cursor = v_2; + } + break lab0; + } + base.cursor = v_1; + r_prelude(); + r_mark_regions(); + base.limit_backward = base.cursor; base.cursor = base.limit; + /** @const */ var /** number */ v_3 = base.limit - base.cursor; + r_Step_1a(); + base.cursor = base.limit - v_3; + /** @const */ var /** number */ v_4 = base.limit - base.cursor; + r_Step_1b(); + base.cursor = base.limit - v_4; + /** @const */ var /** number */ v_5 = base.limit - base.cursor; + r_Step_1c(); + base.cursor = base.limit - v_5; + /** @const */ var /** number */ v_6 = base.limit - base.cursor; + r_Step_2(); + base.cursor = base.limit - v_6; + /** @const */ var /** number */ v_7 = base.limit - base.cursor; + r_Step_3(); + base.cursor = base.limit - v_7; + /** @const */ var /** number */ v_8 = base.limit - base.cursor; + r_Step_4(); + base.cursor = base.limit - v_8; + /** @const */ var /** number */ v_9 = base.limit - base.cursor; + r_Step_5(); + base.cursor = base.limit - v_9; + base.cursor = base.limit_backward; + /** @const */ var /** number */ v_10 = base.cursor; + r_postlude(); + base.cursor = v_10; + } + return true; + }; + + /**@return{string}*/ + this['stemWord'] = function(/**string*/word) { + base.setCurrent(word); + this.stem(); + return base.getCurrent(); + }; +}; diff --git a/stark/extern/fmt/doc/html/_static/file.png b/_static/file.png similarity index 100% rename from stark/extern/fmt/doc/html/_static/file.png rename to _static/file.png diff --git a/_static/language_data.js b/_static/language_data.js new file mode 100644 index 00000000..57767864 --- /dev/null +++ b/_static/language_data.js @@ -0,0 +1,13 @@ +/* + * This script contains the language-specific data used by searchtools.js, + * namely the set of stopwords, stemmer, scorer and splitter. + */ + +const stopwords = new Set(["a", "about", "above", "after", "again", "against", "all", "am", "an", "and", "any", "are", "aren't", "as", "at", "be", "because", "been", "before", "being", "below", "between", "both", "but", "by", "can't", "cannot", "could", "couldn't", "did", "didn't", "do", "does", "doesn't", "doing", "don't", "down", "during", "each", "few", "for", "from", "further", "had", "hadn't", "has", "hasn't", "have", "haven't", "having", "he", "he'd", "he'll", "he's", "her", "here", "here's", "hers", "herself", "him", "himself", "his", "how", "how's", "i", "i'd", "i'll", "i'm", "i've", "if", "in", "into", "is", "isn't", "it", "it's", "its", "itself", "let's", "me", "more", "most", "mustn't", "my", "myself", "no", "nor", "not", "of", "off", "on", "once", "only", "or", "other", "ought", "our", "ours", "ourselves", "out", "over", "own", "same", "shan't", "she", "she'd", "she'll", "she's", "should", "shouldn't", "so", "some", "such", "than", "that", "that's", "the", "their", "theirs", "them", "themselves", "then", "there", "there's", "these", "they", "they'd", "they'll", "they're", "they've", "this", "those", "through", "to", "too", "under", "until", "up", "very", "was", "wasn't", "we", "we'd", "we'll", "we're", "we've", "were", "weren't", "what", "what's", "when", "when's", "where", "where's", "which", "while", "who", "who's", "whom", "why", "why's", "with", "won't", "would", "wouldn't", "you", "you'd", "you'll", "you're", "you've", "your", "yours", "yourself", "yourselves"]); +window.stopwords = stopwords; // Export to global scope + + +/* Non-minified versions are copied as separate JavaScript files, if available */ +BaseStemmer=function(){this.current="",this.cursor=0,this.limit=0,this.limit_backward=0,this.bra=0,this.ket=0,this.setCurrent=function(t){this.current=t,this.cursor=0,this.limit=this.current.length,this.limit_backward=0,this.bra=this.cursor,this.ket=this.limit},this.getCurrent=function(){return this.current},this.copy_from=function(t){this.current=t.current,this.cursor=t.cursor,this.limit=t.limit,this.limit_backward=t.limit_backward,this.bra=t.bra,this.ket=t.ket},this.in_grouping=function(t,r,i){return!(this.cursor>=this.limit||i<(i=this.current.charCodeAt(this.cursor))||i>>3]&1<<(7&i))||(this.cursor++,0))},this.go_in_grouping=function(t,r,i){for(;this.cursor>>3]&1<<(7&s)))return!0;this.cursor++}return!1},this.in_grouping_b=function(t,r,i){return!(this.cursor<=this.limit_backward||i<(i=this.current.charCodeAt(this.cursor-1))||i>>3]&1<<(7&i))||(this.cursor--,0))},this.go_in_grouping_b=function(t,r,i){for(;this.cursor>this.limit_backward;){var s=this.current.charCodeAt(this.cursor-1);if(i>>3]&1<<(7&s)))return!0;this.cursor--}return!1},this.out_grouping=function(t,r,i){return!(this.cursor>=this.limit)&&(i<(i=this.current.charCodeAt(this.cursor))||i>>3]&1<<(7&i)))&&(this.cursor++,!0)},this.go_out_grouping=function(t,r,i){for(;this.cursor>>3]&1<<(7&s)))return!0;this.cursor++}return!1},this.out_grouping_b=function(t,r,i){return!(this.cursor<=this.limit_backward)&&(i<(i=this.current.charCodeAt(this.cursor-1))||i>>3]&1<<(7&i)))&&(this.cursor--,!0)},this.go_out_grouping_b=function(t,r,i){for(;this.cursor>this.limit_backward;){var s=this.current.charCodeAt(this.cursor-1);if(s<=i&&r<=s&&0!=(t[(s-=r)>>>3]&1<<(7&s)))return!0;this.cursor--}return!1},this.eq_s=function(t){return!(this.limit-this.cursor>>1),o=0,a=e=(l=t[r])[0].length){if(this.cursor=s+l[0].length,l.length<4)return l[2];var g=l[3](this);if(this.cursor=s+l[0].length,g)return l[2]}}while(0<=(r=l[1]));return 0},this.find_among_b=function(t){for(var r=0,i=t.length,s=this.cursor,h=this.limit_backward,e=0,n=0,c=!1;;){for(var u,o=r+(i-r>>1),a=0,l=e=(u=t[r])[0].length){if(this.cursor=s-u[0].length,u.length<4)return u[2];var g=u[3](this);if(this.cursor=s-u[0].length,g)return u[2]}}while(0<=(r=u[1]));return 0},this.replace_s=function(t,r,i){var s=i.length-(r-t);return this.current=this.current.slice(0,t)+i+this.current.slice(r),this.limit+=s,this.cursor>=r?this.cursor+=s:this.cursor>t&&(this.cursor=t),s},this.slice_check=function(){return!(this.bra<0||this.bra>this.ket||this.ket>this.limit||this.limit>this.current.length)},this.slice_from=function(t){var r=!1;return this.slice_check()&&(this.replace_s(this.bra,this.ket,t),r=!0),r},this.slice_del=function(){return this.slice_from("")},this.insert=function(t,r,i){r=this.replace_s(t,r,i);t<=this.bra&&(this.bra+=r),t<=this.ket&&(this.ket+=r)},this.slice_to=function(){var t="";return t=this.slice_check()?this.current.slice(this.bra,this.ket):t},this.assign_to=function(){return this.current.slice(0,this.limit)}}; +var EnglishStemmer=function(){var a=new BaseStemmer,c=[["arsen",-1,-1],["commun",-1,-1],["emerg",-1,-1],["gener",-1,-1],["later",-1,-1],["organ",-1,-1],["past",-1,-1],["univers",-1,-1]],o=[["'",-1,1],["'s'",0,1],["'s",-1,1]],u=[["ied",-1,2],["s",-1,3],["ies",1,2],["sses",1,1],["ss",1,-1],["us",1,-1]],t=[["succ",-1,1],["proc",-1,1],["exc",-1,1]],l=[["even",-1,2],["cann",-1,2],["inn",-1,2],["earr",-1,2],["herr",-1,2],["out",-1,2],["y",-1,1]],n=[["",-1,-1],["ed",0,2],["eed",1,1],["ing",0,3],["edly",0,2],["eedly",4,1],["ingly",0,2]],f=[["",-1,3],["bb",0,2],["dd",0,2],["ff",0,2],["gg",0,2],["bl",0,1],["mm",0,2],["nn",0,2],["pp",0,2],["rr",0,2],["at",0,1],["tt",0,2],["iz",0,1]],_=[["anci",-1,3],["enci",-1,2],["ogi",-1,14],["li",-1,16],["bli",3,12],["abli",4,4],["alli",3,8],["fulli",3,9],["lessli",3,15],["ousli",3,10],["entli",3,5],["aliti",-1,8],["biliti",-1,12],["iviti",-1,11],["tional",-1,1],["ational",14,7],["alism",-1,8],["ation",-1,7],["ization",17,6],["izer",-1,6],["ator",-1,7],["iveness",-1,11],["fulness",-1,9],["ousness",-1,10],["ogist",-1,13]],m=[["icate",-1,4],["ative",-1,6],["alize",-1,3],["iciti",-1,4],["ical",-1,4],["tional",-1,1],["ational",5,2],["ful",-1,5],["ness",-1,5]],b=[["ic",-1,1],["ance",-1,1],["ence",-1,1],["able",-1,1],["ible",-1,1],["ate",-1,1],["ive",-1,1],["ize",-1,1],["iti",-1,1],["al",-1,1],["ism",-1,1],["ion",-1,2],["er",-1,1],["ous",-1,1],["ant",-1,1],["ent",-1,1],["ment",15,1],["ement",16,1]],k=[["e",-1,1],["l",-1,2]],g=[["andes",-1,-1],["atlas",-1,-1],["bias",-1,-1],["cosmos",-1,-1],["early",-1,5],["gently",-1,3],["howe",-1,-1],["idly",-1,2],["news",-1,-1],["only",-1,6],["singly",-1,7],["skies",-1,1],["sky",-1,-1],["ugly",-1,4]],d=[17,64],v=[17,65,16,1],i=[1,17,65,208,1],w=[55,141,2],p=!1,y=0,h=0;function q(){var r=a.limit-a.cursor;return!!(a.out_grouping_b(i,89,121)&&a.in_grouping_b(v,97,121)&&a.out_grouping_b(v,97,121)||(a.cursor=a.limit-r,a.out_grouping_b(v,97,121)&&a.in_grouping_b(v,97,121)&&!(a.cursor>a.limit_backward))||(a.cursor=a.limit-r,a.eq_s_b("past")))}function z(){return h<=a.cursor}function Y(){return y<=a.cursor}this.stem=function(){var r=a.cursor;if(!(()=>{var r;if(a.bra=a.cursor,0!=(r=a.find_among(g))&&(a.ket=a.cursor,!(a.cursora.limit)a.cursor=i;else{a.cursor=e,a.cursor=r,(()=>{p=!1;var r=a.cursor;if(a.bra=a.cursor,!a.eq_s("'")||(a.ket=a.cursor,a.slice_del())){a.cursor=r;r=a.cursor;if(a.bra=a.cursor,a.eq_s("y")){if(a.ket=a.cursor,!a.slice_from("Y"))return;p=!0}a.cursor=r;for(r=a.cursor;;){var i=a.cursor;r:{for(;;){var e=a.cursor;if(a.in_grouping(v,97,121)&&(a.bra=a.cursor,a.eq_s("y"))){a.ket=a.cursor,a.cursor=e;break}if(a.cursor=e,a.cursor>=a.limit)break r;a.cursor++}if(!a.slice_from("Y"))return;p=!0;continue}a.cursor=i;break}a.cursor=r}})(),h=a.limit,y=a.limit;i=a.cursor;r:{var s=a.cursor;if(0==a.find_among(c)){if(a.cursor=s,!a.go_out_grouping(v,97,121))break r;if(a.cursor++,!a.go_in_grouping(v,97,121))break r;a.cursor++}h=a.cursor,a.go_out_grouping(v,97,121)&&(a.cursor++,a.go_in_grouping(v,97,121))&&(a.cursor++,y=a.cursor)}a.cursor=i,a.limit_backward=a.cursor,a.cursor=a.limit;var e=a.limit-a.cursor,r=((()=>{var r=a.limit-a.cursor;if(a.ket=a.cursor,0==a.find_among_b(o))a.cursor=a.limit-r;else if(a.bra=a.cursor,!a.slice_del())return;if(a.ket=a.cursor,0!=(r=a.find_among_b(u)))switch(a.bra=a.cursor,r){case 1:if(a.slice_from("ss"))break;return;case 2:r:{var i=a.limit-a.cursor,e=a.cursor-2;if(!(e{a.ket=a.cursor,o=a.find_among_b(n),a.bra=a.cursor;r:{var r=a.limit-a.cursor;i:{switch(o){case 1:var i=a.limit-a.cursor;e:{var e=a.limit-a.cursor;if(0==a.find_among_b(t)||a.cursor>a.limit_backward){if(a.cursor=a.limit-e,!z())break e;if(!a.slice_from("ee"))return}}a.cursor=a.limit-i;break;case 2:break i;case 3:if(0==(o=a.find_among_b(l)))break i;switch(o){case 1:var s=a.limit-a.cursor;if(!a.out_grouping_b(v,97,121))break i;if(a.cursor>a.limit_backward)break i;if(a.cursor=a.limit-s,a.bra=a.cursor,a.slice_from("ie"))break;return;case 2:if(a.cursor>a.limit_backward)break i}}break r}a.cursor=a.limit-r;var c=a.limit-a.cursor;if(!a.go_out_grouping_b(v,97,121))return;if(a.cursor--,a.cursor=a.limit-c,!a.slice_del())return;a.ket=a.cursor,a.bra=a.cursor;var o,c=a.limit-a.cursor;switch(o=a.find_among_b(f)){case 1:return a.slice_from("e");case 2:var u=a.limit-a.cursor;if(a.in_grouping_b(d,97,111)&&!(a.cursor>a.limit_backward))return;a.cursor=a.limit-u;break;case 3:return a.cursor!=h||(u=a.limit-a.cursor,q()&&(a.cursor=a.limit-u,a.slice_from("e")))}if(a.cursor=a.limit-c,a.ket=a.cursor,a.cursor<=a.limit_backward)return;if(a.cursor--,a.bra=a.cursor,!a.slice_del())return}})(),a.cursor=a.limit-r,a.limit-a.cursor),r=(a.ket=a.cursor,e=a.limit-a.cursor,(a.eq_s_b("y")||(a.cursor=a.limit-e,a.eq_s_b("Y")))&&(a.bra=a.cursor,a.out_grouping_b(v,97,121))&&a.cursor>a.limit_backward&&a.slice_from("i"),a.cursor=a.limit-i,a.limit-a.cursor),e=((()=>{var r;if(a.ket=a.cursor,0!=(r=a.find_among_b(_))&&(a.bra=a.cursor,z()))switch(r){case 1:if(a.slice_from("tion"))break;return;case 2:if(a.slice_from("ence"))break;return;case 3:if(a.slice_from("ance"))break;return;case 4:if(a.slice_from("able"))break;return;case 5:if(a.slice_from("ent"))break;return;case 6:if(a.slice_from("ize"))break;return;case 7:if(a.slice_from("ate"))break;return;case 8:if(a.slice_from("al"))break;return;case 9:if(a.slice_from("ful"))break;return;case 10:if(a.slice_from("ous"))break;return;case 11:if(a.slice_from("ive"))break;return;case 12:if(a.slice_from("ble"))break;return;case 13:if(a.slice_from("og"))break;return;case 14:if(!a.eq_s_b("l"))return;if(a.slice_from("og"))break;return;case 15:if(a.slice_from("less"))break;return;case 16:if(!a.in_grouping_b(w,99,116))return;if(a.slice_del())break}})(),a.cursor=a.limit-r,a.limit-a.cursor),i=((()=>{var r;if(a.ket=a.cursor,0!=(r=a.find_among_b(m))&&(a.bra=a.cursor,z()))switch(r){case 1:if(a.slice_from("tion"))break;return;case 2:if(a.slice_from("ate"))break;return;case 3:if(a.slice_from("al"))break;return;case 4:if(a.slice_from("ic"))break;return;case 5:if(a.slice_del())break;return;case 6:if(!Y())return;if(a.slice_del())break}})(),a.cursor=a.limit-e,a.limit-a.cursor),r=((()=>{var r;if(a.ket=a.cursor,0!=(r=a.find_among_b(b))&&(a.bra=a.cursor,Y()))switch(r){case 1:if(a.slice_del())break;return;case 2:var i=a.limit-a.cursor;if(!a.eq_s_b("s")&&(a.cursor=a.limit-i,!a.eq_s_b("t")))return;if(a.slice_del())break}})(),a.cursor=a.limit-i,a.limit-a.cursor),e=((()=>{var r;if(a.ket=a.cursor,0!=(r=a.find_among_b(k)))switch(a.bra=a.cursor,r){case 1:if(!Y()){if(!z())return;var i=a.limit-a.cursor;if(q())return;a.cursor=a.limit-i}if(a.slice_del())break;return;case 2:if(!Y())return;if(!a.eq_s_b("l"))return;if(a.slice_del())break}})(),a.cursor=a.limit-r,a.cursor=a.limit_backward,a.cursor);(()=>{if(p)for(;;){var r=a.cursor;r:{for(;;){var i=a.cursor;if(a.bra=a.cursor,a.eq_s("Y")){a.ket=a.cursor,a.cursor=i;break}if(a.cursor=i,a.cursor>=a.limit)break r;a.cursor++}if(a.slice_from("y"))continue;return}a.cursor=r;break}})(),a.cursor=e}}return!0},this.stemWord=function(r){return a.setCurrent(r),this.stem(),a.getCurrent()}}; +window.Stemmer = EnglishStemmer; diff --git a/stark/extern/fmt/doc/html/_static/minus.png b/_static/minus.png similarity index 100% rename from stark/extern/fmt/doc/html/_static/minus.png rename to _static/minus.png diff --git a/_static/paraview.png b/_static/paraview.png new file mode 100644 index 0000000000000000000000000000000000000000..31a869f474230eeef7b3e6a6e054bc8b32eac837 GIT binary patch literal 377161 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

KzyG2~$9Me^0u);XR`h<}SlH)cx->EF19`$5`1 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

BRBh|%NX|{XA+BIuRu(fd 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 S&@LMpMXo`Uu+lw)7$)9T=O< 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�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

;UX_~6QF>{j3387M#*N2{$Ls-#yozI@!{ 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 z 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 literal 0 HcmV?d00001 diff --git a/stark/extern/fmt/doc/html/_static/plus.png b/_static/plus.png similarity index 100% rename from stark/extern/fmt/doc/html/_static/plus.png rename to _static/plus.png diff --git a/_static/pygments.css b/_static/pygments.css new file mode 100644 index 00000000..d5096246 --- /dev/null +++ b/_static/pygments.css @@ -0,0 +1,251 @@ +.highlight pre { line-height: 125%; } +.highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +.highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +.highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +.highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +.highlight .hll { background-color: #0969da4a } +.highlight { background: #ffffff; color: #24292F } +.highlight .c { color: #6E7781 } /* Comment */ +.highlight .err { color: #CF222E } /* Error */ +.highlight .k { color: #CF222E } /* Keyword */ +.highlight .l { color: #953800 } /* Literal */ +.highlight .n { color: #8250DF } /* Name */ +.highlight .o { color: #116329 } /* Operator */ +.highlight .p { color: #24292F } /* Punctuation */ +.highlight .ch { color: #6E7781 } /* Comment.Hashbang */ +.highlight .cm { color: #6E7781 } /* Comment.Multiline */ +.highlight .cp { color: #6E7781 } /* Comment.Preproc */ +.highlight .cpf { color: #6E7781 } /* Comment.PreprocFile */ +.highlight .c1 { color: #6E7781 } /* Comment.Single */ +.highlight .cs { color: #6E7781 } /* Comment.Special */ +.highlight .gd { color: #0550AE } /* Generic.Deleted */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .gr { color: #CF222E } /* Generic.Error */ +.highlight .gh { color: #0550AE } /* Generic.Heading */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #0550AE } /* Generic.Subheading */ +.highlight .kc { color: #0550AE } /* Keyword.Constant */ +.highlight .kd { color: #CF222E } /* Keyword.Declaration */ +.highlight .kn { color: #CF222E } /* Keyword.Namespace */ +.highlight .kp { color: #CF222E } /* Keyword.Pseudo */ +.highlight .kr { color: #CF222E } /* Keyword.Reserved */ +.highlight .kt { color: #CF222E } /* Keyword.Type */ +.highlight .ld { color: #953800 } /* Literal.Date */ +.highlight .m { color: #953800 } /* Literal.Number */ +.highlight .s { color: #0550AE } /* Literal.String */ +.highlight .na { color: #953800 } /* Name.Attribute */ +.highlight .nb { color: #953800 } /* Name.Builtin */ +.highlight .nc { color: #0550AE } /* Name.Class */ +.highlight .no { color: #0550AE } /* Name.Constant */ +.highlight .nd { color: #953800 } /* Name.Decorator */ +.highlight .ni { color: #116329 } /* Name.Entity */ +.highlight .ne { color: #8250DF } /* Name.Exception */ +.highlight .nf { color: #0550AE } /* Name.Function */ +.highlight .nl { color: #953800 } /* Name.Label */ +.highlight .nn { color: #24292F } /* Name.Namespace */ +.highlight .nx { color: #8250DF } /* Name.Other */ +.highlight .py { color: #0550AE } /* Name.Property */ +.highlight .nt { color: #116329 } /* Name.Tag */ +.highlight .nv { color: #953800 } /* Name.Variable */ +.highlight .ow { color: #8250DF } /* Operator.Word */ +.highlight .pm { color: #24292F } /* Punctuation.Marker */ +.highlight .w { color: #24292F } /* Text.Whitespace */ +.highlight .mb { color: #953800 } /* Literal.Number.Bin */ +.highlight .mf { color: #953800 } /* Literal.Number.Float */ +.highlight .mh { color: #953800 } /* Literal.Number.Hex */ +.highlight .mi { color: #953800 } /* Literal.Number.Integer */ +.highlight .mo { color: #953800 } /* Literal.Number.Oct */ +.highlight .sa { color: #0550AE } /* Literal.String.Affix */ +.highlight .sb { color: #0550AE } /* Literal.String.Backtick */ +.highlight .sc { color: #0550AE } /* Literal.String.Char */ +.highlight .dl { color: #0550AE } /* Literal.String.Delimiter */ +.highlight .sd { color: #0550AE } /* Literal.String.Doc */ +.highlight .s2 { color: #0550AE } /* Literal.String.Double */ +.highlight .se { color: #0550AE } /* Literal.String.Escape */ +.highlight .sh { color: #0550AE } /* Literal.String.Heredoc */ +.highlight .si { color: #0550AE } /* Literal.String.Interpol */ +.highlight .sx { color: #0550AE } /* Literal.String.Other */ +.highlight .sr { color: #0550AE } /* Literal.String.Regex */ +.highlight .s1 { color: #0550AE } /* Literal.String.Single */ +.highlight .ss { color: #0550AE } /* Literal.String.Symbol */ +.highlight .bp { color: #953800 } /* Name.Builtin.Pseudo */ +.highlight .fm { color: #0550AE } /* Name.Function.Magic */ +.highlight .vc { color: #953800 } /* Name.Variable.Class */ +.highlight .vg { color: #953800 } /* Name.Variable.Global */ +.highlight .vi { color: #953800 } /* Name.Variable.Instance */ +.highlight .vm { color: #953800 } /* Name.Variable.Magic */ +.highlight .il { color: #953800 } /* Literal.Number.Integer.Long */ +@media not print { +body[data-theme="dark"] .highlight pre { line-height: 125%; } +body[data-theme="dark"] .highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body[data-theme="dark"] .highlight .hll { background-color: #ffffcc } +body[data-theme="dark"] .highlight { background: #1e1e1e; color: #B59B7D } +body[data-theme="dark"] .highlight .c { color: #6A9955; font-style: italic } /* Comment */ +body[data-theme="dark"] .highlight .err { color: #B59B7D } /* Error */ +body[data-theme="dark"] .highlight .esc { color: #B59B7D } /* Escape */ +body[data-theme="dark"] .highlight .g { color: #B59B7D } /* Generic */ +body[data-theme="dark"] .highlight .k { color: #569CD6 } /* Keyword */ +body[data-theme="dark"] .highlight .l { color: #D4D4D4 } /* Literal */ +body[data-theme="dark"] .highlight .n { color: #9CDCFE } /* Name */ +body[data-theme="dark"] .highlight .o { color: #D4D4D4 } /* Operator */ +body[data-theme="dark"] .highlight .x { color: #B59B7D } /* Other */ +body[data-theme="dark"] .highlight .p { color: #D4D4D4 } /* Punctuation */ +body[data-theme="dark"] .highlight .ch { color: #6A9955; font-style: italic } /* Comment.Hashbang */ +body[data-theme="dark"] .highlight .cm { color: #6A9955; font-style: italic } /* Comment.Multiline */ +body[data-theme="dark"] .highlight .cp { color: #C586C0; font-style: italic } /* Comment.Preproc */ +body[data-theme="dark"] .highlight .cpf { color: #C586C0; font-style: italic } /* Comment.PreprocFile */ +body[data-theme="dark"] .highlight .c1 { color: #6A9955; font-style: italic } /* Comment.Single */ +body[data-theme="dark"] .highlight .cs { color: #6A9955; font-style: italic } /* Comment.Special */ +body[data-theme="dark"] .highlight .gd { color: #B59B7D } /* Generic.Deleted */ +body[data-theme="dark"] .highlight .ge { color: #B59B7D } /* Generic.Emph */ +body[data-theme="dark"] .highlight .ges { color: #B59B7D } /* Generic.EmphStrong */ +body[data-theme="dark"] .highlight .gr { color: #B59B7D } /* Generic.Error */ +body[data-theme="dark"] .highlight .gh { color: #D4D4D4; font-weight: bold } /* Generic.Heading */ +body[data-theme="dark"] .highlight .gi { color: #B59B7D } /* Generic.Inserted */ +body[data-theme="dark"] .highlight .go { color: #B59B7D } /* Generic.Output */ +body[data-theme="dark"] .highlight .gp { color: #B59B7D } /* Generic.Prompt */ +body[data-theme="dark"] .highlight .gs { color: #B59B7D } /* Generic.Strong */ +body[data-theme="dark"] .highlight .gu { color: #D4D4D4; font-weight: bold } /* Generic.Subheading */ +body[data-theme="dark"] .highlight .gt { color: #B59B7D } /* Generic.Traceback */ +body[data-theme="dark"] .highlight .kc { color: #569CD6 } /* Keyword.Constant */ +body[data-theme="dark"] .highlight .kd { color: #569CD6 } /* Keyword.Declaration */ +body[data-theme="dark"] .highlight .kn { color: #569CD6 } /* Keyword.Namespace */ +body[data-theme="dark"] .highlight .kp { color: #569CD6 } /* Keyword.Pseudo */ +body[data-theme="dark"] .highlight .kr { color: #C586C0 } /* Keyword.Reserved */ +body[data-theme="dark"] .highlight .kt { color: #569CD6 } /* Keyword.Type */ +body[data-theme="dark"] .highlight .ld { color: #D4D4D4 } /* Literal.Date */ +body[data-theme="dark"] .highlight .m { color: #B5CEA8 } /* Literal.Number */ +body[data-theme="dark"] .highlight .s { color: #CE9178 } /* Literal.String */ +body[data-theme="dark"] .highlight .na { color: #9CDCFE } /* Name.Attribute */ +body[data-theme="dark"] .highlight .nb { color: #569CD6 } /* Name.Builtin */ +body[data-theme="dark"] .highlight .nc { color: #4EC9B0 } /* Name.Class */ +body[data-theme="dark"] .highlight .no { color: #9CDCFE } /* Name.Constant */ +body[data-theme="dark"] .highlight .nd { color: #9CDCFE } /* Name.Decorator */ +body[data-theme="dark"] .highlight .ni { color: #9CDCFE } /* Name.Entity */ +body[data-theme="dark"] .highlight .ne { color: #4EC9B0 } /* Name.Exception */ +body[data-theme="dark"] .highlight .nf { color: #DCDCAA } /* Name.Function */ +body[data-theme="dark"] .highlight .nl { color: #9CDCFE } /* Name.Label */ +body[data-theme="dark"] .highlight .nn { color: #4EC9B0 } /* Name.Namespace */ +body[data-theme="dark"] .highlight .nx { color: #9CDCFE } /* Name.Other */ +body[data-theme="dark"] .highlight .py { color: #9CDCFE } /* Name.Property */ +body[data-theme="dark"] .highlight .nt { color: #9CDCFE } /* Name.Tag */ +body[data-theme="dark"] .highlight .nv { color: #9CDCFE } /* Name.Variable */ +body[data-theme="dark"] .highlight .ow { color: #D4D4D4 } /* Operator.Word */ +body[data-theme="dark"] .highlight .pm { color: #D4D4D4 } /* Punctuation.Marker */ +body[data-theme="dark"] .highlight .w { color: #B59B7D } /* Text.Whitespace */ +body[data-theme="dark"] .highlight .mb { color: #B5CEA8 } /* Literal.Number.Bin */ +body[data-theme="dark"] .highlight .mf { color: #B5CEA8 } /* Literal.Number.Float */ +body[data-theme="dark"] .highlight .mh { color: #B5CEA8 } /* Literal.Number.Hex */ +body[data-theme="dark"] .highlight .mi { color: #B5CEA8 } /* Literal.Number.Integer */ +body[data-theme="dark"] .highlight .mo { color: #B5CEA8 } /* Literal.Number.Oct */ +body[data-theme="dark"] .highlight .sa { color: #CE9178 } /* Literal.String.Affix */ +body[data-theme="dark"] .highlight .sb { color: #CE9178 } /* Literal.String.Backtick */ +body[data-theme="dark"] .highlight .sc { color: #CE9178 } /* Literal.String.Char */ +body[data-theme="dark"] .highlight .dl { color: #CE9178 } /* Literal.String.Delimiter */ +body[data-theme="dark"] .highlight .sd { color: #CE9178 } /* Literal.String.Doc */ +body[data-theme="dark"] .highlight .s2 { color: #CE9178 } /* Literal.String.Double */ +body[data-theme="dark"] .highlight .se { color: #CE9178 } /* Literal.String.Escape */ +body[data-theme="dark"] .highlight .sh { color: #CE9178 } /* Literal.String.Heredoc */ +body[data-theme="dark"] .highlight .si { color: #CE9178 } /* Literal.String.Interpol */ +body[data-theme="dark"] .highlight .sx { color: #CE9178 } /* Literal.String.Other */ +body[data-theme="dark"] .highlight .sr { color: #CE9178 } /* Literal.String.Regex */ +body[data-theme="dark"] .highlight .s1 { color: #CE9178 } /* Literal.String.Single */ +body[data-theme="dark"] .highlight .ss { color: #CE9178 } /* Literal.String.Symbol */ +body[data-theme="dark"] .highlight .bp { color: #569CD6 } /* Name.Builtin.Pseudo */ +body[data-theme="dark"] .highlight .fm { color: #DCDCAA } /* Name.Function.Magic */ +body[data-theme="dark"] .highlight .vc { color: #9CDCFE } /* Name.Variable.Class */ +body[data-theme="dark"] .highlight .vg { color: #9CDCFE } /* Name.Variable.Global */ +body[data-theme="dark"] .highlight .vi { color: #9CDCFE } /* Name.Variable.Instance */ +body[data-theme="dark"] .highlight .vm { color: #9CDCFE } /* Name.Variable.Magic */ +body[data-theme="dark"] .highlight .il { color: #B5CEA8 } /* Literal.Number.Integer.Long */ +@media (prefers-color-scheme: dark) { +body:not([data-theme="light"]) .highlight pre { line-height: 125%; } +body:not([data-theme="light"]) .highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } +body:not([data-theme="light"]) .highlight .hll { background-color: #ffffcc } +body:not([data-theme="light"]) .highlight { background: #1e1e1e; color: #B59B7D } +body:not([data-theme="light"]) .highlight .c { color: #6A9955; font-style: italic } /* Comment */ +body:not([data-theme="light"]) .highlight .err { color: #B59B7D } /* Error */ +body:not([data-theme="light"]) .highlight .esc { color: #B59B7D } /* Escape */ +body:not([data-theme="light"]) .highlight .g { color: #B59B7D } /* Generic */ +body:not([data-theme="light"]) .highlight .k { color: #569CD6 } /* Keyword */ +body:not([data-theme="light"]) .highlight .l { color: #D4D4D4 } /* Literal */ +body:not([data-theme="light"]) .highlight .n { color: #9CDCFE } /* Name */ +body:not([data-theme="light"]) .highlight .o { color: #D4D4D4 } /* Operator */ +body:not([data-theme="light"]) .highlight .x { color: #B59B7D } /* Other */ +body:not([data-theme="light"]) .highlight .p { color: #D4D4D4 } /* Punctuation */ +body:not([data-theme="light"]) .highlight .ch { color: #6A9955; font-style: italic } /* Comment.Hashbang */ +body:not([data-theme="light"]) .highlight .cm { color: #6A9955; font-style: italic } /* Comment.Multiline */ +body:not([data-theme="light"]) .highlight .cp { color: #C586C0; font-style: italic } /* Comment.Preproc */ +body:not([data-theme="light"]) .highlight .cpf { color: #C586C0; font-style: italic } /* Comment.PreprocFile */ +body:not([data-theme="light"]) .highlight .c1 { color: #6A9955; font-style: italic } /* Comment.Single */ +body:not([data-theme="light"]) .highlight .cs { color: #6A9955; font-style: italic } /* Comment.Special */ +body:not([data-theme="light"]) .highlight .gd { color: #B59B7D } /* Generic.Deleted */ +body:not([data-theme="light"]) .highlight .ge { color: #B59B7D } /* Generic.Emph */ +body:not([data-theme="light"]) .highlight .ges { color: #B59B7D } /* Generic.EmphStrong */ +body:not([data-theme="light"]) .highlight .gr { color: #B59B7D } /* Generic.Error */ +body:not([data-theme="light"]) .highlight .gh { color: #D4D4D4; font-weight: bold } /* Generic.Heading */ +body:not([data-theme="light"]) .highlight .gi { color: #B59B7D } /* Generic.Inserted */ +body:not([data-theme="light"]) .highlight .go { color: #B59B7D } /* Generic.Output */ +body:not([data-theme="light"]) .highlight .gp { color: #B59B7D } /* Generic.Prompt */ +body:not([data-theme="light"]) .highlight .gs { color: #B59B7D } /* Generic.Strong */ +body:not([data-theme="light"]) .highlight .gu { color: #D4D4D4; font-weight: bold } /* Generic.Subheading */ +body:not([data-theme="light"]) .highlight .gt { color: #B59B7D } /* Generic.Traceback */ +body:not([data-theme="light"]) .highlight .kc { color: #569CD6 } /* Keyword.Constant */ +body:not([data-theme="light"]) .highlight .kd { color: #569CD6 } /* Keyword.Declaration */ +body:not([data-theme="light"]) .highlight .kn { color: #569CD6 } /* Keyword.Namespace */ +body:not([data-theme="light"]) .highlight .kp { color: #569CD6 } /* Keyword.Pseudo */ +body:not([data-theme="light"]) .highlight .kr { color: #C586C0 } /* Keyword.Reserved */ +body:not([data-theme="light"]) .highlight .kt { color: #569CD6 } /* Keyword.Type */ +body:not([data-theme="light"]) .highlight .ld { color: #D4D4D4 } /* Literal.Date */ +body:not([data-theme="light"]) .highlight .m { color: #B5CEA8 } /* Literal.Number */ +body:not([data-theme="light"]) .highlight .s { color: #CE9178 } /* Literal.String */ +body:not([data-theme="light"]) .highlight .na { color: #9CDCFE } /* Name.Attribute */ +body:not([data-theme="light"]) .highlight .nb { color: #569CD6 } /* Name.Builtin */ +body:not([data-theme="light"]) .highlight .nc { color: #4EC9B0 } /* Name.Class */ +body:not([data-theme="light"]) .highlight .no { color: #9CDCFE } /* Name.Constant */ +body:not([data-theme="light"]) .highlight .nd { color: #9CDCFE } /* Name.Decorator */ +body:not([data-theme="light"]) .highlight .ni { color: #9CDCFE } /* Name.Entity */ +body:not([data-theme="light"]) .highlight .ne { color: #4EC9B0 } /* Name.Exception */ +body:not([data-theme="light"]) .highlight .nf { color: #DCDCAA } /* Name.Function */ +body:not([data-theme="light"]) .highlight .nl { color: #9CDCFE } /* Name.Label */ +body:not([data-theme="light"]) .highlight .nn { color: #4EC9B0 } /* Name.Namespace */ +body:not([data-theme="light"]) .highlight .nx { color: #9CDCFE } /* Name.Other */ +body:not([data-theme="light"]) .highlight .py { color: #9CDCFE } /* Name.Property */ +body:not([data-theme="light"]) .highlight .nt { color: #9CDCFE } /* Name.Tag */ +body:not([data-theme="light"]) .highlight .nv { color: #9CDCFE } /* Name.Variable */ +body:not([data-theme="light"]) .highlight .ow { color: #D4D4D4 } /* Operator.Word */ +body:not([data-theme="light"]) .highlight .pm { color: #D4D4D4 } /* Punctuation.Marker */ +body:not([data-theme="light"]) .highlight .w { color: #B59B7D } /* Text.Whitespace */ +body:not([data-theme="light"]) .highlight .mb { color: #B5CEA8 } /* Literal.Number.Bin */ +body:not([data-theme="light"]) .highlight .mf { color: #B5CEA8 } /* Literal.Number.Float */ +body:not([data-theme="light"]) .highlight .mh { color: #B5CEA8 } /* Literal.Number.Hex */ +body:not([data-theme="light"]) .highlight .mi { color: #B5CEA8 } /* Literal.Number.Integer */ +body:not([data-theme="light"]) .highlight .mo { color: #B5CEA8 } /* Literal.Number.Oct */ +body:not([data-theme="light"]) .highlight .sa { color: #CE9178 } /* Literal.String.Affix */ +body:not([data-theme="light"]) .highlight .sb { color: #CE9178 } /* Literal.String.Backtick */ +body:not([data-theme="light"]) .highlight .sc { color: #CE9178 } /* Literal.String.Char */ +body:not([data-theme="light"]) .highlight .dl { color: #CE9178 } /* Literal.String.Delimiter */ +body:not([data-theme="light"]) .highlight .sd { color: #CE9178 } /* Literal.String.Doc */ +body:not([data-theme="light"]) .highlight .s2 { color: #CE9178 } /* Literal.String.Double */ +body:not([data-theme="light"]) .highlight .se { color: #CE9178 } /* Literal.String.Escape */ +body:not([data-theme="light"]) .highlight .sh { color: #CE9178 } /* Literal.String.Heredoc */ +body:not([data-theme="light"]) .highlight .si { color: #CE9178 } /* Literal.String.Interpol */ +body:not([data-theme="light"]) .highlight .sx { color: #CE9178 } /* Literal.String.Other */ +body:not([data-theme="light"]) .highlight .sr { color: #CE9178 } /* Literal.String.Regex */ +body:not([data-theme="light"]) .highlight .s1 { color: #CE9178 } /* Literal.String.Single */ +body:not([data-theme="light"]) .highlight .ss { color: #CE9178 } /* Literal.String.Symbol */ +body:not([data-theme="light"]) .highlight .bp { color: #569CD6 } /* Name.Builtin.Pseudo */ +body:not([data-theme="light"]) .highlight .fm { color: #DCDCAA } /* Name.Function.Magic */ +body:not([data-theme="light"]) .highlight .vc { color: #9CDCFE } /* Name.Variable.Class */ +body:not([data-theme="light"]) .highlight .vg { color: #9CDCFE } /* Name.Variable.Global */ +body:not([data-theme="light"]) .highlight .vi { color: #9CDCFE } /* Name.Variable.Instance */ +body:not([data-theme="light"]) .highlight .vm { color: #9CDCFE } /* Name.Variable.Magic */ +body:not([data-theme="light"]) .highlight .il { color: #B5CEA8 } /* Literal.Number.Integer.Long */ +} +} \ No newline at end of file diff --git a/_static/scripts/furo-extensions.js b/_static/scripts/furo-extensions.js new file mode 100644 index 00000000..e69de29b diff --git a/_static/scripts/furo.js b/_static/scripts/furo.js new file mode 100644 index 00000000..87e1767f --- /dev/null +++ b/_static/scripts/furo.js @@ -0,0 +1,3 @@ +/*! For license information please see furo.js.LICENSE.txt */ +(()=>{var t={856:function(t,e,n){var o,r;r=void 0!==n.g?n.g:"undefined"!=typeof window?window:this,o=function(){return function(t){"use strict";var e={navClass:"active",contentClass:"active",nested:!1,nestedClass:"active",offset:0,reflow:!1,events:!0},n=function(t,e,n){if(n.settings.events){var o=new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n});e.dispatchEvent(o)}},o=function(t){var e=0;if(t.offsetParent)for(;t;)e+=t.offsetTop,t=t.offsetParent;return e>=0?e:0},r=function(t){t&&t.sort(function(t,e){return o(t.content)=Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight,document.body.clientHeight,document.documentElement.clientHeight)},l=function(t,e){var n=t[t.length-1];if(function(t,e){return!(!s()||!c(t.content,e,!0))}(n,e))return n;for(var o=t.length-1;o>=0;o--)if(c(t[o].content,e))return t[o]},a=function(t,e){if(e.nested&&t.parentNode){var n=t.parentNode.closest("li");n&&(n.classList.remove(e.nestedClass),a(n,e))}},i=function(t,e){if(t){var o=t.nav.closest("li");o&&(o.classList.remove(e.navClass),t.content.classList.remove(e.contentClass),a(o,e),n("gumshoeDeactivate",o,{link:t.nav,content:t.content,settings:e}))}},u=function(t,e){if(e.nested){var n=t.parentNode.closest("li");n&&(n.classList.add(e.nestedClass),u(n,e))}};return function(o,c){var s,a,d,f,m,v={setup:function(){s=document.querySelectorAll(o),a=[],Array.prototype.forEach.call(s,function(t){var e=document.getElementById(decodeURIComponent(t.hash.substr(1)));e&&a.push({nav:t,content:e})}),r(a)},detect:function(){var t=l(a,m);t?d&&t.content===d.content||(i(d,m),function(t,e){if(t){var o=t.nav.closest("li");o&&(o.classList.add(e.navClass),t.content.classList.add(e.contentClass),u(o,e),n("gumshoeActivate",o,{link:t.nav,content:t.content,settings:e}))}}(t,m),d=t):d&&(i(d,m),d=null)}},h=function(e){f&&t.cancelAnimationFrame(f),f=t.requestAnimationFrame(v.detect)},g=function(e){f&&t.cancelAnimationFrame(f),f=t.requestAnimationFrame(function(){r(a),v.detect()})};return v.destroy=function(){d&&i(d,m),t.removeEventListener("scroll",h,!1),m.reflow&&t.removeEventListener("resize",g,!1),a=null,s=null,d=null,f=null,m=null},m=function(){var t={};return Array.prototype.forEach.call(arguments,function(e){for(var n in e){if(!e.hasOwnProperty(n))return;t[n]=e[n]}}),t}(e,c||{}),v.setup(),v.detect(),t.addEventListener("scroll",h,!1),m.reflow&&t.addEventListener("resize",g,!1),v}}(r)}.apply(e,[]),void 0===o||(t.exports=o)}},e={};function n(o){var r=e[o];if(void 0!==r)return r.exports;var c=e[o]={exports:{}};return t[o].call(c.exports,c,c.exports,n),c.exports}n.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var o in e)n.o(e,o)&&!n.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:e[o]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),(()=>{"use strict";var t=n(856),e=n.n(t),o=null,r=null,c=document.documentElement.scrollTop;function s(){const t=localStorage.getItem("theme")||"auto";var e;"light"!==(e=window.matchMedia("(prefers-color-scheme: dark)").matches?"auto"===t?"light":"light"==t?"dark":"auto":"auto"===t?"dark":"dark"==t?"light":"auto")&&"dark"!==e&&"auto"!==e&&(console.error(`Got invalid theme mode: ${e}. Resetting to auto.`),e="auto"),document.body.dataset.theme=e,localStorage.setItem("theme",e),console.log(`Changed to ${e} mode.`)}function l(){!function(){const t=document.getElementsByClassName("theme-toggle");Array.from(t).forEach(t=>{t.addEventListener("click",s)})}(),function(){let t=0,e=!1;window.addEventListener("scroll",function(n){t=window.scrollY,e||(window.requestAnimationFrame(function(){var n;(function(t){t>0?r.classList.add("scrolled"):r.classList.remove("scrolled")})(n=t),function(t){t<64?document.documentElement.classList.remove("show-back-to-top"):tc&&document.documentElement.classList.remove("show-back-to-top"),c=t}(n),function(t){null!==o&&(0==t?o.scrollTo(0,0):Math.ceil(t)>=Math.floor(document.documentElement.scrollHeight-window.innerHeight)?o.scrollTo(0,o.scrollHeight):document.querySelector(".scroll-current"))}(n),e=!1}),e=!0)}),window.scroll()}(),null!==o&&new(e())(".toc-tree a",{reflow:!0,recursive:!0,navClass:"scroll-current",offset:()=>{let t=parseFloat(getComputedStyle(document.documentElement).fontSize);const e=r.getBoundingClientRect();return e.top+e.height+2.5*t+1}})}document.addEventListener("DOMContentLoaded",function(){document.body.parentNode.classList.remove("no-js"),r=document.querySelector("header"),o=document.querySelector(".toc-scroll"),l()})})()})(); +//# sourceMappingURL=furo.js.map \ No newline at end of file diff --git a/_static/scripts/furo.js.LICENSE.txt b/_static/scripts/furo.js.LICENSE.txt new file mode 100644 index 00000000..1632189c --- /dev/null +++ b/_static/scripts/furo.js.LICENSE.txt @@ -0,0 +1,7 @@ +/*! + * gumshoejs v5.1.2 (patched by @pradyunsg) + * A simple, framework-agnostic scrollspy script. + * (c) 2019 Chris Ferdinandi + * MIT License + * http://github.com/cferdinandi/gumshoe + */ diff --git a/_static/scripts/furo.js.map b/_static/scripts/furo.js.map new file mode 100644 index 00000000..3b316f3a --- /dev/null +++ b/_static/scripts/furo.js.map @@ -0,0 +1 @@ +{"version":3,"file":"scripts/furo.js","mappings":"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","sources":["webpack:///./src/furo/assets/scripts/gumshoe-patched.js","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///./src/furo/assets/scripts/furo.js"],"sourcesContent":["/*!\n * gumshoejs v5.1.2 (patched by @pradyunsg)\n * A simple, framework-agnostic scrollspy script.\n * (c) 2019 Chris Ferdinandi\n * MIT License\n * http://github.com/cferdinandi/gumshoe\n */\n\n(function (root, factory) {\n if (typeof define === \"function\" && define.amd) {\n define([], function () {\n return factory(root);\n });\n } else if (typeof exports === \"object\") {\n module.exports = factory(root);\n } else {\n root.Gumshoe = factory(root);\n }\n})(\n typeof global !== \"undefined\"\n ? global\n : typeof window !== \"undefined\"\n ? window\n : this,\n function (window) {\n \"use strict\";\n\n //\n // Defaults\n //\n\n var defaults = {\n // Active classes\n navClass: \"active\",\n contentClass: \"active\",\n\n // Nested navigation\n nested: false,\n nestedClass: \"active\",\n\n // Offset & reflow\n offset: 0,\n reflow: false,\n\n // Event support\n events: true,\n };\n\n //\n // Methods\n //\n\n /**\n * Merge two or more objects together.\n * @param {Object} objects The objects to merge together\n * @returns {Object} Merged values of defaults and options\n */\n var extend = function () {\n var merged = {};\n Array.prototype.forEach.call(arguments, function (obj) {\n for (var key in obj) {\n if (!obj.hasOwnProperty(key)) return;\n merged[key] = obj[key];\n }\n });\n return merged;\n };\n\n /**\n * Emit a custom event\n * @param {String} type The event type\n * @param {Node} elem The element to attach the event to\n * @param {Object} detail Any details to pass along with the event\n */\n var emitEvent = function (type, elem, detail) {\n // Make sure events are enabled\n if (!detail.settings.events) return;\n\n // Create a new event\n var event = new CustomEvent(type, {\n bubbles: true,\n cancelable: true,\n detail: detail,\n });\n\n // Dispatch the event\n elem.dispatchEvent(event);\n };\n\n /**\n * Get an element's distance from the top of the Document.\n * @param {Node} elem The element\n * @return {Number} Distance from the top in pixels\n */\n var getOffsetTop = function (elem) {\n var location = 0;\n if (elem.offsetParent) {\n while (elem) {\n location += elem.offsetTop;\n elem = elem.offsetParent;\n }\n }\n return location >= 0 ? location : 0;\n };\n\n /**\n * Sort content from first to last in the DOM\n * @param {Array} contents The content areas\n */\n var sortContents = function (contents) {\n if (contents) {\n contents.sort(function (item1, item2) {\n var offset1 = getOffsetTop(item1.content);\n var offset2 = getOffsetTop(item2.content);\n if (offset1 < offset2) return -1;\n return 1;\n });\n }\n };\n\n /**\n * Get the offset to use for calculating position\n * @param {Object} settings The settings for this instantiation\n * @return {Float} The number of pixels to offset the calculations\n */\n var getOffset = function (settings) {\n // if the offset is a function run it\n if (typeof settings.offset === \"function\") {\n return parseFloat(settings.offset());\n }\n\n // Otherwise, return it as-is\n return parseFloat(settings.offset);\n };\n\n /**\n * Get the document element's height\n * @private\n * @returns {Number}\n */\n var getDocumentHeight = function () {\n return Math.max(\n document.body.scrollHeight,\n document.documentElement.scrollHeight,\n document.body.offsetHeight,\n document.documentElement.offsetHeight,\n document.body.clientHeight,\n document.documentElement.clientHeight,\n );\n };\n\n /**\n * Determine if an element is in view\n * @param {Node} elem The element\n * @param {Object} settings The settings for this instantiation\n * @param {Boolean} bottom If true, check if element is above bottom of viewport instead\n * @return {Boolean} Returns true if element is in the viewport\n */\n var isInView = function (elem, settings, bottom) {\n var bounds = elem.getBoundingClientRect();\n var offset = getOffset(settings);\n if (bottom) {\n return (\n parseInt(bounds.bottom, 10) <\n (window.innerHeight || document.documentElement.clientHeight)\n );\n }\n return parseInt(bounds.top, 10) <= offset;\n };\n\n /**\n * Check if at the bottom of the viewport\n * @return {Boolean} If true, page is at the bottom of the viewport\n */\n var isAtBottom = function () {\n if (\n Math.ceil(window.innerHeight + window.pageYOffset) >=\n getDocumentHeight()\n )\n return true;\n return false;\n };\n\n /**\n * Check if the last item should be used (even if not at the top of the page)\n * @param {Object} item The last item\n * @param {Object} settings The settings for this instantiation\n * @return {Boolean} If true, use the last item\n */\n var useLastItem = function (item, settings) {\n if (isAtBottom() && isInView(item.content, settings, true)) return true;\n return false;\n };\n\n /**\n * Get the active content\n * @param {Array} contents The content areas\n * @param {Object} settings The settings for this instantiation\n * @return {Object} The content area and matching navigation link\n */\n var getActive = function (contents, settings) {\n var last = contents[contents.length - 1];\n if (useLastItem(last, settings)) return last;\n for (var i = contents.length - 1; i >= 0; i--) {\n if (isInView(contents[i].content, settings)) return contents[i];\n }\n };\n\n /**\n * Deactivate parent navs in a nested navigation\n * @param {Node} nav The starting navigation element\n * @param {Object} settings The settings for this instantiation\n */\n var deactivateNested = function (nav, settings) {\n // If nesting isn't activated, bail\n if (!settings.nested || !nav.parentNode) return;\n\n // Get the parent navigation\n var li = nav.parentNode.closest(\"li\");\n if (!li) return;\n\n // Remove the active class\n li.classList.remove(settings.nestedClass);\n\n // Apply recursively to any parent navigation elements\n deactivateNested(li, settings);\n };\n\n /**\n * Deactivate a nav and content area\n * @param {Object} items The nav item and content to deactivate\n * @param {Object} settings The settings for this instantiation\n */\n var deactivate = function (items, settings) {\n // Make sure there are items to deactivate\n if (!items) return;\n\n // Get the parent list item\n var li = items.nav.closest(\"li\");\n if (!li) return;\n\n // Remove the active class from the nav and content\n li.classList.remove(settings.navClass);\n items.content.classList.remove(settings.contentClass);\n\n // Deactivate any parent navs in a nested navigation\n deactivateNested(li, settings);\n\n // Emit a custom event\n emitEvent(\"gumshoeDeactivate\", li, {\n link: items.nav,\n content: items.content,\n settings: settings,\n });\n };\n\n /**\n * Activate parent navs in a nested navigation\n * @param {Node} nav The starting navigation element\n * @param {Object} settings The settings for this instantiation\n */\n var activateNested = function (nav, settings) {\n // If nesting isn't activated, bail\n if (!settings.nested) return;\n\n // Get the parent navigation\n var li = nav.parentNode.closest(\"li\");\n if (!li) return;\n\n // Add the active class\n li.classList.add(settings.nestedClass);\n\n // Apply recursively to any parent navigation elements\n activateNested(li, settings);\n };\n\n /**\n * Activate a nav and content area\n * @param {Object} items The nav item and content to activate\n * @param {Object} settings The settings for this instantiation\n */\n var activate = function (items, settings) {\n // Make sure there are items to activate\n if (!items) return;\n\n // Get the parent list item\n var li = items.nav.closest(\"li\");\n if (!li) return;\n\n // Add the active class to the nav and content\n li.classList.add(settings.navClass);\n items.content.classList.add(settings.contentClass);\n\n // Activate any parent navs in a nested navigation\n activateNested(li, settings);\n\n // Emit a custom event\n emitEvent(\"gumshoeActivate\", li, {\n link: items.nav,\n content: items.content,\n settings: settings,\n });\n };\n\n /**\n * Create the Constructor object\n * @param {String} selector The selector to use for navigation items\n * @param {Object} options User options and settings\n */\n var Constructor = function (selector, options) {\n //\n // Variables\n //\n\n var publicAPIs = {};\n var navItems, contents, current, timeout, settings;\n\n //\n // Methods\n //\n\n /**\n * Set variables from DOM elements\n */\n publicAPIs.setup = function () {\n // Get all nav items\n navItems = document.querySelectorAll(selector);\n\n // Create contents array\n contents = [];\n\n // Loop through each item, get it's matching content, and push to the array\n Array.prototype.forEach.call(navItems, function (item) {\n // Get the content for the nav item\n var content = document.getElementById(\n decodeURIComponent(item.hash.substr(1)),\n );\n if (!content) return;\n\n // Push to the contents array\n contents.push({\n nav: item,\n content: content,\n });\n });\n\n // Sort contents by the order they appear in the DOM\n sortContents(contents);\n };\n\n /**\n * Detect which content is currently active\n */\n publicAPIs.detect = function () {\n // Get the active content\n var active = getActive(contents, settings);\n\n // if there's no active content, deactivate and bail\n if (!active) {\n if (current) {\n deactivate(current, settings);\n current = null;\n }\n return;\n }\n\n // If the active content is the one currently active, do nothing\n if (current && active.content === current.content) return;\n\n // Deactivate the current content and activate the new content\n deactivate(current, settings);\n activate(active, settings);\n\n // Update the currently active content\n current = active;\n };\n\n /**\n * Detect the active content on scroll\n * Debounced for performance\n */\n var scrollHandler = function (event) {\n // If there's a timer, cancel it\n if (timeout) {\n window.cancelAnimationFrame(timeout);\n }\n\n // Setup debounce callback\n timeout = window.requestAnimationFrame(publicAPIs.detect);\n };\n\n /**\n * Update content sorting on resize\n * Debounced for performance\n */\n var resizeHandler = function (event) {\n // If there's a timer, cancel it\n if (timeout) {\n window.cancelAnimationFrame(timeout);\n }\n\n // Setup debounce callback\n timeout = window.requestAnimationFrame(function () {\n sortContents(contents);\n publicAPIs.detect();\n });\n };\n\n /**\n * Destroy the current instantiation\n */\n publicAPIs.destroy = function () {\n // Undo DOM changes\n if (current) {\n deactivate(current, settings);\n }\n\n // Remove event listeners\n window.removeEventListener(\"scroll\", scrollHandler, false);\n if (settings.reflow) {\n window.removeEventListener(\"resize\", resizeHandler, false);\n }\n\n // Reset variables\n contents = null;\n navItems = null;\n current = null;\n timeout = null;\n settings = null;\n };\n\n /**\n * Initialize the current instantiation\n */\n var init = function () {\n // Merge user options into defaults\n settings = extend(defaults, options || {});\n\n // Setup variables based on the current DOM\n publicAPIs.setup();\n\n // Find the currently active content\n publicAPIs.detect();\n\n // Setup event listeners\n window.addEventListener(\"scroll\", scrollHandler, false);\n if (settings.reflow) {\n window.addEventListener(\"resize\", resizeHandler, false);\n }\n };\n\n //\n // Initialize and return the public APIs\n //\n\n init();\n return publicAPIs;\n };\n\n //\n // Return the Constructor\n //\n\n return Constructor;\n },\n);\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","import Gumshoe from \"./gumshoe-patched.js\";\n\n////////////////////////////////////////////////////////////////////////////////\n// Scroll Handling\n////////////////////////////////////////////////////////////////////////////////\nvar tocScroll = null;\nvar header = null;\nvar lastScrollTop = document.documentElement.scrollTop;\nconst GO_TO_TOP_OFFSET = 64;\n\nfunction scrollHandlerForHeader(positionY) {\n if (positionY > 0) {\n header.classList.add(\"scrolled\");\n } else {\n header.classList.remove(\"scrolled\");\n }\n}\n\nfunction scrollHandlerForBackToTop(positionY) {\n if (positionY < GO_TO_TOP_OFFSET) {\n document.documentElement.classList.remove(\"show-back-to-top\");\n } else {\n if (positionY < lastScrollTop) {\n document.documentElement.classList.add(\"show-back-to-top\");\n } else if (positionY > lastScrollTop) {\n document.documentElement.classList.remove(\"show-back-to-top\");\n }\n }\n lastScrollTop = positionY;\n}\n\nfunction scrollHandlerForTOC(positionY) {\n if (tocScroll === null) {\n return;\n }\n\n // top of page.\n if (positionY == 0) {\n tocScroll.scrollTo(0, 0);\n } else if (\n // bottom of page.\n Math.ceil(positionY) >=\n Math.floor(document.documentElement.scrollHeight - window.innerHeight)\n ) {\n tocScroll.scrollTo(0, tocScroll.scrollHeight);\n } else {\n // somewhere in the middle.\n const current = document.querySelector(\".scroll-current\");\n if (current == null) {\n return;\n }\n\n // https://github.com/pypa/pip/issues/9159 This breaks scroll behaviours.\n // // scroll the currently \"active\" heading in toc, into view.\n // const rect = current.getBoundingClientRect();\n // if (0 > rect.top) {\n // current.scrollIntoView(true); // the argument is \"alignTop\"\n // } else if (rect.bottom > window.innerHeight) {\n // current.scrollIntoView(false);\n // }\n }\n}\n\nfunction scrollHandler(positionY) {\n scrollHandlerForHeader(positionY);\n scrollHandlerForBackToTop(positionY);\n scrollHandlerForTOC(positionY);\n}\n\n////////////////////////////////////////////////////////////////////////////////\n// Theme Toggle\n////////////////////////////////////////////////////////////////////////////////\nfunction setTheme(mode) {\n if (mode !== \"light\" && mode !== \"dark\" && mode !== \"auto\") {\n console.error(`Got invalid theme mode: ${mode}. Resetting to auto.`);\n mode = \"auto\";\n }\n\n document.body.dataset.theme = mode;\n localStorage.setItem(\"theme\", mode);\n console.log(`Changed to ${mode} mode.`);\n}\n\nfunction cycleThemeOnce() {\n const currentTheme = localStorage.getItem(\"theme\") || \"auto\";\n const prefersDark = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\n if (prefersDark) {\n // Auto (dark) -> Light -> Dark\n if (currentTheme === \"auto\") {\n setTheme(\"light\");\n } else if (currentTheme == \"light\") {\n setTheme(\"dark\");\n } else {\n setTheme(\"auto\");\n }\n } else {\n // Auto (light) -> Dark -> Light\n if (currentTheme === \"auto\") {\n setTheme(\"dark\");\n } else if (currentTheme == \"dark\") {\n setTheme(\"light\");\n } else {\n setTheme(\"auto\");\n }\n }\n}\n\n////////////////////////////////////////////////////////////////////////////////\n// Setup\n////////////////////////////////////////////////////////////////////////////////\nfunction setupScrollHandler() {\n // Taken from https://developer.mozilla.org/en-US/docs/Web/API/Document/scroll_event\n let last_known_scroll_position = 0;\n let ticking = false;\n\n window.addEventListener(\"scroll\", function (e) {\n last_known_scroll_position = window.scrollY;\n\n if (!ticking) {\n window.requestAnimationFrame(function () {\n scrollHandler(last_known_scroll_position);\n ticking = false;\n });\n\n ticking = true;\n }\n });\n window.scroll();\n}\n\nfunction setupScrollSpy() {\n if (tocScroll === null) {\n return;\n }\n\n // Scrollspy -- highlight table on contents, based on scroll\n new Gumshoe(\".toc-tree a\", {\n reflow: true,\n recursive: true,\n navClass: \"scroll-current\",\n offset: () => {\n let rem = parseFloat(getComputedStyle(document.documentElement).fontSize);\n const headerRect = header.getBoundingClientRect();\n return headerRect.top + headerRect.height + 2.5 * rem + 1;\n },\n });\n}\n\nfunction setupTheme() {\n // Attach event handlers for toggling themes\n const buttons = document.getElementsByClassName(\"theme-toggle\");\n Array.from(buttons).forEach((btn) => {\n btn.addEventListener(\"click\", cycleThemeOnce);\n });\n}\n\nfunction setup() {\n setupTheme();\n setupScrollHandler();\n setupScrollSpy();\n}\n\n////////////////////////////////////////////////////////////////////////////////\n// Main entrypoint\n////////////////////////////////////////////////////////////////////////////////\nfunction main() {\n document.body.parentNode.classList.remove(\"no-js\");\n\n header = document.querySelector(\"header\");\n tocScroll = document.querySelector(\".toc-scroll\");\n\n setup();\n}\n\ndocument.addEventListener(\"DOMContentLoaded\", main);\n"],"names":["root","g","window","this","defaults","navClass","contentClass","nested","nestedClass","offset","reflow","events","emitEvent","type","elem","detail","settings","event","CustomEvent","bubbles","cancelable","dispatchEvent","getOffsetTop","location","offsetParent","offsetTop","sortContents","contents","sort","item1","item2","content","isInView","bottom","bounds","getBoundingClientRect","parseFloat","getOffset","parseInt","innerHeight","document","documentElement","clientHeight","top","isAtBottom","Math","ceil","pageYOffset","max","body","scrollHeight","offsetHeight","getActive","last","length","item","useLastItem","i","deactivateNested","nav","parentNode","li","closest","classList","remove","deactivate","items","link","activateNested","add","selector","options","navItems","current","timeout","publicAPIs","querySelectorAll","Array","prototype","forEach","call","getElementById","decodeURIComponent","hash","substr","push","active","activate","scrollHandler","cancelAnimationFrame","requestAnimationFrame","detect","resizeHandler","destroy","removeEventListener","merged","arguments","obj","key","hasOwnProperty","extend","setup","addEventListener","factory","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","n","getter","__esModule","d","a","definition","o","Object","defineProperty","enumerable","get","globalThis","Function","e","prop","tocScroll","header","lastScrollTop","scrollTop","cycleThemeOnce","currentTheme","localStorage","getItem","mode","matchMedia","matches","console","error","dataset","theme","setItem","log","buttons","getElementsByClassName","from","btn","setupTheme","last_known_scroll_position","ticking","scrollY","positionY","scrollHandlerForHeader","scrollHandlerForBackToTop","scrollTo","floor","querySelector","scrollHandlerForTOC","scroll","setupScrollHandler","recursive","rem","getComputedStyle","fontSize","headerRect","height"],"sourceRoot":""} \ No newline at end of file diff --git a/_static/searchtools.js b/_static/searchtools.js new file mode 100644 index 00000000..e29b1c75 --- /dev/null +++ b/_static/searchtools.js @@ -0,0 +1,693 @@ +/* + * Sphinx JavaScript utilities for the full-text search. + */ +"use strict"; + +/** + * Simple result scoring code. + */ +if (typeof Scorer === "undefined") { + var Scorer = { + // Implement the following function to further tweak the score for each result + // The function takes a result array [docname, title, anchor, descr, score, filename] + // and returns the new score. + /* + score: result => { + const [docname, title, anchor, descr, score, filename, kind] = result + return score + }, + */ + + // query matches the full name of an object + objNameMatch: 11, + // or matches in the last dotted part of the object name + objPartialMatch: 6, + // Additive scores depending on the priority of the object + objPrio: { + 0: 15, // used to be importantResults + 1: 5, // used to be objectResults + 2: -5, // used to be unimportantResults + }, + // Used when the priority is not in the mapping. + objPrioDefault: 0, + + // query found in title + title: 15, + partialTitle: 7, + // query found in terms + term: 5, + partialTerm: 2, + }; +} + +// Global search result kind enum, used by themes to style search results. +// prettier-ignore +class SearchResultKind { + static get index() { return "index"; } + static get object() { return "object"; } + static get text() { return "text"; } + static get title() { return "title"; } +} + +const _removeChildren = (element) => { + while (element && element.lastChild) element.removeChild(element.lastChild); +}; + +/** + * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#escaping + */ +const _escapeRegExp = (string) => + string.replace(/[.*+\-?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string + +const _escapeHTML = (text) => { + return text + .replaceAll("&", "&") + .replaceAll("<", "<") + .replaceAll(">", ">") + .replaceAll('"', """) + .replaceAll("'", "'"); +}; + +const _displayItem = (item, searchTerms, highlightTerms) => { + const docBuilder = DOCUMENTATION_OPTIONS.BUILDER; + const docFileSuffix = DOCUMENTATION_OPTIONS.FILE_SUFFIX; + const docLinkSuffix = DOCUMENTATION_OPTIONS.LINK_SUFFIX; + const showSearchSummary = DOCUMENTATION_OPTIONS.SHOW_SEARCH_SUMMARY; + const contentRoot = document.documentElement.dataset.content_root; + + const [docName, title, anchor, descr, score, _filename, kind] = item; + + let listItem = document.createElement("li"); + // Add a class representing the item's type: + // can be used by a theme's CSS selector for styling + // See SearchResultKind for the class names. + listItem.classList.add(`kind-${kind}`); + let requestUrl; + let linkUrl; + if (docBuilder === "dirhtml") { + // dirhtml builder + let dirname = docName + "/"; + if (dirname.match(/\/index\/$/)) + dirname = dirname.substring(0, dirname.length - 6); + else if (dirname === "index/") dirname = ""; + requestUrl = contentRoot + dirname; + linkUrl = requestUrl; + } else { + // normal html builders + requestUrl = contentRoot + docName + docFileSuffix; + linkUrl = docName + docLinkSuffix; + } + let linkEl = listItem.appendChild(document.createElement("a")); + linkEl.href = linkUrl + anchor; + linkEl.dataset.score = score; + linkEl.innerHTML = _escapeHTML(title); + if (descr) { + listItem.appendChild(document.createElement("span")).innerHTML = + ` (${_escapeHTML(descr)})`; + // highlight search terms in the description + if (SPHINX_HIGHLIGHT_ENABLED) + // SPHINX_HIGHLIGHT_ENABLED is set in sphinx_highlight.js + highlightTerms.forEach((term) => + _highlightText(listItem, term, "highlighted"), + ); + } else if (showSearchSummary) + fetch(requestUrl) + .then((responseData) => responseData.text()) + .then((data) => { + if (data) + listItem.appendChild( + Search.makeSearchSummary(data, searchTerms, anchor), + ); + // highlight search terms in the summary + if (SPHINX_HIGHLIGHT_ENABLED) + // SPHINX_HIGHLIGHT_ENABLED is set in sphinx_highlight.js + highlightTerms.forEach((term) => + _highlightText(listItem, term, "highlighted"), + ); + }); + Search.output.appendChild(listItem); +}; +const _finishSearch = (resultCount) => { + Search.stopPulse(); + Search.title.innerText = _("Search Results"); + if (!resultCount) + Search.status.innerText = Documentation.gettext( + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories.", + ); + else + Search.status.innerText = Documentation.ngettext( + "Search finished, found one page matching the search query.", + "Search finished, found ${resultCount} pages matching the search query.", + resultCount, + ).replace("${resultCount}", resultCount); +}; +const _displayNextItem = ( + results, + resultCount, + searchTerms, + highlightTerms, +) => { + // results left, load the summary and display it + // this is intended to be dynamic (don't sub resultsCount) + if (results.length) { + _displayItem(results.pop(), searchTerms, highlightTerms); + setTimeout( + () => _displayNextItem(results, resultCount, searchTerms, highlightTerms), + 5, + ); + } + // search finished, update title and status message + else _finishSearch(resultCount); +}; +// Helper function used by query() to order search results. +// Each input is an array of [docname, title, anchor, descr, score, filename, kind]. +// Order the results by score (in opposite order of appearance, since the +// `_displayNextItem` function uses pop() to retrieve items) and then alphabetically. +const _orderResultsByScoreThenName = (a, b) => { + const leftScore = a[4]; + const rightScore = b[4]; + if (leftScore === rightScore) { + // same score: sort alphabetically + const leftTitle = a[1].toLowerCase(); + const rightTitle = b[1].toLowerCase(); + if (leftTitle === rightTitle) return 0; + return leftTitle > rightTitle ? -1 : 1; // inverted is intentional + } + return leftScore > rightScore ? 1 : -1; +}; + +/** + * Default splitQuery function. Can be overridden in ``sphinx.search`` with a + * custom function per language. + * + * The regular expression works by splitting the string on consecutive characters + * that are not Unicode letters, numbers, underscores, or emoji characters. + * This is the same as ``\W+`` in Python, preserving the surrogate pair area. + */ +if (typeof splitQuery === "undefined") { + var splitQuery = (query) => + query + .split(/[^\p{Letter}\p{Number}_\p{Emoji_Presentation}]+/gu) + .filter((term) => term); // remove remaining empty strings +} + +/** + * Search Module + */ +const Search = { + _index: null, + _queued_query: null, + _pulse_status: -1, + + htmlToText: (htmlString, anchor) => { + const htmlElement = new DOMParser().parseFromString( + htmlString, + "text/html", + ); + for (const removalQuery of [".headerlink", "script", "style"]) { + htmlElement.querySelectorAll(removalQuery).forEach((el) => { + el.remove(); + }); + } + if (anchor) { + const anchorContent = htmlElement.querySelector( + `[role="main"] ${anchor}`, + ); + if (anchorContent) return anchorContent.textContent; + + console.warn( + `Anchored content block not found. Sphinx search tries to obtain it via DOM query '[role=main] ${anchor}'. Check your theme or template.`, + ); + } + + // if anchor not specified or not found, fall back to main content + const docContent = htmlElement.querySelector('[role="main"]'); + if (docContent) return docContent.textContent; + + console.warn( + "Content block not found. Sphinx search tries to obtain it via DOM query '[role=main]'. Check your theme or template.", + ); + return ""; + }, + + init: () => { + const query = new URLSearchParams(window.location.search).get("q"); + document + .querySelectorAll('input[name="q"]') + .forEach((el) => (el.value = query)); + if (query) Search.performSearch(query); + }, + + loadIndex: (url) => + (document.body.appendChild(document.createElement("script")).src = url), + + setIndex: (index) => { + Search._index = index; + if (Search._queued_query !== null) { + const query = Search._queued_query; + Search._queued_query = null; + Search.query(query); + } + }, + + hasIndex: () => Search._index !== null, + + deferQuery: (query) => (Search._queued_query = query), + + stopPulse: () => (Search._pulse_status = -1), + + startPulse: () => { + if (Search._pulse_status >= 0) return; + + const pulse = () => { + Search._pulse_status = (Search._pulse_status + 1) % 4; + Search.dots.innerText = ".".repeat(Search._pulse_status); + if (Search._pulse_status >= 0) window.setTimeout(pulse, 500); + }; + pulse(); + }, + + /** + * perform a search for something (or wait until index is loaded) + */ + performSearch: (query) => { + // create the required interface elements + const searchText = document.createElement("h2"); + searchText.textContent = _("Searching"); + const searchSummary = document.createElement("p"); + searchSummary.classList.add("search-summary"); + searchSummary.innerText = ""; + const searchList = document.createElement("ul"); + searchList.setAttribute("role", "list"); + searchList.classList.add("search"); + + const out = document.getElementById("search-results"); + Search.title = out.appendChild(searchText); + Search.dots = Search.title.appendChild(document.createElement("span")); + Search.status = out.appendChild(searchSummary); + Search.output = out.appendChild(searchList); + + const searchProgress = document.getElementById("search-progress"); + // Some themes don't use the search progress node + if (searchProgress) { + searchProgress.innerText = _("Preparing search..."); + } + Search.startPulse(); + + // index already loaded, the browser was quick! + if (Search.hasIndex()) Search.query(query); + else Search.deferQuery(query); + }, + + _parseQuery: (query) => { + // stem the search terms and add them to the correct list + const stemmer = new Stemmer(); + const searchTerms = new Set(); + const excludedTerms = new Set(); + const highlightTerms = new Set(); + const objectTerms = new Set(splitQuery(query.toLowerCase().trim())); + splitQuery(query.trim()).forEach((queryTerm) => { + const queryTermLower = queryTerm.toLowerCase(); + + // maybe skip this "word" + // stopwords set is from language_data.js + if (stopwords.has(queryTermLower) || queryTerm.match(/^\d+$/)) return; + + // stem the word + let word = stemmer.stemWord(queryTermLower); + // select the correct list + if (word[0] === "-") excludedTerms.add(word.substr(1)); + else { + searchTerms.add(word); + highlightTerms.add(queryTermLower); + } + }); + + if (SPHINX_HIGHLIGHT_ENABLED) { + // SPHINX_HIGHLIGHT_ENABLED is set in sphinx_highlight.js + localStorage.setItem( + "sphinx_highlight_terms", + [...highlightTerms].join(" "), + ); + } + + // console.debug("SEARCH: searching for:"); + // console.info("required: ", [...searchTerms]); + // console.info("excluded: ", [...excludedTerms]); + + return [query, searchTerms, excludedTerms, highlightTerms, objectTerms]; + }, + + /** + * execute search (requires search index to be loaded) + */ + _performSearch: ( + query, + searchTerms, + excludedTerms, + highlightTerms, + objectTerms, + ) => { + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const titles = Search._index.titles; + const allTitles = Search._index.alltitles; + const indexEntries = Search._index.indexentries; + + // Collect multiple result groups to be sorted separately and then ordered. + // Each is an array of [docname, title, anchor, descr, score, filename, kind]. + const normalResults = []; + const nonMainIndexResults = []; + + _removeChildren(document.getElementById("search-progress")); + + const queryLower = query.toLowerCase().trim(); + for (const [title, foundTitles] of Object.entries(allTitles)) { + if ( + title.toLowerCase().trim().includes(queryLower) + && queryLower.length >= title.length / 2 + ) { + for (const [file, id] of foundTitles) { + const score = Math.round( + (Scorer.title * queryLower.length) / title.length, + ); + const boost = titles[file] === title ? 1 : 0; // add a boost for document titles + normalResults.push([ + docNames[file], + titles[file] !== title ? `${titles[file]} > ${title}` : title, + id !== null ? "#" + id : "", + null, + score + boost, + filenames[file], + SearchResultKind.title, + ]); + } + } + } + + // search for explicit entries in index directives + for (const [entry, foundEntries] of Object.entries(indexEntries)) { + if (entry.includes(queryLower) && queryLower.length >= entry.length / 2) { + for (const [file, id, isMain] of foundEntries) { + const score = Math.round((100 * queryLower.length) / entry.length); + const result = [ + docNames[file], + titles[file], + id ? "#" + id : "", + null, + score, + filenames[file], + SearchResultKind.index, + ]; + if (isMain) { + normalResults.push(result); + } else { + nonMainIndexResults.push(result); + } + } + } + } + + // lookup as object + objectTerms.forEach((term) => + normalResults.push(...Search.performObjectSearch(term, objectTerms)), + ); + + // lookup as search terms in fulltext + normalResults.push( + ...Search.performTermsSearch(searchTerms, excludedTerms), + ); + + // let the scorer override scores with a custom scoring function + if (Scorer.score) { + normalResults.forEach((item) => (item[4] = Scorer.score(item))); + nonMainIndexResults.forEach((item) => (item[4] = Scorer.score(item))); + } + + // Sort each group of results by score and then alphabetically by name. + normalResults.sort(_orderResultsByScoreThenName); + nonMainIndexResults.sort(_orderResultsByScoreThenName); + + // Combine the result groups in (reverse) order. + // Non-main index entries are typically arbitrary cross-references, + // so display them after other results. + let results = [...nonMainIndexResults, ...normalResults]; + + // remove duplicate search results + // note the reversing of results, so that in the case of duplicates, the highest-scoring entry is kept + let seen = new Set(); + results = results.reverse().reduce((acc, result) => { + let resultStr = result + .slice(0, 4) + .concat([result[5]]) + .map((v) => String(v)) + .join(","); + if (!seen.has(resultStr)) { + acc.push(result); + seen.add(resultStr); + } + return acc; + }, []); + + return results.reverse(); + }, + + query: (query) => { + const [ + searchQuery, + searchTerms, + excludedTerms, + highlightTerms, + objectTerms, + ] = Search._parseQuery(query); + const results = Search._performSearch( + searchQuery, + searchTerms, + excludedTerms, + highlightTerms, + objectTerms, + ); + + // for debugging + //Search.lastresults = results.slice(); // a copy + // console.info("search results:", Search.lastresults); + + // print the results + _displayNextItem(results, results.length, searchTerms, highlightTerms); + }, + + /** + * search for object names + */ + performObjectSearch: (object, objectTerms) => { + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const objects = Search._index.objects; + const objNames = Search._index.objnames; + const titles = Search._index.titles; + + const results = []; + + const objectSearchCallback = (prefix, match) => { + const name = match[4]; + const fullname = (prefix ? prefix + "." : "") + name; + const fullnameLower = fullname.toLowerCase(); + if (fullnameLower.indexOf(object) < 0) return; + + let score = 0; + const parts = fullnameLower.split("."); + + // check for different match types: exact matches of full name or + // "last name" (i.e. last dotted part) + if (fullnameLower === object || parts.slice(-1)[0] === object) + score += Scorer.objNameMatch; + else if (parts.slice(-1)[0].indexOf(object) > -1) + score += Scorer.objPartialMatch; // matches in last name + + const objName = objNames[match[1]][2]; + const title = titles[match[0]]; + + // If more than one term searched for, we require other words to be + // found in the name/title/description + const otherTerms = new Set(objectTerms); + otherTerms.delete(object); + if (otherTerms.size > 0) { + const haystack = `${prefix} ${name} ${objName} ${title}`.toLowerCase(); + if ( + [...otherTerms].some((otherTerm) => haystack.indexOf(otherTerm) < 0) + ) + return; + } + + let anchor = match[3]; + if (anchor === "") anchor = fullname; + else if (anchor === "-") anchor = objNames[match[1]][1] + "-" + fullname; + + const descr = objName + _(", in ") + title; + + // add custom score for some objects according to scorer + if (Scorer.objPrio.hasOwnProperty(match[2])) + score += Scorer.objPrio[match[2]]; + else score += Scorer.objPrioDefault; + + results.push([ + docNames[match[0]], + fullname, + "#" + anchor, + descr, + score, + filenames[match[0]], + SearchResultKind.object, + ]); + }; + Object.keys(objects).forEach((prefix) => + objects[prefix].forEach((array) => objectSearchCallback(prefix, array)), + ); + return results; + }, + + /** + * search for full-text terms in the index + */ + performTermsSearch: (searchTerms, excludedTerms) => { + // prepare search + const terms = Search._index.terms; + const titleTerms = Search._index.titleterms; + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const titles = Search._index.titles; + + const scoreMap = new Map(); + const fileMap = new Map(); + + // perform the search on the required terms + searchTerms.forEach((word) => { + const files = []; + // find documents, if any, containing the query word in their text/title term indices + // use Object.hasOwnProperty to avoid mismatching against prototype properties + const arr = [ + { + files: terms.hasOwnProperty(word) ? terms[word] : undefined, + score: Scorer.term, + }, + { + files: titleTerms.hasOwnProperty(word) ? titleTerms[word] : undefined, + score: Scorer.title, + }, + ]; + // add support for partial matches + if (word.length > 2) { + const escapedWord = _escapeRegExp(word); + if (!terms.hasOwnProperty(word)) { + Object.keys(terms).forEach((term) => { + if (term.match(escapedWord)) + arr.push({ files: terms[term], score: Scorer.partialTerm }); + }); + } + if (!titleTerms.hasOwnProperty(word)) { + Object.keys(titleTerms).forEach((term) => { + if (term.match(escapedWord)) + arr.push({ files: titleTerms[term], score: Scorer.partialTitle }); + }); + } + } + + // no match but word was a required one + if (arr.every((record) => record.files === undefined)) return; + + // found search word in contents + arr.forEach((record) => { + if (record.files === undefined) return; + + let recordFiles = record.files; + if (recordFiles.length === undefined) recordFiles = [recordFiles]; + files.push(...recordFiles); + + // set score for the word in each file + recordFiles.forEach((file) => { + if (!scoreMap.has(file)) scoreMap.set(file, new Map()); + const fileScores = scoreMap.get(file); + fileScores.set(word, record.score); + }); + }); + + // create the mapping + files.forEach((file) => { + if (!fileMap.has(file)) fileMap.set(file, [word]); + else if (fileMap.get(file).indexOf(word) === -1) + fileMap.get(file).push(word); + }); + }); + + // now check if the files don't contain excluded terms + const results = []; + for (const [file, wordList] of fileMap) { + // check if all requirements are matched + + // as search terms with length < 3 are discarded + const filteredTermCount = [...searchTerms].filter( + (term) => term.length > 2, + ).length; + if ( + wordList.length !== searchTerms.size + && wordList.length !== filteredTermCount + ) + continue; + + // ensure that none of the excluded terms is in the search result + if ( + [...excludedTerms].some( + (term) => + terms[term] === file + || titleTerms[term] === file + || (terms[term] || []).includes(file) + || (titleTerms[term] || []).includes(file), + ) + ) + break; + + // select one (max) score for the file. + const score = Math.max(...wordList.map((w) => scoreMap.get(file).get(w))); + // add result to the result list + results.push([ + docNames[file], + titles[file], + "", + null, + score, + filenames[file], + SearchResultKind.text, + ]); + } + return results; + }, + + /** + * helper function to return a node containing the + * search summary for a given text. keywords is a list + * of stemmed words. + */ + makeSearchSummary: (htmlText, keywords, anchor) => { + const text = Search.htmlToText(htmlText, anchor); + if (text === "") return null; + + const textLower = text.toLowerCase(); + const actualStartPosition = [...keywords] + .map((k) => textLower.indexOf(k.toLowerCase())) + .filter((i) => i > -1) + .slice(-1)[0]; + const startWithContext = Math.max(actualStartPosition - 120, 0); + + const top = startWithContext === 0 ? "" : "..."; + const tail = startWithContext + 240 < text.length ? "..." : ""; + + let summary = document.createElement("p"); + summary.classList.add("context"); + summary.textContent = + top + text.substr(startWithContext, 240).trim() + tail; + + return summary; + }, +}; + +_ready(Search.init); diff --git a/_static/skeleton.css b/_static/skeleton.css new file mode 100644 index 00000000..467c878c --- /dev/null +++ b/_static/skeleton.css @@ -0,0 +1,296 @@ +/* Some sane resets. */ +html { + height: 100%; +} + +body { + margin: 0; + min-height: 100%; +} + +/* All the flexbox magic! */ +body, +.sb-announcement, +.sb-content, +.sb-main, +.sb-container, +.sb-container__inner, +.sb-article-container, +.sb-footer-content, +.sb-header, +.sb-header-secondary, +.sb-footer { + display: flex; +} + +/* These order things vertically */ +body, +.sb-main, +.sb-article-container { + flex-direction: column; +} + +/* Put elements in the center */ +.sb-header, +.sb-header-secondary, +.sb-container, +.sb-content, +.sb-footer, +.sb-footer-content { + justify-content: center; +} +/* Put elements at the ends */ +.sb-article-container { + justify-content: space-between; +} + +/* These elements grow. */ +.sb-main, +.sb-content, +.sb-container, +article { + flex-grow: 1; +} + +/* Because padding making this wider is not fun */ +article { + box-sizing: border-box; +} + +/* The announcements element should never be wider than the page. */ +.sb-announcement { + max-width: 100%; +} + +.sb-sidebar-primary, +.sb-sidebar-secondary { + flex-shrink: 0; + width: 17rem; +} + +.sb-announcement__inner { + justify-content: center; + + box-sizing: border-box; + height: 3rem; + + overflow-x: auto; + white-space: nowrap; +} + +/* Sidebars, with checkbox-based toggle */ +.sb-sidebar-primary, +.sb-sidebar-secondary { + position: fixed; + height: 100%; + top: 0; +} + +.sb-sidebar-primary { + left: -17rem; + transition: left 250ms ease-in-out; +} +.sb-sidebar-secondary { + right: -17rem; + transition: right 250ms ease-in-out; +} + +.sb-sidebar-toggle { + display: none; +} +.sb-sidebar-overlay { + position: fixed; + top: 0; + width: 0; + height: 0; + + transition: width 0ms ease 250ms, height 0ms ease 250ms, opacity 250ms ease; + + opacity: 0; + background-color: rgba(0, 0, 0, 0.54); +} + +#sb-sidebar-toggle--primary:checked + ~ .sb-sidebar-overlay[for="sb-sidebar-toggle--primary"], +#sb-sidebar-toggle--secondary:checked + ~ .sb-sidebar-overlay[for="sb-sidebar-toggle--secondary"] { + width: 100%; + height: 100%; + opacity: 1; + transition: width 0ms ease, height 0ms ease, opacity 250ms ease; +} + +#sb-sidebar-toggle--primary:checked ~ .sb-container .sb-sidebar-primary { + left: 0; +} +#sb-sidebar-toggle--secondary:checked ~ .sb-container .sb-sidebar-secondary { + right: 0; +} + +/* Full-width mode */ +.drop-secondary-sidebar-for-full-width-content + .hide-when-secondary-sidebar-shown { + display: none !important; +} +.drop-secondary-sidebar-for-full-width-content .sb-sidebar-secondary { + display: none !important; +} + +/* Mobile views */ +.sb-page-width { + width: 100%; +} + +.sb-article-container, +.sb-footer-content__inner, +.drop-secondary-sidebar-for-full-width-content .sb-article, +.drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 100vw; +} + +.sb-article, +.match-content-width { + padding: 0 1rem; + box-sizing: border-box; +} + +@media (min-width: 32rem) { + .sb-article, + .match-content-width { + padding: 0 2rem; + } +} + +/* Tablet views */ +@media (min-width: 42rem) { + .sb-article-container { + width: auto; + } + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 42rem; + } + .sb-article, + .match-content-width { + width: 42rem; + } +} +@media (min-width: 46rem) { + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 46rem; + } + .sb-article, + .match-content-width { + width: 46rem; + } +} +@media (min-width: 50rem) { + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 50rem; + } + .sb-article, + .match-content-width { + width: 50rem; + } +} + +/* Tablet views */ +@media (min-width: 59rem) { + .sb-sidebar-secondary { + position: static; + } + .hide-when-secondary-sidebar-shown { + display: none !important; + } + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 59rem; + } + .sb-article, + .match-content-width { + width: 42rem; + } +} +@media (min-width: 63rem) { + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 63rem; + } + .sb-article, + .match-content-width { + width: 46rem; + } +} +@media (min-width: 67rem) { + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 67rem; + } + .sb-article, + .match-content-width { + width: 50rem; + } +} + +/* Desktop views */ +@media (min-width: 76rem) { + .sb-sidebar-primary { + position: static; + } + .hide-when-primary-sidebar-shown { + display: none !important; + } + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 59rem; + } + .sb-article, + .match-content-width { + width: 42rem; + } +} + +/* Full desktop views */ +@media (min-width: 80rem) { + .sb-article, + .match-content-width { + width: 46rem; + } + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 63rem; + } +} + +@media (min-width: 84rem) { + .sb-article, + .match-content-width { + width: 50rem; + } + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 67rem; + } +} + +@media (min-width: 88rem) { + .sb-footer-content__inner, + .drop-secondary-sidebar-for-full-width-content .sb-article, + .drop-secondary-sidebar-for-full-width-content .match-content-width { + width: 67rem; + } + .sb-page-width { + width: 88rem; + } +} diff --git a/_static/sphinx_highlight.js b/_static/sphinx_highlight.js new file mode 100644 index 00000000..a74e103a --- /dev/null +++ b/_static/sphinx_highlight.js @@ -0,0 +1,159 @@ +/* Highlighting utilities for Sphinx HTML documentation. */ +"use strict"; + +const SPHINX_HIGHLIGHT_ENABLED = true; + +/** + * highlight a given string on a node by wrapping it in + * span elements with the given class name. + */ +const _highlight = (node, addItems, text, className) => { + if (node.nodeType === Node.TEXT_NODE) { + const val = node.nodeValue; + const parent = node.parentNode; + const pos = val.toLowerCase().indexOf(text); + if ( + pos >= 0 + && !parent.classList.contains(className) + && !parent.classList.contains("nohighlight") + ) { + let span; + + const closestNode = parent.closest("body, svg, foreignObject"); + const isInSVG = closestNode && closestNode.matches("svg"); + if (isInSVG) { + span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + } else { + span = document.createElement("span"); + span.classList.add(className); + } + + span.appendChild(document.createTextNode(val.substr(pos, text.length))); + const rest = document.createTextNode(val.substr(pos + text.length)); + parent.insertBefore(span, parent.insertBefore(rest, node.nextSibling)); + node.nodeValue = val.substr(0, pos); + /* There may be more occurrences of search term in this node. So call this + * function recursively on the remaining fragment. + */ + _highlight(rest, addItems, text, className); + + if (isInSVG) { + const rect = document.createElementNS( + "http://www.w3.org/2000/svg", + "rect", + ); + const bbox = parent.getBBox(); + rect.x.baseVal.value = bbox.x; + rect.y.baseVal.value = bbox.y; + rect.width.baseVal.value = bbox.width; + rect.height.baseVal.value = bbox.height; + rect.setAttribute("class", className); + addItems.push({ parent: parent, target: rect }); + } + } + } else if (node.matches && !node.matches("button, select, textarea")) { + node.childNodes.forEach((el) => _highlight(el, addItems, text, className)); + } +}; +const _highlightText = (thisNode, text, className) => { + let addItems = []; + _highlight(thisNode, addItems, text, className); + addItems.forEach((obj) => + obj.parent.insertAdjacentElement("beforebegin", obj.target), + ); +}; + +/** + * Small JavaScript module for the documentation. + */ +const SphinxHighlight = { + /** + * highlight the search words provided in localstorage in the text + */ + highlightSearchWords: () => { + if (!SPHINX_HIGHLIGHT_ENABLED) return; // bail if no highlight + + // get and clear terms from localstorage + const url = new URL(window.location); + const highlight = + localStorage.getItem("sphinx_highlight_terms") + || url.searchParams.get("highlight") + || ""; + localStorage.removeItem("sphinx_highlight_terms"); + // Update history only if '?highlight' is present; otherwise it + // clears text fragments (not set in window.location by the browser) + if (url.searchParams.has("highlight")) { + url.searchParams.delete("highlight"); + window.history.replaceState({}, "", url); + } + + // get individual terms from highlight string + const terms = highlight + .toLowerCase() + .split(/\s+/) + .filter((x) => x); + if (terms.length === 0) return; // nothing to do + + // There should never be more than one element matching "div.body" + const divBody = document.querySelectorAll("div.body"); + const body = divBody.length ? divBody[0] : document.querySelector("body"); + window.setTimeout(() => { + terms.forEach((term) => _highlightText(body, term, "highlighted")); + }, 10); + + const searchBox = document.getElementById("searchbox"); + if (searchBox === null) return; + searchBox.appendChild( + document + .createRange() + .createContextualFragment( + '

", + ), + ); + }, + + /** + * helper function to hide the search marks again + */ + hideSearchWords: () => { + document + .querySelectorAll("#searchbox .highlight-link") + .forEach((el) => el.remove()); + document + .querySelectorAll("span.highlighted") + .forEach((el) => el.classList.remove("highlighted")); + localStorage.removeItem("sphinx_highlight_terms"); + }, + + initEscapeListener: () => { + // only install a listener if it is really needed + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) return; + + document.addEventListener("keydown", (event) => { + // bail for input elements + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) + return; + // bail with special keys + if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) + return; + if ( + DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + && event.key === "Escape" + ) { + SphinxHighlight.hideSearchWords(); + event.preventDefault(); + } + }); + }, +}; + +_ready(() => { + /* Do not call highlightSearchWords() when we are on the search page. + * It will highlight words from the *previous* search query. + */ + if (typeof Search === "undefined") SphinxHighlight.highlightSearchWords(); + SphinxHighlight.initEscapeListener(); +}); diff --git a/docs/images/spinning_box_cloth.gif b/_static/spinning_box_cloth.gif similarity index 100% rename from docs/images/spinning_box_cloth.gif rename to _static/spinning_box_cloth.gif diff --git a/docs/images/stark1920.png b/_static/stark1920.png similarity index 100% rename from docs/images/stark1920.png rename to _static/stark1920.png diff --git a/_static/stark1920w.png b/_static/stark1920w.png new file mode 100644 index 0000000000000000000000000000000000000000..4f0412256936fb267f65e2376a3167918f7b48af GIT binary patch literal 58586 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 Beg*&l literal 0 HcmV?d00001 diff --git a/_static/styles/furo-extensions.css b/_static/styles/furo-extensions.css new file mode 100644 index 00000000..2d74267f --- /dev/null +++ b/_static/styles/furo-extensions.css @@ -0,0 +1,2 @@ +#furo-sidebar-ad-placement{padding:var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal)}#furo-sidebar-ad-placement .ethical-sidebar{background:var(--color-background-secondary);border:none;box-shadow:none}#furo-sidebar-ad-placement .ethical-sidebar:hover{background:var(--color-background-hover)}#furo-sidebar-ad-placement .ethical-sidebar a{color:var(--color-foreground-primary)}#furo-sidebar-ad-placement .ethical-callout a{color:var(--color-foreground-secondary)!important}#furo-readthedocs-versions{background:transparent;display:block;position:static;width:100%}#furo-readthedocs-versions .rst-versions{background:#1a1c1e}#furo-readthedocs-versions .rst-current-version{background:var(--color-sidebar-item-background);cursor:unset}#furo-readthedocs-versions .rst-current-version:hover{background:var(--color-sidebar-item-background)}#furo-readthedocs-versions .rst-current-version .fa-book{color:var(--color-foreground-primary)}#furo-readthedocs-versions>.rst-other-versions{padding:0}#furo-readthedocs-versions>.rst-other-versions small{opacity:1}#furo-readthedocs-versions .injected .rst-versions{position:unset}#furo-readthedocs-versions:focus-within,#furo-readthedocs-versions:hover{box-shadow:0 0 0 1px var(--color-sidebar-background-border)}#furo-readthedocs-versions:focus-within .rst-current-version,#furo-readthedocs-versions:hover .rst-current-version{background:#1a1c1e;font-size:inherit;height:auto;line-height:inherit;padding:12px;text-align:right}#furo-readthedocs-versions:focus-within .rst-current-version .fa-book,#furo-readthedocs-versions:hover .rst-current-version .fa-book{color:#fff;float:left}#furo-readthedocs-versions:focus-within .fa-caret-down,#furo-readthedocs-versions:hover .fa-caret-down{display:none}#furo-readthedocs-versions:focus-within .injected,#furo-readthedocs-versions:focus-within .rst-current-version,#furo-readthedocs-versions:focus-within .rst-other-versions,#furo-readthedocs-versions:hover .injected,#furo-readthedocs-versions:hover .rst-current-version,#furo-readthedocs-versions:hover .rst-other-versions{display:block}#furo-readthedocs-versions:focus-within>.rst-current-version,#furo-readthedocs-versions:hover>.rst-current-version{display:none}.highlight:hover button.copybtn{color:var(--color-code-foreground)}.highlight button.copybtn{align-items:center;background-color:var(--color-code-background);border:none;color:var(--color-background-item);cursor:pointer;height:1.25em;right:.5rem;top:.625rem;transition:color .3s,opacity .3s;width:1.25em}.highlight button.copybtn:hover{background-color:var(--color-code-background);color:var(--color-brand-content)}.highlight button.copybtn:after{background-color:transparent;color:var(--color-code-foreground);display:none}.highlight button.copybtn.success{color:#22863a;transition:color 0s}.highlight button.copybtn.success:after{display:block}.highlight button.copybtn svg{padding:0}body{--sd-color-primary:var(--color-brand-primary);--sd-color-primary-highlight:var(--color-brand-content);--sd-color-primary-text:var(--color-background-primary);--sd-color-shadow:rgba(0,0,0,.05);--sd-color-card-border:var(--color-card-border);--sd-color-card-border-hover:var(--color-brand-content);--sd-color-card-background:var(--color-card-background);--sd-color-card-text:var(--color-foreground-primary);--sd-color-card-header:var(--color-card-marginals-background);--sd-color-card-footer:var(--color-card-marginals-background);--sd-color-tabs-label-active:var(--color-brand-content);--sd-color-tabs-label-hover:var(--color-foreground-muted);--sd-color-tabs-label-inactive:var(--color-foreground-muted);--sd-color-tabs-underline-active:var(--color-brand-content);--sd-color-tabs-underline-hover:var(--color-foreground-border);--sd-color-tabs-underline-inactive:var(--color-background-border);--sd-color-tabs-overline:var(--color-background-border);--sd-color-tabs-underline:var(--color-background-border)}.sd-tab-content{box-shadow:0 -2px var(--sd-color-tabs-overline),0 1px var(--sd-color-tabs-underline)}.sd-card{box-shadow:0 .1rem .25rem var(--sd-color-shadow),0 0 .0625rem rgba(0,0,0,.1)}.sd-shadow-sm{box-shadow:0 .1rem .25rem var(--sd-color-shadow),0 0 .0625rem rgba(0,0,0,.1)!important}.sd-shadow-md{box-shadow:0 .3rem .75rem var(--sd-color-shadow),0 0 .0625rem rgba(0,0,0,.1)!important}.sd-shadow-lg{box-shadow:0 .6rem 1.5rem var(--sd-color-shadow),0 0 .0625rem rgba(0,0,0,.1)!important}.sd-card-hover:hover{transform:none}.sd-cards-carousel{gap:.25rem;padding:.25rem}body{--tabs--label-text:var(--color-foreground-muted);--tabs--label-text--hover:var(--color-foreground-muted);--tabs--label-text--active:var(--color-brand-content);--tabs--label-text--active--hover:var(--color-brand-content);--tabs--label-background:transparent;--tabs--label-background--hover:transparent;--tabs--label-background--active:transparent;--tabs--label-background--active--hover:transparent;--tabs--padding-x:0.25em;--tabs--margin-x:1em;--tabs--border:var(--color-background-border);--tabs--label-border:transparent;--tabs--label-border--hover:var(--color-foreground-muted);--tabs--label-border--active:var(--color-brand-content);--tabs--label-border--active--hover:var(--color-brand-content)}[role=main] .container{max-width:none;padding-left:0;padding-right:0}.shadow.docutils{border:none;box-shadow:0 .2rem .5rem rgba(0,0,0,.05),0 0 .0625rem rgba(0,0,0,.1)!important}.sphinx-bs .card{background-color:var(--color-background-secondary);color:var(--color-foreground)} +/*# sourceMappingURL=furo-extensions.css.map*/ \ No newline at end of file diff --git a/_static/styles/furo-extensions.css.map b/_static/styles/furo-extensions.css.map new file mode 100644 index 00000000..68fb7fd0 --- /dev/null +++ b/_static/styles/furo-extensions.css.map @@ -0,0 +1 @@ +{"version":3,"file":"styles/furo-extensions.css","mappings":"AAGA,2BACE,oFACA,4CAKE,6CAHA,YACA,eAEA,CACA,kDACE,yCAEF,8CACE,sCAEJ,8CACE,kDAEJ,2BAGE,uBACA,cAHA,gBACA,UAEA,CAGA,yCACE,mBAEF,gDAEE,gDADA,YACA,CACA,sDACE,gDACF,yDACE,sCAEJ,+CACE,UACA,qDACE,UAGF,mDACE,eAEJ,yEAEE,4DAEA,mHASE,mBAPA,kBAEA,YADA,oBAGA,aADA,gBAIA,CAEA,qIAEE,WADA,UACA,CAEJ,uGACE,aAEF,iUAGE,cAEF,mHACE,aC1EJ,gCACE,mCAEF,0BAEE,mBAUA,8CACA,YAFA,mCAKA,eAZA,cAIA,YADA,YAYA,iCAdA,YAcA,CAEA,gCAEE,8CADA,gCACA,CAEF,gCAGE,6BADA,mCADA,YAEA,CAEF,kCAEE,cADA,mBACA,CACA,wCACE,cAEJ,8BACE,UCzCN,KAEE,6CAA8C,CAC9C,uDAAwD,CACxD,uDAAwD,CAGxD,iCAAsC,CAGtC,+CAAgD,CAChD,uDAAwD,CACxD,uDAAwD,CACxD,oDAAqD,CACrD,6DAA8D,CAC9D,6DAA8D,CAG9D,uDAAwD,CACxD,yDAA0D,CAC1D,4DAA6D,CAC7D,2DAA4D,CAC5D,8DAA+D,CAC/D,iEAAkE,CAClE,uDAAwD,CACxD,wDAAyD,CAG3D,gBACE,qFAGF,SACE,6EAEF,cACE,uFAEF,cACE,uFAEF,cACE,uFAGF,qBACE,eAEF,mBACE,WACA,eChDF,KACE,gDAAiD,CACjD,uDAAwD,CACxD,qDAAsD,CACtD,4DAA6D,CAC7D,oCAAqC,CACrC,2CAA4C,CAC5C,4CAA6C,CAC7C,mDAAoD,CACpD,wBAAyB,CACzB,oBAAqB,CACrB,6CAA8C,CAC9C,gCAAiC,CACjC,yDAA0D,CAC1D,uDAAwD,CACxD,8DAA+D,CCbjE,uBACE,eACA,eACA,gBAGF,iBACE,YACA,+EAGF,iBACE,mDACA","sources":["webpack:///./src/furo/assets/styles/extensions/_readthedocs.sass","webpack:///./src/furo/assets/styles/extensions/_copybutton.sass","webpack:///./src/furo/assets/styles/extensions/_sphinx-design.sass","webpack:///./src/furo/assets/styles/extensions/_sphinx-inline-tabs.sass","webpack:///./src/furo/assets/styles/extensions/_sphinx-panels.sass"],"sourcesContent":["// This file contains the styles used for tweaking how ReadTheDoc's embedded\n// contents would show up inside the theme.\n\n#furo-sidebar-ad-placement\n padding: var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal)\n .ethical-sidebar\n // Remove the border and box-shadow.\n border: none\n box-shadow: none\n // Manage the background colors.\n background: var(--color-background-secondary)\n &:hover\n background: var(--color-background-hover)\n // Ensure the text is legible.\n a\n color: var(--color-foreground-primary)\n\n .ethical-callout a\n color: var(--color-foreground-secondary) !important\n\n#furo-readthedocs-versions\n position: static\n width: 100%\n background: transparent\n display: block\n\n // Make the background color fit with the theme's aesthetic.\n .rst-versions\n background: rgb(26, 28, 30)\n\n .rst-current-version\n cursor: unset\n background: var(--color-sidebar-item-background)\n &:hover\n background: var(--color-sidebar-item-background)\n .fa-book\n color: var(--color-foreground-primary)\n\n > .rst-other-versions\n padding: 0\n small\n opacity: 1\n\n .injected\n .rst-versions\n position: unset\n\n &:hover,\n &:focus-within\n box-shadow: 0 0 0 1px var(--color-sidebar-background-border)\n\n .rst-current-version\n // Undo the tweaks done in RTD's CSS\n font-size: inherit\n line-height: inherit\n height: auto\n text-align: right\n padding: 12px\n\n // Match the rest of the body\n background: #1a1c1e\n\n .fa-book\n float: left\n color: white\n\n .fa-caret-down\n display: none\n\n .rst-current-version,\n .rst-other-versions,\n .injected\n display: block\n\n > .rst-current-version\n display: none\n",".highlight\n &:hover button.copybtn\n color: var(--color-code-foreground)\n\n button.copybtn\n // Align things correctly\n align-items: center\n\n height: 1.25em\n width: 1.25em\n\n top: 0.625rem // $code-spacing-vertical\n right: 0.5rem\n\n // Make it look better\n color: var(--color-background-item)\n background-color: var(--color-code-background)\n border: none\n\n // Change to cursor to make it obvious that you can click on it\n cursor: pointer\n\n // Transition smoothly, for aesthetics\n transition: color 300ms, opacity 300ms\n\n &:hover\n color: var(--color-brand-content)\n background-color: var(--color-code-background)\n\n &::after\n display: none\n color: var(--color-code-foreground)\n background-color: transparent\n\n &.success\n transition: color 0ms\n color: #22863a\n &::after\n display: block\n\n svg\n padding: 0\n","body\n // Colors\n --sd-color-primary: var(--color-brand-primary)\n --sd-color-primary-highlight: var(--color-brand-content)\n --sd-color-primary-text: var(--color-background-primary)\n\n // Shadows\n --sd-color-shadow: rgba(0, 0, 0, 0.05)\n\n // Cards\n --sd-color-card-border: var(--color-card-border)\n --sd-color-card-border-hover: var(--color-brand-content)\n --sd-color-card-background: var(--color-card-background)\n --sd-color-card-text: var(--color-foreground-primary)\n --sd-color-card-header: var(--color-card-marginals-background)\n --sd-color-card-footer: var(--color-card-marginals-background)\n\n // Tabs\n --sd-color-tabs-label-active: var(--color-brand-content)\n --sd-color-tabs-label-hover: var(--color-foreground-muted)\n --sd-color-tabs-label-inactive: var(--color-foreground-muted)\n --sd-color-tabs-underline-active: var(--color-brand-content)\n --sd-color-tabs-underline-hover: var(--color-foreground-border)\n --sd-color-tabs-underline-inactive: var(--color-background-border)\n --sd-color-tabs-overline: var(--color-background-border)\n --sd-color-tabs-underline: var(--color-background-border)\n\n// Tabs\n.sd-tab-content\n box-shadow: 0 -2px var(--sd-color-tabs-overline), 0 1px var(--sd-color-tabs-underline)\n\n// Shadows\n.sd-card // Have a shadow by default\n box-shadow: 0 0.1rem 0.25rem var(--sd-color-shadow), 0 0 0.0625rem rgba(0, 0, 0, 0.1)\n\n.sd-shadow-sm\n box-shadow: 0 0.1rem 0.25rem var(--sd-color-shadow), 0 0 0.0625rem rgba(0, 0, 0, 0.1) !important\n\n.sd-shadow-md\n box-shadow: 0 0.3rem 0.75rem var(--sd-color-shadow), 0 0 0.0625rem rgba(0, 0, 0, 0.1) !important\n\n.sd-shadow-lg\n box-shadow: 0 0.6rem 1.5rem var(--sd-color-shadow), 0 0 0.0625rem rgba(0, 0, 0, 0.1) !important\n\n// Cards\n.sd-card-hover:hover // Don't change scale on hover\n transform: none\n\n.sd-cards-carousel // Have a bit of gap in the carousel by default\n gap: 0.25rem\n padding: 0.25rem\n","// This file contains styles to tweak sphinx-inline-tabs to work well with Furo.\n\nbody\n --tabs--label-text: var(--color-foreground-muted)\n --tabs--label-text--hover: var(--color-foreground-muted)\n --tabs--label-text--active: var(--color-brand-content)\n --tabs--label-text--active--hover: var(--color-brand-content)\n --tabs--label-background: transparent\n --tabs--label-background--hover: transparent\n --tabs--label-background--active: transparent\n --tabs--label-background--active--hover: transparent\n --tabs--padding-x: 0.25em\n --tabs--margin-x: 1em\n --tabs--border: var(--color-background-border)\n --tabs--label-border: transparent\n --tabs--label-border--hover: var(--color-foreground-muted)\n --tabs--label-border--active: var(--color-brand-content)\n --tabs--label-border--active--hover: var(--color-brand-content)\n","// This file contains styles to tweak sphinx-panels to work well with Furo.\n\n// sphinx-panels includes Bootstrap 4, which uses .container which can conflict\n// with docutils' `.. container::` directive.\n[role=\"main\"] .container\n max-width: initial\n padding-left: initial\n padding-right: initial\n\n// Make the panels look nicer!\n.shadow.docutils\n border: none\n box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.05), 0 0 0.0625rem rgba(0, 0, 0, 0.1) !important\n\n// Make panel colors respond to dark mode\n.sphinx-bs .card\n background-color: var(--color-background-secondary)\n color: var(--color-foreground)\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/_static/styles/furo.css b/_static/styles/furo.css new file mode 100644 index 00000000..a5b614d2 --- /dev/null +++ b/_static/styles/furo.css @@ -0,0 +1,2 @@ +/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}@media print{.content-icon-container,.headerlink,.mobile-header,.related-pages{display:none!important}.highlight{border:.1pt solid var(--color-foreground-border)}a,blockquote,dl,ol,p,pre,table,ul{page-break-inside:avoid}caption,figure,h1,h2,h3,h4,h5,h6,img{page-break-after:avoid;page-break-inside:avoid}dl,ol,ul{page-break-before:avoid}}.visually-hidden{height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;clip:rect(0,0,0,0)!important;background:var(--color-background-primary);border:0!important;color:var(--color-foreground-primary);white-space:nowrap!important}:-moz-focusring{outline:auto}body{--font-stack:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;--font-stack--monospace:"SFMono-Regular",Menlo,Consolas,Monaco,Liberation Mono,Lucida Console,monospace;--font-stack--headings:var(--font-stack);--font-size--normal:100%;--font-size--small:87.5%;--font-size--small--2:81.25%;--font-size--small--3:75%;--font-size--small--4:62.5%;--sidebar-caption-font-size:var(--font-size--small--2);--sidebar-item-font-size:var(--font-size--small);--sidebar-search-input-font-size:var(--font-size--small);--toc-font-size:var(--font-size--small--3);--toc-font-size--mobile:var(--font-size--normal);--toc-title-font-size:var(--font-size--small--4);--admonition-font-size:0.8125rem;--admonition-title-font-size:0.8125rem;--code-font-size:var(--font-size--small--2);--api-font-size:var(--font-size--small);--header-height:calc(var(--sidebar-item-line-height) + var(--sidebar-item-spacing-vertical)*4);--header-padding:0.5rem;--sidebar-tree-space-above:1.5rem;--sidebar-caption-space-above:1rem;--sidebar-item-line-height:1rem;--sidebar-item-spacing-vertical:0.5rem;--sidebar-item-spacing-horizontal:1rem;--sidebar-item-height:calc(var(--sidebar-item-line-height) + var(--sidebar-item-spacing-vertical)*2);--sidebar-expander-width:var(--sidebar-item-height);--sidebar-search-space-above:0.5rem;--sidebar-search-input-spacing-vertical:0.5rem;--sidebar-search-input-spacing-horizontal:0.5rem;--sidebar-search-input-height:1rem;--sidebar-search-icon-size:var(--sidebar-search-input-height);--toc-title-padding:0.25rem 0;--toc-spacing-vertical:1.5rem;--toc-spacing-horizontal:1.5rem;--toc-item-spacing-vertical:0.4rem;--toc-item-spacing-horizontal:1rem;--icon-search:url('data:image/svg+xml;charset=utf-8,');--icon-pencil:url('data:image/svg+xml;charset=utf-8,');--icon-abstract:url('data:image/svg+xml;charset=utf-8,');--icon-info:url('data:image/svg+xml;charset=utf-8,');--icon-flame:url('data:image/svg+xml;charset=utf-8,');--icon-question:url('data:image/svg+xml;charset=utf-8,');--icon-warning:url('data:image/svg+xml;charset=utf-8,');--icon-failure:url('data:image/svg+xml;charset=utf-8,');--icon-spark:url('data:image/svg+xml;charset=utf-8,');--color-admonition-title--caution:#ff9100;--color-admonition-title-background--caution:rgba(255,145,0,.2);--color-admonition-title--warning:#ff9100;--color-admonition-title-background--warning:rgba(255,145,0,.2);--color-admonition-title--danger:#ff5252;--color-admonition-title-background--danger:rgba(255,82,82,.2);--color-admonition-title--attention:#ff5252;--color-admonition-title-background--attention:rgba(255,82,82,.2);--color-admonition-title--error:#ff5252;--color-admonition-title-background--error:rgba(255,82,82,.2);--color-admonition-title--hint:#00c852;--color-admonition-title-background--hint:rgba(0,200,82,.2);--color-admonition-title--tip:#00c852;--color-admonition-title-background--tip:rgba(0,200,82,.2);--color-admonition-title--important:#00bfa5;--color-admonition-title-background--important:rgba(0,191,165,.2);--color-admonition-title--note:#00b0ff;--color-admonition-title-background--note:rgba(0,176,255,.2);--color-admonition-title--seealso:#448aff;--color-admonition-title-background--seealso:rgba(68,138,255,.2);--color-admonition-title--admonition-todo:grey;--color-admonition-title-background--admonition-todo:hsla(0,0%,50%,.2);--color-admonition-title:#651fff;--color-admonition-title-background:rgba(101,31,255,.2);--icon-admonition-default:var(--icon-abstract);--color-topic-title:#14b8a6;--color-topic-title-background:rgba(20,184,166,.2);--icon-topic-default:var(--icon-pencil);--color-problematic:#b30000;--color-foreground-primary:#000;--color-foreground-secondary:#5a5c63;--color-foreground-muted:#6b6f76;--color-foreground-border:#878787;--color-background-primary:#fff;--color-background-secondary:#f8f9fb;--color-background-hover:#efeff4;--color-background-hover--transparent:#efeff400;--color-background-border:#eeebee;--color-background-item:#ccc;--color-announcement-background:#000000dd;--color-announcement-text:#eeebee;--color-brand-primary:#0a4bff;--color-brand-content:#2757dd;--color-brand-visited:#872ee0;--color-api-background:var(--color-background-hover--transparent);--color-api-background-hover:var(--color-background-hover);--color-api-overall:var(--color-foreground-secondary);--color-api-name:var(--color-problematic);--color-api-pre-name:var(--color-problematic);--color-api-paren:var(--color-foreground-secondary);--color-api-keyword:var(--color-foreground-primary);--color-api-added:#21632c;--color-api-added-border:#38a84d;--color-api-changed:#046172;--color-api-changed-border:#06a1bc;--color-api-deprecated:#605706;--color-api-deprecated-border:#f0d90f;--color-api-removed:#b30000;--color-api-removed-border:#ff5c5c;--color-highlight-on-target:#ffc;--color-inline-code-background:var(--color-background-secondary);--color-highlighted-background:#def;--color-highlighted-text:var(--color-foreground-primary);--color-guilabel-background:#ddeeff80;--color-guilabel-border:#bedaf580;--color-guilabel-text:var(--color-foreground-primary);--color-admonition-background:transparent;--color-table-header-background:var(--color-background-secondary);--color-table-border:var(--color-background-border);--color-card-border:var(--color-background-secondary);--color-card-background:transparent;--color-card-marginals-background:var(--color-background-secondary);--color-header-background:var(--color-background-primary);--color-header-border:var(--color-background-border);--color-header-text:var(--color-foreground-primary);--color-sidebar-background:var(--color-background-secondary);--color-sidebar-background-border:var(--color-background-border);--color-sidebar-brand-text:var(--color-foreground-primary);--color-sidebar-caption-text:var(--color-foreground-muted);--color-sidebar-link-text:var(--color-foreground-secondary);--color-sidebar-link-text--top-level:var(--color-brand-primary);--color-sidebar-item-background:var(--color-sidebar-background);--color-sidebar-item-background--current:var( --color-sidebar-item-background );--color-sidebar-item-background--hover:linear-gradient(90deg,var(--color-background-hover--transparent) 0%,var(--color-background-hover) var(--sidebar-item-spacing-horizontal),var(--color-background-hover) 100%);--color-sidebar-item-expander-background:transparent;--color-sidebar-item-expander-background--hover:var( --color-background-hover );--color-sidebar-search-text:var(--color-foreground-primary);--color-sidebar-search-background:var(--color-background-secondary);--color-sidebar-search-background--focus:var(--color-background-primary);--color-sidebar-search-border:var(--color-background-border);--color-sidebar-search-icon:var(--color-foreground-muted);--color-toc-background:var(--color-background-primary);--color-toc-title-text:var(--color-foreground-muted);--color-toc-item-text:var(--color-foreground-secondary);--color-toc-item-text--hover:var(--color-foreground-primary);--color-toc-item-text--active:var(--color-brand-primary);--color-content-foreground:var(--color-foreground-primary);--color-content-background:transparent;--color-link:var(--color-brand-content);--color-link-underline:var(--color-background-border);--color-link--hover:var(--color-brand-content);--color-link-underline--hover:var(--color-foreground-border);--color-link--visited:var(--color-brand-visited);--color-link-underline--visited:var(--color-background-border);--color-link--visited--hover:var(--color-brand-visited);--color-link-underline--visited--hover:var(--color-foreground-border)}.only-light{display:block!important}html body .only-dark{display:none!important}@media not print{body[data-theme=dark]{--color-problematic:#ee5151;--color-foreground-primary:#cfd0d0;--color-foreground-secondary:#9ca0a5;--color-foreground-muted:#81868d;--color-foreground-border:#666;--color-background-primary:#131416;--color-background-secondary:#1a1c1e;--color-background-hover:#1e2124;--color-background-hover--transparent:#1e212400;--color-background-border:#303335;--color-background-item:#444;--color-announcement-background:#000000dd;--color-announcement-text:#eeebee;--color-brand-primary:#3d94ff;--color-brand-content:#5ca5ff;--color-brand-visited:#b27aeb;--color-highlighted-background:#083563;--color-guilabel-background:#08356380;--color-guilabel-border:#13395f80;--color-api-keyword:var(--color-foreground-secondary);--color-highlight-on-target:#330;--color-api-added:#3db854;--color-api-added-border:#267334;--color-api-changed:#09b0ce;--color-api-changed-border:#056d80;--color-api-deprecated:#b1a10b;--color-api-deprecated-border:#6e6407;--color-api-removed:#ff7575;--color-api-removed-border:#b03b3b;--color-admonition-background:#18181a;--color-card-border:var(--color-background-secondary);--color-card-background:#18181a;--color-card-marginals-background:var(--color-background-hover)}html body[data-theme=dark] .only-light{display:none!important}body[data-theme=dark] .only-dark{display:block!important}@media(prefers-color-scheme:dark){body:not([data-theme=light]){--color-problematic:#ee5151;--color-foreground-primary:#cfd0d0;--color-foreground-secondary:#9ca0a5;--color-foreground-muted:#81868d;--color-foreground-border:#666;--color-background-primary:#131416;--color-background-secondary:#1a1c1e;--color-background-hover:#1e2124;--color-background-hover--transparent:#1e212400;--color-background-border:#303335;--color-background-item:#444;--color-announcement-background:#000000dd;--color-announcement-text:#eeebee;--color-brand-primary:#3d94ff;--color-brand-content:#5ca5ff;--color-brand-visited:#b27aeb;--color-highlighted-background:#083563;--color-guilabel-background:#08356380;--color-guilabel-border:#13395f80;--color-api-keyword:var(--color-foreground-secondary);--color-highlight-on-target:#330;--color-api-added:#3db854;--color-api-added-border:#267334;--color-api-changed:#09b0ce;--color-api-changed-border:#056d80;--color-api-deprecated:#b1a10b;--color-api-deprecated-border:#6e6407;--color-api-removed:#ff7575;--color-api-removed-border:#b03b3b;--color-admonition-background:#18181a;--color-card-border:var(--color-background-secondary);--color-card-background:#18181a;--color-card-marginals-background:var(--color-background-hover)}html body:not([data-theme=light]) .only-light{display:none!important}body:not([data-theme=light]) .only-dark{display:block!important}}}body[data-theme=auto] .theme-toggle svg.theme-icon-when-auto-light{display:block}@media(prefers-color-scheme:dark){body[data-theme=auto] .theme-toggle svg.theme-icon-when-auto-dark{display:block}body[data-theme=auto] .theme-toggle svg.theme-icon-when-auto-light{display:none}}body[data-theme=dark] .theme-toggle svg.theme-icon-when-dark,body[data-theme=light] .theme-toggle svg.theme-icon-when-light{display:block}body{font-family:var(--font-stack)}code,kbd,pre,samp{font-family:var(--font-stack--monospace)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}article{line-height:1.5}h1,h2,h3,h4,h5,h6{border-radius:.5rem;font-family:var(--font-stack--headings);font-weight:700;line-height:1.25;margin:.5rem -.5rem;padding-left:.5rem;padding-right:.5rem}h1+p,h2+p,h3+p,h4+p,h5+p,h6+p{margin-top:0}h1{font-size:2.5em;margin-bottom:1rem}h1,h2{margin-top:1.75rem}h2{font-size:2em}h3{font-size:1.5em}h4{font-size:1.25em}h5{font-size:1.125em}h6{font-size:1em}small{font-size:80%;opacity:75%}p{margin-bottom:.75rem;margin-top:.5rem}hr.docutils{background-color:var(--color-background-border);border:0;height:1px;margin:2rem 0;padding:0}.centered{text-align:center}a{color:var(--color-link);text-decoration:underline;text-decoration-color:var(--color-link-underline)}a:visited{color:var(--color-link--visited);text-decoration-color:var(--color-link-underline--visited)}a:visited:hover{color:var(--color-link--visited--hover);text-decoration-color:var(--color-link-underline--visited--hover)}a:hover{color:var(--color-link--hover);text-decoration-color:var(--color-link-underline--hover)}a.muted-link{color:inherit}a.muted-link:hover{color:var(--color-link--hover);text-decoration-color:var(--color-link-underline--hover)}a.muted-link:hover:visited{color:var(--color-link--visited--hover);text-decoration-color:var(--color-link-underline--visited--hover)}html{overflow-x:hidden;overflow-y:scroll;scroll-behavior:smooth}.sidebar-scroll,.toc-scroll,article[role=main] *{scrollbar-color:var(--color-foreground-border) transparent;scrollbar-width:thin}body,html{height:100%}.skip-to-content,body,html{background:var(--color-background-primary);color:var(--color-foreground-primary)}.skip-to-content{border-radius:1rem;left:.25rem;padding:1rem;position:fixed;top:.25rem;transform:translateY(-200%);transition:transform .3s ease-in-out;z-index:40}.skip-to-content:focus-within{transform:translateY(0)}article{background:var(--color-content-background);color:var(--color-content-foreground);overflow-wrap:break-word}.page{display:flex;min-height:100%}.mobile-header{background-color:var(--color-header-background);border-bottom:1px solid var(--color-header-border);color:var(--color-header-text);display:none;height:var(--header-height);width:100%;z-index:10}.mobile-header.scrolled{border-bottom:none;box-shadow:0 0 .2rem rgba(0,0,0,.1),0 .2rem .4rem rgba(0,0,0,.2)}.mobile-header .header-center a{color:var(--color-header-text);text-decoration:none}.main{display:flex;flex:1}.sidebar-drawer{background:var(--color-sidebar-background);border-right:1px solid var(--color-sidebar-background-border);box-sizing:border-box;display:flex;justify-content:flex-end;min-width:15em;width:calc(50% - 26em)}.sidebar-container,.toc-drawer{box-sizing:border-box;width:15em}.toc-drawer{background:var(--color-toc-background);padding-right:1rem}.sidebar-sticky,.toc-sticky{display:flex;flex-direction:column;height:min(100%,100vh);height:100vh;position:sticky;top:0}.sidebar-scroll,.toc-scroll{flex-grow:1;flex-shrink:1;overflow:auto;scroll-behavior:smooth}.content{display:flex;flex-direction:column;justify-content:space-between;padding:0 3em;width:46em}.icon{display:inline-block;height:1rem;width:1rem}.icon svg{height:100%;width:100%}.announcement{align-items:center;background-color:var(--color-announcement-background);color:var(--color-announcement-text);display:flex;height:var(--header-height);overflow-x:auto}.announcement+.page{min-height:calc(100% - var(--header-height))}.announcement-content{box-sizing:border-box;min-width:100%;padding:.5rem;text-align:center;white-space:nowrap}.announcement-content a{color:var(--color-announcement-text);text-decoration-color:var(--color-announcement-text)}.announcement-content a:hover{color:var(--color-announcement-text);text-decoration-color:var(--color-link--hover)}.no-js .theme-toggle-container{display:none}.theme-toggle-container{display:flex}.theme-toggle{background:transparent;border:none;cursor:pointer;display:flex;padding:0}.theme-toggle svg{color:var(--color-foreground-primary);display:none;height:1.25rem;width:1.25rem}.theme-toggle-header{align-items:center;display:flex;justify-content:center}.nav-overlay-icon,.toc-overlay-icon{cursor:pointer;display:none}.nav-overlay-icon .icon,.toc-overlay-icon .icon{color:var(--color-foreground-secondary);height:1.5rem;width:1.5rem}.nav-overlay-icon,.toc-header-icon{align-items:center;justify-content:center}.toc-content-icon{height:1.5rem;width:1.5rem}.content-icon-container{display:flex;float:right;gap:.5rem;margin-bottom:1rem;margin-left:1rem;margin-top:1.5rem}.content-icon-container .edit-this-page svg,.content-icon-container .view-this-page svg{color:inherit;height:1.25rem;width:1.25rem}.sidebar-toggle{display:none;position:absolute}.sidebar-toggle[name=__toc]{left:20px}.sidebar-toggle:checked{left:40px}.overlay{background-color:rgba(0,0,0,.54);height:0;opacity:0;position:fixed;top:0;transition:width 0s,height 0s,opacity .25s ease-out;width:0}.sidebar-overlay{z-index:20}.toc-overlay{z-index:40}.sidebar-drawer{transition:left .25s ease-in-out;z-index:30}.toc-drawer{transition:right .25s ease-in-out;z-index:50}#__navigation:checked~.sidebar-overlay{height:100%;opacity:1;width:100%}#__navigation:checked~.page .sidebar-drawer{left:0;top:0}#__toc:checked~.toc-overlay{height:100%;opacity:1;width:100%}#__toc:checked~.page .toc-drawer{right:0;top:0}.back-to-top{background:var(--color-background-primary);border-radius:1rem;box-shadow:0 .2rem .5rem rgba(0,0,0,.05),0 0 1px 0 hsla(220,9%,46%,.502);display:none;font-size:.8125rem;left:0;margin-left:50%;padding:.5rem .75rem .5rem .5rem;position:fixed;text-decoration:none;top:1rem;transform:translateX(-50%);z-index:10}.back-to-top svg{height:1rem;width:1rem;fill:currentColor;display:inline-block}.back-to-top span{margin-left:.25rem}.show-back-to-top .back-to-top{align-items:center;display:flex}@media(min-width:97em){html{font-size:110%}}@media(max-width:82em){.toc-content-icon{display:flex}.toc-drawer{border-left:1px solid var(--color-background-muted);height:100vh;position:fixed;right:-15em;top:0}.toc-tree{border-left:none;font-size:var(--toc-font-size--mobile)}.sidebar-drawer{width:calc(50% - 18.5em)}}@media(max-width:67em){.content{margin-left:auto;margin-right:auto;padding:0 1em}}@media(max-width:63em){.nav-overlay-icon{display:flex}.sidebar-drawer{height:100vh;left:-15em;position:fixed;top:0;width:15em}.theme-toggle-header,.toc-header-icon{display:flex}.theme-toggle-content,.toc-content-icon{display:none}.mobile-header{align-items:center;display:flex;justify-content:space-between;position:sticky;top:0}.mobile-header .header-left,.mobile-header .header-right{display:flex;height:var(--header-height);padding:0 var(--header-padding)}.mobile-header .header-left label,.mobile-header .header-right label{height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.nav-overlay-icon .icon,.theme-toggle svg{height:1.5rem;width:1.5rem}:target{scroll-margin-top:calc(var(--header-height) + 2.5rem)}.back-to-top{top:calc(var(--header-height) + .5rem)}.page{flex-direction:column;justify-content:center}}@media(max-width:48em){.content{overflow-x:auto;width:100%}}@media(max-width:46em){article[role=main] aside.sidebar{float:none;margin:1rem 0;width:100%}}.admonition,.topic{background:var(--color-admonition-background);border-radius:.2rem;box-shadow:0 .2rem .5rem rgba(0,0,0,.05),0 0 .0625rem rgba(0,0,0,.1);font-size:var(--admonition-font-size);margin:1rem auto;overflow:hidden;padding:0 .5rem .5rem;page-break-inside:avoid}.admonition>:nth-child(2),.topic>:nth-child(2){margin-top:0}.admonition>:last-child,.topic>:last-child{margin-bottom:0}.admonition p.admonition-title,p.topic-title{font-size:var(--admonition-title-font-size);font-weight:500;line-height:1.3;margin:0 -.5rem .5rem;padding:.4rem .5rem .4rem 2rem;position:relative}.admonition p.admonition-title:before,p.topic-title:before{content:"";height:1rem;left:.5rem;position:absolute;width:1rem}p.admonition-title{background-color:var(--color-admonition-title-background)}p.admonition-title:before{background-color:var(--color-admonition-title);-webkit-mask-image:var(--icon-admonition-default);mask-image:var(--icon-admonition-default);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}p.topic-title{background-color:var(--color-topic-title-background)}p.topic-title:before{background-color:var(--color-topic-title);-webkit-mask-image:var(--icon-topic-default);mask-image:var(--icon-topic-default);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.admonition{border-left:.2rem solid var(--color-admonition-title)}.admonition.caution{border-left-color:var(--color-admonition-title--caution)}.admonition.caution>.admonition-title{background-color:var(--color-admonition-title-background--caution)}.admonition.caution>.admonition-title:before{background-color:var(--color-admonition-title--caution);-webkit-mask-image:var(--icon-spark);mask-image:var(--icon-spark)}.admonition.warning{border-left-color:var(--color-admonition-title--warning)}.admonition.warning>.admonition-title{background-color:var(--color-admonition-title-background--warning)}.admonition.warning>.admonition-title:before{background-color:var(--color-admonition-title--warning);-webkit-mask-image:var(--icon-warning);mask-image:var(--icon-warning)}.admonition.danger{border-left-color:var(--color-admonition-title--danger)}.admonition.danger>.admonition-title{background-color:var(--color-admonition-title-background--danger)}.admonition.danger>.admonition-title:before{background-color:var(--color-admonition-title--danger);-webkit-mask-image:var(--icon-spark);mask-image:var(--icon-spark)}.admonition.attention{border-left-color:var(--color-admonition-title--attention)}.admonition.attention>.admonition-title{background-color:var(--color-admonition-title-background--attention)}.admonition.attention>.admonition-title:before{background-color:var(--color-admonition-title--attention);-webkit-mask-image:var(--icon-warning);mask-image:var(--icon-warning)}.admonition.error{border-left-color:var(--color-admonition-title--error)}.admonition.error>.admonition-title{background-color:var(--color-admonition-title-background--error)}.admonition.error>.admonition-title:before{background-color:var(--color-admonition-title--error);-webkit-mask-image:var(--icon-failure);mask-image:var(--icon-failure)}.admonition.hint{border-left-color:var(--color-admonition-title--hint)}.admonition.hint>.admonition-title{background-color:var(--color-admonition-title-background--hint)}.admonition.hint>.admonition-title:before{background-color:var(--color-admonition-title--hint);-webkit-mask-image:var(--icon-question);mask-image:var(--icon-question)}.admonition.tip{border-left-color:var(--color-admonition-title--tip)}.admonition.tip>.admonition-title{background-color:var(--color-admonition-title-background--tip)}.admonition.tip>.admonition-title:before{background-color:var(--color-admonition-title--tip);-webkit-mask-image:var(--icon-info);mask-image:var(--icon-info)}.admonition.important{border-left-color:var(--color-admonition-title--important)}.admonition.important>.admonition-title{background-color:var(--color-admonition-title-background--important)}.admonition.important>.admonition-title:before{background-color:var(--color-admonition-title--important);-webkit-mask-image:var(--icon-flame);mask-image:var(--icon-flame)}.admonition.note{border-left-color:var(--color-admonition-title--note)}.admonition.note>.admonition-title{background-color:var(--color-admonition-title-background--note)}.admonition.note>.admonition-title:before{background-color:var(--color-admonition-title--note);-webkit-mask-image:var(--icon-pencil);mask-image:var(--icon-pencil)}.admonition.seealso{border-left-color:var(--color-admonition-title--seealso)}.admonition.seealso>.admonition-title{background-color:var(--color-admonition-title-background--seealso)}.admonition.seealso>.admonition-title:before{background-color:var(--color-admonition-title--seealso);-webkit-mask-image:var(--icon-info);mask-image:var(--icon-info)}.admonition.admonition-todo{border-left-color:var(--color-admonition-title--admonition-todo)}.admonition.admonition-todo>.admonition-title{background-color:var(--color-admonition-title-background--admonition-todo)}.admonition.admonition-todo>.admonition-title:before{background-color:var(--color-admonition-title--admonition-todo);-webkit-mask-image:var(--icon-pencil);mask-image:var(--icon-pencil)}.admonition-todo>.admonition-title{text-transform:uppercase}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd{margin-left:2rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd>:first-child{margin-top:.125rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list,dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) dd>:last-child{margin-bottom:.75rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list>dt{font-size:var(--font-size--small);text-transform:uppercase}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list dd:empty{margin-bottom:.5rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list dd>ul{margin-left:-1.2rem}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list dd>ul>li>p:nth-child(2){margin-top:0}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) .field-list dd>ul>li>p+p:last-child:empty{margin-bottom:0;margin-top:0}dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)>dt{color:var(--color-api-overall)}.sig:not(.sig-inline){background:var(--color-api-background);border-radius:.25rem;font-family:var(--font-stack--monospace);font-size:var(--api-font-size);font-weight:700;margin-left:-.25rem;margin-right:-.25rem;padding:.25rem .5rem .25rem 3em;text-indent:-2.5em;transition:background .1s ease-out}.sig:not(.sig-inline):hover{background:var(--color-api-background-hover)}.sig:not(.sig-inline) a.reference .viewcode-link{font-weight:400;width:4.25rem}em.property,span.property{font-style:normal}em.property:first-child,span.property:first-child{color:var(--color-api-keyword)}.sig-name{color:var(--color-api-name)}.sig-prename{color:var(--color-api-pre-name);font-weight:400}.sig-paren{color:var(--color-api-paren)}.sig-param{font-style:normal}div.deprecated,div.versionadded,div.versionchanged,div.versionremoved{border-left:.1875rem solid;border-radius:.125rem;padding-left:.75rem}div.deprecated p,div.versionadded p,div.versionchanged p,div.versionremoved p{margin-bottom:.125rem;margin-top:.125rem}div.versionadded{border-color:var(--color-api-added-border)}div.versionadded .versionmodified{color:var(--color-api-added)}div.versionchanged{border-color:var(--color-api-changed-border)}div.versionchanged .versionmodified{color:var(--color-api-changed)}div.deprecated{border-color:var(--color-api-deprecated-border)}div.deprecated .versionmodified{color:var(--color-api-deprecated)}div.versionremoved{border-color:var(--color-api-removed-border)}div.versionremoved .versionmodified{color:var(--color-api-removed)}.viewcode-back,.viewcode-link{float:right;text-align:right}.line-block{margin-bottom:.75rem;margin-top:.5rem}.line-block .line-block{margin-bottom:0;margin-top:0;padding-left:1rem}.code-block-caption,article p.caption,table>caption{font-size:var(--font-size--small);text-align:center}.toctree-wrapper.compound .caption,.toctree-wrapper.compound :not(.caption)>.caption-text{font-size:var(--font-size--small);margin-bottom:0;text-align:initial;text-transform:uppercase}.toctree-wrapper.compound>ul{margin-bottom:0;margin-top:0}.sig-inline,code.literal{background:var(--color-inline-code-background);border-radius:.2em;font-size:var(--font-size--small--2);padding:.1em .2em}pre.literal-block .sig-inline,pre.literal-block code.literal{font-size:inherit;padding:0}p .sig-inline,p code.literal{border:1px solid var(--color-background-border)}.sig-inline{font-family:var(--font-stack--monospace)}div[class*=" highlight-"],div[class^=highlight-]{display:flex;margin:1em 0}div[class*=" highlight-"] .table-wrapper,div[class^=highlight-] .table-wrapper,pre{margin:0;padding:0}pre{overflow:auto}article[role=main] .highlight pre{line-height:1.5}.highlight pre,pre.literal-block{font-size:var(--code-font-size);padding:.625rem .875rem}pre.literal-block{background-color:var(--color-code-background);border-radius:.2rem;color:var(--color-code-foreground);margin-bottom:1rem;margin-top:1rem}.highlight{border-radius:.2rem;width:100%}.highlight .gp,.highlight span.linenos{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.highlight .hll{display:block;margin-left:-.875rem;margin-right:-.875rem;padding-left:.875rem;padding-right:.875rem}.code-block-caption{background-color:var(--color-code-background);border-bottom:1px solid;border-radius:.25rem;border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:var(--color-background-border);color:var(--color-code-foreground);display:flex;font-weight:300;padding:.625rem .875rem}.code-block-caption+div[class]{margin-top:0}.code-block-caption+div[class]>.highlight{border-top-left-radius:0;border-top-right-radius:0}.highlighttable{display:block;width:100%}.highlighttable tbody{display:block}.highlighttable tr{display:flex}.highlighttable td.linenos{background-color:var(--color-code-background);border-bottom-left-radius:.2rem;border-top-left-radius:.2rem;color:var(--color-code-foreground);padding:.625rem 0 .625rem .875rem}.highlighttable .linenodiv{box-shadow:-.0625rem 0 var(--color-foreground-border) inset;font-size:var(--code-font-size);padding-right:.875rem}.highlighttable td.code{display:block;flex:1;overflow:hidden;padding:0}.highlighttable td.code .highlight{border-bottom-left-radius:0;border-top-left-radius:0}.highlight span.linenos{box-shadow:-.0625rem 0 var(--color-foreground-border) inset;display:inline-block;margin-right:.875rem;padding-left:0;padding-right:.875rem}.footnote-reference{font-size:var(--font-size--small--4);vertical-align:super}dl.footnote.brackets{color:var(--color-foreground-secondary);display:grid;font-size:var(--font-size--small);grid-template-columns:max-content auto}dl.footnote.brackets dt{margin:0}dl.footnote.brackets dt>.fn-backref{margin-left:.25rem}dl.footnote.brackets dt:after{content:":"}dl.footnote.brackets dt .brackets:before{content:"["}dl.footnote.brackets dt .brackets:after{content:"]"}dl.footnote.brackets dd{margin:0;padding:0 1rem}aside.footnote{color:var(--color-foreground-secondary);font-size:var(--font-size--small)}aside.footnote>span,div.citation>span{float:left;font-weight:500;padding-right:.25rem}aside.footnote>:not(span),div.citation>p{margin-left:2rem}img{box-sizing:border-box;height:auto;max-width:100%}article .figure,article figure{border-radius:.2rem;margin:0}article .figure :last-child,article figure :last-child{margin-bottom:0}article .align-left{clear:left;float:left;margin:0 1rem 1rem}article .align-right{clear:right;float:right;margin:0 1rem 1rem}article .align-center,article .align-default{display:block;margin-left:auto;margin-right:auto;text-align:center}article table.align-default{display:table;text-align:initial}.domainindex-jumpbox,.genindex-jumpbox{border-bottom:1px solid var(--color-background-border);border-top:1px solid var(--color-background-border);padding:.25rem}.domainindex-section h2,.genindex-section h2{margin-bottom:.5rem;margin-top:.75rem}.domainindex-section ul,.genindex-section ul{margin-bottom:0;margin-top:0}ol,ul{margin-bottom:1rem;margin-top:1rem;padding-left:1.2rem}ol li>p:first-child,ul li>p:first-child{margin-bottom:.25rem;margin-top:.25rem}ol li>p:last-child,ul li>p:last-child{margin-top:.25rem}ol li>ol,ol li>ul,ul li>ol,ul li>ul{margin-bottom:.5rem;margin-top:.5rem}ol.arabic{list-style:decimal}ol.loweralpha{list-style:lower-alpha}ol.upperalpha{list-style:upper-alpha}ol.lowerroman{list-style:lower-roman}ol.upperroman{list-style:upper-roman}.simple li>ol,.simple li>ul,.toctree-wrapper li>ol,.toctree-wrapper li>ul{margin-bottom:0;margin-top:0}.field-list dt,.option-list dt,dl.footnote dt,dl.glossary dt,dl.simple dt,dl:not([class]) dt{font-weight:500;margin-top:.25rem}.field-list dt+dt,.option-list dt+dt,dl.footnote dt+dt,dl.glossary dt+dt,dl.simple dt+dt,dl:not([class]) dt+dt{margin-top:0}.field-list dt .classifier:before,.option-list dt .classifier:before,dl.footnote dt .classifier:before,dl.glossary dt .classifier:before,dl.simple dt .classifier:before,dl:not([class]) dt .classifier:before{content:":";margin-left:.2rem;margin-right:.2rem}.field-list dd ul,.field-list dd>p:first-child,.option-list dd ul,.option-list dd>p:first-child,dl.footnote dd ul,dl.footnote dd>p:first-child,dl.glossary dd ul,dl.glossary dd>p:first-child,dl.simple dd ul,dl.simple dd>p:first-child,dl:not([class]) dd ul,dl:not([class]) dd>p:first-child{margin-top:.125rem}.field-list dd ul,.option-list dd ul,dl.footnote dd ul,dl.glossary dd ul,dl.simple dd ul,dl:not([class]) dd ul{margin-bottom:.125rem}.math-wrapper{overflow-x:auto;width:100%}div.math{position:relative;text-align:center}div.math .headerlink,div.math:focus .headerlink{display:none}div.math:hover .headerlink{display:inline-block}div.math span.eqno{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);z-index:1}abbr[title]{cursor:help}.problematic{color:var(--color-problematic)}kbd:not(.compound){background-color:var(--color-background-secondary);border:1px solid var(--color-foreground-border);border-radius:.2rem;box-shadow:0 .0625rem 0 rgba(0,0,0,.2),inset 0 0 0 .125rem var(--color-background-primary);color:var(--color-foreground-primary);display:inline-block;font-size:var(--font-size--small--3);margin:0 .2rem;padding:0 .2rem;vertical-align:text-bottom}blockquote{background:var(--color-background-secondary);border-left:4px solid var(--color-background-border);margin-left:0;margin-right:0;padding:.5rem 1rem}blockquote .attribution{font-weight:600;text-align:right}blockquote.highlights,blockquote.pull-quote{font-size:1.25em}blockquote.epigraph,blockquote.pull-quote{border-left-width:0;border-radius:.5rem}blockquote.highlights{background:transparent;border-left-width:0}p .reference img{vertical-align:middle}p.rubric{font-size:1.125em;font-weight:700;line-height:1.25}dd p.rubric{font-size:var(--font-size--small);font-weight:inherit;line-height:inherit;text-transform:uppercase}article .sidebar{background-color:var(--color-background-secondary);border:1px solid var(--color-background-border);border-radius:.2rem;clear:right;float:right;margin-left:1rem;margin-right:0;width:30%}article .sidebar>*{padding-left:1rem;padding-right:1rem}article .sidebar>ol,article .sidebar>ul{padding-left:2.2rem}article .sidebar .sidebar-title{border-bottom:1px solid var(--color-background-border);font-weight:500;margin:0;padding:.5rem 1rem}[role=main] .table-wrapper.container{margin-bottom:.5rem;margin-top:1rem;overflow-x:auto;padding:.2rem .2rem .75rem;width:100%}table.docutils{border-collapse:collapse;border-radius:.2rem;border-spacing:0;box-shadow:0 .2rem .5rem rgba(0,0,0,.05),0 0 .0625rem rgba(0,0,0,.1)}table.docutils th{background:var(--color-table-header-background)}table.docutils td,table.docutils th{border-bottom:1px solid var(--color-table-border);border-left:1px solid var(--color-table-border);border-right:1px solid var(--color-table-border);padding:0 .25rem}table.docutils td p,table.docutils th p{margin:.25rem}table.docutils td:first-child,table.docutils th:first-child{border-left:none}table.docutils td:last-child,table.docutils th:last-child{border-right:none}table.docutils td.text-left,table.docutils th.text-left{text-align:left}table.docutils td.text-right,table.docutils th.text-right{text-align:right}table.docutils td.text-center,table.docutils th.text-center{text-align:center}:target{scroll-margin-top:2.5rem}@media(max-width:67em){:target{scroll-margin-top:calc(2.5rem + var(--header-height))}section>span:target{scroll-margin-top:calc(2.8rem + var(--header-height))}}.headerlink{font-weight:100;-webkit-user-select:none;-moz-user-select:none;user-select:none}.code-block-caption>.headerlink,dl dt>.headerlink,figcaption p>.headerlink,h1>.headerlink,h2>.headerlink,h3>.headerlink,h4>.headerlink,h5>.headerlink,h6>.headerlink,p.caption>.headerlink,table>caption>.headerlink{margin-left:.5rem;visibility:hidden}.code-block-caption:hover>.headerlink,dl dt:hover>.headerlink,figcaption p:hover>.headerlink,h1:hover>.headerlink,h2:hover>.headerlink,h3:hover>.headerlink,h4:hover>.headerlink,h5:hover>.headerlink,h6:hover>.headerlink,p.caption:hover>.headerlink,table>caption:hover>.headerlink{visibility:visible}.code-block-caption>.toc-backref,dl dt>.toc-backref,figcaption p>.toc-backref,h1>.toc-backref,h2>.toc-backref,h3>.toc-backref,h4>.toc-backref,h5>.toc-backref,h6>.toc-backref,p.caption>.toc-backref,table>caption>.toc-backref{color:inherit;text-decoration-line:none}figure:hover>figcaption>p>.headerlink,table:hover>caption>.headerlink{visibility:visible}:target>h1:first-of-type,:target>h2:first-of-type,:target>h3:first-of-type,:target>h4:first-of-type,:target>h5:first-of-type,:target>h6:first-of-type,span:target~h1:first-of-type,span:target~h2:first-of-type,span:target~h3:first-of-type,span:target~h4:first-of-type,span:target~h5:first-of-type,span:target~h6:first-of-type{background-color:var(--color-highlight-on-target)}:target>h1:first-of-type code.literal,:target>h2:first-of-type code.literal,:target>h3:first-of-type code.literal,:target>h4:first-of-type code.literal,:target>h5:first-of-type code.literal,:target>h6:first-of-type code.literal,span:target~h1:first-of-type code.literal,span:target~h2:first-of-type code.literal,span:target~h3:first-of-type code.literal,span:target~h4:first-of-type code.literal,span:target~h5:first-of-type code.literal,span:target~h6:first-of-type code.literal{background-color:transparent}.literal-block-wrapper:target .code-block-caption,.this-will-duplicate-information-and-it-is-still-useful-here li :target,figure:target,table:target>caption{background-color:var(--color-highlight-on-target)}dt:target{background-color:var(--color-highlight-on-target)!important}.footnote-reference:target,.footnote>dt:target+dd{background-color:var(--color-highlight-on-target)}.guilabel{background-color:var(--color-guilabel-background);border:1px solid var(--color-guilabel-border);border-radius:.5em;color:var(--color-guilabel-text);font-size:.9em;padding:0 .3em}footer{display:flex;flex-direction:column;font-size:var(--font-size--small);margin-top:2rem}.bottom-of-page{align-items:center;border-top:1px solid var(--color-background-border);color:var(--color-foreground-secondary);display:flex;justify-content:space-between;line-height:1.5;margin-top:1rem;padding-bottom:1rem;padding-top:1rem}@media(max-width:46em){.bottom-of-page{flex-direction:column-reverse;gap:.25rem;text-align:center}}.bottom-of-page .left-details{font-size:var(--font-size--small)}.bottom-of-page .right-details{display:flex;flex-direction:column;gap:.25rem;text-align:right}.bottom-of-page .icons{display:flex;font-size:1rem;gap:.25rem;justify-content:flex-end}.bottom-of-page .icons a{text-decoration:none}.bottom-of-page .icons img,.bottom-of-page .icons svg{font-size:1.125rem;height:1em;width:1em}.related-pages a{align-items:center;display:flex;text-decoration:none}.related-pages a:hover .page-info .title{color:var(--color-link);text-decoration:underline;text-decoration-color:var(--color-link-underline)}.related-pages a svg.furo-related-icon,.related-pages a svg.furo-related-icon>use{color:var(--color-foreground-border);flex-shrink:0;height:.75rem;margin:0 .5rem;width:.75rem}.related-pages a.next-page{clear:right;float:right;max-width:50%;text-align:right}.related-pages a.prev-page{clear:left;float:left;max-width:50%}.related-pages a.prev-page svg{transform:rotate(180deg)}.page-info{display:flex;flex-direction:column;overflow-wrap:anywhere}.next-page .page-info{align-items:flex-end}.page-info .context{align-items:center;color:var(--color-foreground-muted);display:flex;font-size:var(--font-size--small);padding-bottom:.1rem;text-decoration:none}ul.search{list-style:none;padding-left:0}ul.search li{border-bottom:1px solid var(--color-background-border);padding:1rem 0}[role=main] .highlighted{background-color:var(--color-highlighted-background);color:var(--color-highlighted-text)}.sidebar-brand{display:flex;flex-direction:column;flex-shrink:0;padding:var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal);text-decoration:none}.sidebar-brand-text{color:var(--color-sidebar-brand-text);font-size:1.5rem;overflow-wrap:break-word}.sidebar-brand-text,.sidebar-logo-container{margin:var(--sidebar-item-spacing-vertical) 0}.sidebar-logo{display:block;margin:0 auto;max-width:100%}.sidebar-search-container{align-items:center;background:var(--color-sidebar-search-background);display:flex;margin-top:var(--sidebar-search-space-above);position:relative}.sidebar-search-container:focus-within,.sidebar-search-container:hover{background:var(--color-sidebar-search-background--focus)}.sidebar-search-container:before{background-color:var(--color-sidebar-search-icon);content:"";height:var(--sidebar-search-icon-size);left:var(--sidebar-item-spacing-horizontal);-webkit-mask-image:var(--icon-search);mask-image:var(--icon-search);position:absolute;width:var(--sidebar-search-icon-size)}.sidebar-search{background:transparent;border:none;border-bottom:1px solid var(--color-sidebar-search-border);border-top:1px solid var(--color-sidebar-search-border);box-sizing:border-box;color:var(--color-sidebar-search-foreground);padding:var(--sidebar-search-input-spacing-vertical) var(--sidebar-search-input-spacing-horizontal) var(--sidebar-search-input-spacing-vertical) calc(var(--sidebar-item-spacing-horizontal) + var(--sidebar-search-input-spacing-horizontal) + var(--sidebar-search-icon-size));width:100%;z-index:10}.sidebar-search:focus{outline:none}.sidebar-search::-moz-placeholder{font-size:var(--sidebar-search-input-font-size)}.sidebar-search::placeholder{font-size:var(--sidebar-search-input-font-size)}#searchbox .highlight-link{margin:0;padding:var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal) 0;text-align:center}#searchbox .highlight-link a{color:var(--color-sidebar-search-icon);font-size:var(--font-size--small--2)}.sidebar-tree{font-size:var(--sidebar-item-font-size);margin-bottom:var(--sidebar-item-spacing-vertical);margin-top:var(--sidebar-tree-space-above)}.sidebar-tree ul{display:flex;flex-direction:column;list-style:none;margin-bottom:0;margin-top:0;padding:0}.sidebar-tree li{margin:0;position:relative}.sidebar-tree li>ul{margin-left:var(--sidebar-item-spacing-horizontal)}.sidebar-tree .icon,.sidebar-tree .reference{color:var(--color-sidebar-link-text)}.sidebar-tree .reference{box-sizing:border-box;display:inline-block;height:100%;line-height:var(--sidebar-item-line-height);overflow-wrap:anywhere;padding:var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal);text-decoration:none;width:100%}.sidebar-tree .reference:hover{background:var(--color-sidebar-item-background--hover);color:var(--color-sidebar-link-text)}.sidebar-tree .reference.external:after{color:var(--color-sidebar-link-text);content:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23607d8b' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' viewBox='0 0 24 24'%3E%3Cpath stroke='none' d='M0 0h24v24H0z'/%3E%3Cpath d='M11 7H6a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2-2v-5M10 14 20 4M15 4h5v5'/%3E%3C/svg%3E");margin:0 .25rem;vertical-align:middle}.sidebar-tree .current-page>.reference{font-weight:700}.sidebar-tree label{align-items:center;cursor:pointer;display:flex;height:var(--sidebar-item-height);justify-content:center;position:absolute;right:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:var(--sidebar-expander-width)}.sidebar-tree .caption,.sidebar-tree :not(.caption)>.caption-text{color:var(--color-sidebar-caption-text);font-size:var(--sidebar-caption-font-size);font-weight:700;margin:var(--sidebar-caption-space-above) 0 0 0;padding:var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal);text-transform:uppercase}.sidebar-tree li.has-children>.reference{padding-right:var(--sidebar-expander-width)}.sidebar-tree .toctree-l1>.reference,.sidebar-tree .toctree-l1>label .icon{color:var(--color-sidebar-link-text--top-level)}.sidebar-tree label{background:var(--color-sidebar-item-expander-background)}.sidebar-tree label:hover{background:var(--color-sidebar-item-expander-background--hover)}.sidebar-tree .current>.reference{background:var(--color-sidebar-item-background--current)}.sidebar-tree .current>.reference:hover{background:var(--color-sidebar-item-background--hover)}.toctree-checkbox{display:none;position:absolute}.toctree-checkbox~ul{display:none}.toctree-checkbox~label .icon svg{transform:rotate(90deg)}.toctree-checkbox:checked~ul{display:block}.toctree-checkbox:checked~label .icon svg{transform:rotate(-90deg)}.toc-title-container{padding:var(--toc-title-padding);padding-top:var(--toc-spacing-vertical)}.toc-title{color:var(--color-toc-title-text);font-size:var(--toc-title-font-size);padding-left:var(--toc-spacing-horizontal);text-transform:uppercase}.no-toc{display:none}.toc-tree-container{padding-bottom:var(--toc-spacing-vertical)}.toc-tree{border-left:1px solid var(--color-background-border);font-size:var(--toc-font-size);line-height:1.3;padding-left:calc(var(--toc-spacing-horizontal) - var(--toc-item-spacing-horizontal))}.toc-tree>ul>li:first-child{padding-top:0}.toc-tree>ul>li:first-child>ul{padding-left:0}.toc-tree>ul>li:first-child>a{display:none}.toc-tree ul{list-style-type:none;margin-bottom:0;margin-top:0;padding-left:var(--toc-item-spacing-horizontal)}.toc-tree li{padding-top:var(--toc-item-spacing-vertical)}.toc-tree li.scroll-current>.reference{color:var(--color-toc-item-text--active);font-weight:700}.toc-tree a.reference{color:var(--color-toc-item-text);overflow-wrap:anywhere;text-decoration:none}.toc-scroll{max-height:100vh;overflow-y:scroll}.contents:not(.this-will-duplicate-information-and-it-is-still-useful-here){background:rgba(255,0,0,.25);color:var(--color-problematic)}.contents:not(.this-will-duplicate-information-and-it-is-still-useful-here):before{content:"ERROR: Adding a table of contents in Furo-based documentation is unnecessary, and does not work well with existing styling. Add a 'this-will-duplicate-information-and-it-is-still-useful-here' class, if you want an escape hatch."}.text-align\:left>p{text-align:left}.text-align\:center>p{text-align:center}.text-align\:right>p{text-align:right} +/*# sourceMappingURL=furo.css.map*/ \ No newline at end of file diff --git a/_static/styles/furo.css.map b/_static/styles/furo.css.map new file mode 100644 index 00000000..db1dec16 --- /dev/null +++ b/_static/styles/furo.css.map @@ -0,0 +1 @@ +{"version":3,"file":"styles/furo.css","mappings":"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,CAJE,gBAEJ,CAHI,iBAMA,yFAKA,aACA,eACA,cCxaJ,iBAEE,aADA,iBACA,6BAEA,kCAEA,SACA,UAIA,gCACA,CALA,SAEA,SAEA,CAJA,wEAEA,CAFA,OAKA,CAGA,mDACE,iBAGF,gCACE,CADF,UACE,aAEJ,iCAEE,CAFF,UAEE,wCAEA,WACA,WADA,UACA,CACA,4CAGA,MACA,CADA,KACA,wCACA,UAGA,CAJA,UAIA,6DAUA,0CACE,CAFF,mBAEE,wEACA,CAVA,YACA,CAMF,mBAJE,OAOA,gBAJJ,gCACE,CANE,cACA,CAHA,oBACA,CAGA,QAGJ,CAII,0BACA,CADA,UACA,wCAEJ,kBACE,0DACA,gCACE,kBACA,CADA,YACA,oEACA,2CAMF,mDAII,CALN,YACE,CANE,cAKJ,CACE,iBAII,kEACA,yCACE,kDACA,yDACE,+CACA,uBANN,CAMM,+BANN,uCACE,qDACA,4BAEE,mBADA,0CACA,CADA,qBACA,0DACE,wCACA,sGALJ,oCACA,sBACE,kBAFF,UAEE,2CACA,wFACE,cACA,kEANN,uBACE,iDACA,CADA,UACA,0DACE,wDAEE,iEACA,qEANN,sCACE,CAGE,iBAHF,gBAGE,qBACE,CAJJ,uBACA,gDACE,wDACA,6DAHF,2CACA,CADA,gBACA,eACE,CAGE,sBANN,8BACE,CAII,iBAFF,4DACA,WACE,YADF,uCACE,6EACA,2BANN,8CACE,kDACA,0CACE,8BACA,yFACE,sBACA,sFALJ,mEACA,sBACE,kEACA,6EACE,uCACA,kEALJ,qGAEE,kEACA,6EACE,uCACA,kEALJ,8CACA,uDACE,sEACA,2EACE,sCACA,iEALJ,mGACA,qCACE,oDACA,0DACE,6GACA,gDAGR,yDCvEA,sEACE,CACA,6GACE,gEACF,iGAIF,wFACE,qDAGA,mGAEE,2CAEF,4FACE,gCACF,wGACE,8DAEE,6FAIA,iJAKN,6GACE,gDAKF,yDACA,qCAGA,6BACA,kBACA,qDAKA,oCAEA,+DAGA,2CAGE,oDAIA,oEAEE,qBAEN,wDAEE,uCACE,kEAGJ,CACE,6CACA,uDAGF,CACE,mCAEF,yDAI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","sources":["webpack:///./node_modules/normalize.css/normalize.css","webpack:///./src/furo/assets/styles/base/_print.sass","webpack:///./src/furo/assets/styles/base/_screen-readers.sass","webpack:///./src/furo/assets/styles/base/_theme.sass","webpack:///./src/furo/assets/styles/variables/_fonts.scss","webpack:///./src/furo/assets/styles/variables/_spacing.scss","webpack:///./src/furo/assets/styles/variables/_icons.scss","webpack:///./src/furo/assets/styles/variables/_admonitions.scss","webpack:///./src/furo/assets/styles/variables/_colors.scss","webpack:///./src/furo/assets/styles/base/_typography.sass","webpack:///./src/furo/assets/styles/_scaffold.sass","webpack:///./src/furo/assets/styles/content/_admonitions.sass","webpack:///./src/furo/assets/styles/content/_api.sass","webpack:///./src/furo/assets/styles/content/_blocks.sass","webpack:///./src/furo/assets/styles/content/_captions.sass","webpack:///./src/furo/assets/styles/content/_code.sass","webpack:///./src/furo/assets/styles/content/_footnotes.sass","webpack:///./src/furo/assets/styles/content/_images.sass","webpack:///./src/furo/assets/styles/content/_indexes.sass","webpack:///./src/furo/assets/styles/content/_lists.sass","webpack:///./src/furo/assets/styles/content/_math.sass","webpack:///./src/furo/assets/styles/content/_misc.sass","webpack:///./src/furo/assets/styles/content/_rubrics.sass","webpack:///./src/furo/assets/styles/content/_sidebar.sass","webpack:///./src/furo/assets/styles/content/_tables.sass","webpack:///./src/furo/assets/styles/content/_target.sass","webpack:///./src/furo/assets/styles/content/_gui-labels.sass","webpack:///./src/furo/assets/styles/components/_footer.sass","webpack:///./src/furo/assets/styles/components/_sidebar.sass","webpack:///./src/furo/assets/styles/components/_table_of_contents.sass","webpack:///./src/furo/assets/styles/_shame.sass"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n","// This file contains styles for managing print media.\n\n////////////////////////////////////////////////////////////////////////////////\n// Hide elements not relevant to print media.\n////////////////////////////////////////////////////////////////////////////////\n@media print\n // Hide icon container.\n .content-icon-container\n display: none !important\n\n // Hide showing header links if hovering over when printing.\n .headerlink\n display: none !important\n\n // Hide mobile header.\n .mobile-header\n display: none !important\n\n // Hide navigation links.\n .related-pages\n display: none !important\n\n////////////////////////////////////////////////////////////////////////////////\n// Tweaks related to decolorization.\n////////////////////////////////////////////////////////////////////////////////\n@media print\n // Apply a border around code which no longer have a color background.\n .highlight\n border: 0.1pt solid var(--color-foreground-border)\n\n////////////////////////////////////////////////////////////////////////////////\n// Avoid page break in some relevant cases.\n////////////////////////////////////////////////////////////////////////////////\n@media print\n ul, ol, dl, a, table, pre, blockquote, p\n page-break-inside: avoid\n\n h1, h2, h3, h4, h5, h6, img, figure, caption\n page-break-inside: avoid\n page-break-after: avoid\n\n ul, ol, dl\n page-break-before: avoid\n",".visually-hidden\n position: absolute !important\n width: 1px !important\n height: 1px !important\n padding: 0 !important\n margin: -1px !important\n overflow: hidden !important\n clip: rect(0,0,0,0) !important\n white-space: nowrap !important\n border: 0 !important\n color: var(--color-foreground-primary)\n background: var(--color-background-primary)\n\n:-moz-focusring\n outline: auto\n","// This file serves as the \"skeleton\" of the theming logic.\n//\n// This contains the bulk of the logic for handling dark mode, color scheme\n// toggling and the handling of color-scheme-specific hiding of elements.\n\n@use \"../variables\" as *\n\nbody\n @include fonts\n @include spacing\n @include icons\n @include admonitions\n @include default-admonition(#651fff, \"abstract\")\n @include default-topic(#14B8A6, \"pencil\")\n\n @include colors\n\n.only-light\n display: block !important\nhtml body .only-dark\n display: none !important\n\n// Ignore dark-mode hints if print media.\n@media not print\n // Enable dark-mode, if requested.\n body[data-theme=\"dark\"]\n @include colors-dark\n\n html & .only-light\n display: none !important\n .only-dark\n display: block !important\n\n // Enable dark mode, unless explicitly told to avoid.\n @media (prefers-color-scheme: dark)\n body:not([data-theme=\"light\"])\n @include colors-dark\n\n html & .only-light\n display: none !important\n .only-dark\n display: block !important\n\n//\n// Theme toggle presentation\n//\nbody[data-theme=\"auto\"]\n .theme-toggle svg.theme-icon-when-auto-light\n display: block\n\n @media (prefers-color-scheme: dark)\n .theme-toggle svg.theme-icon-when-auto-dark\n display: block\n .theme-toggle svg.theme-icon-when-auto-light\n display: none\n\nbody[data-theme=\"dark\"]\n .theme-toggle svg.theme-icon-when-dark\n display: block\n\nbody[data-theme=\"light\"]\n .theme-toggle svg.theme-icon-when-light\n display: block\n","// Fonts used by this theme.\n//\n// There are basically two things here -- using the system font stack and\n// defining sizes for various elements in %ages. We could have also used `em`\n// but %age is easier to reason about for me.\n\n@mixin fonts {\n // These are adapted from https://systemfontstack.com/\n --font-stack:\n -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif,\n Apple Color Emoji, Segoe UI Emoji;\n --font-stack--monospace:\n \"SFMono-Regular\", Menlo, Consolas, Monaco, Liberation Mono, Lucida Console,\n monospace;\n --font-stack--headings: var(--font-stack);\n\n --font-size--normal: 100%;\n --font-size--small: 87.5%;\n --font-size--small--2: 81.25%;\n --font-size--small--3: 75%;\n --font-size--small--4: 62.5%;\n\n // Sidebar\n --sidebar-caption-font-size: var(--font-size--small--2);\n --sidebar-item-font-size: var(--font-size--small);\n --sidebar-search-input-font-size: var(--font-size--small);\n\n // Table of Contents\n --toc-font-size: var(--font-size--small--3);\n --toc-font-size--mobile: var(--font-size--normal);\n --toc-title-font-size: var(--font-size--small--4);\n\n // Admonitions\n //\n // These aren't defined in terms of %ages, since nesting these is permitted.\n --admonition-font-size: 0.8125rem;\n --admonition-title-font-size: 0.8125rem;\n\n // Code\n --code-font-size: var(--font-size--small--2);\n\n // API\n --api-font-size: var(--font-size--small);\n}\n","// Spacing for various elements on the page\n//\n// If the user wants to tweak things in a certain way, they are permitted to.\n// They also have to deal with the consequences though!\n\n@mixin spacing {\n // Header!\n --header-height: calc(\n var(--sidebar-item-line-height) + 4 *\n #{var(--sidebar-item-spacing-vertical)}\n );\n --header-padding: 0.5rem;\n\n // Sidebar\n --sidebar-tree-space-above: 1.5rem;\n --sidebar-caption-space-above: 1rem;\n\n --sidebar-item-line-height: 1rem;\n --sidebar-item-spacing-vertical: 0.5rem;\n --sidebar-item-spacing-horizontal: 1rem;\n --sidebar-item-height: calc(\n var(--sidebar-item-line-height) + 2 *#{var(--sidebar-item-spacing-vertical)}\n );\n\n --sidebar-expander-width: var(--sidebar-item-height); // be square\n\n --sidebar-search-space-above: 0.5rem;\n --sidebar-search-input-spacing-vertical: 0.5rem;\n --sidebar-search-input-spacing-horizontal: 0.5rem;\n --sidebar-search-input-height: 1rem;\n --sidebar-search-icon-size: var(--sidebar-search-input-height);\n\n // Table of Contents\n --toc-title-padding: 0.25rem 0;\n --toc-spacing-vertical: 1.5rem;\n --toc-spacing-horizontal: 1.5rem;\n --toc-item-spacing-vertical: 0.4rem;\n --toc-item-spacing-horizontal: 1rem;\n}\n","// Expose theme icons as CSS variables.\n\n$icons: (\n // Adapted from tabler-icons\n // url: https://tablericons.com/\n \"search\":\n url('data:image/svg+xml;charset=utf-8,'),\n // Factored out from mkdocs-material on 24-Aug-2020.\n // url: https://squidfunk.github.io/mkdocs-material/reference/admonitions/\n \"pencil\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"abstract\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"info\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"flame\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"question\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"warning\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"failure\":\n url('data:image/svg+xml;charset=utf-8,'),\n \"spark\":\n url('data:image/svg+xml;charset=utf-8,')\n);\n\n@mixin icons {\n @each $name, $glyph in $icons {\n --icon-#{$name}: #{$glyph};\n }\n}\n","@use \"sass:list\";\n// Admonitions\n\n// Structure of these is:\n// admonition-class: color \"icon-name\";\n//\n// The colors are translated into CSS variables below. The icons are\n// used directly in the main declarations to set the `mask-image` in\n// the title.\n\n// prettier-ignore\n$admonitions: (\n // Each of these has an reST directives for it.\n \"caution\": #ff9100 \"spark\",\n \"warning\": #ff9100 \"warning\",\n \"danger\": #ff5252 \"spark\",\n \"attention\": #ff5252 \"warning\",\n \"error\": #ff5252 \"failure\",\n \"hint\": #00c852 \"question\",\n \"tip\": #00c852 \"info\",\n \"important\": #00bfa5 \"flame\",\n \"note\": #00b0ff \"pencil\",\n \"seealso\": #448aff \"info\",\n \"admonition-todo\": #808080 \"pencil\"\n);\n\n@mixin default-admonition($color, $icon-name) {\n --color-admonition-title: #{$color};\n --color-admonition-title-background: #{rgba($color, 0.2)};\n\n --icon-admonition-default: var(--icon-#{$icon-name});\n}\n\n@mixin default-topic($color, $icon-name) {\n --color-topic-title: #{$color};\n --color-topic-title-background: #{rgba($color, 0.2)};\n\n --icon-topic-default: var(--icon-#{$icon-name});\n}\n\n@mixin admonitions {\n @each $name, $values in $admonitions {\n --color-admonition-title--#{$name}: #{list.nth($values, 1)};\n --color-admonition-title-background--#{$name}: #{rgba(\n list.nth($values, 1),\n 0.2\n )};\n }\n}\n","// Colors used throughout this theme.\n//\n// The aim is to give the user more control. Thus, instead of hard-coding colors\n// in various parts of the stylesheet, the approach taken is to define all\n// colors as CSS variables and reusing them in all the places.\n//\n// `colors-dark` depends on `colors` being included at a lower specificity.\n\n@mixin colors {\n --color-problematic: #b30000;\n\n // Base Colors\n --color-foreground-primary: black; // for main text and headings\n --color-foreground-secondary: #5a5c63; // for secondary text\n --color-foreground-muted: #6b6f76; // for muted text\n --color-foreground-border: #878787; // for content borders\n\n --color-background-primary: white; // for content\n --color-background-secondary: #f8f9fb; // for navigation + ToC\n --color-background-hover: #efeff4ff; // for navigation-item hover\n --color-background-hover--transparent: #efeff400;\n --color-background-border: #eeebee; // for UI borders\n --color-background-item: #ccc; // for \"background\" items (eg: copybutton)\n\n // Announcements\n --color-announcement-background: #000000dd;\n --color-announcement-text: #eeebee;\n\n // Brand colors\n --color-brand-primary: #0a4bff;\n --color-brand-content: #2757dd;\n --color-brand-visited: #872ee0;\n\n // API documentation\n --color-api-background: var(--color-background-hover--transparent);\n --color-api-background-hover: var(--color-background-hover);\n --color-api-overall: var(--color-foreground-secondary);\n --color-api-name: var(--color-problematic);\n --color-api-pre-name: var(--color-problematic);\n --color-api-paren: var(--color-foreground-secondary);\n --color-api-keyword: var(--color-foreground-primary);\n\n --color-api-added: #21632c;\n --color-api-added-border: #38a84d;\n --color-api-changed: #046172;\n --color-api-changed-border: #06a1bc;\n --color-api-deprecated: #605706;\n --color-api-deprecated-border: #f0d90f;\n --color-api-removed: #b30000;\n --color-api-removed-border: #ff5c5c;\n\n --color-highlight-on-target: #ffffcc;\n\n // Inline code background\n --color-inline-code-background: var(--color-background-secondary);\n\n // Highlighted text (search)\n --color-highlighted-background: #ddeeff;\n --color-highlighted-text: var(--color-foreground-primary);\n\n // GUI Labels\n --color-guilabel-background: #ddeeff80;\n --color-guilabel-border: #bedaf580;\n --color-guilabel-text: var(--color-foreground-primary);\n\n // Admonitions!\n --color-admonition-background: transparent;\n\n //////////////////////////////////////////////////////////////////////////////\n // Everything below this should be one of:\n // - var(...)\n // - *-gradient(...)\n // - special literal values (eg: transparent, none)\n //////////////////////////////////////////////////////////////////////////////\n\n // Tables\n --color-table-header-background: var(--color-background-secondary);\n --color-table-border: var(--color-background-border);\n\n // Cards\n --color-card-border: var(--color-background-secondary);\n --color-card-background: transparent;\n --color-card-marginals-background: var(--color-background-secondary);\n\n // Header\n --color-header-background: var(--color-background-primary);\n --color-header-border: var(--color-background-border);\n --color-header-text: var(--color-foreground-primary);\n\n // Sidebar (left)\n --color-sidebar-background: var(--color-background-secondary);\n --color-sidebar-background-border: var(--color-background-border);\n\n --color-sidebar-brand-text: var(--color-foreground-primary);\n --color-sidebar-caption-text: var(--color-foreground-muted);\n --color-sidebar-link-text: var(--color-foreground-secondary);\n --color-sidebar-link-text--top-level: var(--color-brand-primary);\n\n --color-sidebar-item-background: var(--color-sidebar-background);\n --color-sidebar-item-background--current: var(\n --color-sidebar-item-background\n );\n --color-sidebar-item-background--hover: linear-gradient(\n 90deg,\n var(--color-background-hover--transparent) 0%,\n var(--color-background-hover) var(--sidebar-item-spacing-horizontal),\n var(--color-background-hover) 100%\n );\n\n --color-sidebar-item-expander-background: transparent;\n --color-sidebar-item-expander-background--hover: var(\n --color-background-hover\n );\n\n --color-sidebar-search-text: var(--color-foreground-primary);\n --color-sidebar-search-background: var(--color-background-secondary);\n --color-sidebar-search-background--focus: var(--color-background-primary);\n --color-sidebar-search-border: var(--color-background-border);\n --color-sidebar-search-icon: var(--color-foreground-muted);\n\n // Table of Contents (right)\n --color-toc-background: var(--color-background-primary);\n --color-toc-title-text: var(--color-foreground-muted);\n --color-toc-item-text: var(--color-foreground-secondary);\n --color-toc-item-text--hover: var(--color-foreground-primary);\n --color-toc-item-text--active: var(--color-brand-primary);\n\n // Actual page contents\n --color-content-foreground: var(--color-foreground-primary);\n --color-content-background: transparent;\n\n // Links\n --color-link: var(--color-brand-content);\n --color-link-underline: var(--color-background-border);\n --color-link--hover: var(--color-brand-content);\n --color-link-underline--hover: var(--color-foreground-border);\n\n --color-link--visited: var(--color-brand-visited);\n --color-link-underline--visited: var(--color-background-border);\n --color-link--visited--hover: var(--color-brand-visited);\n --color-link-underline--visited--hover: var(--color-foreground-border);\n}\n\n@mixin colors-dark {\n --color-problematic: #ee5151;\n\n // Base Colors\n --color-foreground-primary: #cfd0d0; // for main text and headings\n --color-foreground-secondary: #9ca0a5; // for secondary text\n --color-foreground-muted: #81868d; // for muted text\n --color-foreground-border: #666666; // for content borders\n\n --color-background-primary: #131416; // for content\n --color-background-secondary: #1a1c1e; // for navigation + ToC\n --color-background-hover: #1e2124ff; // for navigation-item hover\n --color-background-hover--transparent: #1e212400;\n --color-background-border: #303335; // for UI borders\n --color-background-item: #444; // for \"background\" items (eg: copybutton)\n\n // Announcements\n --color-announcement-background: #000000dd;\n --color-announcement-text: #eeebee;\n\n // Brand colors\n --color-brand-primary: #3d94ff;\n --color-brand-content: #5ca5ff;\n --color-brand-visited: #b27aeb;\n\n // Highlighted text (search)\n --color-highlighted-background: #083563;\n\n // GUI Labels\n --color-guilabel-background: #08356380;\n --color-guilabel-border: #13395f80;\n\n // API documentation\n --color-api-keyword: var(--color-foreground-secondary);\n --color-highlight-on-target: #333300;\n\n --color-api-added: #3db854;\n --color-api-added-border: #267334;\n --color-api-changed: #09b0ce;\n --color-api-changed-border: #056d80;\n --color-api-deprecated: #b1a10b;\n --color-api-deprecated-border: #6e6407;\n --color-api-removed: #ff7575;\n --color-api-removed-border: #b03b3b;\n\n // Admonitions\n --color-admonition-background: #18181a;\n\n // Cards\n --color-card-border: var(--color-background-secondary);\n --color-card-background: #18181a;\n --color-card-marginals-background: var(--color-background-hover);\n}\n","// This file contains the styling for making the content throughout the page,\n// including fonts, paragraphs, headings and spacing among these elements.\n\nbody\n font-family: var(--font-stack)\npre,\ncode,\nkbd,\nsamp\n font-family: var(--font-stack--monospace)\n\n// Make fonts look slightly nicer.\nbody\n -webkit-font-smoothing: antialiased\n -moz-osx-font-smoothing: grayscale\n\n// Line height from Bootstrap 4.1\narticle\n line-height: 1.5\n\n//\n// Headings\n//\nh1,\nh2,\nh3,\nh4,\nh5,\nh6\n line-height: 1.25\n font-family: var(--font-stack--headings)\n font-weight: bold\n\n border-radius: 0.5rem\n margin-top: 0.5rem\n margin-bottom: 0.5rem\n margin-left: -0.5rem\n margin-right: -0.5rem\n padding-left: 0.5rem\n padding-right: 0.5rem\n\n + p\n margin-top: 0\n\nh1\n font-size: 2.5em\n margin-top: 1.75rem\n margin-bottom: 1rem\nh2\n font-size: 2em\n margin-top: 1.75rem\nh3\n font-size: 1.5em\nh4\n font-size: 1.25em\nh5\n font-size: 1.125em\nh6\n font-size: 1em\n\nsmall\n opacity: 75%\n font-size: 80%\n\n// Paragraph\np\n margin-top: 0.5rem\n margin-bottom: 0.75rem\n\n// Horizontal rules\nhr.docutils\n height: 1px\n padding: 0\n margin: 2rem 0\n background-color: var(--color-background-border)\n border: 0\n\n.centered\n text-align: center\n\n// Links\na\n text-decoration: underline\n\n color: var(--color-link)\n text-decoration-color: var(--color-link-underline)\n\n &:visited\n color: var(--color-link--visited)\n text-decoration-color: var(--color-link-underline--visited)\n &:hover\n color: var(--color-link--visited--hover)\n text-decoration-color: var(--color-link-underline--visited--hover)\n\n &:hover\n color: var(--color-link--hover)\n text-decoration-color: var(--color-link-underline--hover)\n &.muted-link\n color: inherit\n &:hover\n color: var(--color-link--hover)\n text-decoration-color: var(--color-link-underline--hover)\n &:visited\n color: var(--color-link--visited--hover)\n text-decoration-color: var(--color-link-underline--visited--hover)\n","// This file contains the styles for the overall layouting of the documentation\n// skeleton, including the responsive changes as well as sidebar toggles.\n//\n// This is implemented as a mobile-last design, which isn't ideal, but it is\n// reasonably good-enough and I got pretty tired by the time I'd finished this\n// to move the rules around to fix this. Shouldn't take more than 3-4 hours,\n// if you know what you're doing tho.\n\n// HACK: Not all browsers account for the scrollbar width in media queries.\n// This results in horizontal scrollbars in the breakpoint where we go\n// from displaying everything to hiding the ToC. We accomodate for this by\n// adding a bit of padding to the TOC drawer, disabling the horizontal\n// scrollbar and allowing the scrollbars to cover the padding.\n// https://www.456bereastreet.com/archive/201301/media_query_width_and_vertical_scrollbars/\n\n// HACK: Always having the scrollbar visible, prevents certain browsers from\n// causing the content to stutter horizontally between taller-than-viewport and\n// not-taller-than-viewport pages.\n@use \"variables\" as *\n\nhtml\n overflow-x: hidden\n overflow-y: scroll\n scroll-behavior: smooth\n\n.sidebar-scroll, .toc-scroll, article[role=main] *\n scrollbar-width: thin\n scrollbar-color: var(--color-foreground-border) transparent\n\n//\n// Overalls\n//\nhtml,\nbody\n height: 100%\n color: var(--color-foreground-primary)\n background: var(--color-background-primary)\n\n.skip-to-content\n position: fixed\n padding: 1rem\n border-radius: 1rem\n left: 0.25rem\n top: 0.25rem\n z-index: 40\n background: var(--color-background-primary)\n color: var(--color-foreground-primary)\n\n transform: translateY(-200%)\n transition: transform 300ms ease-in-out\n\n &:focus-within\n transform: translateY(0%)\n\narticle\n color: var(--color-content-foreground)\n background: var(--color-content-background)\n overflow-wrap: break-word\n\n.page\n display: flex\n // fill the viewport for pages with little content.\n min-height: 100%\n\n.mobile-header\n width: 100%\n height: var(--header-height)\n background-color: var(--color-header-background)\n color: var(--color-header-text)\n border-bottom: 1px solid var(--color-header-border)\n\n // Looks like sub-script/super-script have this, and we need this to\n // be \"on top\" of those.\n z-index: 10\n\n // We don't show the header on large screens.\n display: none\n\n // Add shadow when scrolled\n &.scrolled\n border-bottom: none\n box-shadow: 0 0 0.2rem rgba(0, 0, 0, 0.1), 0 0.2rem 0.4rem rgba(0, 0, 0, 0.2)\n\n .header-center\n a\n color: var(--color-header-text)\n text-decoration: none\n\n.main\n display: flex\n flex: 1\n\n// Sidebar (left) also covers the entire left portion of screen.\n.sidebar-drawer\n box-sizing: border-box\n\n border-right: 1px solid var(--color-sidebar-background-border)\n background: var(--color-sidebar-background)\n\n display: flex\n justify-content: flex-end\n // These next two lines took me two days to figure out.\n width: calc((100% - #{$full-width}) / 2 + #{$sidebar-width})\n min-width: $sidebar-width\n\n// Scroll-along sidebars\n.sidebar-container,\n.toc-drawer\n box-sizing: border-box\n width: $sidebar-width\n\n.toc-drawer\n background: var(--color-toc-background)\n // See HACK described on top of this document\n padding-right: 1rem\n\n.sidebar-sticky,\n.toc-sticky\n position: sticky\n top: 0\n height: min(100%, 100vh)\n height: 100vh\n\n display: flex\n flex-direction: column\n\n.sidebar-scroll,\n.toc-scroll\n flex-grow: 1\n flex-shrink: 1\n\n overflow: auto\n scroll-behavior: smooth\n\n// Central items.\n.content\n padding: 0 $content-padding\n width: $content-width\n\n display: flex\n flex-direction: column\n justify-content: space-between\n\n.icon\n display: inline-block\n height: 1rem\n width: 1rem\n svg\n width: 100%\n height: 100%\n\n//\n// Accommodate announcement banner\n//\n.announcement\n background-color: var(--color-announcement-background)\n color: var(--color-announcement-text)\n\n height: var(--header-height)\n display: flex\n align-items: center\n overflow-x: auto\n & + .page\n min-height: calc(100% - var(--header-height))\n\n.announcement-content\n box-sizing: border-box\n padding: 0.5rem\n min-width: 100%\n white-space: nowrap\n text-align: center\n\n a\n color: var(--color-announcement-text)\n text-decoration-color: var(--color-announcement-text)\n\n &:hover\n color: var(--color-announcement-text)\n text-decoration-color: var(--color-link--hover)\n\n////////////////////////////////////////////////////////////////////////////////\n// Toggles for theme\n////////////////////////////////////////////////////////////////////////////////\n.no-js .theme-toggle-container // don't show theme toggle if there's no JS\n display: none\n\n.theme-toggle-container\n display: flex\n\n.theme-toggle\n display: flex\n cursor: pointer\n border: none\n padding: 0\n background: transparent\n\n.theme-toggle svg\n height: 1.25rem\n width: 1.25rem\n color: var(--color-foreground-primary)\n display: none\n\n.theme-toggle-header\n display: flex\n align-items: center\n justify-content: center\n\n////////////////////////////////////////////////////////////////////////////////\n// Toggles for elements\n////////////////////////////////////////////////////////////////////////////////\n.toc-overlay-icon, .nav-overlay-icon\n display: none\n cursor: pointer\n\n .icon\n color: var(--color-foreground-secondary)\n height: 1.5rem\n width: 1.5rem\n\n.toc-header-icon, .nav-overlay-icon\n // for when we set display: flex\n justify-content: center\n align-items: center\n\n.toc-content-icon\n height: 1.5rem\n width: 1.5rem\n\n.content-icon-container\n float: right\n display: flex\n margin-top: 1.5rem\n margin-left: 1rem\n margin-bottom: 1rem\n gap: 0.5rem\n\n .edit-this-page, .view-this-page\n svg\n color: inherit\n height: 1.25rem\n width: 1.25rem\n\n.sidebar-toggle\n position: absolute\n display: none\n// \n.sidebar-toggle[name=\"__toc\"]\n left: 20px\n.sidebar-toggle:checked\n left: 40px\n// \n\n.overlay\n position: fixed\n top: 0\n width: 0\n height: 0\n\n transition: width 0ms, height 0ms, opacity 250ms ease-out\n\n opacity: 0\n background-color: rgba(0, 0, 0, 0.54)\n.sidebar-overlay\n z-index: 20\n.toc-overlay\n z-index: 40\n\n// Keep things on top and smooth.\n.sidebar-drawer\n z-index: 30\n transition: left 250ms ease-in-out\n.toc-drawer\n z-index: 50\n transition: right 250ms ease-in-out\n\n// Show the Sidebar\n#__navigation:checked\n & ~ .sidebar-overlay\n width: 100%\n height: 100%\n opacity: 1\n & ~ .page\n .sidebar-drawer\n top: 0\n left: 0\n // Show the toc sidebar\n#__toc:checked\n & ~ .toc-overlay\n width: 100%\n height: 100%\n opacity: 1\n & ~ .page\n .toc-drawer\n top: 0\n right: 0\n\n////////////////////////////////////////////////////////////////////////////////\n// Back to top\n////////////////////////////////////////////////////////////////////////////////\n.back-to-top\n text-decoration: none\n\n display: none\n position: fixed\n left: 0\n top: 1rem\n padding: 0.5rem\n padding-right: 0.75rem\n border-radius: 1rem\n font-size: 0.8125rem\n\n background: var(--color-background-primary)\n box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.05), #6b728080 0px 0px 1px 0px\n\n z-index: 10\n\n margin-left: 50%\n transform: translateX(-50%)\n svg\n height: 1rem\n width: 1rem\n fill: currentColor\n display: inline-block\n\n span\n margin-left: 0.25rem\n\n .show-back-to-top &\n display: flex\n align-items: center\n\n////////////////////////////////////////////////////////////////////////////////\n// Responsive layouting\n////////////////////////////////////////////////////////////////////////////////\n// Make things a bit bigger on bigger screens.\n@media (min-width: $full-width + $sidebar-width)\n html\n font-size: 110%\n\n@media (max-width: $full-width)\n // Collapse \"toc\" into the icon.\n .toc-content-icon\n display: flex\n .toc-drawer\n position: fixed\n height: 100vh\n top: 0\n right: -$sidebar-width\n border-left: 1px solid var(--color-background-muted)\n .toc-tree\n border-left: none\n font-size: var(--toc-font-size--mobile)\n\n // Accomodate for a changed content width.\n .sidebar-drawer\n width: calc((100% - #{$full-width - $sidebar-width}) / 2 + #{$sidebar-width})\n\n@media (max-width: $content-padded-width + $sidebar-width)\n // Center the page\n .content\n margin-left: auto\n margin-right: auto\n padding: 0 $content-padding--small\n\n@media (max-width: $content-padded-width--small + $sidebar-width)\n // Collapse \"navigation\".\n .nav-overlay-icon\n display: flex\n .sidebar-drawer\n position: fixed\n height: 100vh\n width: $sidebar-width\n\n top: 0\n left: -$sidebar-width\n\n // Swap which icon is visible.\n .toc-header-icon, .theme-toggle-header\n display: flex\n .toc-content-icon, .theme-toggle-content\n display: none\n\n // Show the header.\n .mobile-header\n position: sticky\n top: 0\n display: flex\n justify-content: space-between\n align-items: center\n\n .header-left,\n .header-right\n display: flex\n height: var(--header-height)\n padding: 0 var(--header-padding)\n label\n height: 100%\n width: 100%\n user-select: none\n\n .nav-overlay-icon .icon,\n .theme-toggle svg\n height: 1.5rem\n width: 1.5rem\n\n // Add a scroll margin for the content\n :target\n scroll-margin-top: calc(var(--header-height) + 2.5rem)\n\n // Show back-to-top below the header\n .back-to-top\n top: calc(var(--header-height) + 0.5rem)\n\n // Accommodate for the header.\n .page\n flex-direction: column\n justify-content: center\n\n@media (max-width: $content-width + 2* $content-padding--small)\n // Content should respect window limits.\n .content\n width: 100%\n overflow-x: auto\n\n@media (max-width: $content-width)\n article[role=main] aside.sidebar\n float: none\n width: 100%\n margin: 1rem 0\n","@use \"sass:list\"\n@use \"../variables\" as *\n\n// The design here is strongly inspired by mkdocs-material.\n.admonition, .topic\n margin: 1rem auto\n padding: 0 0.5rem 0.5rem 0.5rem\n\n background: var(--color-admonition-background)\n\n border-radius: 0.2rem\n box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.05), 0 0 0.0625rem rgba(0, 0, 0, 0.1)\n\n font-size: var(--admonition-font-size)\n\n overflow: hidden\n page-break-inside: avoid\n\n // First element should have no margin, since the title has it.\n > :nth-child(2)\n margin-top: 0\n\n // Last item should have no margin, since we'll control that w/ padding\n > :last-child\n margin-bottom: 0\n\n.admonition p.admonition-title,\np.topic-title\n position: relative\n margin: 0 -0.5rem 0.5rem\n padding-left: 2rem\n padding-right: .5rem\n padding-top: .4rem\n padding-bottom: .4rem\n\n font-weight: 500\n font-size: var(--admonition-title-font-size)\n line-height: 1.3\n\n // Our fancy icon\n &::before\n content: \"\"\n position: absolute\n left: 0.5rem\n width: 1rem\n height: 1rem\n\n// Default styles\np.admonition-title\n background-color: var(--color-admonition-title-background)\n &::before\n background-color: var(--color-admonition-title)\n mask-image: var(--icon-admonition-default)\n mask-repeat: no-repeat\n\np.topic-title\n background-color: var(--color-topic-title-background)\n &::before\n background-color: var(--color-topic-title)\n mask-image: var(--icon-topic-default)\n mask-repeat: no-repeat\n\n//\n// Variants\n//\n.admonition\n border-left: 0.2rem solid var(--color-admonition-title)\n\n @each $type, $value in $admonitions\n &.#{$type}\n border-left-color: var(--color-admonition-title--#{$type})\n > .admonition-title\n background-color: var(--color-admonition-title-background--#{$type})\n &::before\n background-color: var(--color-admonition-title--#{$type})\n mask-image: var(--icon-#{list.nth($value, 2)})\n\n.admonition-todo > .admonition-title\n text-transform: uppercase\n","// This file stylizes the API documentation (stuff generated by autodoc). It's\n// deeply nested due to how autodoc structures the HTML without enough classes\n// to select the relevant items.\n\n// API docs!\ndl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple)\n // Tweak the spacing of all the things!\n dd\n margin-left: 2rem\n > :first-child\n margin-top: 0.125rem\n > :last-child\n margin-bottom: 0.75rem\n\n // This is used for the arguments\n .field-list\n margin-bottom: 0.75rem\n\n // \"Headings\" (like \"Parameters\" and \"Return\")\n > dt\n text-transform: uppercase\n font-size: var(--font-size--small)\n\n dd:empty\n margin-bottom: 0.5rem\n dd > ul\n margin-left: -1.2rem\n > li\n > p:nth-child(2)\n margin-top: 0\n // When the last-empty-paragraph follows a paragraph, it doesn't need\n // to augument the existing spacing.\n > p + p:last-child:empty\n margin-top: 0\n margin-bottom: 0\n\n // Colorize the elements\n > dt\n color: var(--color-api-overall)\n\n.sig:not(.sig-inline)\n font-weight: bold\n\n font-size: var(--api-font-size)\n font-family: var(--font-stack--monospace)\n\n margin-left: -0.25rem\n margin-right: -0.25rem\n padding-top: 0.25rem\n padding-bottom: 0.25rem\n padding-right: 0.5rem\n\n // These are intentionally em, to properly match the font size.\n padding-left: 3em\n text-indent: -2.5em\n\n border-radius: 0.25rem\n\n background: var(--color-api-background)\n transition: background 100ms ease-out\n\n &:hover\n background: var(--color-api-background-hover)\n\n // adjust the size of the [source] link on the right.\n a.reference\n .viewcode-link\n font-weight: normal\n width: 4.25rem\n\nem.property, span.property\n font-style: normal\n &:first-child\n color: var(--color-api-keyword)\n.sig-name\n color: var(--color-api-name)\n.sig-prename\n font-weight: normal\n color: var(--color-api-pre-name)\n.sig-paren\n color: var(--color-api-paren)\n.sig-param\n font-style: normal\n\ndiv.versionadded,\ndiv.versionchanged,\ndiv.deprecated,\ndiv.versionremoved\n border-left: 0.1875rem solid\n border-radius: 0.125rem\n\n padding-left: 0.75rem\n\n p\n margin-top: 0.125rem\n margin-bottom: 0.125rem\n\ndiv.versionadded\n border-color: var(--color-api-added-border)\n .versionmodified\n color: var(--color-api-added)\n\ndiv.versionchanged\n border-color: var(--color-api-changed-border)\n .versionmodified\n color: var(--color-api-changed)\n\ndiv.deprecated\n border-color: var(--color-api-deprecated-border)\n .versionmodified\n color: var(--color-api-deprecated)\n\ndiv.versionremoved\n border-color: var(--color-api-removed-border)\n .versionmodified\n color: var(--color-api-removed)\n\n// Align the [docs] and [source] to the right.\n.viewcode-link, .viewcode-back\n float: right\n text-align: right\n",".line-block\n margin-top: 0.5rem\n margin-bottom: 0.75rem\n .line-block\n margin-top: 0rem\n margin-bottom: 0rem\n padding-left: 1rem\n","// Captions\narticle p.caption,\ntable > caption,\n.code-block-caption\n font-size: var(--font-size--small)\n text-align: center\n\n// Caption above a TOCTree\n.toctree-wrapper.compound\n .caption, :not(.caption) > .caption-text\n font-size: var(--font-size--small)\n text-transform: uppercase\n\n text-align: initial\n margin-bottom: 0\n\n > ul\n margin-top: 0\n margin-bottom: 0\n","// Inline code\ncode.literal, .sig-inline\n background: var(--color-inline-code-background)\n border-radius: 0.2em\n // Make the font smaller, and use padding to recover.\n font-size: var(--font-size--small--2)\n padding: 0.1em 0.2em\n\n pre.literal-block &\n font-size: inherit\n padding: 0\n\n p &\n border: 1px solid var(--color-background-border)\n\n.sig-inline\n font-family: var(--font-stack--monospace)\n\n// Code and Literal Blocks\n$code-spacing-vertical: 0.625rem\n$code-spacing-horizontal: 0.875rem\n\n// Wraps every literal block + line numbers.\ndiv[class*=\" highlight-\"],\ndiv[class^=\"highlight-\"]\n margin: 1em 0\n display: flex\n\n .table-wrapper\n margin: 0\n padding: 0\n\npre\n margin: 0\n padding: 0\n overflow: auto\n\n // Needed to have more specificity than pygments' \"pre\" selector. :(\n article[role=\"main\"] .highlight &\n line-height: 1.5\n\n &.literal-block,\n .highlight &\n font-size: var(--code-font-size)\n padding: $code-spacing-vertical $code-spacing-horizontal\n\n // Make it look like all the other blocks.\n &.literal-block\n margin-top: 1rem\n margin-bottom: 1rem\n\n border-radius: 0.2rem\n background-color: var(--color-code-background)\n color: var(--color-code-foreground)\n\n// All code is always contained in this.\n.highlight\n width: 100%\n border-radius: 0.2rem\n\n // Make line numbers and prompts un-selectable.\n .gp, span.linenos\n user-select: none\n pointer-events: none\n\n // Expand the line-highlighting.\n .hll\n display: block\n margin-left: -$code-spacing-horizontal\n margin-right: -$code-spacing-horizontal\n padding-left: $code-spacing-horizontal\n padding-right: $code-spacing-horizontal\n\n/* Make code block captions be nicely integrated */\n.code-block-caption\n display: flex\n padding: $code-spacing-vertical $code-spacing-horizontal\n\n border-radius: 0.25rem\n border-bottom-left-radius: 0\n border-bottom-right-radius: 0\n font-weight: 300\n border-bottom: 1px solid\n\n background-color: var(--color-code-background)\n color: var(--color-code-foreground)\n border-color: var(--color-background-border)\n\n + div[class]\n margin-top: 0\n > .highlight\n border-top-left-radius: 0\n border-top-right-radius: 0\n\n// When `html_codeblock_linenos_style` is table.\n.highlighttable\n width: 100%\n display: block\n tbody\n display: block\n\n tr\n display: flex\n\n // Line numbers\n td.linenos\n background-color: var(--color-code-background)\n color: var(--color-code-foreground)\n padding: $code-spacing-vertical $code-spacing-horizontal\n padding-right: 0\n border-top-left-radius: 0.2rem\n border-bottom-left-radius: 0.2rem\n\n .linenodiv\n padding-right: $code-spacing-horizontal\n font-size: var(--code-font-size)\n box-shadow: -0.0625rem 0 var(--color-foreground-border) inset\n\n // Actual code\n td.code\n padding: 0\n display: block\n flex: 1\n overflow: hidden\n\n .highlight\n border-top-left-radius: 0\n border-bottom-left-radius: 0\n\n// When `html_codeblock_linenos_style` is inline.\n.highlight\n span.linenos\n display: inline-block\n padding-left: 0\n padding-right: $code-spacing-horizontal\n margin-right: $code-spacing-horizontal\n box-shadow: -0.0625rem 0 var(--color-foreground-border) inset\n","// Inline Footnote Reference\n.footnote-reference\n font-size: var(--font-size--small--4)\n vertical-align: super\n\n// Definition list, listing the content of each note.\n// docutils <= 0.17\ndl.footnote.brackets\n font-size: var(--font-size--small)\n color: var(--color-foreground-secondary)\n\n display: grid\n grid-template-columns: max-content auto\n dt\n margin: 0\n > .fn-backref\n margin-left: 0.25rem\n\n &:after\n content: \":\"\n\n .brackets\n &:before\n content: \"[\"\n &:after\n content: \"]\"\n\n dd\n margin: 0\n padding: 0 1rem\n\n// docutils >= 0.18\naside.footnote\n font-size: var(--font-size--small)\n color: var(--color-foreground-secondary)\n\naside.footnote > span,\ndiv.citation > span\n float: left\n font-weight: 500\n padding-right: 0.25rem\n\naside.footnote > *:not(span),\ndiv.citation > p\n margin-left: 2rem\n","//\n// Figures\n//\nimg\n box-sizing: border-box\n max-width: 100%\n height: auto\n\narticle\n figure, .figure\n border-radius: 0.2rem\n\n margin: 0\n :last-child\n margin-bottom: 0\n\n .align-left\n float: left\n clear: left\n margin: 0 1rem 1rem\n\n .align-right\n float: right\n clear: right\n margin: 0 1rem 1rem\n\n .align-default,\n .align-center\n display: block\n text-align: center\n margin-left: auto\n margin-right: auto\n\n // WELL, table needs to be stylised like a table.\n table.align-default\n display: table\n text-align: initial\n",".genindex-jumpbox, .domainindex-jumpbox\n border-top: 1px solid var(--color-background-border)\n border-bottom: 1px solid var(--color-background-border)\n padding: 0.25rem\n\n.genindex-section, .domainindex-section\n h2\n margin-top: 0.75rem\n margin-bottom: 0.5rem\n ul\n margin-top: 0\n margin-bottom: 0\n","ul,\nol\n padding-left: 1.2rem\n\n // Space lists out like paragraphs\n margin-top: 1rem\n margin-bottom: 1rem\n // reduce margins within li.\n li\n > p:first-child\n margin-top: 0.25rem\n margin-bottom: 0.25rem\n\n > p:last-child\n margin-top: 0.25rem\n\n > ul,\n > ol\n margin-top: 0.5rem\n margin-bottom: 0.5rem\n\nol\n &.arabic\n list-style: decimal\n &.loweralpha\n list-style: lower-alpha\n &.upperalpha\n list-style: upper-alpha\n &.lowerroman\n list-style: lower-roman\n &.upperroman\n list-style: upper-roman\n\n// Don't space lists out when they're \"simple\" or in a `.. toctree::`\n.simple,\n.toctree-wrapper\n li\n > ul,\n > ol\n margin-top: 0\n margin-bottom: 0\n\n// Definition Lists\n.field-list,\n.option-list,\ndl:not([class]),\ndl.simple,\ndl.footnote,\ndl.glossary\n dt\n font-weight: 500\n margin-top: 0.25rem\n + dt\n margin-top: 0\n\n .classifier::before\n content: \":\"\n margin-left: 0.2rem\n margin-right: 0.2rem\n\n dd\n > p:first-child,\n ul\n margin-top: 0.125rem\n\n ul\n margin-bottom: 0.125rem\n",".math-wrapper\n width: 100%\n overflow-x: auto\n\ndiv.math\n position: relative\n text-align: center\n\n .headerlink,\n &:focus .headerlink\n display: none\n\n &:hover .headerlink\n display: inline-block\n\n span.eqno\n position: absolute\n right: 0.5rem\n top: 50%\n transform: translate(0, -50%)\n z-index: 1\n","// Abbreviations\nabbr[title]\n cursor: help\n\n// \"Problematic\" content, as identified by Sphinx\n.problematic\n color: var(--color-problematic)\n\n// Keyboard / Mouse \"instructions\"\nkbd:not(.compound)\n margin: 0 0.2rem\n padding: 0 0.2rem\n border-radius: 0.2rem\n border: 1px solid var(--color-foreground-border)\n color: var(--color-foreground-primary)\n vertical-align: text-bottom\n\n font-size: var(--font-size--small--3)\n display: inline-block\n\n box-shadow: 0 0.0625rem 0 rgba(0, 0, 0, 0.2), inset 0 0 0 0.125rem var(--color-background-primary)\n\n background-color: var(--color-background-secondary)\n\n// Blockquote\nblockquote\n border-left: 4px solid var(--color-background-border)\n background: var(--color-background-secondary)\n\n margin-left: 0\n margin-right: 0\n padding: 0.5rem 1rem\n\n .attribution\n font-weight: 600\n text-align: right\n\n &.pull-quote,\n &.highlights\n font-size: 1.25em\n\n &.epigraph,\n &.pull-quote\n border-left-width: 0\n border-radius: 0.5rem\n\n &.highlights\n border-left-width: 0\n background: transparent\n\n// Center align embedded-in-text images\np .reference img\n vertical-align: middle\n","p.rubric\n line-height: 1.25\n font-weight: bold\n font-size: 1.125em\n\n // For Numpy-style documentation that's got rubrics within it.\n // https://github.com/pradyunsg/furo/discussions/505\n dd &\n line-height: inherit\n font-weight: inherit\n\n font-size: var(--font-size--small)\n text-transform: uppercase\n","article .sidebar\n float: right\n clear: right\n width: 30%\n\n margin-left: 1rem\n margin-right: 0\n\n border-radius: 0.2rem\n background-color: var(--color-background-secondary)\n border: var(--color-background-border) 1px solid\n\n > *\n padding-left: 1rem\n padding-right: 1rem\n\n > ul, > ol // lists need additional padding, because bullets.\n padding-left: 2.2rem\n\n .sidebar-title\n margin: 0\n padding: 0.5rem 1rem\n border-bottom: var(--color-background-border) 1px solid\n\n font-weight: 500\n\n// TODO: subtitle\n// TODO: dedicated variables?\n","[role=main] .table-wrapper.container\n width: 100%\n overflow-x: auto\n margin-top: 1rem\n margin-bottom: 0.5rem\n padding: 0.2rem 0.2rem 0.75rem\n\ntable.docutils\n border-radius: 0.2rem\n border-spacing: 0\n border-collapse: collapse\n\n box-shadow: 0 0.2rem 0.5rem rgba(0, 0, 0, 0.05), 0 0 0.0625rem rgba(0, 0, 0, 0.1)\n\n th\n background: var(--color-table-header-background)\n\n td,\n th\n // Space things out properly\n padding: 0 0.25rem\n\n // Get the borders looking just-right.\n border-left: 1px solid var(--color-table-border)\n border-right: 1px solid var(--color-table-border)\n border-bottom: 1px solid var(--color-table-border)\n\n p\n margin: 0.25rem\n\n &:first-child\n border-left: none\n &:last-child\n border-right: none\n\n // MyST-parser tables set these classes for control of column alignment\n &.text-left\n text-align: left\n &.text-right\n text-align: right\n &.text-center\n text-align: center\n","@use \"../variables\" as *\n\n:target\n scroll-margin-top: 2.5rem\n\n@media (max-width: $full-width - $sidebar-width)\n :target\n scroll-margin-top: calc(2.5rem + var(--header-height))\n\n // When a heading is selected\n section > span:target\n scroll-margin-top: calc(2.8rem + var(--header-height))\n\n// Permalinks\n.headerlink\n font-weight: 100\n user-select: none\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\ndl dt,\np.caption,\nfigcaption p,\ntable > caption,\n.code-block-caption\n > .headerlink\n margin-left: 0.5rem\n visibility: hidden\n &:hover > .headerlink\n visibility: visible\n\n // Don't change to link-like, if someone adds the contents directive.\n > .toc-backref\n color: inherit\n text-decoration-line: none\n\n// Figure and table captions are special.\nfigure:hover > figcaption > p > .headerlink,\ntable:hover > caption > .headerlink\n visibility: visible\n\n:target >, // Regular section[id] style anchors\nspan:target ~ // Non-regular span[id] style \"extra\" anchors\n h1,\n h2,\n h3,\n h4,\n h5,\n h6\n &:nth-of-type(1)\n background-color: var(--color-highlight-on-target)\n // .headerlink\n // visibility: visible\n code.literal\n background-color: transparent\n\ntable:target > caption,\nfigure:target\n background-color: var(--color-highlight-on-target)\n\n// Inline page contents\n.this-will-duplicate-information-and-it-is-still-useful-here li :target\n background-color: var(--color-highlight-on-target)\n\n// Code block permalinks\n.literal-block-wrapper:target .code-block-caption\n background-color: var(--color-highlight-on-target)\n\n// When a definition list item is selected\n//\n// There isn't really an alternative to !important here, due to the\n// high-specificity of API documentation's selector.\ndt:target\n background-color: var(--color-highlight-on-target) !important\n\n// When a footnote reference is selected\n.footnote > dt:target + dd,\n.footnote-reference:target\n background-color: var(--color-highlight-on-target)\n",".guilabel\n background-color: var(--color-guilabel-background)\n border: 1px solid var(--color-guilabel-border)\n color: var(--color-guilabel-text)\n\n padding: 0 0.3em\n border-radius: 0.5em\n font-size: 0.9em\n","// This file contains the styles used for stylizing the footer that's shown\n// below the content.\n@use \"../variables\" as *\n\nfooter\n font-size: var(--font-size--small)\n display: flex\n flex-direction: column\n\n margin-top: 2rem\n\n// Bottom of page information\n.bottom-of-page\n display: flex\n align-items: center\n justify-content: space-between\n\n margin-top: 1rem\n padding-top: 1rem\n padding-bottom: 1rem\n\n color: var(--color-foreground-secondary)\n border-top: 1px solid var(--color-background-border)\n\n line-height: 1.5\n\n @media (max-width: $content-width)\n text-align: center\n flex-direction: column-reverse\n gap: 0.25rem\n\n .left-details\n font-size: var(--font-size--small)\n\n .right-details\n display: flex\n flex-direction: column\n gap: 0.25rem\n text-align: right\n\n .icons\n display: flex\n justify-content: flex-end\n gap: 0.25rem\n font-size: 1rem\n\n a\n text-decoration: none\n\n svg,\n img\n font-size: 1.125rem\n height: 1em\n width: 1em\n\n// Next/Prev page information\n.related-pages\n a\n display: flex\n align-items: center\n\n text-decoration: none\n &:hover .page-info .title\n text-decoration: underline\n color: var(--color-link)\n text-decoration-color: var(--color-link-underline)\n\n svg.furo-related-icon,\n svg.furo-related-icon > use\n flex-shrink: 0\n\n color: var(--color-foreground-border)\n\n width: 0.75rem\n height: 0.75rem\n margin: 0 0.5rem\n\n &.next-page\n max-width: 50%\n\n float: right\n clear: right\n text-align: right\n\n &.prev-page\n max-width: 50%\n\n float: left\n clear: left\n\n svg\n transform: rotate(180deg)\n\n.page-info\n display: flex\n flex-direction: column\n overflow-wrap: anywhere\n\n .next-page &\n align-items: flex-end\n\n .context\n display: flex\n align-items: center\n\n padding-bottom: 0.1rem\n\n color: var(--color-foreground-muted)\n font-size: var(--font-size--small)\n text-decoration: none\n","// This file contains the styles for the contents of the left sidebar, which\n// contains the navigation tree, logo, search etc.\n\n////////////////////////////////////////////////////////////////////////////////\n// Brand on top of the scrollable tree.\n////////////////////////////////////////////////////////////////////////////////\n.sidebar-brand\n display: flex\n flex-direction: column\n flex-shrink: 0\n\n padding: var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal)\n text-decoration: none\n\n.sidebar-brand-text\n color: var(--color-sidebar-brand-text)\n overflow-wrap: break-word\n margin: var(--sidebar-item-spacing-vertical) 0\n font-size: 1.5rem\n\n.sidebar-logo-container\n margin: var(--sidebar-item-spacing-vertical) 0\n\n.sidebar-logo\n margin: 0 auto\n display: block\n max-width: 100%\n\n////////////////////////////////////////////////////////////////////////////////\n// Search\n////////////////////////////////////////////////////////////////////////////////\n.sidebar-search-container\n display: flex\n align-items: center\n margin-top: var(--sidebar-search-space-above)\n\n position: relative\n\n background: var(--color-sidebar-search-background)\n &:hover,\n &:focus-within\n background: var(--color-sidebar-search-background--focus)\n\n &::before\n content: \"\"\n position: absolute\n left: var(--sidebar-item-spacing-horizontal)\n width: var(--sidebar-search-icon-size)\n height: var(--sidebar-search-icon-size)\n\n background-color: var(--color-sidebar-search-icon)\n mask-image: var(--icon-search)\n\n.sidebar-search\n box-sizing: border-box\n\n border: none\n border-top: 1px solid var(--color-sidebar-search-border)\n border-bottom: 1px solid var(--color-sidebar-search-border)\n\n padding-top: var(--sidebar-search-input-spacing-vertical)\n padding-bottom: var(--sidebar-search-input-spacing-vertical)\n padding-right: var(--sidebar-search-input-spacing-horizontal)\n padding-left: calc(var(--sidebar-item-spacing-horizontal) + var(--sidebar-search-input-spacing-horizontal) + var(--sidebar-search-icon-size))\n\n width: 100%\n\n color: var(--color-sidebar-search-foreground)\n background: transparent\n z-index: 10\n\n &:focus\n outline: none\n\n &::placeholder\n font-size: var(--sidebar-search-input-font-size)\n\n//\n// Hide Search Matches link\n//\n#searchbox .highlight-link\n padding: var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal) 0\n margin: 0\n text-align: center\n\n a\n color: var(--color-sidebar-search-icon)\n font-size: var(--font-size--small--2)\n\n////////////////////////////////////////////////////////////////////////////////\n// Structure/Skeleton of the navigation tree (left)\n////////////////////////////////////////////////////////////////////////////////\n.sidebar-tree\n font-size: var(--sidebar-item-font-size)\n margin-top: var(--sidebar-tree-space-above)\n margin-bottom: var(--sidebar-item-spacing-vertical)\n\n ul\n padding: 0\n margin-top: 0\n margin-bottom: 0\n\n display: flex\n flex-direction: column\n\n list-style: none\n\n li\n position: relative\n margin: 0\n\n > ul\n margin-left: var(--sidebar-item-spacing-horizontal)\n\n .icon\n color: var(--color-sidebar-link-text)\n\n .reference\n box-sizing: border-box\n color: var(--color-sidebar-link-text)\n\n // Fill the parent.\n display: inline-block\n line-height: var(--sidebar-item-line-height)\n text-decoration: none\n\n // Don't allow long words to cause wrapping.\n overflow-wrap: anywhere\n\n height: 100%\n width: 100%\n\n padding: var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal)\n\n &:hover\n color: var(--color-sidebar-link-text)\n background: var(--color-sidebar-item-background--hover)\n\n // Add a nice little \"external-link\" arrow here.\n &.external::after\n content: url('data:image/svg+xml,')\n margin: 0 0.25rem\n vertical-align: middle\n color: var(--color-sidebar-link-text)\n\n // Make the current page reference bold.\n .current-page > .reference\n font-weight: bold\n\n label\n position: absolute\n top: 0\n right: 0\n height: var(--sidebar-item-height)\n width: var(--sidebar-expander-width)\n\n cursor: pointer\n user-select: none\n\n display: flex\n justify-content: center\n align-items: center\n\n .caption, :not(.caption) > .caption-text\n font-size: var(--sidebar-caption-font-size)\n color: var(--color-sidebar-caption-text)\n\n font-weight: bold\n text-transform: uppercase\n\n margin: var(--sidebar-caption-space-above) 0 0 0\n padding: var(--sidebar-item-spacing-vertical) var(--sidebar-item-spacing-horizontal)\n\n // If it has children, add a bit more padding to wrap the content to avoid\n // overlapping with the